/* Shared phone layout: consistent rhythm, readable copy and touch targets. */
@media(max-width:700px){
 :root{--phone-gutter:20px}html{scroll-padding-top:88px}body{font-size:16px}
 .section-wrap{padding-inline:var(--phone-gutter)}
 .header{min-height:72px;padding:14px var(--phone-gutter);gap:12px}.header .wordmark{font-size:26px;letter-spacing:-1.5px}.header-actions{gap:8px}.menu-button,.instagram-icon{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.menu-button{display:block}
 .mobile-menu{top:72px;padding:12px var(--phone-gutter) max(28px,env(safe-area-inset-bottom));overscroll-behavior:contain}.mobile-menu a{font-size:1.3rem;line-height:1.3;padding:18px 0;min-height:58px}.mobile-menu a span{font-size:.8rem}
 .hero-content{padding:100px var(--phone-gutter) 28px}.hero h1{font-size:clamp(2.75rem,12vw,4.8rem);line-height:.99;letter-spacing:-.055em}.hero .eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.025em;margin-bottom:20px}.hero-bottom{margin-top:24px;gap:18px}.hero-bottom>p{font-size:1rem;line-height:1.6}.hero-actions{gap:12px}.hero-actions .pill-button{min-height:52px;padding:14px 18px;font-size:1rem;gap:12px}.hero .hero-proof{font-size:.75rem;line-height:1.6;letter-spacing:.025em}.hero-caption{padding-inline:var(--phone-gutter);font-size:.7rem}.hero-foot{padding:14px var(--phone-gutter);gap:12px;font-size:.7rem;line-height:1.5}.motion-toggle{min-height:44px;font-size:.7rem;line-height:1.5;white-space:normal}.hero-art{inset:100px -18% 70px 10%}.mo-launch-inline{font-size:.9rem;line-height:1.5;min-height:44px;text-align:left}
 .service-marquee{min-height:64px;padding:16px 0}.marquee-track{font-size:1.15rem;gap:24px}.marquee-track>div{gap:24px}.service-marquee button{right:10px;width:40px;height:40px}
 .home-paths,.home-applications,.home-about{padding-block:48px}.compact-heading{gap:20px;margin-bottom:28px}.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.08em}.compact-heading h2,.home-about h2,.values-section h2{font-size:clamp(1.9rem,7.4vw,2.75rem);line-height:1.12;letter-spacing:-.035em;margin-top:14px}.home-about h2{margin-top:0}.compact-heading>.plain-link{font-size:.95rem;min-height:44px;display:inline-flex;align-items:center}.path-grid{gap:14px}.path-card{padding:23px;min-height:0}.path-number{font-size:.8rem;margin-bottom:20px}.path-card h3{font-size:1.65rem;line-height:1.2}.path-card p{font-size:1rem;line-height:1.6;margin-top:12px;padding-bottom:18px;max-width:31ch}.path-arrow{font-size:24px;right:20px;bottom:14px}
 .home-sector-grid{gap:8px}.home-sector{grid-template-columns:minmax(95px,36%) minmax(0,1fr);gap:18px;padding:16px 0}.home-sector h3{font-size:1.15rem;line-height:1.3}.home-sector img{border-radius:6px}.home-sector>div{gap:8px}.concept-label{font-size:.75rem;line-height:1.6;margin-top:18px}.home-about{gap:20px}.home-about p{font-size:1.05rem;line-height:1.7;margin:20px 0}
 .page-intro{padding-top:32px;padding-bottom:38px}.page-back{font-size:.875rem;margin-bottom:24px;min-height:32px}.page-intro h1{font-size:clamp(2.2rem,8.8vw,3.5rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0 22px;overflow-wrap:break-word}.page-lead{font-size:1.05rem;line-height:1.65}.detail-page .catalog-services,.detail-page .technology-section,.detail-page .applications,.detail-page .faq,.detail-page .process,.material-inner{padding-top:40px;padding-bottom:44px}.catalog-heading,.applications-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:0 0 28px}.catalog-heading h2,.applications-heading h2,.faq-intro h2,.process h2{font-size:clamp(1.8rem,7vw,2.65rem);line-height:1.15;letter-spacing:-.035em}.catalog-heading>p,.applications-heading>p{font-size:1rem;line-height:1.65}
 .service-editorial{grid-template-columns:minmax(0,1fr);gap:28px}.service-editorial>.catalog-figure{position:static}.service-editorial>.catalog-figure img{aspect-ratio:16/10}.service-row{grid-template-columns:22px minmax(0,1fr);gap:12px;padding-block:24px}.service-row h3{font-size:1.35rem;line-height:1.25;margin-bottom:12px}.service-row p{font-size:1rem;line-height:1.65}.service-row .text-button{font-size:.95rem;min-height:44px;line-height:1.5;text-align:left;white-space:normal}
 .material-legend{font-size:.9rem;line-height:1.6;padding-block:18px}.material-filters{gap:8px;margin:24px 0 18px}.material-filters button{min-height:44px;font-size:.875rem;padding:10px 12px}.material-catalog,.future-grid,.fdm-feature{grid-template-columns:minmax(0,1fr)}.material-catalog{gap:16px}.material-card{padding:22px}.material-card h3{font-size:1.8rem;margin-bottom:12px}.material-card h4,.material-card p{font-size:1rem;line-height:1.6}.material-card summary{min-height:48px;font-size:.95rem}.material-card details p{font-size:.95rem}.material-guidance{padding:22px;margin-top:24px}.material-guidance h3{font-size:1.4rem}.material-guidance p{font-size:1rem}.catalog-copy{padding:24px}.file-invitation{padding:24px;gap:22px}
 .sector-grid{grid-template-columns:minmax(0,1fr);gap:22px}.flip-copy{padding:22px}.flip-front img{aspect-ratio:16/10}.flip-copy h3,.flip-back h3{font-size:1.5rem;line-height:1.2}.flip-copy p{font-size:1rem;line-height:1.6;margin:14px 0}.flip-back{padding:24px;gap:18px}.flip-back p{font-size:1rem;line-height:1.65}.flip-back .eyebrow{font-size:.75rem}.flip-open,.flip-close{font-size:.95rem;min-height:48px}.sector-note{font-size:.875rem;line-height:1.65;margin-top:24px}
 .about-story{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:44px}.story-statement h2{font-size:clamp(2.8rem,12vw,4rem);line-height:1.06}.story-copy .large-copy{font-size:1.35rem;line-height:1.5}.story-copy p{font-size:1rem;line-height:1.75;margin-bottom:20px}.values-section{padding-block:44px}.value-grid{margin-top:28px;gap:26px}.value-grid h3{font-size:1.35rem;margin:16px 0 12px}.value-grid p{font-size:1rem}.request-start{padding-block:40px;gap:30px}.request-start h2{font-size:1.7rem;line-height:1.2}.request-start p{font-size:1rem;margin:18px 0}.request-start .pill-button{width:100%;font-size:1rem;min-height:52px}.request-guide{padding:24px}.faq-items summary{font-size:1.05rem;line-height:1.5;padding-block:19px}.faq-items p{font-size:1rem;line-height:1.7}
 .contact,.detail-page .contact{margin-top:24px;padding-block:0}.contact-top,.home-page .contact-top{padding-block:40px}.contact-with-mo{gap:24px;padding:24px 0;grid-template-columns:minmax(0,1fr)}.contact-with-mo .contact-title,.home-page .contact-title{font-size:clamp(2.5rem,10vw,3.6rem);line-height:1.03;gap:14px}.contact-with-mo .contact-arrow{font-size:2.5rem}.mo-portrait,.home-page .mo-portrait{width:100%;max-width:none;justify-self:stretch;display:grid;grid-template-columns:90px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;animation:none;border-radius:10px;padding:12px;box-shadow:none}.mo-portrait img{grid-row:1/3;aspect-ratio:590/759;width:90px}.mo-portrait figcaption{border:0;padding:8px 12px;gap:10px}.mo-portrait figcaption span{font-size:.8rem}.mo-portrait strong{font-size:1.2rem}.mo-portrait .mo-start{margin:0 12px;padding:8px 0;font-size:.9rem;min-height:44px;text-align:left}.contact-bottom{gap:20px}.contact-bottom p{font-size:.95rem;line-height:1.65}.contact-bottom .pill-button{font-size:1rem;min-height:52px;padding:14px 18px}.contact-social{gap:12px;margin-top:24px}.contact-social>span{font-size:.85rem;line-height:1.5}
 .footer{padding-block:34px}.footer-main{gap:22px}.footer-main .wordmark{font-size:26px}.footer-main p{font-size:.8rem;line-height:1.7}.footer-social{flex-wrap:wrap;gap:14px}.footer-pages{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;padding-block:24px;margin-top:24px}.footer-pages a{font-size:.9rem;line-height:1.5;min-height:44px;display:flex;align-items:center}.footer-bottom{font-size:.8rem;gap:12px}
 dialog,#mo-dialog{width:calc(100% - 20px);max-width:560px;max-height:calc(100dvh - 24px);padding:0 18px max(24px,env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:12px}.dialog-head{padding-block:14px;gap:14px}.dialog-head .wordmark{font-size:23px}.close-dialog,.close-privacy,.mo-close{min-width:44px;min-height:44px;flex:none}.dialog-intro{padding-block:24px}.dialog-intro h2{font-size:1.9rem;line-height:1.15}.form-grid{grid-template-columns:minmax(0,1fr);gap:20px}.form-grid>*{min-width:0}input,select,textarea{font-size:16px;min-width:0;max-width:100%}.form-grid input,.form-grid select{min-height:48px}.upload-box{padding:18px}.upload-box input[type=file]{width:100%;font-size:.875rem}.upload-box input[type=file]::file-selector-button{max-width:100%;padding:10px 12px;white-space:normal}.file-list li,#file-list li{flex-wrap:wrap;gap:10px}#file-list li span{overflow-wrap:anywhere;min-width:0}#file-list button{min-height:44px}.result-actions{gap:12px}.result-actions .pill-button{padding:14px 16px}.mo-guide-layout{gap:16px}.mo-stage img{width:70px;height:88px}.mo-guide-content h2{font-size:1.65rem;line-height:1.2}.mo-choices label{padding:14px;min-height:52px}.mo-nav{gap:12px;flex-wrap:wrap}.mo-nav button{min-height:48px}.plain-link,.text-button{overflow-wrap:break-word}.intro-build{font-size:clamp(2.2rem,12vw,4.8rem)}.site-intro .intro-caption{font-size:.7rem;letter-spacing:.13em;padding-inline:20px}
}
@media(max-width:360px){:root{--phone-gutter:16px}.header .wordmark{font-size:23px}.hero-content{padding-top:94px}.path-card{padding:20px}.home-sector{grid-template-columns:90px minmax(0,1fr);gap:14px}.home-sector h3{font-size:1.05rem}.page-intro h1{font-size:2.2rem}.contact-with-mo .contact-title,.home-page .contact-title{font-size:2.4rem}.flip-back{padding:20px}.mo-portrait{grid-template-columns:75px minmax(0,1fr)}.mo-portrait img{width:75px}.mo-portrait figcaption{flex-wrap:wrap;gap:4px}}
/* Compact application images keep the category visible on a phone. */
@media(max-width:700px){
 .flip-front img{height:clamp(140px,42vw,185px);aspect-ratio:auto;object-fit:cover}.flip-copy{padding:20px}.flip-copy h3,.flip-back h3{font-size:1.4rem}.flip-copy p{margin:12px 0;font-size:1rem}.flip-back{padding:22px;gap:16px}.flip-back p{font-size:1rem;line-height:1.6}.sector-grid{gap:20px}.flip-front figcaption{font-size:.65rem;padding:4px 6px;left:10px;bottom:8px}.flip-inner{transition-duration:.45s}.home-sector img{aspect-ratio:1;height:auto}.detail-page .contact-with-mo{grid-template-columns:minmax(0,1fr);gap:24px}.detail-page .mo-portrait{max-width:none}.detail-page .contact-top{padding-block:36px}.detail-page .contact-title{font-size:clamp(2.5rem,10vw,3.6rem)}.footer-pages a{min-height:44px}
}
