:root{--navy:#0b2340;--navy-light:#173958;--green:#b8ed3b;--coral:#ef6a47;--cream:#f6f6ef;--slate:#516477;--white:#fff;--border:rgba(11,35,64,.1);--container:80rem;--radius:2rem}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--navy);font-family:"Aptos",Arial,sans-serif}
h1,h2,h3,.eyebrow{font-family:"Arial Narrow","Aptos Display",Arial,sans-serif}
h1,h2,h3,p{margin-top:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,a{transition:color .2s,background-color .2s,transform .2s,box-shadow .2s}
svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(calc(100% - 2.5rem),var(--container));margin-inline:auto}
.site-header{position:absolute;z-index:20;top:0;right:0;left:0}
.header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;padding-block:1.5rem}
.brand{display:flex;align-items:center;gap:.75rem}
.brand-mark{display:grid;width:2.75rem;height:2.75rem;place-items:center;border-radius:50%;background:var(--green);font-size:1.125rem;font-weight:900}
.brand strong{display:block;font-size:1.25rem;letter-spacing:.12em}.brand small{display:block;color:var(--slate);font-size:.625rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.main-nav{display:flex;align-items:center;gap:2rem;font-size:.875rem;font-weight:700}.main-nav a:hover{color:var(--coral)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:2.75rem;border:1px solid transparent;border-radius:999px;padding:.65rem 1.5rem;font:inherit;font-size:.875rem;font-weight:700;cursor:pointer}
.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:var(--white)}.button-primary:hover{background:var(--navy-light)}.button-outline{border-color:rgba(11,35,64,.25);background:transparent;color:var(--navy)}.button-large{min-height:3.5rem;padding-inline:1.75rem;font-size:1rem}.button:disabled{cursor:not-allowed;opacity:.7}.button:disabled:hover{transform:none}
.menu-button{display:none;width:2.75rem;height:2.75rem;place-items:center;border:1px solid rgba(11,35,64,.15);border-radius:50%;background:transparent;color:var(--navy)}
.hero{position:relative;min-height:50rem;padding-top:8rem;overflow:hidden}.hero-glow{position:absolute;top:0;right:0;left:0;height:40.625rem;background:radial-gradient(circle at 15% 25%,rgba(184,237,59,.28),transparent 30%),radial-gradient(circle at 88% 18%,rgba(239,106,71,.18),transparent 26%)}
.hero-grid{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:3rem;padding-top:6rem;padding-bottom:5rem}.hero-copy{position:relative;z-index:1;max-width:42rem}.kicker-pill{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;border:1px solid rgba(11,35,64,.12);border-radius:999px;background:rgba(255,255,255,.7);padding:.5rem 1rem;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}.kicker-pill svg{color:var(--coral)}
h1{margin-bottom:0;font-size:clamp(3.6rem,8vw,7.5rem);font-weight:900;letter-spacing:-.065em;line-height:.82}h1 span{color:var(--coral)}.hero-intro{max-width:36rem;margin-top:2rem;color:var(--slate);font-size:1.25rem;line-height:1.6}.button-row{display:flex;gap:.75rem;margin-top:2.25rem}
.hero-visual{position:relative;min-height:35rem}.hero-accent{position:absolute;inset:1.25rem;transform:rotate(3deg);border-radius:3rem;background:var(--green)}.hero-image{position:absolute;inset:0;overflow:hidden;border-radius:3rem;background:var(--navy-light);box-shadow:0 25px 50px rgba(11,35,64,.25)}.hero-image img{width:100%;height:100%;object-fit:cover}.promise{position:absolute;bottom:-1.25rem;left:-2rem;border-radius:1.5rem;background:var(--white);padding:1.25rem;box-shadow:0 15px 30px rgba(11,35,64,.15)}.promise span,.promise strong{display:block}.promise span{color:#6d7c89;font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.promise strong{margin-top:.25rem;font-size:1.125rem}
.section-space{padding-block:6rem}.section-dark{background:var(--navy);color:var(--white);padding-block:6rem}.two-column{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem}.align-center{align-items:center}.eyebrow{margin-bottom:1rem;font-size:.75rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.eyebrow.green{color:var(--green)}.eyebrow.coral{color:var(--coral)}
h2{margin-bottom:0;font-size:clamp(2.5rem,5vw,3.75rem);font-weight:900;letter-spacing:-.025em;line-height:1.05}.about-copy{padding-top:2rem}.about-copy>p{color:rgba(255,255,255,.75);font-size:1.25rem;line-height:1.8}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.25rem}.benefits div{border-top:1px solid rgba(255,255,255,.2);padding-top:1rem;font-weight:700}.check{display:block;margin-bottom:.75rem;color:var(--green);font-size:1.5rem}
.section-heading{max-width:48rem}.section-heading h2 span{text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:.5rem;text-underline-offset:.25rem}.pillar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:3.5rem}.pillar{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);padding:1.5rem;transition:transform .2s,box-shadow .2s}.pillar:hover{transform:translateY(-.5rem);box-shadow:0 20px 35px rgba(11,35,64,.12)}.pillar.featured{background:var(--green)}.pillar>div{display:flex;align-items:center;justify-content:space-between}.pillar b{color:rgba(11,35,64,.12);font-size:3rem}.pillar h3{margin:3rem 0 .75rem;font-size:1.25rem}.pillar p{margin-bottom:0;color:var(--slate);font-size:.875rem;line-height:1.7}
.journey-wrap{padding:0 1.25rem 6rem}.journey{overflow:hidden;border-radius:2.5rem;background:var(--coral);padding:4rem;color:var(--white)}.journey .eyebrow{color:rgba(255,255,255,.7)}.journey h2{max-width:48rem}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:3rem 0 0;padding:0;list-style:none}.journey-grid li{position:relative;display:flex;min-height:10rem;flex-direction:column;justify-content:space-between;border-radius:1.5rem;background:rgba(255,255,255,.1);padding:1.5rem;backdrop-filter:blur(8px)}.journey-grid li:not(:last-child)::after{content:"›";position:absolute;z-index:1;top:42%;right:-1.25rem;font-size:2rem}.journey-grid span{color:rgba(255,255,255,.6);font-size:.875rem;font-weight:900}.journey-grid strong{font-size:1.25rem}
.partners{border-block:1px solid var(--border);background:var(--white)}.section-copy{max-width:36rem;margin:1.5rem 0 0;color:var(--slate);font-size:1.125rem;line-height:1.75}.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.partner-grid article{display:flex;min-height:10rem;flex-direction:column;justify-content:space-between;border-radius:1.5rem;background:var(--cream);padding:1.75rem}.partner-grid svg{color:var(--coral);width:1.5rem;height:1.5rem}.partner-grid strong{font-size:1.125rem}
.contact{background:var(--green);padding-block:6rem}.contact-inner{display:flex;max-width:64rem;flex-direction:column;align-items:center;text-align:center}.contact h2{font-size:clamp(3rem,7vw,4.5rem);line-height:.95}.contact>div>p:not(.eyebrow,.pending-note){max-width:42rem;margin:1.5rem auto 0;color:#28415a;font-size:1.125rem}.pending-note{margin:2rem 0 0;color:#28415a;font-size:.875rem}
footer{background:var(--navy);padding:2.5rem 0;color:var(--white)}.footer-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem}.footer-inner>div:first-child>strong{font-size:1.875rem;letter-spacing:.12em}.footer-inner p{margin:.5rem 0 0;color:rgba(255,255,255,.6);font-size:.875rem}.footer-inner>div:first-child p{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase}
.motion-ready .site-header{animation:fade-down .55s ease-out both}.motion-ready .hero-copy{animation:fade-up .65s .08s ease-out both}.motion-ready .hero-visual{animation:fade-in-scale .75s .18s ease-out both}.motion-ready .hero-accent{animation:gentle-float 5s 1s ease-in-out infinite}.motion-ready .reveal{opacity:0;transform:translateY(1.25rem);transition:opacity .55s ease-out,transform .55s ease-out;transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.motion-ready .pillar.reveal.is-visible:hover{transform:translateY(-.5rem)}.pillar svg,.partner-grid svg{transition:transform .25s ease}.pillar:hover svg,.partner-grid article:hover svg{transform:translateY(-.2rem) rotate(-4deg)}
@keyframes fade-down{from{opacity:0;transform:translateY(-.75rem)}to{opacity:1;transform:translateY(0)}}
@keyframes fade-up{from{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}
@keyframes fade-in-scale{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}
@keyframes gentle-float{0%,100%{transform:rotate(3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-.4rem)}}
::selection{background:var(--green);color:var(--navy)}
@media(max-width:1023px){.header-cta{display:none}.menu-button{display:grid}.main-nav{position:absolute;top:5rem;right:0;left:0;display:none;flex-direction:column;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:1.5rem;background:var(--white);padding:.5rem;box-shadow:0 15px 30px rgba(11,35,64,.15)}.main-nav.is-open{display:flex}.main-nav a{padding:1rem 1.25rem}.hero-grid{grid-template-columns:1fr;padding-top:3.5rem}.hero-copy{max-width:45rem}.hero-visual{min-height:32rem}.pillar-grid{grid-template-columns:repeat(2,1fr)}.pillar:last-child{grid-column:span 2}.two-column{grid-template-columns:1fr}.about-copy{padding-top:0}}
@media(max-width:767px){.section-space,.section-dark,.contact{padding-block:5rem}.hero{padding-top:7rem}.hero-grid{gap:3.5rem;padding-bottom:5rem}.hero-visual{min-height:27rem}.promise{left:-.25rem}.button-row{flex-direction:column;align-items:stretch}.benefits,.journey-grid{grid-template-columns:1fr}.journey{padding:3rem 1.5rem}.journey-grid li{min-height:8rem}.journey-grid li::after{display:none}.partner-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.pillar h3{margin-top:2rem}}
@media(max-width:540px){.pillar-grid{grid-template-columns:1fr}.pillar:last-child{grid-column:auto}.hero-visual{min-height:22rem}.hero-image,.hero-accent{border-radius:2rem}.kicker-pill{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
