:root{--blue-950:#071a2e;--blue-900:#0b3a66;--blue-800:#124a7c;--blue-700:#1e6bb8;--blue-600:#2a7fd4;--blue-400:#7eb6e8;--blue-200:#c5dff5;--blue-100:#e8f2fb;--blue-50:#f4f8fc;--saffron:#e86a12;--saffron-soft:#f5a623;--saffron-deep:#c44a0a;--cyan:#3d9fd6;--ink:#0e2438;--ink-muted:#4a6278;--surface:#fff;--line:#0b3a661f;--font-display:"Fraunces", Georgia, serif;--font-body:"Sora", system-ui, sans-serif;--space:clamp(1rem, 4vw, 2rem);--edge-x:clamp(1rem, 4vw, 3.5rem);--max:1120px;--radius:4px;--ease:cubic-bezier(.22, 1, .36, 1);--nav-h:4.25rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{max-width:100%;overflow-x:clip}body{font-family:var(--font-body);color:var(--ink);background:var(--blue-50);-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom,0px);margin:0;font-size:1rem;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;word-break:break-word;margin:0;font-weight:600;line-height:1.15}p{overflow-wrap:break-word;margin:0}.container{width:min(100% - 2 * var(--space), var(--max));margin-inline:auto}.scroll-progress{z-index:50;transform-origin:0;background:linear-gradient(90deg, var(--saffron), var(--blue-600), var(--cyan));pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0}.nav{z-index:40;padding:calc(.85rem + env(safe-area-inset-top,0px)) 0 .85rem;transition:background .35s var(--ease), box-shadow .35s var(--ease), backdrop-filter .35s var(--ease), padding .35s var(--ease);position:fixed;inset:0 0 auto}.nav-solid,.nav-open{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#071a2ef5;box-shadow:0 1px #ffffff0f}.nav-inner{width:100%;min-height:2.75rem;padding-inline:max(var(--edge-x), env(safe-area-inset-left,0px)) max(var(--edge-x), env(safe-area-inset-right,0px));justify-content:space-between;align-items:center;gap:.75rem;display:flex}.nav-brand{min-width:0;font-family:var(--font-display);color:#fff;letter-spacing:-.01em;align-items:center;gap:.55rem;font-size:clamp(.95rem,3.8vw,1.15rem);font-weight:600;display:inline-flex}.nav-logo{object-fit:contain;filter:drop-shadow(0 1px 2px #00000059);background:0 0;border-radius:0;flex-shrink:0;width:auto;max-width:min(180px,46vw);height:36px;padding:0}.nav-brand-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.nav-brand-text span{opacity:.7;font-weight:500}.nav-brand-text em{color:var(--saffron-soft);opacity:1;font-style:normal;font-weight:600}.nav-toggle{border-radius:var(--radius);cursor:pointer;width:44px;height:44px;transition:background .25s var(--ease), border-color .25s var(--ease);background:#ffffff14;border:1px solid #ffffff2e;flex-direction:column;flex-shrink:0;justify-content:center;gap:5px;margin:0;padding:10px;display:inline-flex}.nav-toggle:hover,.nav-toggle.is-open{background:#c9922a2e;border-color:#e8c56a8c}.nav-toggle span{width:100%;height:2px;transition:transform .28s var(--ease), opacity .2s, background .25s;transform-origin:50%;background:#fff;border-radius:2px;display:block}.nav-toggle.is-open span{background:var(--saffron-soft)}.nav-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-backdrop{z-index:35;cursor:pointer;background:#071a2e73;border:0;margin:0;padding:0;position:fixed;inset:0}.nav-drawer{top:calc(var(--nav-h) + env(safe-area-inset-top,0px));z-index:39;padding:.5rem max(var(--edge-x), env(safe-area-inset-right,0px)) calc(1.5rem + env(safe-area-inset-bottom,0px)) max(var(--edge-x), env(safe-area-inset-left,0px));opacity:0;visibility:hidden;pointer-events:none;transition:transform .35s var(--ease), opacity .25s var(--ease), visibility .35s;background:linear-gradient(#c9922a1f 0%,#0000 28%),#071a2efa;border-bottom:1px solid #e8c56a40;gap:1.25rem;display:grid;position:fixed;left:0;right:0;transform:translateY(-112%);box-shadow:0 18px 40px #00000059}.nav-drawer.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.nav-links{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.nav-links a{color:#ffffffe6;min-height:48px;transition:color .2s var(--ease), padding-left .2s var(--ease);border-bottom:1px solid #ffffff14;align-items:center;font-size:1.05rem;font-weight:500;display:flex}.nav-links a:hover,.nav-links a:active{color:var(--saffron-soft)}@media (width<=899px){.nav-links a:hover,.nav-links a:active{padding-left:.35rem}}.nav-cta{background:var(--saffron);color:#fff;border-radius:var(--radius);border:1px solid var(--saffron);min-height:44px;transition:transform .25s var(--ease), background .2s, border-color .2s, color .2s;white-space:nowrap;text-align:center;justify-content:center;align-items:center;padding:.7rem 1.15rem;font-size:.875rem;font-weight:600;display:inline-flex}.nav-cta:hover{background:var(--saffron-deep);border-color:var(--saffron-deep);color:#fff;transform:translateY(-1px)}.nav-cta-desktop{display:none}.nav-cta-drawer{width:100%}@media (width>=900px){.nav-toggle,.nav-backdrop,.nav-cta-drawer{display:none}.nav{border-bottom:1px solid #0000}.nav-solid{border-bottom-color:#e8c56a33}.nav-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem 1.5rem;display:grid}.nav-drawer{opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;background:0 0;border:0;padding:0;display:contents;position:static;transform:none}.nav-links{justify-content:center;align-items:center;gap:clamp(1.25rem,2.5vw,2.25rem);display:flex}.nav-links a{color:#ffffffd9;white-space:nowrap;border-bottom:0;min-height:auto;padding-bottom:.25rem;font-size:.875rem;position:relative}.nav-links a:after{content:"";background:var(--saffron);transform-origin:0;height:1.5px;transition:transform .28s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-links a:hover{color:#fff}.nav-links a:hover:after{transform:scaleX(1)}.nav-cta-desktop{justify-self:end;display:inline-flex}.nav-logo{max-width:220px;height:42px}}.hero{color:#fff;align-items:end;min-height:100dvh;display:grid;position:relative;overflow:hidden}.hero-media{z-index:0;position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:center 40%;will-change:transform;width:100%;max-width:none;height:120%}.hero-shade{background:linear-gradient(165deg,#071a2ee6 0%,#0b3a66c7 48%,#124a7c8c 100%),linear-gradient(#0000 52%,#071a2ed1 100%);position:absolute;inset:0}.hero-content{z-index:1;width:100%;padding:calc(6.5rem + env(safe-area-inset-top,0px)) max(var(--edge-x), env(safe-area-inset-right,0px)) calc(3rem + env(safe-area-inset-bottom,0px)) max(var(--edge-x), env(safe-area-inset-left,0px));position:relative}.hero-copy{max-width:40rem}.hero-logo-wrap{margin-bottom:1.15rem}.hero-logo{filter:drop-shadow(0 2px 10px #00000059);width:min(100%,320px);height:auto;display:block}@media (width>=700px){.hero-logo{width:min(100%,380px)}}.hero-title{font-family:var(--font-body);letter-spacing:-.01em;color:#fffffff2;max-width:32rem;margin-bottom:.9rem;font-size:clamp(1rem,3.8vw,1.35rem);font-weight:500;line-height:1.45}.hero-lede{color:#ffffffc7;max-width:34rem;margin-bottom:1.5rem;font-size:clamp(.9rem,3.4vw,.975rem);line-height:1.65}.hero-actions{flex-flow:column wrap;gap:.75rem;display:flex}.hero-actions .btn{width:100%}.btn{border-radius:var(--radius);cursor:pointer;min-height:48px;transition:transform .25s var(--ease), background .2s, border-color .2s, color .2s;text-align:center;border:1.5px solid #0000;justify-content:center;align-items:center;padding:.9rem 1.25rem;font-size:.875rem;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-2px)}}.btn-primary{background:var(--saffron);color:#fff;border-color:var(--saffron)}.btn-primary:hover{background:var(--saffron-deep);border-color:var(--saffron-deep)}.btn-ghost{color:#fff;background:0 0;border-color:#ffffff73}.btn-ghost:hover{background:#ffffff1a;border-color:#fff}.btn-solid{background:var(--blue-900);color:#fff;border-color:var(--blue-900)}.btn-solid:hover{background:var(--blue-800)}.btn-lg{width:min(100%,22rem);max-width:100%;padding:1.05rem 1.4rem;font-size:.95rem}@media (width>=560px){.hero-actions{flex-direction:row}.hero-actions .btn{width:auto}.hero-content{padding-bottom:4.5rem}.hero-shade{background:linear-gradient(105deg,#071a2ee0 0%,#0b3a66b8 48%,#124a7c73 100%),linear-gradient(#0000 55%,#071a2ebf 100%)}}.section{padding:clamp(3.25rem,8vw,6.5rem) 0}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--saffron-deep);margin-bottom:.85rem;font-size:.72rem;font-weight:600;display:block}.section-title{color:var(--blue-950);max-width:22ch;margin-bottom:1.1rem;font-size:clamp(1.55rem,6.5vw,2.65rem)}.section-lede{color:var(--ink-muted);max-width:42rem;font-size:clamp(.95rem,3.5vw,1.05rem)}.section-lede+.section-lede{margin-top:1rem}.entity{background:#fff;padding-top:clamp(2.5rem,5vw,3.5rem);padding-bottom:clamp(2.5rem,5vw,3.5rem)}.entity-panel{gap:1.75rem;max-width:52rem;display:grid}.entity-lead{color:var(--ink);max-width:46rem;font-size:clamp(1.05rem,2.8vw,1.25rem);line-height:1.55}.entity-lead strong{color:var(--blue-950)}.entity-facts{border-top:1px solid var(--line);gap:1rem;margin:0;padding:1.25rem 0 0;list-style:none;display:grid}@media (width>=700px){.entity-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem 2rem}}.entity-facts li{gap:.25rem;display:grid}.entity-facts span{letter-spacing:.1em;text-transform:uppercase;color:var(--saffron-deep);font-size:.72rem;font-weight:600}.entity-facts strong,.entity-facts a{color:var(--ink);font-size:.95rem;font-weight:500;line-height:1.45}.entity-facts a:hover{color:var(--saffron-deep)}.about{background:radial-gradient(ellipse 70% 55% at 0% 20%, #e86a121a, transparent 50%), linear-gradient(180deg, var(--blue-50) 0%, #fff 100%)}.about-layout{gap:2rem;display:grid}@media (width>=900px){.about-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:3.5rem}}.about-visual{min-height:240px;overflow:hidden}.about-visual img{object-fit:cover;object-position:center;width:100%;height:clamp(240px,52vw,520px)}.about-content{gap:1.25rem;display:grid}.about-copy p{color:var(--ink-muted);margin-bottom:1rem;font-size:clamp(.92rem,3.4vw,1rem)}.about-copy p:last-child{margin-bottom:0}.about-aside{border-top:1px solid var(--line);gap:1rem;margin-top:.5rem;padding:1.35rem 0 0;display:grid}@media (width>=520px){.about-aside{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}.about-stat strong{font-family:var(--font-display);color:var(--blue-900);margin-bottom:.2rem;font-size:clamp(1.35rem,4.5vw,1.65rem);display:block}.about-stat span{color:var(--ink-muted);font-size:.85rem}.serve{background:#fff}.serve-split{gap:2rem;margin-top:2.25rem;display:grid}@media (width>=800px){.serve-split{grid-template-columns:1fr 1fr;gap:2.5rem}}.serve-photo{margin-bottom:1.25rem;overflow:hidden}.serve-photo img{object-fit:cover;width:100%;height:clamp(160px,38vw,220px)}.serve-col h3{color:var(--blue-950);margin-bottom:.75rem;font-size:clamp(1.15rem,4.5vw,1.35rem)}.serve-col>p{color:var(--ink-muted);margin-bottom:1.35rem;font-size:.95rem}.serve-list{gap:1.15rem;margin:0;padding:0;list-style:none;display:grid}.serve-list li strong{font-family:var(--font-body);color:var(--blue-900);margin-bottom:.2rem;font-size:.925rem;font-weight:600;display:block}.serve-list li span{color:var(--ink-muted);font-size:.875rem;line-height:1.55}.visual-band{color:#fff;place-items:center;min-height:clamp(280px,48vw,420px);display:grid;position:relative;overflow:hidden}.visual-band-media{position:absolute;inset:0}.visual-band-media img{object-fit:cover;width:100%;max-width:none;height:100%}.visual-band-shade{background:linear-gradient(120deg,#071a2ee0 0%,#0b3a66b8 55%,#9a6f1a73 100%);position:absolute;inset:0}.visual-band-copy{z-index:1;width:min(100% - 2 * var(--space), 36rem);text-align:center;padding:3rem 0;position:relative}.visual-band-quote{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.45rem,5vw,2.15rem);line-height:1.25}.visual-band-attrib{letter-spacing:.14em;text-transform:uppercase;color:var(--saffron-soft);font-size:.8rem;font-weight:600}.services{background:linear-gradient(165deg, var(--blue-950) 0%, var(--blue-900) 55%, var(--blue-800) 100%);color:#fff}.services .section-label{color:var(--saffron-soft)}.services .section-title{color:#fff;max-width:18ch}.services .section-lede{color:#ffffffb8}.services-list{gap:0;margin:2.25rem 0 0;padding:0;list-style:none;display:grid}.service-item{border-top:1px solid #ffffff1f;gap:.75rem;padding:1.5rem 0;display:grid}@media (width>=700px){.service-item{grid-template-columns:3.5rem 1fr;gap:1.5rem;padding:2rem 0}}.service-item:last-child{border-bottom:1px solid #ffffff1f}.service-num{font-family:var(--font-display);color:var(--saffron-soft);font-size:1.35rem;line-height:1}.service-summary{max-width:40rem;color:var(--ink);margin:.55rem 0 1rem;font-size:1.02rem;line-height:1.55}.service-item h3{margin-bottom:.85rem;font-size:clamp(1.1rem,4vw,1.25rem)}.service-item ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.service-item li{color:#ffffffbf;padding-left:1rem;font-size:.9rem;position:relative}.service-item li:before{content:"";background:var(--saffron);border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:0}.service-item li strong{color:#fff;font-weight:600}.service-systems{letter-spacing:.04em;color:var(--saffron-soft);border-top:1px solid #ffffff1f;margin-top:1.15rem;padding-top:.9rem;font-size:.8rem}.why{background:radial-gradient(ellipse 70% 50% at 0% 100%, #2a7fd41f, transparent 50%), var(--blue-50)}.why-grid{gap:1.5rem;margin-top:2.25rem;display:grid}@media (width>=700px){.why-grid{grid-template-columns:1fr 1fr;gap:2.5rem 3rem}}.why-item h3{font-family:var(--font-body);color:var(--blue-900);margin-bottom:.45rem;font-size:1.05rem;font-weight:600}.why-item p{color:var(--ink-muted);font-size:.925rem}.why-item{border-top:2px solid var(--saffron);padding-top:1.15rem}.faq{background:#fff}.faq-list{border-top:1px solid var(--line);gap:0;max-width:44rem;margin-top:2.25rem;display:grid}.faq-item{border-bottom:1px solid var(--line);padding:1.15rem 0}.faq-item summary{cursor:pointer;font-family:var(--font-body);color:var(--blue-950);justify-content:space-between;align-items:flex-start;gap:1rem;font-size:1.02rem;font-weight:600;line-height:1.4;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--saffron);flex-shrink:0;font-size:1.25rem;font-weight:500;line-height:1}.faq-item[open] summary:after{content:"–"}.faq-item p{color:var(--ink-muted);max-width:40rem;margin-top:.75rem;font-size:.95rem}.contact-note{color:var(--ink-muted);max-width:28rem;margin-inline:auto;font-size:.9rem}.contact{background:radial-gradient(ellipse 90% 70% at 50% 0%, #7eb6e859, transparent 55%), linear-gradient(160deg, var(--blue-100) 0%, #fff 55%, var(--blue-50) 100%)}.contact-panel{text-align:center;justify-items:center;gap:2rem;max-width:44rem;margin-inline:auto;display:grid}.contact .section-title{max-width:16ch;margin-inline:auto}.contact .section-lede{margin-inline:auto}.contact-actions{border-top:1px solid var(--line);justify-items:center;gap:1.75rem;width:100%;padding-top:1.35rem;display:grid}.contact-actions .btn{width:min(100%,22rem);margin-inline:auto}.contact-meta{gap:1.15rem;width:100%;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.contact-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}.contact-meta li{justify-items:center;gap:.35rem;display:grid}.contact-meta span{letter-spacing:.08em;text-transform:uppercase;color:var(--saffron-deep);font-size:.75rem;font-weight:600}.contact-meta a,.contact-meta strong{color:var(--ink);overflow-wrap:anywhere;font-size:clamp(.92rem,3.5vw,1.05rem);font-weight:500}.contact-meta a:hover{color:var(--blue-700)}.footer{background:radial-gradient(ellipse 70% 80% at 10% 0%, #1e6bb838, transparent 50%), var(--blue-950);color:#ffffffad;padding:0;font-size:.9rem}.footer-shell{width:100%;padding-inline:max(var(--edge-x), env(safe-area-inset-left,0px)) max(var(--edge-x), env(safe-area-inset-right,0px));padding-bottom:env(safe-area-inset-bottom,0px)}.footer-compact{justify-items:start;gap:.85rem;padding:1.5rem 0 .25rem;display:grid}.footer-compact .footer-logo-link{margin-bottom:0}.footer-compact-mail{color:#ffffffd9;overflow-wrap:anywhere;font-size:.925rem}.footer-compact-mail:hover{color:var(--saffron-soft)}.footer-compact-nav{flex-wrap:wrap;gap:.85rem 1.25rem;display:flex}.footer-compact-nav a{color:#ffffffa6;font-size:.85rem}.footer-compact-nav a:hover{color:#fff}.footer-top-desktop{display:none}@media (width>=900px){.footer-compact{display:none}.footer-top-desktop{border-bottom:1px solid #ffffff1a;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr);align-items:start;gap:4rem;padding:clamp(3rem,6vw,4.5rem) 0 2.5rem;display:grid}}.footer-brand-block{max-width:26rem}.footer-logo-link{align-items:center;margin-bottom:1rem;display:inline-flex}.footer-logo-link img{object-fit:contain;filter:drop-shadow(0 1px 2px #00000059);background:0 0;border-radius:0;flex-shrink:0;width:auto;max-width:200px;height:40px;padding:0}.footer-logo-link em{color:var(--saffron-soft);font-style:normal}.footer-brand-block p{color:#ffffff9e;font-size:.925rem;line-height:1.7}.footer-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;display:grid}.footer-col h3{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--saffron-soft);margin-bottom:.85rem;font-size:.75rem;font-weight:600}.footer-col ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.footer-col a,.footer-col span{color:#ffffffb8;transition:color .2s var(--ease);overflow-wrap:anywhere;font-size:.9rem}.footer-col a{align-items:center;min-height:32px;display:inline-flex}.footer-col a:hover{color:#fff}.footer-bottom{color:#ffffff73;border-top:1px solid #ffffff1a;flex-direction:column;gap:.35rem;margin-top:1rem;padding:1.1rem 0 1.25rem;font-size:.78rem;display:flex}@media (width>=640px){.footer-bottom{flex-flow:wrap;justify-content:space-between;gap:.75rem 1.5rem}}@media (width>=900px){.footer-bottom{border-top:0;margin-top:0;padding:1.35rem 0 1.6rem}.footer-logo-link img{width:44px;height:44px}}@media (width<=359px){.nav-logo{height:30px}.btn{padding-inline:1rem;font-size:.8125rem}}
