/* Public v1 additions to the supplied brand theme. */
.nav-wrap{gap:14px}.hero-grid>*{min-width:0}.eyebrow{line-height:1.7}
.intent-panel{padding:36px;border:1px solid var(--line);border-radius:28px;background:radial-gradient(ellipse at center,rgba(94,77,255,.14),transparent 70%),var(--panel);text-align:center;box-shadow:var(--shadow)}
.intent-panel .eyebrow{justify-content:center}.intent-quote{line-height:1.7;color:var(--text)}
.intent-line{font-size:28px;color:var(--cyan);padding:14px}
.public-engine{padding:25px 12px;border:1px solid var(--purple);border-radius:20px;box-shadow:0 0 35px rgba(94,77,255,.18)}
.public-engine strong{font-family:'Space Grotesk',sans-serif;font-size:38px}.public-engine strong span{color:var(--cyan)}.public-engine p{margin-bottom:0;color:var(--muted)}
.outcome-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.outcome-chips span{border:1px solid var(--line);padding:10px;border-radius:12px;font-size:14px}
.lifecycle-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.security-cap{grid-column:1/-1;min-height:0}.security-cap .icon{margin-bottom:20px}
.connectivity-note{color:var(--muted);line-height:1.7;margin-top:24px}.feature-card .icon{margin-bottom:24px}
.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0}.contact-actions a{overflow-wrap:anywhere}.contact-actions p{color:var(--muted);line-height:1.7}
.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--panel);padding:16px;border:2px solid var(--cyan)}.skip-link:focus{top:10px}
:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}section[id],main[id]{scroll-margin-top:100px}
.reveal{opacity:1;transform:none}
.site-content h2{font-size:clamp(1.75em,3.25vw,2.625em)!important}.site-content h3{font-size:1.2em!important}
.site-content .hero h1{font-size:clamp(2.125em,4.1vw,3.25em)!important;line-height:1.12!important}
.site-content .eyebrow{font-size:.875em!important}.site-content .microcopy{font-size:.875em!important}
.footer-links{flex-wrap:wrap}.footer-legal p{line-height:1.7}.site-content,.site-footer{overflow-wrap:break-word}
@media(max-width:1100px){.nav,.desktop-cta{display:none}.menu-btn{display:block;margin-left:auto}.nav.open{display:flex;position:absolute;top:78px;left:14px;right:14px;flex-direction:column;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:var(--shadow)}}
@media(max-width:980px){.lifecycle-grid,.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{gap:36px}}
@media(max-width:640px){.nav-wrap{height:auto;min-height:78px;flex-wrap:wrap;gap:8px;padding:10px 0}.brand{flex-basis:calc(100% - 100px)!important}.theme-toggle{margin-left:auto}.font-controls{order:4;flex-basis:100%;width:fit-content;justify-content:center;margin:0;transform:none}.menu-btn{margin-left:0}.nav.open{top:100%;max-height:70vh;overflow:auto}.lifecycle-grid,.capability-grid{grid-template-columns:1fr}.intent-panel{padding:24px}.site-content .hero h1{font-size:2.125em!important}.site-content h2{font-size:1.75em!important}.section{padding:60px 0}.ai-banner{gap:20px}.contact-actions .btn{width:100%}section[id],main[id]{scroll-margin-top:145px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Supplied TAAE brand artwork, preserved in both themes. */
.nav-wrap{height:114px}
.brand{height:102.5px!important}
.brand .brand-logo{position:static;transform:none;height:auto!important;max-height:none!important;aspect-ratio:2172/724;object-fit:contain;opacity:1;visibility:visible}
.footer-brand img{width:260px;height:auto;object-fit:contain;border-radius:8px}
section[id],main[id]{scroll-margin-top:130px}
@media(max-width:1100px){.nav.open{top:114px}}
@media(max-width:980px){.brand{height:92.5px!important}}
@media(max-width:640px){.nav-wrap{height:auto}.brand{height:82.5px!important}.nav.open{top:100%}section[id],main[id]{scroll-margin-top:185px}}

/* Wide branding with darker navy header and footer; original body palette. */
.site-header,:root[data-theme="light"] .site-header{background:#081b3d;border-bottom:1px solid rgba(112,181,255,.22)}
.nav-wrap{height:118px;gap:12px}
.brand{width:300px!important;flex:0 0 300px!important;height:auto!important}
.brand .brand-logo{width:300px!important;max-width:100%;height:auto!important;max-height:none!important;aspect-ratio:2172/724;object-fit:contain}
.footer-brand img{width:360px;max-width:100%;height:auto;aspect-ratio:2172/724;border-radius:0}
.site-footer,:root[data-theme="light"] .site-footer{background:#081b3d;color:#b7cceb}
.footer-links a,.footer-brand p,.footer-legal,:root[data-theme="light"] .footer-links a,:root[data-theme="light"] .footer-brand p,:root[data-theme="light"] .footer-legal{color:#b7cceb}
.public-engine{padding:12px 20px 22px}
.hero-brand-icon{display:block;width:220px;height:auto;margin:0 auto;object-fit:contain}
:root[data-theme="light"] .site-header .themed-nav a,:root[data-theme="light"] .site-header .menu-style-cta,:root[data-theme="light"] .site-header .font-controls button,:root[data-theme="light"] .site-header .theme-toggle{color:#e9f3ff}
:root[data-theme="light"] .site-header .font-controls,:root[data-theme="light"] .site-header .theme-toggle,:root[data-theme="light"] .site-header .menu-style-cta{background:rgba(83,137,223,.16)}
:root[data-theme="light"] .menu-btn span{background:#e9f3ff}
section[id],main[id]{scroll-margin-top:135px}
@media(max-width:1100px){.nav.open{top:118px;background:#081b3d!important}.brand{flex-basis:320px!important;width:320px!important}.brand .brand-logo{width:320px!important}}
@media(max-width:640px){.nav-wrap{height:auto;gap:8px}.brand{flex:1 1 calc(100% - 100px)!important;width:auto!important;min-width:0}.brand .brand-logo{width:100%!important;max-width:320px}.nav.open{top:100%}.hero-brand-icon{width:190px}.footer-brand img{width:320px}section[id],main[id]{scroll-margin-top:170px}}

/* Slightly reduce the header wordmark across screen sizes. */
.brand .brand-logo{width:270px!important}
@media(max-width:1100px){.brand{flex-basis:290px!important;width:290px!important}.brand .brand-logo{width:290px!important}}
@media(max-width:640px){.brand{flex:1 1 calc(100% - 100px)!important;width:auto!important;min-width:0}.brand .brand-logo{width:100%!important;max-width:290px}}


/* Native anchor landing offset for the sticky header. */
#how{scroll-margin-top:140px!important}
@media(max-width:640px){#how{scroll-margin-top:190px!important}}


/* Keep the header shortcut above overlapping tagline/header layers. */
.header-see-how{z-index:100!important;pointer-events:auto!important}
.header-statement{pointer-events:none}

