/* Mobile-only presentation; the approved desktop cascade is untouched. */
@media (max-width:859px){
 :root{--pad:clamp(20px,4vw,32px)}
 html{scroll-padding-top:80px}
 header{height:64px;padding-inline:var(--pad)}
 .logo-brand img{width:44px;height:44px}
 .header-cta{display:inline-flex;min-height:44px;padding:0 13px;font-size:13px;margin-left:auto;margin-right:12px}
 .menu-toggle{width:44px;height:44px;padding:10px;flex:none}
 #mobile-menu{padding:88px var(--pad) max(28px,env(safe-area-inset-bottom));height:100dvh;overflow:auto}
 #mobile-menu>a:not(.button){font-size:28px;padding:18px 0;min-height:60px}
 #mobile-menu .button{margin-top:28px;min-height:52px}
 body.menu-open header{background:var(--ink)}
 .section{padding:56px var(--pad)}
 .section h2{font-size:clamp(32px,6vw,44px);line-height:1.08;letter-spacing:-.025em}
 .hero{height:auto;min-height:min(760px,100svh);max-height:none;justify-content:flex-end}
 .hero-content{padding:0 var(--pad) clamp(64px,10svh,104px)}
 .hero .hero-headline{font-size:clamp(32px,7.6vw,54px);line-height:1.12;letter-spacing:-.035em;max-width:650px}
 .hero-headline>span+span{margin-top:12px}
 .hero-headline>span{animation-duration:.65s;animation-delay:0s}
 .hero-headline>.hero-accent{animation-delay:.12s}
 .hero-image{object-position:52% center;animation:none}
 .hero-content p{font-size:17px;line-height:1.55;max-width:34ch;margin-top:24px;font-weight:400;animation:none}
 .hero-buttons{margin-top:28px;animation:none}.hero-buttons .button{font-size:16px;padding-inline:24px;min-height:52px}
 .capability-hero{min-height:0;padding:104px var(--pad) 64px}
 .capability-content h2{font-size:clamp(32px,6.7vw,52px);line-height:1.08}
 .capability-backdrop{object-position:52% 60%}
 .capability-summary{font-size:17px;line-height:1.5;margin-top:24px;max-width:36ch}
 .capability-scale{margin-top:28px;padding-top:22px;gap:14px}.capability-scale h3{font-size:16px}.capability-scale p{font-size:clamp(26px,4.8vw,38px)}
 .capability-services{margin-top:26px;font-size:15px;line-height:1.7;max-width:40ch}
 .selected-projects .projects-heading{gap:22px;margin-bottom:28px}.projects-heading h2{margin:0}
 .project-carousel{overflow:visible;padding:0 0 60px}
 .project-preview-grid{position:relative;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important;transition:none!important;gap:16px;align-items:start;will-change:auto;padding:0 0 8px}
 .project-preview-grid::-webkit-scrollbar,.story-carousel-track::-webkit-scrollbar{display:none}
 [data-carousel-clone]{display:none!important}
 .project-preview,.project-preview.is-active{flex:0 0 88%;transform:none!important;opacity:1!important;transition:none;scroll-snap-align:start}
 .project-photo{aspect-ratio:16/10;border-radius:6px}.project-preview:hover img{transform:none}.project-caption{padding-top:18px}.project-caption h3{font-size:25px;line-height:1.15}.project-caption p{font-size:16px;margin-top:6px}
 .project-control{top:auto;bottom:0;width:44px;height:44px}.project-prev{left:auto;right:56px}.project-next{right:0}
 .mobile-gallery-status{position:absolute;left:0;bottom:11px;font-size:14px;color:#67645e;line-height:22px;margin:0}
 .workforce-copy{gap:28px}.workforce-copy h2{max-width:23ch;margin:0}.workforce-credentials>div{padding:17px 0}.workforce-credentials h3{font-size:20px}.workforce-credentials p{font-size:16px;line-height:1.5}
 .workforce-principles{grid-template-columns:1fr;gap:22px;margin-top:28px;padding-top:28px}
 .workforce-principles .principle{text-align:left;display:grid;grid-template-columns:52px 1fr;column-gap:18px;align-items:center}
 .workforce-principles .emblem{grid-row:span 2;width:52px;height:52px;margin:0}.workforce-principles .emblem-icon{width:30px;height:30px}
 .workforce-principles h3{font-size:20px;margin:0 0 4px}.workforce-principles p{font-size:16px;max-width:none;margin:0;line-height:1.4}
 .inquiry-grid{gap:28px;margin:0}.inquiry h2{margin:0 0 20px}.inquiry-grid>div>p{font-size:17px;line-height:1.5;margin:0;max-width:40ch}.contact-call{margin-top:22px;font-size:16px;min-height:48px}
 .inquiry #inquiry-form{padding:24px 20px;gap:18px}.contact-form-heading h3{font-size:25px}.contact-form-heading p{margin-bottom:0;font-size:14px}
 .field label{font-size:14px;letter-spacing:.04em;text-transform:none;color:#59564f;margin-bottom:7px}
 .inquiry input,.inquiry textarea{font-size:16px;min-height:48px;padding:12px;width:100%;border-radius:4px}
 .inquiry textarea{min-height:108px}.inquiry .submit-row .button{width:100%;font-size:16px;min-height:50px}.inquiry .fine-print{font-size:14px;max-width:none;line-height:1.45}.error{font-size:14px}
 footer{padding:36px var(--pad) 24px}.footer-top{grid-template-columns:64px 1fr;gap:20px;padding-bottom:24px}.footer-top>p{grid-column:1/-1;margin:0;font-size:15px}.footer-nav{display:grid;grid-template-columns:1fr;gap:0}.footer-nav a{font-size:15px;min-height:44px;padding:10px 0}.footer-bottom{font-size:12px;line-height:1.5;gap:10px}
 .projects-page .portfolio-intro{padding:104px var(--pad) 32px}.projects-page .portfolio-intro h1{font-size:clamp(40px,7vw,60px);line-height:1.05}
 .projects-page .portfolio-intro nav{margin-top:26px;gap:8px;flex-direction:row}.projects-page .portfolio-intro nav a{padding:12px 14px;min-height:48px;flex:1 1 260px;font-size:15px;gap:12px;justify-content:space-between}
 .projects-page .project-story{padding:32px var(--pad) 36px}.projects-page .story-title{gap:8px;align-items:start;flex-direction:column;margin-bottom:20px}.projects-page .story-title h2{font-size:28px;line-height:1.12;margin:0}
 .projects-page .story-meta{margin:0;text-align:left;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.projects-page .story-meta p{font-size:15px;margin:0}.projects-page .story-meta strong{font-size:24px}
 .projects-page .story-carousel{padding:0 0 56px;margin-top:12px;overflow:visible}
 .projects-page .story-carousel-track{position:relative;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important;transition:none!important;will-change:auto;gap:12px}
 .projects-page .story-carousel-track figure{flex:0 0 86%;scroll-snap-align:start}.projects-page .story-carousel-track img{aspect-ratio:3/2;object-fit:contain;background:#f3f3f0}
 .story-carousel-control{width:44px;height:44px;top:auto;bottom:0;transform:none}.story-carousel-prev{left:auto;right:56px}.story-carousel-next{right:0}
 .projects-page .portfolio-contact{padding:40px var(--pad);gap:24px}.portfolio-contact h2{font-size:34px}
 .js [data-reveal],.js h2[data-reveal]{opacity:1;transform:none;transition:none}.js .emblem-icon>*{stroke-dashoffset:0;animation:none}.emblem::before{opacity:1;transform:none}
}
@media(min-width:600px) and (max-width:859px){.project-preview{flex-basis:72%}.projects-page .story-carousel-track figure{flex-basis:calc((100% - 12px)/2)}.inquiry-grid{max-width:620px;margin-inline:auto}.workforce-principles{grid-template-columns:repeat(3,1fr);gap:20px}.workforce-principles .principle{display:block;text-align:center}.workforce-principles .emblem{margin:0 auto 16px}.workforce-principles p{margin-top:8px}}
@media(max-width:359px){.header-cta{font-size:12px;padding-inline:10px;margin-right:4px}.hero .hero-headline{font-size:31px}.capability-content h2{font-size:31px}.capability-scale{grid-template-columns:1fr;gap:18px}.capability-scale>div+div{border-left:0}.capability-scale>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.capability-scale h3{margin:0}.project-preview{flex-basis:92%}}
@media(max-width:859px) and (max-height:500px){.hero{min-height:0}.hero-content{padding:104px var(--pad) 44px}}
.compact-footer{min-height:0;padding:22px var(--pad);grid-template-columns:auto 1fr;gap:14px 22px}.compact-footer .footer-logo img{width:40px;height:40px}.compact-footer .footer-established{justify-self:end}.compact-footer .footer-nav{grid-column:1/-1;justify-content:flex-start;gap:4px 18px;flex-wrap:wrap}.compact-footer .footer-nav a{min-height:36px;padding:8px 0;font-size:13px}
