:where(img[width][height]){width:auto;height:auto}
@font-face{ font-family:"Brandon Grotesque"; src:url("../../assets/fonts/Brandon_reg.woff2") format("woff2"); font-weight:400; font-display:swap; }
@font-face{ font-family:"Brandon Grotesque"; src:url("../../assets/fonts/Brandon_reg_it.woff2") format("woff2"); font-weight:400; font-style:italic; font-display:swap; }
@font-face{ font-family:"Brandon Fallback"; src:local("Arial Bold"),local("Arial-BoldMT"),local("Helvetica Neue Bold"),local("HelveticaNeue-Bold"),local("Roboto Bold"),local("Roboto-Bold"); font-weight:700; size-adjust:82.38%; ascent-override:127.46%; descent-override:46.13%; line-gap-override:0%; }
@font-face{ font-family:"Brandon Fallback"; src:local("Arial"),local("ArialMT"),local("Helvetica Neue"),local("Roboto"); font-weight:500; size-adjust:87.76%; ascent-override:119.64%; descent-override:43.30%; line-gap-override:0%; }
@font-face{ font-family:"Brandon Fallback"; src:local("Arial"),local("ArialMT"),local("Helvetica Neue"),local("Roboto"); font-weight:400; size-adjust:87.18%; ascent-override:120.44%; descent-override:43.59%; line-gap-override:0%; }
@font-face{ font-family:"Brandon Fallback"; src:local("Arial Italic"),local("Arial-ItalicMT"),local("Helvetica Neue Italic"),local("HelveticaNeue-Italic"),local("Roboto Italic"),local("Roboto-Italic"); font-weight:400; font-style:italic; size-adjust:82.08%; ascent-override:127.92%; descent-override:46.29%; line-gap-override:0%; }
@font-face{ font-family:"Figtree Fallback"; src:local("Arial"),local("ArialMT"),local("Helvetica Neue"),local("Roboto"); font-weight:300 549; size-adjust:100.39%; ascent-override:94.63%; descent-override:24.90%; line-gap-override:0%; }
@font-face{ font-family:"Figtree Fallback"; src:local("Arial Bold"),local("Arial-BoldMT"),local("Helvetica Neue Bold"),local("HelveticaNeue-Bold"),local("Roboto Bold"),local("Roboto-Bold"); font-weight:550 900; size-adjust:96.12%; ascent-override:98.83%; descent-override:26.01%; line-gap-override:0%; }
@font-face{font-family:"Figtree";font-style:normal;font-weight:300 900;font-display:swap;src:url("../../assets/fonts/Figtree-400.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{ font-family:"Brandon Grotesque"; src:url("../../assets/fonts/Brandon_med.woff2") format("woff2"); font-weight:500; font-display:swap; }
@font-face{ font-family:"Brandon Grotesque"; src:url("../../assets/fonts/Brandon_bld.woff2") format("woff2"); font-weight:700; font-display:swap; }

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; }

body{ margin:0; background:var(--surface-2); font-family:var(--body); font-size:18px; color:var(--ink-2); -webkit-font-smoothing:antialiased; }

h1,h2,h3,h4{ font-family:var(--brandon); margin:0; color:var(--ink); line-height:1.0; font-weight:700; text-wrap:balance; }

p{ margin:0; text-wrap:pretty; }

a{ color:inherit; text-decoration:none; }

img{ display:block; max-width:100%; }

button{ font-family:inherit; cursor:pointer; }

input{ font-family:inherit; }

.wrap{ max-width:1280px; margin-inline:auto; padding-inline:clamp(20px,3vw,44px); }



.bot{ display:inline-block; background:var(--green-deep); flex:none; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; }

.bot.notebook{ -webkit-mask-image:url("../../assets/illustrations/asset-01.svg"); mask-image:url("../../assets/illustrations/asset-01.svg"); }

.bot.flower{ -webkit-mask-image:url("../../assets/illustrations/asset-02.svg"); mask-image:url("../../assets/illustrations/asset-02.svg"); }

.bot.sunrise{ -webkit-mask-image:url("../../assets/illustrations/asset-03.svg"); mask-image:url("../../assets/illustrations/asset-03.svg"); }

.bot.scribble{ -webkit-mask-image:url("../../assets/illustrations/asset-09.svg"); mask-image:url("../../assets/illustrations/asset-09.svg"); }

.bot.pause{ -webkit-mask-image:url("../../assets/illustrations/asset-10.svg"); mask-image:url("../../assets/illustrations/asset-10.svg"); }

.bot.sleep{ -webkit-mask-image:url("../../assets/illustrations/asset-13.svg"); mask-image:url("../../assets/illustrations/asset-13.svg"); }

.bot.faces{ -webkit-mask-image:url("../../assets/illustrations/asset-14.svg"); mask-image:url("../../assets/illustrations/asset-14.svg"); }

.bot.float{ -webkit-mask-image:url("../../assets/illustrations/asset-15.svg"); mask-image:url("../../assets/illustrations/asset-15.svg"); }

.bot.moon{ -webkit-mask-image:url("../../assets/illustrations/asset-16.svg"); mask-image:url("../../assets/illustrations/asset-16.svg"); }

.bot.wave{ -webkit-mask-image:url("../../assets/illustrations/asset-17.svg"); mask-image:url("../../assets/illustrations/asset-17.svg"); }

.bot.sun{ -webkit-mask-image:url("../../assets/illustrations/asset-18.svg"); mask-image:url("../../assets/illustrations/asset-18.svg"); }

.bot.stones{ -webkit-mask-image:url("../../assets/illustrations/asset-19.svg"); mask-image:url("../../assets/illustrations/asset-19.svg"); }

.bot.rainbow{ -webkit-mask-image:url("../../assets/illustrations/asset-20.svg"); mask-image:url("../../assets/illustrations/asset-20.svg"); }

.bot.sprout{ -webkit-mask-image:url("../../assets/illustrations/asset-21.svg"); mask-image:url("../../assets/illustrations/asset-21.svg"); }

.bot.heart{ -webkit-mask-image:url("../../assets/illustrations/asset-22.svg"); mask-image:url("../../assets/illustrations/asset-22.svg"); }

.bot.chat{ -webkit-mask-image:url("../../assets/illustrations/asset-23.svg"); mask-image:url("../../assets/illustrations/asset-23.svg"); }

.bot.mountain{ -webkit-mask-image:url("../../assets/illustrations/asset-24.svg"); mask-image:url("../../assets/illustrations/asset-24.svg"); }

.bot.tree{ -webkit-mask-image:url("../../assets/illustrations/asset-25.svg"); mask-image:url("../../assets/illustrations/asset-25.svg"); }

.bot.hand{ -webkit-mask-image:url("../../assets/illustrations/asset-26.svg"); mask-image:url("../../assets/illustrations/asset-26.svg"); }

.bot.book{ -webkit-mask-image:url("../../assets/illustrations/asset-27.svg"); mask-image:url("../../assets/illustrations/asset-27.svg"); }

.bot.compass{ -webkit-mask-image:url("../../assets/illustrations/asset-28.svg"); mask-image:url("../../assets/illustrations/asset-28.svg"); }

.bot.door{ -webkit-mask-image:url("../../assets/illustrations/asset-30.svg"); mask-image:url("../../assets/illustrations/asset-30.svg"); }


.btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; font-family:var(--brandon); font-weight:700; font-size:16.5px; line-height:1; padding:16px 26px; border-radius:999px; border:2px solid transparent; transition:transform .18s var(--ease),box-shadow .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease); }

.btn:hover{ transform:translateY(-2px); box-shadow:var(--sh-md); }

.btn .ar{ transition:transform .18s var(--ease); }
 .btn:hover .ar{ transform:translateX(4px); }

.btn-green{ background:var(--green); color:var(--green-ink); }
 .btn-green:hover{ background:var(--green-2); }

