/* v0.5.3 — readable type, restrained contact icons and orange navigation. */
body{font-size:18px;line-height:1.8}
.eyebrow,.story-index,.client-heading .eyebrow,.services-intro .eyebrow,.projects-heading .eyebrow,.moments-heading .eyebrow,.section-heading .eyebrow,.contact-copy .eyebrow,.technology-v3 .technology-copy .eyebrow{font-size:14px;line-height:1.75;letter-spacing:.08em}
.button,.text-action{font-size:16px}
.button{max-width:100%;white-space:normal}
.hero-v5 .immersion-kicker{font-size:14px}
.hero-v5 h1{font-size:clamp(64px,6vw,96px)}
.hero-v5 .immersion-intro{font-size:18px;max-width:780px;line-height:1.85}
.hero-v5 .immersion-actions .button,.hero-v5 .immersion-actions .text-action{font-size:16px}
.hero-v5 .frame-float figcaption{font-size:13px}
.hero-v5 .frame-summit{--top:675px}
.client-heading h2{font-size:42px}
.client-heading-note p{font-size:17px}
.services-intro h2,.projects-heading h2,.moments-heading h2,.section-heading h2,.technology-v3 .technology-copy h2{font-size:56px;line-height:1.18}
.services-intro>p,.projects-heading>p,.moments-heading>div:last-child p{font-size:18px;line-height:1.85}
.story-copy h3{font-size:64px;line-height:1.14}
.story-copy>p:not(.story-index),.technology-v3 .technology-copy>p:not(.eyebrow):not(.technology-principle){font-size:18px;line-height:1.85}
.story-copy .button,.technology-v3 .technology-copy .button{font-size:16px}
.project-card h3{font-size:22px;line-height:1.45}
.project-meta{font-size:14px}
.more-projects .button{font-size:16px}
.more-projects>span{font-size:14px}
.moment-card figcaption{font-size:14px}
.technology-principle{font-size:13px;line-height:1.8}
.technology-signature{font-size:13px}
.step{font-size:17px}
.approach-grid h3{font-size:25px;line-height:1.4}
.approach-grid p{font-size:18px;line-height:1.85}
.about-strip>p{font-size:17px}
.about-strip .text-action{font-size:16px}
.contact-copy h2{font-size:48px;line-height:1.22}
.contact-copy>p:not(.eyebrow):not(.contact-caption){font-size:18px;line-height:1.85}
.brief-form label{font-size:16px}
.brief-form input,.brief-form select,.brief-form textarea{font-size:17px;line-height:1.5;min-height:54px}
.brief-form input::placeholder,.brief-form textarea::placeholder{font-size:16px}
.form-actions .button{font-size:16px}
.copy-brief,.form-status{font-size:15px}
.footer-top>p{font-size:16px}
.footer-bottom,.footer-bottom>p,.footer-bottom>div,.footer-bottom>span{font-size:14px}
.dialog-copy h2{font-size:36px}
.dialog-copy .eyebrow{font-size:14px}
.dialog-description,.dialog-copy .button{font-size:17px}
/* Quiet orange icons, with a larger invisible touch target. */
.contact-socials{display:flex;align-items:center;gap:10px;margin-top:22px}
.contact-socials a{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;transition:transform .2s,background .2s}
.contact-socials img{display:block;width:32px;height:32px;object-fit:contain;transition:transform .2s}
.contact-socials a:hover{transform:translateY(-3px);background:#fa461610}
.contact-socials a:hover img{transform:scale(1.05)}
.contact-socials a:focus-visible{outline:2px solid #fa4616;outline-offset:3px}
.contact-signature{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:32px}
.contact-signature>img{display:block;width:176px;height:auto}
.contact-signature>span{display:block;font-size:13px;font-weight:750;letter-spacing:.06em;color:#77777f;line-height:1.5;white-space:nowrap}
/* Underline grows from left to right on hover and keyboard focus. */
.site-header .nav-wrap{min-height:88px}
.site-header .desktop-nav{font-size:16px;gap:28px}
.site-header .desktop-nav a,.site-header .mobile-nav a{position:relative;transition:color .2s}
.site-header .desktop-nav a:after,.site-header .mobile-nav a:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:#fa4616;transform:scaleX(0);transform-origin:left;transition:transform .23s cubic-bezier(.2,.7,.3,1)}
.site-header .desktop-nav a:is(:hover,:focus-visible),.site-header .mobile-nav a:is(:hover,:focus-visible){color:#fa4616}
.site-header .desktop-nav a:is(:hover,:focus-visible):after,.site-header .mobile-nav a:is(:hover,:focus-visible):after{transform:scaleX(1)}
.site-header .mobile-nav a:after{right:auto;width:42px;bottom:5px}
.site-header .nav-cta{border:1.5px solid #fa4616;border-radius:999px;background:transparent;color:#fa4616;padding:10px 20px;min-height:48px;font-size:15px;gap:10px;white-space:nowrap;transition:background .2s,color .2s}
.site-header .nav-cta svg{color:currentColor}
.site-header .nav-cta:hover,.site-header .nav-cta:focus-visible{background:#fa4616;color:#fff;transform:none}
.site-header .mobile-nav a{font-size:17px}
@media(min-width:1680px){.hero-v5 .frame-summit{--top:745px}}
@media(max-width:1100px) and (min-width:701px){
 .hero-v5 h1{font-size:clamp(54px,6.4vw,74px)}
 .hero-v5 .frame-summit{--top:640px}
 .services-intro h2,.projects-heading h2,.moments-heading h2,.section-heading h2,.technology-v3 .technology-copy h2{font-size:49px}
 .story-copy h3{font-size:54px}
 .contact-copy h2{font-size:43px}
 .site-header .desktop-nav{font-size:14px;gap:17px}
}
@media(max-width:900px){
 .services-intro h2,.projects-heading h2,.moments-heading h2,.section-heading h2,.technology-v3 .technology-copy h2{font-size:45px}
 .story-copy h3{font-size:49px}
 .about-strip{align-items:flex-start}
 .about-strip>p{flex:1;min-width:220px}
 .about-strip .text-action{margin-left:64px}
}
@media(max-width:800px){
 .site-header .nav-wrap{min-height:72px;gap:0 12px}
 .site-header .brand{min-height:72px}
 .site-header .nav-cta{font-size:13.5px;min-height:44px;padding:9px 13px;gap:8px}
 .site-header .nav-cta svg{width:16px;height:16px}
}
@media(max-width:700px){
 body{font-size:17px}
 .eyebrow,.story-index,.client-heading .eyebrow,.services-intro .eyebrow,.projects-heading .eyebrow,.moments-heading .eyebrow,.section-heading .eyebrow,.contact-copy .eyebrow,.technology-v3 .technology-copy .eyebrow{font-size:13px;letter-spacing:.055em}
 .hero-v5 .immersion-kicker{font-size:12px;letter-spacing:.02em;gap:8px}
 .hero-v5 h1{font-size:clamp(38px,9.5vw,60px);line-height:1.15}
 .hero-v5 h1 em{font-size:clamp(48px,11vw,70px);line-height:1.13}
 .hero-v5 .immersion-intro{font-size:16.5px;line-height:1.85}
 .hero-v5 .immersion-actions .button,.hero-v5 .immersion-actions .text-action{font-size:15px}
 .hero-v5 .frame-float figcaption{font-size:12px}
 .hero-v5 .frame-summit{--top:190px}
 .client-heading h2{font-size:34px}
 .client-heading-note p{font-size:16px;max-width:none}
 .services-intro h2,.projects-heading h2,.moments-heading h2,.section-heading h2,.technology-v3 .technology-copy h2{font-size:40px;line-height:1.2}
 .services-intro>p,.projects-heading>p,.moments-heading>div:last-child p{font-size:17px}
 .story-copy h3{font-size:47px}
 .story-copy>p:not(.story-index),.technology-v3 .technology-copy>p:not(.eyebrow):not(.technology-principle){font-size:17px;line-height:1.85}
 .story-copy .button,.technology-v3 .technology-copy .button{font-size:15px;white-space:normal;text-align:left;max-width:100%}
 .project-card h3{font-size:20px}
 .project-meta{font-size:13px}
 .more-projects .button{font-size:15px}
 .more-projects>span{font-size:13px}
 .moment-card figcaption{font-size:14px}
 .technology-principle{font-size:12.5px;letter-spacing:.02em}
 .step{font-size:16px}
 .approach-grid h3{font-size:23px}
 .approach-grid p{font-size:17px}
 .about-strip>p{font-size:16px;min-width:0}
 .about-strip .text-action{font-size:15px;margin-left:47px}
 .contact-copy h2{font-size:38px}
 .contact-copy>p:not(.eyebrow):not(.contact-caption){font-size:17px}
 .contact-socials{gap:8px;margin-top:20px}
 .contact-signature{margin-top:26px;gap:12px}
 .contact-signature>img{width:158px}
 .brief-form label{font-size:16px}
 .brief-form input,.brief-form select,.brief-form textarea{font-size:17px}
 .form-actions .button{font-size:15px}
 .copy-brief,.form-status{font-size:14px}
 .footer-top>p{font-size:14px;max-width:none}
 .footer-bottom,.footer-bottom>p,.footer-bottom>div,.footer-bottom>span{font-size:13px}
 .dialog-copy h2{font-size:29px}
 .dialog-copy .eyebrow{font-size:13px}
 .dialog-description,.dialog-copy .button{font-size:16px}
}
@media(max-width:370px){
 .hero-v5 .immersion-kicker{font-size:11.5px}
 .services-intro h2,.projects-heading h2,.moments-heading h2,.section-heading h2,.technology-v3 .technology-copy h2{font-size:35px}
 .story-copy h3{font-size:42px}
 .client-heading h2{font-size:31px}
 .contact-copy h2{font-size:34px}
 .project-card h3{font-size:19px}
 .contact-signature>span{font-size:12px;letter-spacing:.04em}
}
@media(max-width:360px){
 .site-header .nav-wrap{gap:0 10px}
 .site-header .nav-cta{font-size:13px;padding:9px 12px;gap:0}
 .site-header .nav-cta svg{display:none}
}
@media(prefers-reduced-motion:reduce){
 .contact-socials a,.contact-socials img,.site-header .desktop-nav a:after,.site-header .mobile-nav a:after{transition:none}
}
