/* Mobile editorial layout. Existing brand palette and font families are preserved. */
.mobile-gallery-hint{display:none}
@media(max-width:767px){
 html{scroll-padding-top:80px}
 body{font-size:15px;line-height:1.6}
 .container{width:calc(100% - 40px)}
 .section{padding-block:48px}
 h2{font-size:36px;line-height:1.08;text-wrap:balance;letter-spacing:-.02em}
 .section-heading{margin-bottom:24px}
 .section-heading p:not(.eyebrow){margin-top:16px}
 .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:12px}
 .site-header{height:68px;padding-inline:24px;gap:12px}
 .brand{gap:9px;font-size:11px;letter-spacing:.09em}
 .brand small{font-size:8px}.brand img{width:38px;height:32px}
 .menu-toggle{font-size:13px;gap:8px;align-items:center;padding:8px 0 8px 12px}
 .site-header nav{top:67px;max-height:calc(100dvh - 68px);overflow-y:auto}
 .site-header nav>a:not(.button){padding-block:15px}
 .button{min-height:52px;font-size:12px;letter-spacing:.06em;padding:16px 24px;border-radius:4px}
 .hero-scroll{padding-top:0}
 .hero-stage{padding:32px 0 0;display:block}
 .hero-copy{padding:0 24px;text-align:left;width:100%;transform:none}
 .hero-copy h1{font-size:clamp(38px,10vw,49px);line-height:1.02;max-width:16ch;letter-spacing:-.02em}
 .hero-copy h1 br{display:none}
 .hero-copy .eyebrow{display:none}
 .hero-copy .hero-intro{font-size:15px;line-height:1.55;margin:16px 0 12px;max-width:36ch;color:var(--ink)}
 .hero-experience{font-size:12px;margin-bottom:24px}
 .hero-copy>.button{width:100%;justify-content:space-between}
 .hero-gallery{display:flex;position:static;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:24px;gap:12px;padding:0 24px 8px;margin-top:24px;pointer-events:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
 .hero-gallery .hero-cell:nth-child(n){flex:0 0 88%;width:88%;height:clamp(280px,90vw,390px);aspect-ratio:auto;scroll-snap-align:start;border-radius:8px}
 .hero-gallery .hero-cell img{position:absolute;inset:0}
 .hero-rotation-controls{padding:4px 24px;justify-content:space-between;gap:12px;align-items:center}
 .mobile-gallery-hint{display:block;font-size:12px;color:var(--muted)}
 .hero-rotation-controls button{font-size:12px;padding-inline:0;text-align:right}
 .hero-topics{justify-content:flex-start;gap:0 16px;padding:8px 0 16px;margin-top:0}
 .hero-topics a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
 .effects{margin-top:0;padding-block:48px}
 .effects .section-heading{text-align:left}
 .category-filter{flex-wrap:wrap;overflow:visible;gap:8px;margin-bottom:24px;justify-content:flex-start}
 .category-filter button{min-height:44px;padding:9px 16px;font-size:12px;border:1px solid var(--line);background:var(--paper)}
 .category-filter button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:none}
 .comparison.split-collage{max-width:min(100%,250px)}
 .comparison.split-collage.vertical-collage{max-width:100%}
 .comparison-caption{font-size:11px;gap:8px}
 .case-copy h3{font-size:30px;margin-bottom:12px}
 .case-copy dl{gap:24px;margin-block:24px}.case-copy dd{font-size:14px}
 #metamorfozy{padding-bottom:48px}
 #case-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:12px;scrollbar-width:thin}
 #case-gallery .gallery-card:nth-child(n){flex:0 0 90%;height:350px;aspect-ratio:auto;scroll-snap-align:start;transform:none}
 #case-gallery .gallery-caption{font-size:14px;min-height:60px;padding:16px}
 #case-gallery .gallery-card>img{height:calc(100% - 60px)}
 .gallery-help{text-align:left;font-size:12px}
 .problem-switch{gap:10px;margin-bottom:24px}
 .problem-switch button{min-height:44px;padding:8px 24px;font-size:15px;background:var(--paper);border-radius:4px}
 .problem-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
 .problem-grid{grid-template-columns:1fr;gap:0}
 .problem-card{display:grid;grid-template-columns:84px 1fr;column-gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
 .problem-card>img{grid-row:1/3;width:84px;height:84px;border-radius:4px}
 .problem-card h3{font-size:16px;line-height:1.45;margin:0}
 .problem-card>span{font-size:12px;margin-top:6px;color:var(--ink)}
 .problem-card .problem-text-tile{display:none}
 .problem-card:has(.problem-text-tile){grid-template-columns:1fr}
 .diagnosis-heading{margin-bottom:32px}.diagnosis-heading br{display:none}
 .diagnosis-layout{gap:24px}.diagnosis-layout img{height:300px;object-fit:contain;background:var(--surface)}
 .diagnosis-layout h3{font-size:29px;margin-bottom:16px}.diagnosis-layout figcaption{font-size:12px}
 .diagnosis-steps{margin:24px 0}.diagnosis-steps li{font-size:14px}
 .client-stories{gap:32px}.client-story{padding-top:24px;gap:16px}
 .client-story h3{font-size:29px}.client-story .story-source{font-size:12px;margin-top:12px}
 .client-story blockquote{font-size:25px;margin:16px 0}.client-story summary{font-size:14px}
 .expert{gap:32px}.expert figure img{max-height:380px;object-fit:cover}.expert h2{font-size:43px}
 .expert-role{font-size:13px;line-height:1.6;margin:16px 0}.credentials{font-size:12px;gap:16px}
 .reviews{text-align:left}.reviews h2{font-size:36px}.review-slide{margin-top:24px}.review-quote{font-size:29px;line-height:1.3;min-height:0}
 .review-slide #review-source{font-size:13px}.review-controls{justify-content:flex-start}
 .technologies{gap:16px}.journal{padding-bottom:48px}.journal h2{font-size:33px;margin-bottom:16px}
 .closing h2{font-size:37px}.closing-answer{font-size:28px;margin-top:16px}
 .actions{display:grid;grid-template-columns:1fr;width:100%;gap:10px;margin-top:24px}
 .actions .button{width:100%;justify-content:space-between}.phone{display:flex;justify-content:center;align-items:center;min-height:48px;font-size:16px}
 .closing-photo{max-height:340px}.footer-grid{gap:32px}footer p,footer a{font-size:13px}.footer-grid>div:nth-child(2)>a{min-height:44px;margin:0;display:flex;align-items:center}
 .newsletter-fields{flex-wrap:wrap;gap:10px}.newsletter input{font-size:16px;min-height:48px}.newsletter button{width:100%}
 dialog{max-height:90dvh;padding:56px 22px 24px}dialog p,.case-viewer-content p{font-size:14px}.case-viewer-content{padding:24px 22px}.case-viewer-media>img{height:auto;max-height:48dvh}
}