.btn-forest{ background:var(--forest); color:#fff; }
 .btn-forest:hover{ background:var(--forest-2); }

.btn-ghost{ background:transparent; color:var(--ink); border-color:var(--line-2); }
 .btn-ghost:hover{ border-color:var(--ink); box-shadow:none; }

.eyebrow{ display:inline-flex; align-items:center; gap:10px; font-family:var(--brandon); font-weight:700; font-size:14px; letter-spacing:.15em; text-transform:uppercase; color:var(--green-deep); }

.eyebrow .dot{ width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 0 rgb(138 198 66 / .5); animation:dotpulse 2.6s ease-out infinite; }
@keyframes dotpulse{ 0%{ box-shadow:0 0 0 0 rgb(138 198 66 / .5); } 70%{ box-shadow:0 0 0 8px rgb(138 198 66 / 0); } 100%{ box-shadow:0 0 0 0 rgb(138 198 66 / 0); } }



svg.usei{ fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; display:block; width:24px; height:24px; }

.hdr{ position:fixed; top:0; left:0; right:0; z-index:120; transition:background-color .3s var(--ease),box-shadow .3s var(--ease); }

.hdr.stuck{ background:rgb(250 248 241 / .92); -webkit-backdrop-filter:blur(18px) saturate(1.3); backdrop-filter:blur(18px) saturate(1.3); box-shadow:0 10px 30px -18px rgb(20 40 12 / .4); }

.hdr.stuck .util{ height:0; opacity:0; border-color:transparent; pointer-events:none; }

.util .u{ display:flex; align-items:center; gap:8px 22px; flex-wrap:wrap; }

.util a{ display:inline-flex; align-items:center; gap:7px; transition:color .16s; }
 .util a:hover{ color:#fff; }

.util svg{ width:12px; height:12px; opacity:.85; flex:none; }

.util .crisis{ color:var(--peach); font-family:var(--brandon); font-weight:700; }

.util .u-phone{ font-family:var(--brandon); font-weight:700; color:#fff; }
 .util .u-phone svg{ opacity:1; color:var(--green); }

.hdr-row{ display:flex; align-items:center; gap:18px; height:72px; transition:height .3s var(--ease); }

.hdr.stuck .hdr-row{ height:64px; }

.hdr .logo{ position:relative; display:inline-flex; align-items:center; }

.hdr .logo img{ height:30px; width:auto; flex:none; transition:opacity .3s; }

.hdr .logo .ld{ position:absolute; left:0; top:0; opacity:0; }

.hdr.stuck .logo .lw{ opacity:0; }
 .hdr.stuck .logo .ld{ opacity:1; }

.nav{ display:flex; align-items:center; gap:2px; margin-left:10px; }

.nav > a,.nav > .has-mega > button{ background:none; border:0; font-family:var(--brandon); font-weight:500; font-size:16.5px; color:rgb(255 255 255 / .92); padding:10px 15px; border-radius:10px; display:inline-flex; align-items:center; gap:7px; cursor:pointer; transition:background-color .16s,color .16s; }

.nav > a:hover,.nav > .has-mega > button:hover,.nav > .has-mega.open > button{ background:rgb(255 255 255 / .16); color:#fff; }

.hdr.stuck .nav > a,.hdr.stuck .nav > .has-mega > button{ color:var(--ink-2); }

.hdr.stuck .nav > a:hover,.hdr.stuck .nav > .has-mega > button:hover,.hdr.stuck .nav > .has-mega.open > button{ background:var(--green-tint); color:var(--green-deep); }

.nav .chev{ width:11px; transition:transform .26s var(--ease); }
 .nav .has-mega.open .chev{ transform:rotate(180deg); }

.nav > .has-mega > .mega-trigger{ background:none; border:0; font-family:var(--brandon); font-weight:500; font-size:16.5px; color:rgb(255 255 255 / .92); padding:10px 15px; border-radius:10px; display:inline-flex; align-items:center; gap:6px; cursor:pointer; text-decoration:none; line-height:1; }

.nav > .has-mega > .mega-trigger:hover,.nav > .has-mega.open > .mega-trigger{ background:rgb(255 255 255 / .16); color:#fff; }

.hdr.stuck .nav > .has-mega > .mega-trigger{ color:var(--ink-2); }

.hdr.stuck .nav > .has-mega > .mega-trigger:hover,.hdr.stuck .nav > .has-mega.open > .mega-trigger{ background:var(--green-tint); color:var(--green-deep); }

.hdr .right{ margin-left:auto; display:flex; align-items:center; gap:12px; }

.hdr .phone{ display:inline-flex; align-items:center; gap:8px; font-family:var(--brandon); font-weight:700; font-size:16px; color:#fff; }

.hdr .phone svg{ width:16px; height:16px; color:var(--green-deep); }

.hdr.stuck .phone{ color:var(--ink); }
 .hdr.stuck .phone svg{ color:var(--green-deep); }

.hdr .btn{ padding:12px 20px; font-size:16px; }

.hdr .menu-btn{ display:none; width:46px; height:46px; border-radius:12px; border:1.5px solid rgb(255 255 255 / .3); background:rgb(255 255 255 / .12); place-items:center; color:#fff; }

.hdr-search{ width:42px; height:42px; border-radius:50%; border:0; background:none; display:grid; place-items:center; color:#fff; cursor:pointer; transition:background-color .18s,color .18s,transform .16s; }
 .hdr-search svg{ width:22px; height:22px; }
 .hdr-search:hover{ background:rgb(255 255 255 / .14); }

.hdr.stuck .hdr-search{ border:0; background:none; color:var(--ink); }
 .hdr.stuck .hdr-search:hover{ background:var(--green-tint); color:var(--green-deep); }

.util .u-portal{ font-family:var(--brandon); font-weight:700; }


.hdr .phone{ padding:9px 16px; border-radius:99px; border:1.5px solid rgb(255 255 255 / .28); background:rgb(255 255 255 / .08); transition:background-color .16s, border-color .16s, color .16s, transform .16s; }

.hdr .phone:hover{ background:rgb(255 255 255 / .18); border-color:rgb(255 255 255 / .5); }

.hdr .phone:active{ transform:scale(.97); }

.hdr.stuck .phone{ border-color:var(--line-2); background:#fff; }

.hdr.stuck .phone:hover{ background:var(--green-tint); border-color:var(--green); color:var(--green-deep); }

.hdr-search:active,.hdr .menu-btn:active{ transform:scale(.94); }

.hdr .btn{ box-shadow:0 10px 22px -10px rgb(20 40 10 / .45); transition:transform .16s var(--ease), box-shadow .16s, background-color .16s, color .16s; }

.hdr .btn:hover{ transform:translateY(-1px); box-shadow:0 14px 26px -10px rgb(20 40 10 / .55); }

.hdr .btn:active{ transform:translateY(0) scale(.98); }

.hdr .btn .ar{ display:inline-block; transition:transform .18s var(--ease); }

.hdr .btn:hover .ar{ transform:translateX(3px); }
@media (max-width:1330px){ .nav{ gap:0; } .nav > li > a, .nav .mega-trigger{ padding:10px 12px; font-size:16px; } }
@media (max-width:1210px){ .hdr .btn{ padding:11px 15px; font-size:16px; white-space:nowrap; } .hdr .phone{ font-size:16px; padding:8px 12px; white-space:nowrap; } .hdr .right{ gap:9px; } }
@media (max-width:1120px){ .hdr .phone{ display:none; } }

.hdr .btn, .hdr .phone{ flex:none; }

.hdr.stuck .menu-btn{ border-color:var(--line-2); background:#fff; color:var(--ink); }


.has-mega{ position:static; }

.mega{ position:absolute; left:0; right:0; top:100%; z-index:115; background:var(--surface); border-bottom:1px solid var(--line); box-shadow:var(--sh-lg); display:none; }

.mega.open{ display:block; animation:megaIn .26s var(--ease); }
@keyframes megaIn{ from{ opacity:0; transform:translateY(-10px); } to{ opacity:1; transform:none; } }

.mega-inner{ display:grid; grid-template-columns:1.4fr 1.4fr 1fr; gap:0; }

.rail-wrap{ display:grid; grid-template-columns:248px 1fr 268px; }

.rail{ display:flex; flex-direction:column; gap:2px; padding:16px 12px; border-right:1px solid var(--line); background:var(--surface-2); }

.rail .rbtn{ display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; text-align:left; background:none; border:0; border-radius:12px; padding:12px 14px; font-family:var(--brandon); font-weight:600; font-size:16px; color:var(--ink-2); cursor:pointer; transition:background-color .14s, color .14s; text-decoration:none; }

.rail .rbtn svg{ width:15px; height:15px; opacity:.5; flex:none; }

.rail .rbtn:hover{ background:rgb(0 0 0 / .045); color:var(--ink); }

.rail .rbtn.on{ background:var(--green,#8AC642); color:#04210E; }

.rail .rbtn.on svg{ opacity:1; color:#04210E; }

.rail .rail-all{ margin-top:14px; color:var(--green-deep); font-weight:700; border-top:1px solid var(--line); border-radius:0 0 12px 12px; padding-top:16px; }

.rail .rail-all:hover{ background:none; color:var(--green-deep); text-decoration:underline; }

.rpanes{ padding:18px clamp(16px,1.8vw,26px); border-right:1px solid var(--line); }

.rpane{ display:none; grid-template-columns:1fr 1fr; gap:2px 16px; align-content:start; animation:rpIn .22s var(--ease); }

.rpane.on{ display:grid; }

.rpane.rp3{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px 14px; }
@media (max-width:1120px){ .rpane.rp3{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@keyframes rpIn{ from{ opacity:0; transform:translateX(7px); } }
@media (max-width:980px){ .rail-wrap{ display:none; } }

.mega-col{ padding:22px clamp(18px,2vw,28px); border-right:1px solid var(--line); }

.mega-col:last-child{ border-right:0; background:var(--surface-2); }

.mega-col h4{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-4); margin:0 0 10px; }

.mega-col h4 a.mega-h{ display:flex; align-items:center; gap:7px; color:var(--ink-3); padding-bottom:9px; border-bottom:1px solid var(--line); transition:color .15s; }

.mega-col h4 a.mega-h:hover{ color:var(--green-deep); }

.mega-col h4 a.mega-h .ah{ width:13px; height:13px; margin-left:auto; opacity:0; transform:translateX(-4px); transition:opacity .18s,transform .18s; color:var(--green-deep); }

.mega-col h4 a.mega-h:hover .ah{ opacity:1; transform:none; }

.mega-link{ display:flex; align-items:center; gap:12px; padding:8px 10px; margin-inline:-10px; border-radius:11px; transition:background-color .15s,transform .15s; }

.mega-link:hover{ background:var(--green-tint); transform:translateX(3px); }

.mega-link .ic{ width:36px; height:36px; border-radius:10px; background:var(--surface-2); border:1px solid var(--line); display:grid; place-items:center; flex:none; transition:background-color .15s,border-color .15s; }

.mega-link:hover .ic{ background:#fff; border-color:var(--green); }

.mega-link .ic .bot{ width:20px; height:20px; }
 .mega-link .ic svg.usei{ width:20px; height:20px; color:var(--green-deep); }

.mega-link b{ font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--ink); display:block; line-height:1.15; }

.mega-link span{ font-size:15px; color:var(--ink-3); line-height:1.3; display:block; margin-top:1px; }

.mega-feat{ display:flex; flex-direction:column; }

.mega-feat .card{ position:relative; border-radius:16px; overflow:hidden; flex:1; min-height:150px; display:flex; flex-direction:column; justify-content:flex-end; padding:20px; color:#fff; }

.mega-feat .card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }

.mega-feat .card b{ position:relative; z-index:2; font-family:var(--brandon); font-weight:700; font-size:19px; }

.mega-feat .card span{ position:relative; z-index:2; font-size:15.5px; color:rgb(255 255 255 / .88); margin-top:4px; }

.mega-feat .card .go{ position:relative; z-index:2; display:inline-flex; align-items:center; gap:7px; margin-top:12px; font-family:var(--brandon); font-weight:700; font-size:16px; color:#2E642D; }

.mega-feat .facecard{ background:linear-gradient(165deg,var(--green-tint),var(--sage-bg)); color:var(--ink); justify-content:flex-start; }

.mega-feat .facecard::after{ display:none; }

.mega-feat .facecard b,.mega-feat .facecard span{ color:var(--ink); }

.mega-feat .facecard > span{ color:var(--ink-3); }

.mega-feat .facecard .go{ color:var(--green-deep); }

.mega-feat .facepile{ display:flex; align-items:center; margin-bottom:15px; }

.mega-feat .facepile .face{ width:50px; height:50px; border-radius:50%; overflow:hidden; border:3px solid #fff; background:var(--green-tint-2); margin-left:-16px; box-shadow:var(--sh-sm); display:grid; place-items:center; }

.mega-feat .facepile .face:first-child{ margin-left:0; }

.mega-feat .facepile .face img{ width:100%; height:100%; object-fit:cover; object-position:50% 22%; }

.mega-feat .facepile .face.more{ background:var(--green); color:var(--green-ink); font-family:var(--brandon); font-weight:700; font-size:15.5px; }

.mega-foot{ grid-column:1 / -1; display:flex; align-items:center; gap:18px; flex-wrap:wrap; padding:16px clamp(20px,2.4vw,38px); border-top:1px solid var(--line); background:var(--surface-2); }

.mega-foot .lbl{ font-family:var(--brandon); font-weight:700; font-size:15px; color:var(--ink-3); }

.mega-foot a{ font-family:var(--brandon); font-weight:600; font-size:16px; color:var(--green-deep); display:inline-flex; align-items:center; gap:6px; }
 .mega-foot a:hover{ text-decoration:underline; }

.mega-foot .ph{ margin-left:auto; font-family:var(--brandon); font-weight:700; color:var(--ink); }



.hero{ position:relative; overflow:hidden; min-height:clamp(640px,90vh,860px); display:flex; align-items:center; background:var(--forest-ink); }

.hero-spot{ position:absolute; inset:0; z-index:1; pointer-events:none; opacity:0; transition:opacity .4s var(--ease); background:radial-gradient(circle 240px at var(--mx,50%) var(--my,50%), rgb(199 229 154 / .22), rgb(138 198 66 / .08) 40%, transparent 70%); mix-blend-mode:screen; }

.hero.cursor-on .hero-spot{ opacity:1; }

.hero-scroll{ position:absolute; left:50%; bottom:22px; transform:translateX(-50%); z-index:5; display:inline-flex; flex-direction:column; align-items:center; gap:8px; font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.18em; text-transform:uppercase; color:rgb(255 255 255 / .66); transition:color .2s; }

.hero-scroll:hover{ color:#fff; }

.hero-scroll .hs-dot{ width:24px; height:38px; border-radius:999px; border:1.5px solid rgb(255 255 255 / .4); position:relative; }

.hero-scroll .hs-dot::after{ content:""; position:absolute; left:50%; top:8px; width:4px; height:8px; border-radius:2px; background:var(--green); transform:translateX(-50%); animation:hsDrop 1.8s var(--ease) infinite; }
@media (max-width:680px){ .hero-scroll{ display:none; } }

.hero-deco{ position:absolute; inset:0; z-index:3; overflow:hidden; pointer-events:none; }

.hero-deco .mark{ position:absolute; left:-8%; top:50%; transform:translateY(-50%); width:min(46vw,560px); aspect-ratio:604/603; opacity:.06; background:#fff; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; }

.hero-deco .glow{ position:absolute; right:8%; top:24%; width:clamp(280px,32vw,440px); height:clamp(280px,32vw,440px); border-radius:50%; background:radial-gradient(circle, rgb(138 198 66 / .22), transparent 68%); }


.cur-dot,.cur-ring{ position:fixed; top:0; left:0; z-index:300; pointer-events:none; border-radius:50%; opacity:0; will-change:transform; transition:opacity .3s var(--ease),width .24s var(--ease),height .24s var(--ease),margin .24s var(--ease),background-color .25s,border-color .25s; }

body.cur-on .cur-dot{ opacity:1; }
 body.cur-on .cur-ring{ opacity:.55; }

.cur-dot{ width:8px; height:8px; margin:-4px 0 0 -4px; background:var(--green); box-shadow:0 0 10px 1px rgb(138 198 66 / .6); }

.cur-ring{ width:34px; height:34px; margin:-17px 0 0 -17px; border:1.5px solid var(--green-deep); }

body.cur-dark .cur-ring{ border-color:rgb(199 229 154 / .85); }

body.cur-hot .cur-ring{ width:56px; height:56px; margin:-28px 0 0 -28px; background:rgb(138 198 66 / .14); border-color:var(--green); }
@media (hover:none),(pointer:coarse){ .cur-dot,.cur-ring{ display:none !important; } }

.hero-inner{ position:relative; z-index:5; width:100%; padding-block:clamp(128px,13vw,164px) clamp(40px,5vw,64px); }

.hero-inner .wrap{ max-width:1180px; }

.hero .eyebrow{ color:#fff; margin-bottom:24px; }

.hero h1{ font-size:clamp(42px,5.6vw,86px); letter-spacing:-.03em; line-height:.98; color:#fff; max-width:17ch; text-shadow:0 2px 40px rgb(0 0 0 / .34); }

.hero h1 em{ font-style:italic; font-weight:400; color:#8AC642; }

.hero .lede{ font-size:clamp(18px,1.45vw,22px); color:rgb(255 255 255 / .92); line-height:1.65; max-width:46ch; margin-top:24px; }

.hero .ribbon{ display:inline-flex; align-items:stretch; gap:0; margin-top:clamp(34px,4vw,46px); padding:18px 6px; border-top:1px solid rgb(255 255 255 / .18); border-bottom:1px solid rgb(255 255 255 / .18); flex-wrap:wrap; }

.hero .ribbon .stat{ display:flex; flex-direction:column; gap:5px; padding:0 clamp(16px,2vw,28px); }

.hero .ribbon .stat:first-child{ padding-left:6px; }

.hero .ribbon .stat b{ font-family:var(--brandon); font-weight:700; font-size:clamp(26px,2.6vw,34px); color:#fff; line-height:.9; letter-spacing:-.01em; }

.hero .ribbon .stat b small{ font-size:.5em; color:#8AC642; margin-left:1px; }

.hero .ribbon .stat span{ font-size:15px; color:rgb(255 255 255 / .76); line-height:1.25; max-width:15ch; }

.hero .ribbon .dv{ width:1px; align-self:stretch; min-height:38px; background:linear-gradient(rgb(255 255 255 / 0), rgb(255 255 255 / .32), rgb(255 255 255 / 0)); }



.finderbar{ max-width:560px; margin-top:clamp(32px,4vw,46px); position:relative; }

.fb-lead{ display:inline-flex; align-items:center; gap:9px; font-family:var(--brandon); font-weight:700; font-size:16px; color:rgb(255 255 255 / .9); margin-bottom:11px; }

.fb-lead::after{ content:"Confidential · Judgement-free"; font-weight:500; font-size:15px; color:rgb(199 229 154 / .92); padding-left:11px; margin-left:2px; border-left:1px solid rgb(255 255 255 / .28); }

.sb{ position:relative; }

.sb-field{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; background:rgb(255 255 255 / .94); border:1.5px solid rgb(255 255 255 / .6); border-radius:15px; padding:6px 6px 6px 15px; box-shadow:0 18px 44px -18px rgb(8 20 12 / .5); transition:border-color .18s,box-shadow .18s; }

.sb-field:focus-within{ border-color:var(--green); box-shadow:0 18px 44px -18px rgb(8 20 12 / .5), 0 0 0 4px rgb(138 198 66 / .25); }

.sb-field > .si{ width:19px; height:19px; color:var(--green-deep); flex:none; }

.sb-pills{ display:flex; gap:6px; flex-wrap:wrap; }

.sb-pill{ display:inline-flex; align-items:center; gap:5px; background:var(--green-tint); color:var(--green-deep); font-family:var(--brandon); font-weight:700; font-size:14px; border-radius:999px; padding:5px 6px 5px 12px; animation:popIn .2s var(--ease); }

.sb-pill button{ background:none; border:0; color:var(--green-deep); width:17px; height:17px; border-radius:50%; display:grid; place-items:center; opacity:.6; }
 .sb-pill button:hover{ opacity:1; background:rgb(76 122 52 / .16); }

.sb-field input{ flex:1; min-width:130px; border:0; outline:0; background:none; font-size:16px; color:var(--ink); padding:11px 4px; }

.sb-field input::placeholder{ color:var(--ink-4); }

.sb-go{ background:var(--green); color:var(--green-ink); border:0; border-radius:11px; padding:0 18px; align-self:stretch; min-height:46px; font-family:var(--brandon); font-weight:700; font-size:15px; display:inline-flex; align-items:center; gap:8px; flex:none; position:relative; overflow:hidden; transition:background-color .18s,transform .14s; }
 .sb-go:hover{ background:var(--green-2); transform:translateY(-1px); }

.sb-go svg{ transition:transform .25s var(--ease); }
 .sb-go:hover svg{ transform:rotate(-12deg) scale(1.08); }

.sb-go.loading{ pointer-events:none; color:transparent; }
 .sb-go.loading::after{ content:""; position:absolute; inset:0; margin:auto; width:18px; height:18px; border:2.5px solid rgb(36 48 16 / .35); border-top-color:var(--green-ink); border-radius:50%; animation:sbspin .6s linear infinite; }

.sb-drop{ position:absolute; left:0; right:0; top:calc(100% + 8px); z-index:30; background:#fff; border:1px solid var(--line); border-radius:15px; box-shadow:var(--sh-lg); padding:7px; list-style:none; margin:0; display:none; max-height:300px; overflow:auto; }

.sb-drop.show{ display:block; }

.sb-drop .gl{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-4); padding:10px 12px 6px; }

.sb-drop li{ display:flex; align-items:center; gap:12px; padding:11px 12px; border-radius:11px; cursor:pointer; font-size:16px; color:var(--ink-2); }

.sb-drop li:hover,.sb-drop li.active{ background:var(--green-tint); color:var(--green-deep); }

.sb-drop li .ic{ width:32px; height:32px; border-radius:9px; background:var(--green-tint); display:grid; place-items:center; flex:none; }
 .sb-drop li.active .ic,.sb-drop li:hover .ic{ background:#fff; }
 .sb-drop li .ic .bot{ width:18px; height:18px; }

.sb-drop li mark{ background:none; color:var(--green-deep); font-weight:700; }

.sb-drop li .cat{ margin-left:auto; font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.07em; text-transform:uppercase; color:var(--ink-4); }

.sb-drop .none{ padding:16px 12px; font-size:16px; color:var(--ink-3); }

.sb-quick{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:14px; }

.sb-quick .q-lbl{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:rgb(255 255 255 / .55); margin-right:2px; }

.sb-chip{ display:inline-flex; align-items:center; gap:7px; background:rgb(255 255 255 / .1); border:1px solid rgb(255 255 255 / .26); color:rgb(255 255 255 / .92); font-family:var(--brandon); font-weight:600; font-size:14px; border-radius:999px; padding:7px 14px; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); transition:background-color .15s,border-color .15s,color .15s,transform .12s; }

.sb-chip .bot{ width:15px; height:15px; background:currentColor; }

.sb-chip:hover{ background:var(--green); border-color:var(--green); color:var(--green-ink); transform:translateY(-2px); }

.sb-chip.picked{ background:var(--green); border-color:var(--green); color:var(--green-ink); }



.hero-proof{ position:relative; display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:clamp(30px,3.6vw,44px); }

.hp-avatars{ display:flex; }

.hp-av{ position:relative; width:50px; height:50px; border-radius:50%; overflow:hidden; border:2.5px solid rgb(255 255 255 / .85); margin-left:-14px; background:var(--forest-2); display:grid; place-items:center; transition:transform .26s var(--ease),border-color .26s,box-shadow .26s; z-index:1; }

.hp-av:first-child{ margin-left:0; }

.hp-av img{ width:100%; height:100%; object-fit:cover; object-position:50% 25%; }

.hp-av.hp-more{ font-family:var(--brandon); font-weight:700; font-size:16px; color:#fff; background:var(--green-deep); }

.hp-avatars:hover .hp-av{ opacity:.62; }

.hp-av:hover{ opacity:1 !important; transform:translateY(-6px) scale(1.12); border-color:var(--green); box-shadow:0 12px 24px -8px rgb(8 20 12 / .6); z-index:3; }

.hp-text{ font-size:clamp(15px,1.15vw,17px); color:rgb(255 255 255 / .9); line-height:1.4; max-width:30ch; }
 .hp-text b{ font-family:var(--brandon); font-weight:700; color:#fff; }

.hp-tip{ position:absolute; left:0; top:0; z-index:10; pointer-events:none; background:#fff; color:var(--ink); border-radius:11px; padding:9px 13px; box-shadow:var(--sh-lg); opacity:0; transform:translateY(6px) scale(.96); transition:opacity .18s var(--ease),transform .18s var(--ease); white-space:nowrap; }

.hp-tip.show{ opacity:1; transform:none; }

.hp-tip::after{ content:""; position:absolute; left:24px; bottom:-5px; width:10px; height:10px; background:#fff; transform:rotate(45deg); }

.hp-tip b{ display:block; font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--ink); }
 .hp-tip span{ font-size:15px; color:var(--ink-3); }

.cred{ display:flex; align-items:center; gap:16px 22px; flex-wrap:wrap; margin-top:clamp(28px,3.4vw,42px); }

.cred .lbl{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.16em; text-transform:uppercase; color:rgb(255 255 255 / .5); }

.cred .accred{ height:clamp(24px,2.6vw,32px); width:auto; max-width:100%; opacity:.92; object-fit:contain; }


.photoband{ position:relative; height:clamp(220px,26vw,360px); overflow:hidden; cursor:none; }

.photoband img{ position:absolute; inset:-6%; width:112%; height:112%; object-fit:cover; object-position:62% 36%; transition:transform .25s var(--ease); animation:slowzoom 22s ease-in-out infinite alternate; transform-origin:60% 40%; }

.photoband::before{ content:""; position:absolute; inset:0; z-index:2; background:linear-gradient(180deg, var(--surface-2) 0%, transparent 22%); }

.photoband .spot{ position:absolute; width:420px; height:420px; border-radius:50%; z-index:3; pointer-events:none; transform:translate(-50%,-50%); opacity:0; transition:opacity .3s; background:radial-gradient(circle, rgb(138 198 66 / .32) 0%, rgb(138 198 66 / .12) 35%, transparent 68%); mix-blend-mode:screen; }

.photoband:hover .spot{ opacity:1; }

.photoband .cursor{ position:absolute; z-index:5; width:54px; height:54px; border-radius:50%; border:1.5px solid rgb(255 255 255 / .8); transform:translate(-50%,-50%); pointer-events:none; opacity:0; transition:opacity .3s,width .2s,height .2s; display:grid; place-items:center; -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }

.photoband:hover .cursor{ opacity:1; }

.photoband .cursor span{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.06em; color:#fff; text-transform:uppercase; }

.photoband .cap{ position:absolute; left:clamp(20px,3vw,44px); bottom:22px; z-index:4; color:#fff; font-family:var(--brandon); font-weight:700; font-size:16px; display:flex; align-items:center; gap:10px; text-shadow:0 2px 14px rgb(0 0 0 / .4); }

.photoband .cap .bot{ width:18px; height:18px; background:#fff; }



.mob{ position:fixed; inset:0; z-index:200; background:linear-gradient(162deg, #2E642D 0%, #245C1E 46%, #1D4022 100%); padding:clamp(20px,4vw,40px); display:none; flex-direction:column; overflow-y:auto; }

.mob.open{ display:flex; }

.mob-scroll{ flex:1; overflow-y:auto; -webkit-overflow-scrolling:touch; margin:0 -4px; padding:0 4px; }

.mob-qh{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--green-deep); margin:24px 2px 12px; }

.mob-quick{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
@media(min-width:600px){ .mob-quick{ grid-template-columns:repeat(3,1fr); } }

.mqtile{ display:flex; flex-direction:column; gap:12px; padding:15px 15px 16px; border-radius:16px; background:rgb(255 255 255 / .055); border:1px solid rgb(255 255 255 / .1); color:#fff; text-decoration:none; transition:background .18s,border-color .18s,transform .18s; }

.mqtile:hover,.mqtile:active{ background:rgb(255 255 255 / .1); border-color:rgb(138 198 66 / .5); transform:translateY(-2px); }

.mqtile .ic{ width:30px; height:30px; color:var(--green-ink); }

.mqtile .ic svg{ width:100%; height:100%; }

.mqtile b{ font-family:var(--brandon); font-weight:700; font-size:16px; line-height:1.15; }

.mqtile.pri{ background:var(--green); border-color:var(--green); color:var(--green-ink); grid-column:1 / -1; flex-direction:row; align-items:center; justify-content:space-between; padding:16px 20px; }

.mqtile.pri .ic{ color:var(--green-ink); order:2; width:22px; height:22px; }

.mqtile.pri b{ font-size:18px; }

.mqsearch{ grid-column:1 / -1; display:flex; align-items:center; gap:12px; padding:14px 18px; border-radius:14px; background:rgb(255 255 255 / .07); border:1px solid rgb(255 255 255 / .14); color:rgb(255 255 255 / .72); font-family:var(--brandon); font-weight:600; font-size:16px; cursor:pointer; text-align:left; transition:background .18s,border-color .18s; }

.mqsearch:hover,.mqsearch:active{ background:rgb(255 255 255 / .11); border-color:rgb(138 198 66 / .5); }

.mqsearch .ic{ width:20px; height:20px; color:var(--green-deep); flex:none; }

.mqsearch .ic svg{ width:100%; height:100%; }

.mqsearch .mqs-k{ margin-left:auto; font-size:15px; border:1px solid rgb(255 255 255 / .22); border-radius:6px; padding:2px 8px; color:rgb(255 255 255 / .55); }

.mob .mt{ display:flex; align-items:center; justify-content:space-between; }
 .mob .mt img{ height:28px; }
 .mob .mx{ width:46px; height:46px; border-radius:50%; border:1px solid rgb(255 255 255 / .3); background:none; color:#fff; display:grid; place-items:center; }

.mob-nav{ margin-top:6px; display:flex; flex-direction:column; }

.mob .mgrp{ border-bottom:1px solid rgb(255 255 255 / .12); }

.mob .mgrp > summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; font-family:var(--brandon); font-weight:700; font-size:clamp(23px,6vw,32px); color:#fff; padding:17px 0; }

.mob .mgrp > summary::-webkit-details-marker{ display:none; }

.mob .mgrp > summary .mchev{ width:20px; height:20px; color:var(--green-deep); transition:transform .28s var(--ease); flex:none; }

.mob .mgrp[open] > summary .mchev{ transform:rotate(180deg); }

.mob .msub{ display:flex; flex-direction:column; gap:2px; padding:2px 0 16px; }
@media(min-width:600px){ .mob .msub{ display:grid; grid-template-columns:1fr 1fr; column-gap:20px; row-gap:0; } }

.mob .msub a{ font-family:var(--brandon); font-weight:600; font-size:16px; color:rgb(255 255 255 / .66); padding:9px 0 9px 4px; display:flex; align-items:center; gap:10px; transition:color .16s,padding .16s; }

.mob .msub a::before{ content:""; width:5px; height:5px; border-radius:50%; background:var(--green); opacity:0; transition:opacity .16s; }

.mob .msub a:hover,.mob .msub a:active{ color:#fff; padding-left:8px; }
 .mob .msub a:hover::before{ opacity:1; }

.mob .mlink{ font-family:var(--brandon); font-weight:700; font-size:clamp(23px,6vw,32px); color:#fff; padding:17px 0; border-bottom:1px solid rgb(255 255 255 / .12); display:block; }

.mob .mfoot{ margin-top:auto; padding-top:24px; display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
 .mob .mfoot .call{ font-family:var(--brandon); font-weight:700; font-size:20px; color:#fff; }
 .mob .mfoot .btn{ margin-left:auto; }
@media (max-width:560px){
  .util .u-mail{ display:none; }
  .fb-lead::after{ display:none; }
  .finderbar{ max-width:none; }
  .sb-field{ flex-wrap:nowrap; } .sb-go .lbl{ display:none; } .sb-go{ padding:0 14px; }
  .sec-head h2{ font-size:clamp(28px,8vw,40px); }
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}



section{ position:relative; }

.sec{ padding-block:clamp(64px,7vw,108px); }

.sec-head{ max-width:760px; margin-bottom:clamp(34px,4vw,52px); }

.sec-head.center{ margin-inline:auto; text-align:center; }

.sec-eye{ display:inline-flex; align-items:center; gap:10px; font-family:var(--brandon); font-weight:700; font-size:14px; letter-spacing:.15em; text-transform:uppercase; color:var(--green-deep); margin-bottom:16px; }

.sec-eye::before{ content:""; width:26px; height:2px; background:var(--green); border-radius:2px; }

.sec-head.center .sec-eye::before{ display:none; }

.sec-head h2{ font-size:clamp(34px,4.2vw,60px); letter-spacing:-.022em; line-height:1.02; color:var(--ink); }

.sec-head h2 em{ font-style:italic; font-weight:400; color:var(--green-mid); }

.sec-head p{ font-size:clamp(17px,1.3vw,20px); color:var(--ink-2); line-height:1.6; margin-top:16px; }

.sec-head .top{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; }
@media (prefers-reduced-motion: no-preference){ .rv{ opacity:0; transform:translateY(22px); transition:opacity .7s var(--ease),transform .7s var(--ease); } }

.rv.in{ opacity:1; transform:none; }

.rv.d1{ transition-delay:.08s; }
 .rv.d2{ transition-delay:.16s; }
 .rv.d3{ transition-delay:.24s; }
 .rv.d4{ transition-delay:.32s; }
 .rv.d5{ transition-delay:.4s; }

.linkmore{ display:inline-flex; align-items:center; gap:9px; font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--green-deep); position:relative; }

.linkmore::after{ content:""; position:absolute; left:0; right:0; bottom:-4px; height:2px; background:var(--green); transform:scaleX(0); transform-origin:left; transition:transform .25s var(--ease); }

.linkmore:hover::after{ transform:scaleX(1); }
 .linkmore .ar{ transition:transform .2s var(--ease); }
 .linkmore:hover .ar{ transform:translateX(4px); }



.help{ background:var(--surface); }

.help-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }

.help-card{ position:relative; overflow:hidden; border-radius:24px; border:1px solid var(--line); background:#fff; display:flex; flex-direction:column; transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease); }

.help-card:hover{ transform:translateY(-8px); box-shadow:var(--sh-lg); border-color:transparent; }

.help-card .art{ position:relative; height:200px; overflow:hidden; }

.help-card .art img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }

.help-card:hover .art img{ transform:scale(1.07); }

.help-card .art::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 22%, transparent) 0%, transparent 45%, color-mix(in srgb, var(--accent) 34%, transparent) 100%); mix-blend-mode:multiply; }

.help-card .art .wmk{ position:absolute; right:-46px; top:-40px; z-index:2; width:150px; height:150px; background:#fff; opacity:.34; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; transition:transform .5s var(--ease),opacity .3s; }

.help-card:hover .art .wmk{ transform:scale(1.08) rotate(6deg); opacity:.46; }

.help-card .badge-n{ display:none; }

.help-card .big{ position:absolute; left:18px; top:148px; z-index:4; width:80px; height:56px; border-radius:16px 16px 0 0; background:#fff; box-shadow:0 -6px 18px -8px color-mix(in srgb, var(--accent) 45%, transparent); display:grid; place-items:center; color:var(--accent); transition:transform .4s var(--ease),box-shadow .4s var(--ease); }

.help-card:hover .big{ transform:translateY(-3px); box-shadow:0 -10px 24px -8px color-mix(in srgb, var(--accent) 60%, transparent); }

.help-card .big::before{ content:""; position:absolute; bottom:0; left:-13px; width:13px; height:13px; background:radial-gradient(circle at 0 0, transparent 13px, #fff 13px); }

.help-card .big::after{ content:""; position:absolute; bottom:0; right:-13px; width:13px; height:13px; background:radial-gradient(circle at 100% 0, transparent 13px, #fff 13px); }

.help-card .big svg.usei{ width:30px; height:30px; stroke-width:1.8; }

.help-card .body{ position:relative; padding:30px 22px 24px; display:flex; flex-direction:column; flex:1; }

.help-card h3{ font-family:var(--brandon); font-weight:700; font-size:24px; color:var(--ink); }

.help-card p{ font-size:16px; color:var(--ink-3); line-height:1.55; margin-top:9px; }

.help-card .hchips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }

.help-card .hchips span{ font-family:var(--brandon); font-weight:600; font-size:15px; color:var(--accent-ink); background:var(--accent-bg); border-radius:7px; padding:4px 10px; }

.help-card .go{ margin-top:auto; padding-top:18px; border-top:1px solid var(--line); display:inline-flex; align-items:center; gap:8px; font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--accent-ink,var(--green-deep)); margin-top:18px; }

.help-card .go .ar{ transition:transform .2s var(--ease); }
 .help-card:hover .go .ar{ transform:translateX(5px); }

.help-card.h-green{ --accent:var(--green-deep); --accent-bg:var(--green-tint); --accent-ink:var(--green-deep); }

.help-card.h-orange{ --accent:var(--orange); --accent-bg:var(--peach-bg); --accent-ink:var(--orange-ink); }

.help-card.h-navy{ --accent:var(--navy); --accent-bg:#E3EAF5; --accent-ink:var(--navy); }

.help-card.h-mauve{ --accent:var(--mauve); --accent-bg:var(--mauve-bg); --accent-ink:#7E4F63; }



.cond{ background:var(--surface-2); }

.cond-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }

.cond-card{ position:relative; border-radius:16px; overflow:hidden; min-height:150px; display:flex; flex-direction:column; justify-content:flex-end; padding:18px; color:#fff; isolation:isolate; transition:transform .24s var(--ease),box-shadow .24s var(--ease); }

.cond-card:hover{ transform:translateY(-4px); box-shadow:var(--sh-md); }

.cond-card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform .5s var(--ease); }

.cond-card:hover img{ transform:scale(1.07); }

.cond-card .bot,.cond-card svg.usei.cond-ic{ width:26px; height:26px; color:#fff; opacity:.96; margin-bottom:auto; filter:drop-shadow(0 1px 4px rgb(0 0 0 / .35)); }

.cond-card b{ font-family:var(--brandon); font-weight:700; font-size:18.5px; line-height:1.12; }

.cond-card span{ font-size:15.5px; color:rgb(255 255 255 / .84); margin-top:4px; line-height:1.3; }

.cond-card .arr{ position:absolute; top:16px; right:16px; width:30px; height:30px; border-radius:50%; background:rgb(255 255 255 / .18); border:1px solid rgb(255 255 255 / .3); display:grid; place-items:center; opacity:0; transform:translateY(-4px); transition:opacity .22s,transform .22s; }

.cond-card:hover .arr{ opacity:1; transform:none; }

.cond .more{ margin-top:26px; display:flex; justify-content:center; }

.cine-stat{ position:relative; }

.vband-frame video,.vband-frame img{ position:absolute; inset:-18% 0; width:100%; height:136%; object-fit:cover; object-position:70% 50%; will-change:transform; }

.vband-grad{ position:absolute; inset:0; background:linear-gradient(90deg, rgb(8 20 12 / .82) 0%, rgb(8 20 12 / .54) 38%, transparent 66%), linear-gradient(180deg, transparent 64%, rgb(8 20 12 / .34) 100%); }

.vband-grad{ position:absolute; inset:0; background:linear-gradient(90deg, rgb(8 20 12 / .8) 0%, rgb(8 20 12 / .5) 40%, transparent 72%), linear-gradient(180deg, rgb(8 20 12 / .3) 0%, transparent 36%, rgb(8 20 12 / .34) 100%); }

.vband-eye{ display:inline-block; font-family:var(--brandon); font-weight:700; font-size:clamp(13px,1.1vw,14px); letter-spacing:.2em; text-transform:uppercase; color:var(--green); margin-bottom:16px; }
 .vband-cap h2 em{ font-style:italic; font-weight:400; color:#8AC642; }

.vband-tags span{ display:inline-flex; align-items:center; gap:8px; font-family:var(--brandon); font-weight:700; font-size:14px; color:#fff; background:rgb(255 255 255 / .12); border:1px solid rgb(255 255 255 / .24); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border-radius:999px; padding:9px 16px; }

.vband-tags span svg.usei{ width:15px; height:15px; color:var(--green); }



.res{ background:var(--surface); }

.res-grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr; grid-auto-rows:1fr; gap:18px; }

.res-card{ position:relative; overflow:hidden; border-radius:22px; border:1px solid var(--line); background:var(--surface-2); padding:28px; display:flex; flex-direction:column; transition:transform .26s var(--ease),box-shadow .26s var(--ease),border-color .26s; }

.res-card:hover{ transform:translateY(-6px); box-shadow:var(--sh-md); border-color:transparent; }

.res-card .ic{ width:52px; height:52px; border-radius:14px; background:#fff; border:1px solid var(--line); display:grid; place-items:center; color:var(--green-deep); flex:none; }
 .res-card .ic svg.usei{ width:27px; height:27px; }

.res-card .kqty{ font-family:var(--brandon); font-weight:700; font-size:15px; letter-spacing:.04em; color:var(--green-deep); background:var(--green-tint); border-radius:999px; padding:5px 11px; }

.res-card h3{ font-family:var(--brandon); font-weight:700; font-size:21px; color:var(--ink); margin-top:18px; line-height:1.1; }

.res-card p{ font-size:16px; color:var(--ink-3); line-height:1.5; margin-top:8px; }

.res-card .rgo{ margin-top:auto; padding-top:18px; display:inline-flex; align-items:center; gap:8px; font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--green-deep); }
 .res-card .rgo .ar{ transition:transform .2s var(--ease); }
 .res-card:hover .rgo .ar{ transform:translateX(5px); }

.res-card .top{ display:flex; align-items:center; justify-content:space-between; gap:12px; }


.res-feat{ grid-row:span 2; color:#fff; border:0; background:transparent; isolation:isolate; justify-content:flex-end; min-height:380px; }

.res-feat img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }

.res-feat .wmk{ position:absolute; right:-30px; top:-26px; width:150px; height:150px; background:#fff; opacity:.12; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; }

.res-feat .pill{ display:inline-flex; align-items:center; gap:8px; align-self:flex-start; font-family:var(--brandon); font-weight:700; font-size:13.5px; letter-spacing:.06em; text-transform:uppercase; background:var(--green); color:var(--green-ink); border-radius:999px; padding:7px 13px; }

.res-feat h3{ color:#fff; font-size:clamp(24px,2.4vw,32px); margin-top:16px; max-width:18ch; }

.res-feat p{ color:rgb(255 255 255 / .85); font-size:16px; max-width:34ch; }

.res-feat .rdl{ display:inline-flex; align-items:center; gap:9px; align-self:flex-start; margin-top:20px; font-family:var(--brandon); font-weight:700; font-size:15px; background:#fff; color:var(--green-ink); border-radius:999px; padding:13px 22px; transition:transform .18s var(--ease),box-shadow .18s var(--ease); }
 .res-feat .rdl:hover{ transform:translateY(-2px); box-shadow:var(--sh-md); }
 .res-feat .rdl svg{ width:17px; height:17px; }


.res-crisis{ background:var(--forest); color:#fff; border:0; }

.res-crisis .ic{ background:rgb(255 255 255 / .1); border-color:rgb(255 255 255 / .2); color:#fff; }

.res-crisis h3{ color:#fff; }
 .res-crisis p{ color:rgb(255 255 255 / .76); }

.res-crisis .lines{ display:flex; flex-direction:column; gap:8px; margin-top:14px; }

.res-crisis .lines a{ display:flex; align-items:center; justify-content:space-between; gap:10px; font-family:var(--brandon); font-weight:700; font-size:16px; color:#fff; background:rgb(255 255 255 / .07); border:1px solid rgb(255 255 255 / .14); border-radius:11px; padding:11px 14px; transition:background-color .16s,border-color .16s; }
 .res-crisis .lines a:hover{ background:rgb(255 255 255 / .13); border-color:rgb(255 255 255 / .3); }

.res-crisis .lines a b{ color:var(--green); font-size:16px; }

.res-aud{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:26px; }

.res-aud .lbl{ font-family:var(--brandon); font-weight:700; font-size:15px; color:var(--ink-4); }

.res-aud a{ display:inline-flex; align-items:center; gap:8px; font-family:var(--brandon); font-weight:600; font-size:14.5px; color:var(--ink-2); background:var(--surface-2); border:1.5px solid var(--line-2); border-radius:999px; padding:9px 16px; transition:background-color .15s,border-color .15s,color .15s,transform .12s; }
 .res-aud a:hover{ background:var(--green-tint); border-color:var(--green); color:var(--green-deep); transform:translateY(-2px); }
 .res-aud a svg.usei{ width:15px; height:15px; }



.how{ background:var(--forest); color:#fff; overflow:hidden; }

.how-figure{ position:absolute; left:0; bottom:0; z-index:0; width:clamp(280px,32vw,460px); height:auto; object-fit:contain; object-position:bottom left; opacity:.9; -webkit-mask:linear-gradient(90deg,#000 55%,transparent), linear-gradient(0deg,#000 80%,transparent); -webkit-mask-composite:source-in; mask:linear-gradient(90deg,#000 55%,transparent), linear-gradient(0deg,#000 80%,transparent); mask-composite:intersect; pointer-events:none; }
@media (max-width:1100px){ .how-figure{ display:none; } }

.how .sec-head h2{ color:#fff; }
 .how .sec-head h2 em{ color:var(--green-deep); }
 .how .sec-head p{ color:rgb(255 255 255 / .8); }
 .how .sec-eye{ color:var(--green-deep); }


.how{ background:radial-gradient(120% 80% at 50% -10%, var(--forest-2), var(--forest) 60%); color:#fff; overflow:hidden; }

.how .sec-head{ text-align:center; margin-inline:auto; }

.how .sec-head .sec-eye{ color:var(--green-deep); }

.how .sec-head .sec-eye::before{ display:none; }

.how-track{ position:relative; max-width:920px; margin:clamp(30px,4vw,52px) auto 0; }

.how-line{ position:absolute; left:50%; top:0; bottom:0; width:3px; transform:translateX(-50%); background:rgb(255 255 255 / .12); border-radius:3px; overflow:hidden; }

.how-line .fill{ position:absolute; left:0; top:0; width:100%; height:0; background:linear-gradient(180deg,var(--green-mid),var(--green)); border-radius:3px; transition:height .25s linear; box-shadow:0 0 16px rgb(138 198 66 / .6); }

.how-steps{ display:flex; flex-direction:column; gap:clamp(28px,4vw,56px); position:relative; z-index:1; }

.how-step{ position:relative; width:50%; padding-right:clamp(34px,4vw,60px); cursor:default; }

.how-step:nth-child(even){ align-self:flex-end; padding-right:0; padding-left:clamp(34px,4vw,60px); text-align:left; }

.how-step:nth-child(odd){ text-align:right; }

.how-node{ position:absolute; top:0; width:64px; height:64px; border-radius:20px; background:var(--forest-ink); border:1px solid rgb(255 255 255 / .16); display:grid; place-items:center; z-index:2; transition:background-color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease); }

.how-step:nth-child(odd) .how-node{ right:-32px; }

.how-step:nth-child(even) .how-node{ left:-32px; }

.how-step.on .how-node{ background:var(--green); border-color:var(--green); transform:scale(1.08); box-shadow:0 18px 40px -16px rgb(138 198 66 / .6); }

.how-node .ring{ position:absolute; inset:-6px; border-radius:inherit; border:2px solid var(--green); opacity:0; }

.how-step.on .how-node .ring{ animation:howpulse 2s ease-out infinite; }

.how-node .tick{ position:absolute; inset:0; display:grid; place-items:center; opacity:0; transform:scale(.4); transition:opacity .3s,transform .3s; }

.how-node .tick svg{ width:28px; height:28px; color:#fff; }

.how-step.done .how-node{ background:var(--green-deep); border-color:var(--green-deep); }

.how-step.done .how-node > svg.usei{ opacity:0; }

.how-step.done .how-node .tick{ opacity:1; transform:scale(1); }

.how-node svg.usei{ width:32px; height:32px; color:rgb(255 255 255 / .55); stroke-width:1.6; transition:color .4s; }

.how-step.on .how-node svg.usei{ color:#fff; }

.how-node .st{ position:absolute; top:-10px; right:-10px; min-width:24px; height:24px; padding:0 6px; border-radius:999px; background:var(--forest-2); border:1.5px solid rgb(255 255 255 / .24); color:rgb(255 255 255 / .7); font-family:var(--brandon); font-weight:700; font-size:15px; display:grid; place-items:center; transition:background-color .4s,border-color .4s,color .4s; }

.how-step.on .how-node .st{ background:#fff; border-color:#fff; color:var(--green-ink); }

.how-body{ opacity:0; transform:translateY(24px); transition:opacity .6s var(--ease),transform .6s var(--ease); }

.how-step.in .how-body{ opacity:1; transform:none; }

.how-kicker{ font-family:var(--brandon); font-weight:700; font-size:13.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--green-deep); }

.how-body h3{ font-family:var(--brandon); font-weight:700; font-size:clamp(20px,1.9vw,26px); color:#fff; margin-top:8px; line-height:1.05; }

.how-body p{ font-size:16px; color:rgb(255 255 255 / .76); line-height:1.55; margin-top:9px; }

.how-step:nth-child(odd) .how-body p{ margin-left:auto; max-width:38ch; }

.how-body .meta{ font-family:var(--brandon); font-weight:700; font-size:15px; color:var(--green); margin-top:13px; display:inline-flex; align-items:center; gap:7px; }

.how-body .meta svg{ width:14px; height:14px; }

.how-cta{ display:flex; justify-content:center; margin-top:clamp(40px,4vw,56px); }



.offer{ background:var(--surface); }

.offer-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }

.offer-card{ position:relative; border:1px solid var(--line); border-radius:20px; padding:28px; background:#fff; display:flex; flex-direction:column; overflow:hidden; transition:transform .24s var(--ease),box-shadow .24s var(--ease),border-color .24s; --oa:var(--green-deep); --oabg:var(--green-tint); }

.offer-card .ohm{ position:absolute; right:-26px; bottom:-30px; width:150px; height:150px; background:var(--oa); opacity:.05; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; pointer-events:none; transition:opacity .3s,transform .5s var(--ease); }

.offer-card:hover .ohm{ opacity:.1; transform:scale(1.08) rotate(-6deg); }

.offer-card::before{ content:""; position:absolute; left:0; top:0; right:0; height:3px; background:var(--oa); transform:scaleX(0); transform-origin:left; transition:transform .5s var(--ease); }

.offer-card.in::before{ transform:none; }

.offer-card:hover{ transform:translateY(-6px); box-shadow:var(--sh-md); border-color:transparent; }

.offer-card.featured{ transform:translateY(-8px) scale(1.015); box-shadow:var(--sh-lg); border-color:transparent; z-index:2; }

.offer-card.featured::before{ height:4px; }

.offer-card.featured .ohm{ opacity:.1; transform:scale(1.08) rotate(-6deg); }

.offer-card.featured .hd .ic{ transform:scale(1.06) rotate(-4deg); }

.offer-card.o-orange{ --oa:var(--orange); --oabg:var(--peach-bg); }
 .offer-card.o-navy{ --oa:var(--navy); --oabg:#E3EAF5; }

.offer-card .hd{ display:flex; align-items:center; gap:14px; padding-bottom:18px; border-bottom:1px solid var(--line); }

.offer-card .hd .ic{ width:54px; height:54px; border-radius:15px; background:linear-gradient(150deg, color-mix(in srgb, var(--oa) 16%, #fff), var(--oabg)); border:1px solid color-mix(in srgb, var(--oa) 22%, var(--line)); display:grid; place-items:center; flex:none; color:var(--oa); position:relative; z-index:1; transition:transform .3s var(--ease); }
 .offer-card:hover .hd .ic{ transform:scale(1.06) rotate(-4deg); }
 .offer-card .hd .ic svg.usei{ width:28px; height:28px; }

.offer-card .hd b{ font-family:var(--brandon); font-weight:700; font-size:20px; color:var(--ink); }
 .offer-card .hd span{ font-size:15px; color:var(--ink-3); display:block; margin-top:2px; }

.offer-card .hd .cnt{ margin-left:auto; align-self:flex-start; font-family:var(--brandon); font-weight:700; font-size:15px; color:var(--oa); background:var(--oabg); border-radius:999px; padding:5px 11px; }

.offer-card ul{ list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:2px; flex:1; }

.offer-card li{ opacity:0; transform:translateX(-10px); transition:opacity .4s var(--ease),transform .4s var(--ease); }

.offer-card.in li{ opacity:1; transform:none; }

.offer-card.in li:nth-child(1){ transition-delay:.12s; }
 .offer-card.in li:nth-child(2){ transition-delay:.2s; }
 .offer-card.in li:nth-child(3){ transition-delay:.28s; }
 .offer-card.in li:nth-child(4){ transition-delay:.36s; }
 .offer-card.in li:nth-child(5){ transition-delay:.44s; }

.offer-card li a{ display:flex; align-items:center; gap:10px; padding:10px 12px; margin-inline:-12px; border-radius:10px; font-size:16px; color:var(--ink-2); transition:background-color .14s,color .14s,padding-left .16s; }

.offer-card li a::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--oa); flex:none; opacity:.5; transition:opacity .14s,transform .14s; }

.offer-card li a:hover{ background:#fff; color:var(--oa); padding-left:18px; }
 .offer-card li a:hover::before{ opacity:1; transform:scale(1.3); }

.offer-card .ofoot{ display:inline-flex; align-items:center; gap:8px; margin-top:18px; padding-top:16px; border-top:1px solid var(--line); font-family:var(--brandon); font-weight:700; font-size:16px; color:var(--oa); }

.offer-card .ofoot .ar{ transition:transform .2s var(--ease); }
 .offer-card:hover .ofoot .ar{ transform:translateX(5px); }



.team{ background:var(--surface-2); }

.team-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }

.tcard{ position:relative; border-radius:20px; overflow:hidden; background:#fff; border:1px solid var(--line); transition:box-shadow .28s var(--ease),transform .28s var(--ease),border-color .28s; }

.tcard:hover{ box-shadow:var(--sh-lg); transform:translateY(-6px); border-color:transparent; }

.tcard .pic{ position:relative; aspect-ratio:4/3.7; overflow:hidden; background:linear-gradient(160deg,var(--green-tint),var(--sage-bg)); display:grid; place-items:center; }

.tcard .pic .ini{ font-family:var(--brandon); font-weight:700; font-size:44px; color:var(--green-deep); opacity:.5; }

.tcard .pic img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 22%; transition:transform .5s var(--ease); }

.tcard:hover .pic img{ transform:scale(1.05); }

.tcard .availstack{ position:absolute; top:12px; left:12px; z-index:2; display:flex; flex-direction:column; align-items:flex-start; gap:6px; }

.tcard .avail{ position:static; display:inline-flex; align-items:center; gap:6px; background:rgb(255 255 255 / .92); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); border-radius:999px; padding:5px 11px 5px 9px; font-family:var(--brandon); font-weight:700; font-size:13px; color:var(--green-deep); box-shadow:var(--sh-sm); }

.tcard .avail .d{ width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 3px rgb(138 198 66 / .28); }

.tcard .avail.soon{ color:var(--orange-ink); }
 .tcard .avail.soon .d{ background:var(--orange); box-shadow:0 0 0 3px rgb(235 134 11 / .22); }

.tcard .modes{ position:absolute; right:10px; bottom:10px; z-index:2; display:flex; gap:5px; }

.tcard .modes .mchip svg.usei{ width:11px; height:11px; stroke-width:2; color:#2E642D; }

.tcard:hover .over{ transform:none; }

.tcard .over p{ font-size:15px; line-height:1.45; color:rgb(255 255 255 / .92); }
 .tcard .over .lk{ display:inline-flex; align-items:center; gap:7px; margin-top:10px; font-family:var(--brandon); font-weight:700; font-size:15px; color:#2E642D; }

.tcard .meta{ padding:15px 16px 16px; }

.tcard .meta b{ font-family:var(--brandon); font-weight:700; font-size:16.5px; color:var(--ink); display:block; line-height:1.12; }

.tcard .meta .role{ font-size:15px; color:var(--green-deep); font-family:var(--brandon); font-weight:600; margin-top:3px; }

.tcard .tags{ display:flex; gap:5px; flex-wrap:wrap; margin-top:12px; }

.tcard .tags span{ display:inline-flex; align-items:center; font-family:var(--brandon); font-weight:600; font-size:13px; color:var(--ink-2); background:var(--surface-2); border:1px solid var(--line); border-radius:7px; padding:4px 9px; transition:background-color .14s,border-color .14s,color .14s; }

.tcard:hover .tags span{ background:var(--green-tint); border-color:transparent; color:var(--green-deep); }

.tcard .tdays{ display:inline-flex; align-items:center; gap:6px; margin-top:11px; padding-top:11px; border-top:1px solid var(--line); font-size:15px; color:var(--ink-3); font-family:var(--brandon); font-weight:600; }
 .tcard .tdays-img svg.usei{ width:12px; height:12px; stroke-width:1.9; color:#8AC642; }

.tcard .tdays svg.usei{ width:13px; height:13px; stroke-width:1.8; color:var(--green-deep); }



.journal{ background:var(--surface); }

.jrn-grid{ display:grid; grid-template-columns:1.4fr 1fr; gap:20px; }

.jfeat{ position:relative; border-radius:22px; overflow:hidden; min-height:440px; display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(26px,3vw,40px); color:#fff; isolation:isolate; }

.jfeat img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform .6s var(--ease); }

.jfeat:hover img{ transform:scale(1.05); }

.jfeat .tag{ display:inline-flex; align-items:center; gap:7px; align-self:flex-start; font-family:var(--brandon); font-weight:700; font-size:13.5px; letter-spacing:.08em; text-transform:uppercase; background:var(--green); color:var(--green-ink); border-radius:999px; padding:7px 13px; margin-bottom:16px; }

.jfeat h3{ font-family:var(--brandon); font-weight:700; font-size:clamp(26px,2.6vw,38px); line-height:1.04; color:#fff; max-width:18ch; }

.jfeat .by{ display:flex; align-items:center; gap:10px; margin-top:18px; }

.jfeat .by .jmark{ width:26px; height:26px; flex:none; background:var(--green); -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; }

.jfeat .by .av{ width:40px; height:40px; border-radius:50%; object-fit:cover; border:2px solid rgb(255 255 255 / .5); }

.jfeat .by .t{ font-size:15.5px; color:rgb(255 255 255 / .82); }
 .jfeat .by .t b{ font-family:var(--brandon); color:#fff; display:block; font-size:16px; }

.jlist{ display:flex; flex-direction:column; gap:14px; }

.jitem{ display:grid; grid-template-columns:96px 1fr; gap:16px; border:1px solid var(--line); border-radius:16px; padding:12px; background:var(--surface-2); transition:background-color .2s,border-color .2s,transform .2s; align-items:center; }

.jitem:hover{ background:#fff; border-color:var(--green); transform:translateX(4px); }

.jitem .th{ width:96px; height:84px; border-radius:11px; overflow:hidden; flex:none; }
 .jitem .th img{ width:100%; height:100%; object-fit:cover; }

.jitem .cat{ font-family:var(--brandon); font-weight:700; font-size:13px; letter-spacing:.07em; text-transform:uppercase; color:var(--green-deep); }

.jitem h4{ font-family:var(--brandon); font-weight:700; font-size:16.5px; color:var(--ink); line-height:1.2; margin-top:5px; }

.jitem .by{ display:flex; align-items:center; gap:8px; font-size:15px; color:var(--ink-3); margin-top:7px; }

.jitem .by .bav{ width:22px; height:22px; border-radius:50%; object-fit:cover; object-position:50% 25%; background:var(--green-tint); flex:none; }



.cta{ position:relative; overflow:hidden; padding-block:clamp(96px,11vw,160px); background:radial-gradient(120% 130% at 18% 0%, var(--forest-2), var(--forest-ink) 70%); color:#fff; }

.cta::before{ content:""; position:absolute; left:50%; top:46%; transform:translate(-50%,-50%); width:clamp(420px,60vw,780px); height:clamp(420px,60vw,780px); border-radius:50%; background:radial-gradient(circle, rgb(138 198 66 / .18), transparent 62%); z-index:0; animation:ctaGlow 7s ease-in-out infinite alternate; pointer-events:none; }

.cta .wm2{ position:absolute; right:auto; left:-70px; top:-50px; bottom:auto; width:340px; height:340px; opacity:.06; background:#fff; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; animation:ctaFloat 9s ease-in-out infinite alternate; }

.cta-badge{ display:inline-flex; align-items:center; gap:9px; font-family:var(--brandon); font-weight:700; font-size:14px; letter-spacing:.02em; color:#2E642D; background:rgb(138 198 66 / .14); border:1px solid rgb(138 198 66 / .3); border-radius:999px; padding:9px 17px; margin-bottom:24px; }
 .cta-badge .d{ width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 3px rgb(138 198 66 / .3); animation:ctaPulse 2s ease-out infinite; }

.cta-inner > *{ opacity:0; transform:translateY(26px); transition:opacity .7s var(--ease),transform .7s var(--ease); }

.cta-inner.in > *{ opacity:1; transform:none; }

.cta-inner.in > *:nth-child(2){ transition-delay:.08s; }
 .cta-inner.in > *:nth-child(3){ transition-delay:.16s; }
 .cta-inner.in > *:nth-child(4){ transition-delay:.24s; }
 .cta-inner.in > *:nth-child(5){ transition-delay:.32s; }

.cta .wm{ position:absolute; right:-70px; top:-50px; width:380px; height:380px; opacity:.07; background:#fff; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; pointer-events:none; }

.cta-inner{ position:relative; z-index:2; text-align:center; max-width:820px; margin-inline:auto; }

.cta h2{ font-size:clamp(40px,5.6vw,80px); letter-spacing:-.026em; line-height:1.0; color:#fff; }
 .cta h2 em{ font-style:italic; font-weight:400; color:#8AC642; }
.cta p{ font-size:clamp(17px,1.4vw,22px); color:rgb(255 255 255 / .86); margin-top:20px; line-height:1.55; }

.cta .btns{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:34px; }
 .cta .btns .btn{ padding:18px 30px; font-size:18px; }

.cta .reassure{ display:flex; gap:10px 24px; justify-content:center; flex-wrap:wrap; margin-top:26px; font-size:16px; color:rgb(255 255 255 / .76); }
 .cta .reassure span{ display:inline-flex; align-items:center; gap:8px; }
 .cta .reassure span svg.usei{ color:var(--green); }



.foot{ position:relative; overflow:hidden; background:var(--forest-ink); color:rgb(255 255 255 / .68); padding-block:0 0; }

.foot-wm{ position:absolute; right:-90px; bottom:-90px; z-index:0; width:min(40vw,420px); aspect-ratio:604/603; background:#fff; opacity:.04; pointer-events:none; -webkit-mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; mask:url("../../assets/logos/logo-icon.png") center/contain no-repeat; }

.foot .wrap{ position:relative; z-index:1; }

.foot-news-band{ display:flex; align-items:center; justify-content:space-between; gap:24px 40px; flex-wrap:wrap; padding:clamp(30px,4vw,44px) 0; border-bottom:1px solid rgb(255 255 255 / .12); }

.foot-news-band .fn-l h4{ font-family:var(--brandon); font-weight:700; font-size:clamp(19px,2vw,24px); color:#fff; line-height:1.1; }
 .foot-news-band .fn-l p{ font-size:16px; color:rgb(255 255 255 / .62); margin-top:6px; }

.foot-news{ flex:none; }
 .foot-news .row{ display:flex; gap:8px; }
 .foot-news input{ width:min(300px,60vw); background:rgb(255 255 255 / .08); border:1px solid rgb(255 255 255 / .18); border-radius:11px; padding:13px 16px; color:#fff; font-size:16px; transition:border-color .16s,background-color .16s; }
 .foot-news input::placeholder{ color:rgb(255 255 255 / .45); }
 .foot-news input:focus{ outline:0; border-color:var(--green); background:rgb(255 255 255 / .12); }

.foot-news button{ flex:none; background:var(--green); color:var(--green-ink); border:0; border-radius:11px; padding:0 20px; font-family:var(--brandon); font-weight:700; font-size:16px; cursor:pointer; transition:background-color .16s,transform .14s; }
 .foot-news button:hover{ background:var(--green-2); transform:translateY(-1px); }

.foot-ready{ display:none; }

.foot-contact h5{ }
 .foot-contact{ display:flex; flex-direction:column; gap:9px; }
 .foot-contact .fc-phone{ font-family:var(--brandon); font-weight:700; font-size:20px; color:#fff; display:inline-flex; align-items:center; gap:9px; }
 .foot-contact .fc-phone:hover{ color:var(--green-deep); }
 .foot-contact .fc-line{ font-size:16px; color:rgb(255 255 255 / .68); line-height:1.4; display:inline-flex; align-items:flex-start; gap:9px; }
 .foot-contact a.fc-line:hover{ color:var(--green-deep); }
 .foot-contact svg.usei{ width:16px; height:16px; color:var(--green); flex:none; margin-top:2px; }
 .foot-contact .fc-phone svg.usei{ margin-top:0; }
 .foot-contact .fc-book{ align-self:flex-start; margin-top:12px; padding:11px 18px; font-size:16px; }

.foot-cta{ display:flex; align-items:center; justify-content:space-between; gap:24px 40px; flex-wrap:wrap; padding:clamp(34px,4vw,48px) 0; border-bottom:1px solid rgb(255 255 255 / .12); }

.foot-cta .ct-l h3{ font-family:var(--brandon); font-weight:700; font-size:clamp(24px,2.6vw,34px); color:#fff; line-height:1.05; }
 .foot-cta .ct-l h3 em{ font-style:italic; font-weight:400; color:#8AC642; }

.foot-cta .ct-l p{ font-size:16px; color:rgb(255 255 255 / .74); margin-top:9px; }

.foot-cta .ct-r{ display:flex; gap:12px; flex-wrap:wrap; }

.foot-contacts{ display:flex; gap:14px; flex-wrap:wrap; }

.foot-contacts a{ display:inline-flex; align-items:center; gap:11px; background:rgb(255 255 255 / .05); border:1px solid rgb(255 255 255 / .14); border-radius:14px; padding:13px 18px; transition:background-color .18s,border-color .18s,transform .18s; }

.foot-contacts a:hover{ background:rgb(255 255 255 / .09); border-color:rgb(255 255 255 / .3); transform:translateY(-2px); }

.foot-contacts .ci{ width:38px; height:38px; border-radius:11px; background:rgb(138 198 66 / .16); display:grid; place-items:center; flex:none; }
 .foot-contacts .ci svg.usei{ width:19px; height:19px; color:var(--green); }

.foot-contacts .ct b{ display:block; font-family:var(--brandon); font-weight:700; font-size:16px; color:#fff; line-height:1.1; }
 .foot-contacts .ct span{ font-size:15px; color:rgb(255 255 255 / .6); }

.foot-top{ display:grid; grid-template-columns:1.7fr 1fr 1fr 1fr 1fr; gap:30px; padding:clamp(34px,4vw,48px) 0 36px; border-bottom:1px solid rgb(255 255 255 / .12); }

.foot .brand .flogo{ height:30px; width:auto; }

.foot .brand p{ font-size:16px; line-height:1.6; margin-top:16px; max-width:36ch; color:rgb(255 255 255 / .72); }

.foot .brand .accredf{ display:block; height:22px; width:auto; opacity:.6; margin-top:20px; filter:grayscale(1); transition:opacity .2s,filter .2s; }
 .foot .brand .accredf:hover{ opacity:.9; filter:none; }

.foot .brand .social{ display:flex; gap:10px; margin-top:16px; }
 .foot .brand .social a{ width:40px; height:40px; border-radius:11px; border:1px solid rgb(255 255 255 / .16); display:grid; place-items:center; color:#fff; transition:background-color .18s,border-color .18s,transform .18s; }
 .foot .brand .social a:hover{ background:var(--green); border-color:var(--green); color:var(--green-ink); transform:translateY(-3px); }

.foot h5{ font-family:var(--brandon); font-weight:700; font-size:14px; letter-spacing:.1em; text-transform:uppercase; color:#fff; margin:0 0 18px; }

.foot ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:3px; }

.foot li a{ display:inline-flex; align-items:center; font-size:16px; color:rgb(255 255 255 / .68); padding:7px 0 7px 0; border-left:2px solid transparent; padding-left:0; transition:color .16s,padding-left .16s,border-color .16s; }

.foot li a:hover{ color:#fff; padding-left:12px; border-left-color:var(--green); }

.foot-bot{ display:flex; align-items:center; justify-content:space-between; gap:14px 32px; flex-wrap:wrap; padding:20px 0 30px; font-size:15px; }

.foot-bot .ack{ max-width:62ch; line-height:1.55; color:rgb(255 255 255 / .5); font-size:15px; }

.foot-bot .legal{ display:flex; gap:20px; flex-wrap:wrap; }
 .foot-bot .legal a{ color:rgb(255 255 255 / .68); }
 .foot-bot .legal a:hover{ color:#fff; }
@media (max-width:1180px){
  .help-grid{ grid-template-columns:repeat(2,1fr); } .cond-grid{ grid-template-columns:repeat(3,1fr); } .team-grid{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:980px){
  .cond-grid{ grid-template-columns:repeat(2,1fr); } .team-grid{ grid-template-columns:repeat(2,1fr); }
  .how-track{ max-width:none; } .how-line{ left:31px; transform:none; }
  .how-step,.how-step:nth-child(even),.how-step:nth-child(odd){ width:100%; align-self:auto; text-align:left; padding:0 0 0 78px; }
  .how-step:nth-child(odd) .how-node,.how-step:nth-child(even) .how-node{ left:0; right:auto; }
  .how-step:nth-child(odd) .how-body p,.how-step:nth-child(even) .how-body p{ margin-left:0; max-width:none; }
  .jrn-grid{ grid-template-columns:1fr; } .jfeat{ min-height:340px; }
  .foot-top{ grid-template-columns:1fr 1fr 1fr; } .foot .brand{ grid-column:1 / -1; }
}
@media (max-width:760px){
  .offer-grid{ grid-template-columns:1fr; }
}



.hdr-progress{ position:absolute; left:0; right:0; bottom:-2px; height:2.5px; pointer-events:none; opacity:0; transition:opacity .3s; }

.hdr.stuck .hdr-progress{ opacity:1; }

.hdr-progress span{ display:block; height:100%; width:0; background:linear-gradient(90deg,var(--green-mid),var(--green)); }

.btn-ghostw{ background:rgb(255 255 255 / .08); color:#fff; border-color:rgb(255 255 255 / .42); }

.btn-ghostw:hover{ border-color:#fff; background:rgb(255 255 255 / .15); }

.ctac-grad{ position:absolute; inset:0; background:linear-gradient(95deg, rgb(8 22 14 / .88) 0%, rgb(8 22 14 / .6) 40%, rgb(8 22 14 / .16) 75%), linear-gradient(0deg, rgb(8 22 14 / .4), transparent 40%); }

.ctac-inner h2 em{ font-style:italic; font-weight:400; color:#2E642D; }

.ctac-inner p{ font-size:clamp(17px,1.4vw,21px); color:rgb(255 255 255 / .88); margin-top:18px; max-width:44ch; line-height:1.55; }

.ctac-inner .reassure span{ display:inline-flex; align-items:center; gap:8px; }

.ctac-inner .reassure svg.usei{ color:var(--green-deep); width:16px; height:16px; }

.foot-c{ background:var(--paper); color:var(--ink-2); border-top:1px solid var(--line); }

.fc2-top{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1.3fr; gap:30px; padding:clamp(36px,5vw,56px) 0 34px; border-bottom:1px solid var(--line-2); }

.foot-c h5{ font-family:var(--brandon); font-weight:700; font-size:14px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink); margin:0 0 16px; }

.foot-c ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:3px; }

.foot-c li a{ font-size:16px; color:var(--ink-2); padding:6px 0; display:inline-flex; border-left:2px solid transparent; transition:color .15s,padding-left .15s,border-color .15s; }

.foot-c li a:hover{ color:var(--green-deep); padding-left:10px; border-left-color:var(--green-deep); }

.brandc img{ height:30px; width:auto; }

.brandc p{ font-size:16px; color:var(--ink-3); margin-top:14px; max-width:34ch; line-height:1.6; }

.socialc{ display:flex; gap:10px; margin-top:16px; }

.socialc a{ width:40px; height:40px; border-radius:11px; border:1.5px solid var(--line-2); background:#fff; display:grid; place-items:center; color:var(--ink); transition:background-color .18s,border-color .18s,color .18s,transform .18s; }

.socialc a:hover{ background:var(--green); border-color:var(--green); color:var(--green-ink); transform:translateY(-3px); }

.foot-c .cc{ display:flex; flex-direction:column; gap:9px; }

.foot-c .cc .fc-phone2{ font-family:var(--brandon); font-weight:700; font-size:20px; color:var(--ink); display:inline-flex; align-items:center; gap:9px; }

.foot-c .cc .fc-phone2:hover{ color:var(--green-deep); }

.foot-c .cc .fc-l{ font-size:16px; color:var(--ink-3); line-height:1.4; display:inline-flex; align-items:flex-start; gap:9px; }

.foot-c .cc .fc-l svg.usei{ width:16px; height:16px; color:var(--green-deep); flex:none; margin-top:2px; }

.foot-c .cc a.fc-l:hover{ color:var(--green-deep); }

.foot-c .cc .btn{ align-self:flex-start; margin-top:10px; padding:11px 18px; font-size:16px; }

.crisis2{ display:flex; align-items:center; gap:6px 18px; flex-wrap:wrap; padding:11px 0; border-bottom:1px solid var(--line-2); font-size:15px; color:var(--ink-4); }

.crisis2 .fc-b2{ display:inline-flex; align-items:center; gap:7px; font-family:var(--brandon); font-weight:700; color:var(--ink); font-size:15px; }

.crisis2 .fc-b2 svg.usei{ width:14px; height:14px; color:var(--green-deep); }

.crisis2 a{ font-family:var(--brandon); font-weight:700; color:var(--green-deep); }

.crisis2 a:hover{ text-decoration:underline; }

.totop:hover{ background:var(--green); border-color:var(--green); color:var(--green-ink); transform:translateY(-3px); }

.bot2{ display:flex; align-items:center; justify-content:space-between; gap:14px 30px; flex-wrap:wrap; padding:18px 0 28px; font-size:15px; color:var(--ink-4); }

.bot2 .ack2{ max-width:62ch; line-height:1.55; }

.bot2 .legal2{ display:flex; gap:20px; flex-wrap:wrap; }

.bot2 .legal2 a{ color:var(--ink-3); }
 .bot2 .legal2 a:hover{ color:var(--ink); }
@media (max-width:980px){ .fc2-top{ grid-template-columns:1fr 1fr; } }


:focus-visible{ outline:2.5px solid var(--green-deep); outline-offset:3px; }

.skip{ position:fixed; left:-9999px; top:10px; z-index:400; background:var(--forest); color:#fff; font-family:var(--brandon); font-weight:700; font-size:16px; padding:13px 22px; border-radius:999px; box-shadow:var(--sh-lg); }

.skip:focus-visible{ left:12px; }

.bkm{ position:fixed; inset:0; z-index:320; display:grid; place-items:center; padding:18px; }

.bkm[hidden]{ display:none; }

.bkm-back{ position:absolute; inset:0; background:rgb(10 24 16 / .55); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); animation:bkmFade .25s var(--ease); }

.bkm-card{ position:relative; width:min(560px,100%); max-height:min(88vh,760px); overflow:auto; background:var(--surface); border-radius:24px; padding:clamp(24px,4vw,36px); box-shadow:var(--sh-lg); animation:bkmUp .3s var(--ease); }

.bkm-x:hover{ border-color:var(--ink); color:var(--ink); }

.bkm-card .sub{ font-size:16px; color:var(--ink-3); margin-top:8px; }

.bkm-opts{ display:grid; gap:10px; margin-top:20px; }

.bkm-opt{ display:flex; align-items:center; gap:14px; border:1.5px solid var(--line); border-radius:16px; padding:14px 16px; transition:border-color .15s,background-color .15s,transform .15s; }

.bkm-opt:hover{ border-color:var(--green); background:var(--green-tint); transform:translateY(-1px); }

.bkm-opt .ic{ width:44px; height:44px; border-radius:12px; background:var(--green-tint); display:grid; place-items:center; flex:none; color:var(--green-deep); }

.bkm-opt .tx b{ font-family:var(--brandon); font-weight:700; font-size:16.5px; color:var(--ink); display:block; }

.bkm-opt .tx span{ display:block; font-size:15.5px; color:var(--ink-3); line-height:1.4; margin-top:2px; }

.bkm-div{ display:flex; align-items:center; gap:12px; margin:20px 0 12px; font-family:var(--brandon); font-weight:700; font-size:13.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-4); }

.bkm-div::before,.bkm-div::after{ content:""; flex:1; height:1px; background:var(--line); }

.bkm-form{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }

.bkm-form input,.bkm-form select{ border:1.5px solid var(--line-2); border-radius:12px; padding:13px 14px; font-size:16px; color:var(--ink); background:#fff; outline:0; transition:border-color .15s,box-shadow .15s; width:100%; }

.bkm-form input:focus,.bkm-form select:focus{ border-color:var(--green); box-shadow:0 0 0 3px rgb(138 198 66 / .22); }

.bkm-form .full{ grid-column:1 / -1; }

.bkm-form button:hover{ background:var(--forest-2); }

.bkm-ok{ margin-top:14px; background:var(--green-tint); border-radius:12px; padding:14px 16px; font-size:16px; color:var(--green-ink); }

.bkm-crisis{ margin-top:18px; padding-top:14px; border-top:1px solid var(--line); font-size:15.5px; color:var(--ink-3); }

.bkm-crisis a{ font-weight:700; color:var(--green-deep); text-decoration:underline; }

body.bkm-open{ overflow:hidden; }
@media (max-width:560px){ .bkm{ padding:0; place-items:end center; } .bkm-card{ border-radius:20px 20px 0 0; max-height:92vh; width:100%; } .bkm-form{ grid-template-columns:1fr; } }




.nav > a[aria-current="page"],.nav .mega-trigger[aria-current="page"]{color:#8AC642}

.hdr.stuck .nav > a[aria-current="page"],.hdr.stuck .nav .mega-trigger[aria-current="page"]{color:#2E642D}



.hero .hero-deco .mark{ transform:translate3d(0, calc(-50% + var(--py,0px)), 0); will-change:transform; }






.rf-f input[type="radio"],.rf-f input[type="checkbox"],
.field input[type="radio"],.field input[type="checkbox"],
.bkm-form input[type="radio"],.bkm-form input[type="checkbox"],
.cform input[type="radio"],.cform input[type="checkbox"]{
  width:auto; max-width:none; flex:none;
}



.mh-menu-open .mhw-fab{ display:none !important; }
@media (min-width:1025px){
  .mhw-fab{ margin-bottom:8px; }
}
@supports (mask-size: 100% 100%) or (-webkit-mask-size: 100% 100%){
.hero::before{ content:""; position:absolute; left:0; right:0; bottom:0; z-index:4; pointer-events:none; height:clamp(40px,4.2vw,76px); background:var(--hero-edge-fill,var(--surface-2)); -webkit-mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C100%20L1200%2C100%20L1200%2C26%20C1010%2C14%20900%2C30%20730%2C22%20C560%2C14%20470%2C30%20300%2C22%20C190%2C17%2096%2C28%200%2C19%20Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C100%20L1200%2C100%20L1200%2C26%20C1010%2C14%20900%2C30%20730%2C22%20C560%2C14%20470%2C30%20300%2C22%20C190%2C17%2096%2C28%200%2C19%20Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
.hero:has(+ .fam)::before,.hero:has(+ .story)::before{ --hero-edge-fill:var(--paper); }
.hero:has(+ .art-byline)::before,.hero:has(+ .article)::before,.hero:has(+ .fund)::before,.hero:has(+ .gpwhy)::before,.hero:has(+ .pbody)::before,.hero:has(+ .tx)::before,.hero:has(+ .ways)::before,.hero:has(+ .why)::before{ --hero-edge-fill:var(--surface); }
.hero:has(+ .breathe)::before,.hero:has(+ .nums)::before,.hero--editorial::before{ display:none; }
.hero--sub::before{ z-index:6; }
.cta-c .ctac-frame::before,.cta-c .ctac-frame::after{ content:""; position:absolute; left:0; right:0; z-index:3; pointer-events:none; height:clamp(40px,4.2vw,76px); background:var(--paper); -webkit-mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C100%20L1200%2C100%20L1200%2C26%20C1010%2C14%20900%2C30%20730%2C22%20C560%2C14%20470%2C30%20300%2C22%20C190%2C17%2096%2C28%200%2C19%20Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C100%20L1200%2C100%20L1200%2C26%20C1010%2C14%20900%2C30%20730%2C22%20C560%2C14%20470%2C30%20300%2C22%20C190%2C17%2096%2C28%200%2C19%20Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
.cta-c .ctac-frame::before{ top:0; transform:scaleY(-1); }
.cta-c .ctac-frame::after{ bottom:0; }
}



.ctac-inner h2 em{ color:#8AC642; }

.mega-feat .card .go{ color:#8AC642; }

.ctac-inner .reassure svg.usei{ color:#8AC642; }

.foot-c li a{ border-left:0; padding:5px 0; }

.foot-c li a:hover{ padding-left:0; border-left-color:transparent; color:var(--green-mid); text-decoration:underline; text-decoration-color:var(--green); text-decoration-thickness:1.5px; text-underline-offset:5px; }

.mega-link{ padding:6px 10px; }
