:root{--green-1: #0f9e82;--green-2: #1fb06f;--green-3: #54c94e;--grad: linear-gradient(135deg, #0f9e82 0%, #22b06e 52%, #54c94e 100%);--grad-soft: linear-gradient(135deg, #12a988 0%, #46c458 100%);--navy: #0e2f40;--navy-d: #0a2532;--coral: #ef5a5c;--gold: #f2a734;--cream: #f3f7f4;--surface: #ffffff;--surface-2:#eef4ef;--ink: #10313a;--text: #35505a;--text-soft:#6b828a;--on-dark: #eaf3f1;--on-dark-soft: #a7c0c2;--line: rgba(15,55,64,.12);--line-2: rgba(15,55,64,.07);--line-d: rgba(255,255,255,.14);--font-display: "Fraunces", Georgia, serif;--font-sans: "Inter", system-ui, sans-serif;--font-mono: "Space Grotesk", monospace;--maxw: 1240px;--pad: clamp(1.25rem, 5vw, 6rem);--r: 18px;--ease: cubic-bezier(.2,.7,.2,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);background:var(--cream);color:var(--text);line-height:1.6;overflow-x:hidden;cursor:none}@media(max-width:900px){body{cursor:auto}}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}::selection{background:var(--green-2);color:#fff}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:1.02;letter-spacing:-.02em;color:var(--ink)}em{font-style:italic;color:var(--green-1)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.cursor,.cursor-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;mix-blend-mode:multiply;transform:translate(-50%,-50%)}.cursor{width:34px;height:34px;border:1.5px solid var(--green-1);transition:width .25s,height .25s,background .25s}.cursor-dot{width:5px;height:5px;background:var(--green-2);mix-blend-mode:normal}.cursor.is-hover{width:60px;height:60px;background:#1fb06f1f}@media(max-width:900px){.cursor,.cursor-dot{display:none}}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:9997;background:transparent}.scroll-progress span{display:block;height:100%;width:0;background:var(--grad)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in{opacity:1;transform:none}.reveal-y{display:inline-block;transform:translateY(105%);transition:transform 1s var(--ease)}.line{display:block;overflow:hidden}.in .reveal-y,.hero__title.in .reveal-y{transform:none}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem var(--pad);transition:background .4s,padding .4s,box-shadow .4s}.nav.scrolled{background:#ffffffd9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 30px -18px #0f374066;padding:.7rem var(--pad)}.nav__brand{display:flex;align-items:center;gap:.6rem}.nav__logo{height:44px;width:auto}.nav.scrolled .nav__logo{height:40px}.nav__logo--ink,.nav.scrolled .nav__logo--white{display:none}.nav.scrolled .nav__logo--ink{display:block}.nav__word{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-.01em;color:#fff;transition:color .4s}.nav__word em{font-style:normal;color:var(--coral);font-weight:400}.nav.scrolled .nav__word{color:var(--ink)}.nav__links{display:flex;gap:2rem}.nav__links a{font-size:.82rem;color:#ffffffd1;letter-spacing:.02em;position:relative;transition:color .3s}.nav__links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--coral);transition:width .3s var(--ease)}.nav__links a:hover{color:#fff}.nav__links a:hover:after{width:100%}.nav.scrolled .nav__links a{color:var(--text)}.nav.scrolled .nav__links a:hover{color:var(--green-1)}.nav.scrolled .nav__links a:after{background:var(--green-2)}.nav__burger{display:none;background:none;border:0;flex-direction:column;gap:5px;cursor:pointer;padding:8px}.nav__burger span{width:24px;height:2px;background:#fff;transition:.3s}.nav.scrolled .nav__burger span{background:var(--ink)}.nav.open .nav__burger span:first-child{transform:translateY(3.5px) rotate(45deg)}.nav.open .nav__burger span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav__cta{background:#ffffff1f;border:1px solid rgba(255,255,255,.4);color:#fff}.nav__cta:hover{background:#fff;color:var(--green-1);border-color:#fff}.nav.scrolled .nav__cta{background:var(--grad);border-color:transparent;color:#fff}@media(max-width:900px){.nav__links,.nav .nav__cta{display:none}.nav__burger{display:flex}}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:var(--grad);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;transform:translateY(-100%);transition:transform .5s var(--ease);pointer-events:none}.mobile-menu.open{transform:none;pointer-events:auto}.mobile-menu a{font-family:var(--font-display);font-size:1.8rem;color:#fff}.mobile-menu .btn{font-family:var(--font-sans);font-size:1rem;margin-top:1rem;background:#fff;color:var(--green-1)}.btn{display:inline-flex;align-items:center;gap:.5rem;justify-content:center;font-family:var(--font-sans);font-weight:500;font-size:.92rem;padding:.95rem 1.6rem;border-radius:100px;cursor:pointer;border:1px solid transparent;position:relative;overflow:hidden;transition:transform .3s var(--ease),color .3s,box-shadow .3s;will-change:transform}.btn span{position:relative;z-index:2}.btn--solid{background:var(--grad);color:#fff;box-shadow:0 12px 26px -12px #1fb06fb3}.btn--solid:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#12a988,#63d158);transform:translateY(101%);transition:transform .4s var(--ease)}.btn--solid:hover:before{transform:none}.btn--ghost{border-color:var(--line);color:var(--ink);background:var(--surface)}.btn--ghost:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-2);transform:scale(0);border-radius:100px;transition:transform .4s var(--ease)}.btn--ghost:hover{border-color:var(--green-2);color:var(--green-1)}.btn--ghost:hover:before{transform:scale(1)}.btn--pill{background:var(--surface);border-color:var(--line);color:var(--ink);font-size:.8rem;padding:.7rem 1.15rem}.btn--pill:hover{border-color:var(--green-2)}.btn--block{width:100%}.hero{position:relative;min-height:100vh;padding:9rem var(--pad) 4.5rem;display:flex;flex-direction:column;justify-content:center;overflow:hidden;isolation:isolate}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2;animation:hero-zoom 22s ease-in-out infinite alternate}@keyframes hero-zoom{0%{transform:scale(1.02)}to{transform:scale(1.13)}}.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(115deg,#062a26f0,#09584aa8 48%,#0b3a4acc),linear-gradient(0deg,rgba(4,30,28,.85) 0%,transparent 42%)}.hero__overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle at 30% 45%,#000,transparent 72%);mask-image:radial-gradient(circle at 30% 45%,#000,transparent 72%)}.hero__glow{display:none}.hero__inner{position:relative;z-index:2;max-width:900px;width:100%;margin:0 auto}.eyebrow{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--green-1);display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.5rem}.hero .eyebrow{color:#ffffffeb;border:1px solid rgba(255,255,255,.22);background:#ffffff0f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:.5rem 1rem;border-radius:100px}.ping{width:7px;height:7px;border-radius:50%;background:var(--green-3);box-shadow:0 0 #54c94eb3;animation:ping 2s infinite}.about .ping,.approach .ping{background:var(--green-2)}@keyframes ping{70%{box-shadow:0 0 0 9px #54c94e00}to{box-shadow:0 0 #54c94e00}}.hero__title{font-size:clamp(3rem,8.5vw,7rem);margin-bottom:1.6rem;color:#fff;line-height:.98}.hero__title .reveal-y{color:#fff}.hero__accent .reveal-y{font-style:italic;font-weight:300;background:linear-gradient(100deg,#eafff4 0%,var(--green-3) 55%,#9fe7ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero__lead{font-size:clamp(1.02rem,1.4vw,1.22rem);color:#ffffffe6;max-width:46ch;margin-bottom:2.4rem}.hero__lead strong{color:#fff;font-weight:600}.hero__cta{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:3.2rem}.hero .btn--solid{background:var(--grad);color:#fff;box-shadow:0 16px 34px -14px #1fb06fbf}.hero .btn--solid:before{background:linear-gradient(135deg,#12a988,#63d158)}.hero .btn--ghost{background:#ffffff14;border-color:#ffffff73;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero .btn--ghost:hover{color:#fff;border-color:#fff}.hero .btn--ghost:before{background:#ffffff24}.hero__stats{display:flex;gap:clamp(1.6rem,4vw,3.2rem);flex-wrap:wrap;padding-top:2rem;border-top:1px solid rgba(255,255,255,.18)}.hero__stats b{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.4rem);display:block;line-height:1;color:#fff}.hero__stats span{font-size:.78rem;color:#ffffffbf;letter-spacing:.02em}.hero__scroll{position:absolute;bottom:1.6rem;left:50%;transform:translate(-50%);width:24px;height:38px;border:2px solid rgba(255,255,255,.5);border-radius:14px;z-index:2}.hero__scroll span{position:absolute;top:7px;left:50%;width:4px;height:7px;margin-left:-2px;border-radius:4px;background:#fff;animation:scroll-cue 1.8s ease-in-out infinite}@keyframes scroll-cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}60%{opacity:1;transform:translateY(12px)}to{opacity:0;transform:translateY(12px)}}@media(max-width:600px){.hero__scroll{display:none}}@media(prefers-reduced-motion:reduce){.hero__bg{animation:none}}.marquee{padding:1.5rem 0;overflow:hidden;background:var(--navy)}.marquee__track{display:flex;align-items:center;gap:2.5rem;white-space:nowrap;width:max-content;animation:scroll 34s linear infinite}.marquee__track span{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2.4rem);color:#ffffffe6}.marquee__track i{color:var(--green-3);font-style:normal;font-size:1rem}@keyframes scroll{to{transform:translate(-50%)}}section{position:relative}.about,.approach,.programs,.process,.voices,.faq,.contact,.gallery{max-width:var(--maxw);margin:0 auto;padding:clamp(5rem,11vw,9rem) var(--pad)}.section-head{margin-bottom:3.5rem;max-width:760px}.section-head .eyebrow{color:var(--green-1)}.section-head h2{font-size:clamp(2rem,4.6vw,3.6rem);margin-top:.6rem}.section-sub{color:var(--text-soft);margin-top:1rem;font-size:1.05rem;max-width:52ch}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.about__lead p{font-size:1.12rem;color:var(--text-soft);margin-bottom:1.2rem}.about__lead p:first-child{color:var(--ink);font-size:1.28rem;line-height:1.5}.about__cards{display:flex;flex-direction:column;gap:1.2rem}.vm-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;box-shadow:0 20px 50px -34px #0f374080;transition:transform .5s var(--ease),border-color .4s,box-shadow .4s}.vm-card:hover{border-color:#1fb06f80;box-shadow:0 26px 60px -30px #0f374066}.vm-card__ic{width:46px;height:46px;border-radius:12px;background:var(--grad-soft);display:grid;place-items:center;color:#fff;margin-bottom:1rem}.vm-card__ic svg{width:24px;height:24px}.vm-card h3{font-size:1.4rem;margin-bottom:.6rem}.vm-card p{color:var(--text-soft);font-size:.98rem}@media(max-width:820px){.about__grid{grid-template-columns:1fr;gap:2rem}}.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.bento__cell{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.9rem;box-shadow:0 16px 40px -30px #0f374080;transition:transform .5s var(--ease),border-color .4s,box-shadow .4s;position:relative;overflow:hidden}.bento__cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%),rgba(31,176,111,.1),transparent 60%);opacity:0;transition:opacity .4s}.bento__cell:hover{border-color:#1fb06f73;box-shadow:0 24px 50px -28px #0f374066;transform:translateY(-4px)}.bento__cell:hover:after{opacity:1}.bento__cell--wide{grid-column:span 2;background:linear-gradient(140deg,#fff,#f0f8f2)}.bento__cell--accent{background:var(--grad);border-color:transparent;box-shadow:0 22px 44px -22px #1fb06fa6}.bento__cell.bento__cell--accent h3,.bento__cell.bento__cell--accent p{color:#fff}.bento__ic{width:48px;height:48px;border-radius:12px;background:var(--surface-2);display:grid;place-items:center;color:var(--green-1);margin-bottom:1.1rem}.bento__cell--accent .bento__ic{background:#fff3;color:#fff}.bento__ic svg{width:25px;height:25px}.bento__cell h3{font-size:1.3rem;margin-bottom:.55rem}.bento__cell p{color:var(--text-soft);font-size:.95rem;position:relative;z-index:1}@media(max-width:900px){.bento{grid-template-columns:1fr 1fr}.bento__cell--wide{grid-column:span 2}}@media(max-width:600px){.bento{grid-template-columns:1fr}.bento__cell--wide{grid-column:span 1}}.prog-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}.prog{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1.6rem;padding:1.8rem .4rem;border-bottom:1px solid var(--line);position:relative;transition:padding .4s var(--ease)}.prog:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(31,176,111,.08),transparent);opacity:0;transition:opacity .4s}.prog:hover{padding-left:1.4rem;padding-right:1.4rem}.prog:hover:before{opacity:1}.prog__no{font-family:var(--font-mono);font-size:.8rem;color:var(--green-2);letter-spacing:.1em}.prog__body{position:relative;z-index:1}.prog__body h3{font-size:clamp(1.3rem,2.6vw,1.9rem);transition:color .3s}.prog:hover .prog__body h3{color:var(--green-1)}.prog__body p{color:var(--text-soft);font-size:.92rem;margin-top:.25rem;max-width:60ch}.prog__tag{font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-soft);border:1px solid var(--line);border-radius:100px;padding:.35rem .8rem}.prog__arrow{width:26px;height:26px;color:var(--text-soft);transition:transform .4s var(--ease),color .3s}.prog:hover .prog__arrow{transform:translate(4px,-4px);color:var(--green-1)}@media(max-width:720px){.prog{grid-template-columns:auto 1fr auto}.prog__tag,.prog__body p{display:none}}.gallery{padding-bottom:2.5rem}.poster-wall{overflow:hidden;padding:1rem 0 clamp(4rem,8vw,7rem);display:flex;flex-direction:column;gap:1.4rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.poster-row{display:flex;gap:1.4rem;width:max-content}.poster-row--a{animation:poster-scroll 60s linear infinite}.poster-row--b{animation:poster-scroll 72s linear infinite reverse}.poster-wall:hover .poster-row{animation-play-state:paused}@keyframes poster-scroll{to{transform:translate(-50%)}}.poster{flex:0 0 auto;width:clamp(230px,24vw,320px);aspect-ratio:4/5;padding:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);cursor:pointer;position:relative;box-shadow:0 16px 40px -28px #0f374080;transition:transform .45s var(--ease),border-color .35s,box-shadow .45s}.poster img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.poster:after{content:"⤢";position:absolute;bottom:10px;right:12px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--grad);color:#fff;font-size:1rem;opacity:0;transition:opacity .3s}.poster:hover{transform:translateY(-8px);border-color:#1fb06f80;box-shadow:0 26px 55px -22px #0f374073}.poster:hover img{transform:scale(1.06)}.poster:hover:after{opacity:1}@media(max-width:600px){.poster{width:62vw}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#08201ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s;padding:4vh 4vw}.lightbox.open{opacity:1;pointer-events:auto}.lightbox__img{max-width:min(92vw,640px);max-height:90vh;border-radius:14px;box-shadow:0 30px 80px -20px #000000b3;transform:scale(.96);transition:transform .35s var(--ease)}.lightbox.open .lightbox__img{transform:scale(1)}.lightbox__close{position:absolute;top:1.4rem;right:1.6rem;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;transition:.3s}.lightbox__close:hover{background:#fff;color:var(--green-1)}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;font-size:2rem;line-height:1;cursor:pointer;transition:.3s;display:grid;place-items:center}.lightbox__nav:hover{background:#fff;color:var(--green-1)}.lightbox__nav--prev{left:max(1rem,3vw)}.lightbox__nav--next{right:max(1rem,3vw)}@media(max-width:600px){.lightbox__nav{width:42px;height:42px;font-size:1.5rem}}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}.step{padding:2rem 1.4rem;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:0 16px 40px -32px #0f374080;position:relative;transition:transform .5s var(--ease),border-color .4s,box-shadow .4s}.step:hover{border-color:#1fb06f73;transform:translateY(-6px);box-shadow:0 24px 50px -28px #0f374066}.step__n{font-family:var(--font-mono);font-weight:700;font-size:2.6rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:block;margin-bottom:1rem}.step h3{font-size:1.35rem;margin-bottom:.5rem}.step p{color:var(--text-soft);font-size:.92rem}@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}@media(max-width:520px){.steps{grid-template-columns:1fr}}.impact{position:relative;overflow:hidden;background:var(--grad)}.impact:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(circle at 80% 50%,#000,transparent 70%);mask-image:radial-gradient(circle at 80% 50%,#000,transparent 70%)}.impact__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px circle at 15% 20%,rgba(255,255,255,.25),transparent 55%)}.impact__inner{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;padding:clamp(5rem,11vw,9rem) var(--pad)}.impact .eyebrow{color:#ffffffe6}.impact h2{color:#fff}.impact__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem}.stat{border-top:2px solid rgba(255,255,255,.5);padding-top:1.2rem}.stat b{font-family:var(--font-display);font-size:clamp(2.6rem,5vw,4rem);display:block;line-height:1;color:#fff}.stat span{color:#ffffffd9;font-size:.92rem;display:block;margin-top:.6rem;max-width:22ch}@media(max-width:900px){.impact__grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}}.voices__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.quote{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:2rem;box-shadow:0 16px 40px -30px #0f374080;transition:transform .5s var(--ease),border-color .4s,box-shadow .4s}.quote:hover{border-color:#1fb06f66;transform:translateY(-4px);box-shadow:0 24px 50px -28px #0f374066}.quote__stars{color:var(--gold);letter-spacing:3px;margin-bottom:1rem;font-size:.9rem}.quote blockquote{font-family:var(--font-display);font-size:1.3rem;line-height:1.4;font-weight:400;color:var(--ink)}.quote figcaption{display:flex;align-items:center;gap:.8rem;margin-top:1.5rem}.quote__av{width:42px;height:42px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-family:var(--font-display);font-size:1.1rem;color:#fff}.quote figcaption b{display:block;font-family:var(--font-sans);font-size:.95rem;color:var(--ink)}.quote figcaption small{color:var(--text-soft);font-size:.78rem}@media(max-width:720px){.voices__grid{grid-template-columns:1fr}}.faq__list{display:flex;flex-direction:column;gap:.8rem}.faq__item{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;box-shadow:0 12px 34px -30px #0f374080;transition:border-color .4s,box-shadow .4s}.faq__item[open]{border-color:#1fb06f66;box-shadow:0 18px 40px -28px #1fb06f59}.faq__item summary{list-style:none;cursor:pointer;padding:1.3rem 1.6rem;font-family:var(--font-display);font-size:1.15rem;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:1rem}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary i{position:relative;width:16px;height:16px;flex-shrink:0}.faq__item summary i:before,.faq__item summary i:after{content:"";position:absolute;background:var(--green-2);transition:transform .3s}.faq__item summary i:before{top:7px;left:0;width:16px;height:2px}.faq__item summary i:after{top:0;left:7px;width:2px;height:16px}.faq__item[open] summary i:after{transform:rotate(90deg);opacity:0}.faq__item p{padding:0 1.6rem 1.4rem;color:var(--text-soft);font-size:.98rem;max-width:68ch}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}.contact__left .eyebrow{color:var(--green-1)}.contact__left h2{font-size:clamp(2.2rem,4.5vw,3.4rem);margin:.6rem 0 1.2rem}.contact__lead{color:var(--text-soft);font-size:1.05rem;max-width:40ch;margin-bottom:2.2rem}.contact__info{list-style:none;display:flex;flex-direction:column;gap:1.3rem;margin-bottom:2rem}.contact__info li{display:flex;gap:.9rem;align-items:flex-start}.contact__info svg{width:22px;height:22px;color:var(--green-1);flex-shrink:0;margin-top:3px}.contact__info small{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-soft);margin-bottom:.15rem}.contact__info a,.contact__info span{font-size:1.05rem;color:var(--ink)}.contact__info a:hover{color:var(--green-1)}.contact__social{display:flex;gap:.7rem}.contact__social a{width:44px;height:44px;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;color:var(--ink);transition:.3s}.contact__social a:hover{border-color:transparent;background:var(--grad);color:#fff;transform:translateY(-3px)}.contact__social svg{width:20px;height:20px}.contact__form{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:2.2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;box-shadow:0 30px 70px -40px #0f37408c}.field{position:relative}.field--full{grid-column:span 2}.field input,.field select,.field textarea{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:1.15rem 1rem .5rem;color:var(--ink);font-family:var(--font-sans);font-size:.95rem;transition:border-color .3s,background .3s}.field textarea{padding-top:1rem;resize:vertical}.field select{padding-top:1.15rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231fb06f' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--green-2);background:#fff}.field label{position:absolute;left:1rem;top:.95rem;color:var(--text-soft);font-size:.95rem;pointer-events:none;transition:.2s var(--ease)}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label,.field select:focus+.label--float,.field select:valid+.label--float{top:.4rem;font-size:.68rem;color:var(--green-1);letter-spacing:.04em}.form-note{grid-column:span 2;font-size:.85rem;color:var(--green-1);min-height:1.2em;margin:0}.form-note.error{color:var(--coral)}@media(max-width:860px){.contact__grid{grid-template-columns:1fr;gap:2.5rem}.contact__form{grid-template-columns:1fr}.field--full,.form-note{grid-column:span 1}}.footer{background:var(--navy);color:var(--on-dark)}.footer__top{max-width:var(--maxw);margin:0 auto;padding:4rem var(--pad) 2.5rem;display:grid;grid-template-columns:1.2fr 2fr;gap:3rem}.footer__brand img{height:84px;width:auto;margin-bottom:1.1rem}.footer__brand p{color:var(--on-dark-soft);max-width:34ch;font-size:.95rem}.footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer__cols h4{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--green-3);margin-bottom:1.1rem;font-weight:500}.footer__cols a{display:block;color:var(--on-dark-soft);font-size:.92rem;padding:.3rem 0;transition:color .3s}.footer__cols a:hover{color:#fff}.footer__bottom{max-width:var(--maxw);margin:0 auto;padding:1.5rem var(--pad);border-top:1px solid var(--line-d);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.8rem;color:var(--on-dark-soft)}@media(max-width:780px){.footer__top{grid-template-columns:1fr;gap:2rem}.footer__cols{grid-template-columns:1fr 1fr}}.wa-float{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:150;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px #25d36699,0 6px 14px #0003;transform:scale(0);animation:wa-pop .6s var(--ease) .8s forwards;transition:transform .3s var(--ease),box-shadow .3s}.wa-float:hover{transform:scale(1.09) rotate(-4deg);box-shadow:0 16px 38px -8px #25d366bf}.wa-float svg{position:relative;z-index:2}.wa-float__pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#25d366;z-index:1;animation:wa-pulse 2.4s ease-out infinite}@keyframes wa-pop{to{transform:scale(1)}}@keyframes wa-pulse{0%{transform:scale(1);opacity:.55}70%,to{transform:scale(1.9);opacity:0}}@media(prefers-reduced-motion:reduce){.wa-float{animation:none;transform:scale(1)}.wa-float__pulse{animation:none;display:none}}
