/* Websites: touch navigation and natural reading flow on smaller screens. */
.website-benefits-controls[hidden]{display:none}
.website-menu-toggle,
.site-nav-links .website-mobile-cta{display:none}
.services-page .footer-brand-image{filter:brightness(0) invert(1)}
.process-gallery:focus-visible,
.website-skewed-carousel:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}

@media(max-width:900px){
  :root{--nav-height:66px}
  html.website-menu-open{overflow:hidden}
  .services-page .site-nav[data-mobile-ready]{min-height:66px;height:66px;padding-inline:20px;gap:12px;overflow:visible;background:var(--paper);color:var(--ink)}
  .services-page .site-nav[data-mobile-ready] .nav-brand{margin-right:auto;order:0}
  .services-page .site-nav[data-mobile-ready] .logo{height:22px}
  .services-page .site-nav[data-mobile-ready] .logo-word-wrap{display:flex}
  .services-page .site-nav[data-mobile-ready] .logo-word{opacity:1;transform:none}
  .services-page .site-nav[data-mobile-ready]>.nav-cta{display:none}
  .services-page .site-nav[data-mobile-ready] .nav-lang{order:1;gap:2px}
  .services-page .site-nav[data-mobile-ready] .nav-lang-opt{min-width:36px;min-height:44px;font-size:12px}
  .services-page .site-nav[data-mobile-ready] .nav-lang-sep{margin:0}
  .website-menu-toggle{order:2;display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid #16161630;border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
  .website-menu-icon{position:relative;display:block;width:14px;height:10px;border-block:1.5px solid currentColor}
  .is-menu-open .website-menu-icon{height:14px;border:0}
  .is-menu-open .website-menu-icon::before,.is-menu-open .website-menu-icon::after{content:"";position:absolute;left:0;top:6px;width:14px;height:1.5px;background:currentColor;transform:rotate(45deg)}
  .is-menu-open .website-menu-icon::after{transform:rotate(-45deg)}
  .services-page .site-nav[data-mobile-ready] .site-nav-links{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 66px);margin:0;padding:16px 24px 28px;overflow:auto;overscroll-behavior:contain;background:var(--paper);color:var(--ink);border-bottom:1px solid #16161620;box-shadow:0 18px 24px #16161612}
  .services-page .site-nav[data-mobile-ready].is-menu-open .site-nav-links{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0}
  .services-page .site-nav[data-mobile-ready] .site-nav-links>a,
  .services-page .site-nav[data-mobile-ready] .services-nav>summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:14px 0;font-size:20px;line-height:1.2}
  .services-page .site-nav[data-mobile-ready] .site-nav-links>a::after{display:none}
  .services-page .site-nav[data-mobile-ready] .services-nav{display:block;align-self:auto}
  .services-page .site-nav[data-mobile-ready] .services-submenu{position:static;width:100%;max-width:none;box-shadow:none;border:0;border-left:1px solid #16161625;border-radius:0;margin:4px 0 16px;padding:0 0 0 12px;background:transparent}
  .services-page .site-nav[data-mobile-ready] .services-submenu>a{min-height:48px;padding:12px;font-size:16px}
  .services-page .site-nav[data-mobile-ready] .site-nav-links>.website-mobile-cta{display:flex;min-height:52px;margin-top:16px;padding:14px 20px;background:var(--ink);color:#fff;border-radius:999px;font-size:16px}
  .website-menu-toggle:focus-visible,.services-page a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
  .websites-hero-heading{padding-inline:24px}
  .websites-hero-heading .websites-title{font-size:clamp(2.5rem,10.8vw,4.6rem);line-height:1.06;margin-bottom:24px}
  .websites-intro{font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.5;width:min(42ch,100%)}
  .website-process{--process-gutter:24px}
  .process-sticky{padding:24px 0 56px}
  .process-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .process-stage{padding:24px 0 0}
  .process-stage h2{font-size:clamp(2rem,4.5vw,2.6rem);margin-bottom:18px}
  .process-stage p{font-size:16px;line-height:1.55;max-width:none}
  .process-gallery{margin-bottom:40px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:24px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a9ada5 transparent;padding-bottom:12px}
  .process-gallery-track{display:flex;width:max-content;gap:16px;padding-inline:24px}
  .process-crop{flex:0 0 auto;width:clamp(180px,46vw,248px);height:auto;scroll-snap-align:start}
  .process-crop:nth-child(even){margin-top:0}
  .website-benefits{grid-template-columns:1fr;gap:28px}
  .website-benefits-heading{position:static;padding:0}
  .website-benefits-heading h2{max-width:17ch;font-size:clamp(2.25rem,5.5vw,3rem)}
  .website-benefits-list{gap:28px}
  .website-benefit-copy p{font-size:16px;line-height:1.55}
  .website-search{grid-template-columns:1fr;gap:32px}
  .website-search-copy h2{font-size:clamp(2.25rem,5.5vw,3rem)}
  .website-search-intro,.website-search-services{font-size:16px;line-height:1.55}
  .website-search-visual{width:min(100%,360px);justify-self:center}
  .website-search-cta{min-height:52px}
  .services-page .footer-nav{gap:8px 24px}
  .services-page .footer-nav a,.services-page .footer-contact a,.services-page .footer-legal a{display:inline-flex;align-items:center;min-height:44px}
  .services-page .footer-social{flex-wrap:wrap;gap:8px 24px}
  .services-page .footer-contact{gap:4px}
  .services-page .footer-top{gap:24px}
  .website-skewed-carousel button[aria-label$="slide"]{min-width:44px;min-height:44px}
}

@media(max-width:600px){
  .services-page .site-nav[data-mobile-ready]{padding-inline:16px;gap:8px}
  .services-page .site-nav[data-mobile-ready] .logo-word-wrap{display:none}
  .websites-hero-content{padding-block:72px 24px;min-height:0}
  .process-track{grid-template-columns:1fr;gap:28px}
  .process-stage h2{font-size:clamp(2rem,8vw,2.6rem);line-height:1.1}
  .website-cases,.website-search,.website-benefits{padding:40px 24px}
  .website-cases>h2{font-size:2.5rem;margin-bottom:24px}
  .website-cases-grid{grid-template-columns:1fr;gap:20px}
  .website-case-caption{inset:auto 16px 14px;flex-direction:column;align-items:flex-start;gap:9px}
  .website-case-caption h3{font-size:1.4rem}
  .website-case-link{font-size:11px;padding-bottom:3px}
  .website-case::after{background:linear-gradient(transparent 15%,#00000035 45%,#000000b8 100%)}
  .website-benefit{grid-template-columns:1fr;padding:8px;gap:8px}
  .website-benefit-copy{padding:20px 16px}
  .website-benefit-copy h3{font-size:1.5rem}
  .website-benefit-photo,.website-benefit-animation{width:min(100%,280px);justify-self:center;height:auto;aspect-ratio:4/5}
  .website-search-cta{width:100%}
  .website-search-visual{max-width:300px}
  .service-next{padding:40px 24px 56px}
  .service-next>a{font-size:clamp(1.8rem,7.5vw,2.4rem);gap:16px;line-height:1.15;min-height:60px}
  .service-next>a span{flex-shrink:0}
  .services-page #site-footer{padding:40px 24px 24px}
  .services-page .footer-legal{line-height:1.5}
}

@media(max-width:767px){
  .websites-showcase{display:none}
  .website-benefits{min-width:0;padding:40px 24px;gap:24px}
  .website-benefits-list{display:flex;position:relative;min-width:0;width:calc(100% + 48px);margin-inline:-24px;padding:0 24px 4px;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:24px;scrollbar-width:none}
  .website-benefits-list::-webkit-scrollbar{display:none}
  .website-benefits-list:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}
  .website-benefits-list>.website-benefit{flex:0 0 calc(100% - 24px);min-width:0;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;scroll-snap-align:start;padding:8px;gap:8px}
  .website-benefits-list .website-benefit-copy{align-self:start;padding:20px 16px}
  .website-benefits-list .website-benefit-copy h3{font-size:1.5rem}
  .website-benefits-list .website-benefit-photo,.website-benefits-list .website-benefit-animation{width:min(100%,280px);justify-self:center;height:auto;aspect-ratio:4/5}
  .website-benefits-controls{display:flex;justify-content:center;gap:0;margin-top:-12px}
  .website-benefits-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
  .website-benefits-controls button::after{content:"";width:7px;height:7px;border-radius:50%;background:#16161630;transition:background .2s,transform .2s}
  .website-benefits-controls button[aria-current="true"]::after{background:var(--ink);transform:scale(1.25)}
  .website-benefits-controls button:focus-visible{outline:2px solid var(--ink);outline-offset:-4px;border-radius:50%}
}
.site-nav .services-nav>summary .services-chevron{display:block;flex:none;width:12px;height:12px;align-self:center;transition:transform .2s}
.site-nav .services-nav[open]>summary .services-chevron{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.site-nav .services-nav>summary .services-chevron{transition:none}}
