:root{--bg:#F4F2EC;--ink:#1C1A17;--muted:#4A453E;--green:#1E4D2B;--lime:#7BC94A;--dark:#12241A;--red:#B3152B;--gold:#FFD27A;--brown:#8A4B2A}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.6;overflow-x:clip}
*{-webkit-tap-highlight-color:transparent}
img,video,svg{max-width:100%}
a{color:var(--green)}a:hover{color:#12301A}
h1,h2,h3,.disp{font-family:'Bricolage Grotesque',system-ui,sans-serif}
h2.title{margin:0;font-weight:800;font-size:clamp(32px,5vw,60px);line-height:1;letter-spacing:-1.5px}
.eyebrow{margin:0;font-weight:600;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--brown)}
.wrap{max-width:1240px;margin:0 auto}
section[id]{scroll-margin-top:84px}
.sec{padding:104px 24px}
.chip{background:#fff;border:1px solid #DDD8CD;padding:6px 14px;border-radius:999px;font-size:14px;font-weight:600}
.price-row{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;background:var(--bg);border-radius:14px}
.price-row b{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:20px;color:var(--green)}
.cta{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;background:var(--green);color:#fff;text-decoration:none;padding:14px 26px;border-radius:999px;font-weight:600}
.cta:hover{color:#fff}
.card{border-radius:24px;padding:26px;display:flex;flex-direction:column;gap:10px;background:#fff}
.card h3{margin:0;font-weight:800;font-size:22px;line-height:1.15}
.card p{margin:0;color:var(--muted);font-size:15px}
[hidden]{display:none!important}
@keyframes up{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes rvIn{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(123,201,74,.55)}100%{box-shadow:0 0 0 18px rgba(123,201,74,0)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes drop{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes snow{0%{transform:translate3d(0,-40px,0)}100%{transform:translate3d(40px,760px,0)}}
@keyframes twinkle{0%,100%{opacity:1;filter:brightness(1.2)}50%{opacity:.3;filter:brightness(.8)}}
@keyframes sway{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
.flake{position:absolute;top:0;color:#fff;pointer-events:none;animation:snow linear infinite;text-shadow:0 0 6px rgba(255,255,255,.6)}
.bulb{display:block;width:9px;height:13px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;animation:twinkle 1.6s ease-in-out infinite}
.sway{animation:sway 3.5s ease-in-out infinite;transform-origin:50% 0}
.up{animation:up .9s cubic-bezier(.2,.7,.2,1) both}
.d1{animation-delay:.1s}.d2{animation-delay:.25s}.d3{animation-delay:.4s}.d4{animation-delay:.6s}
.fade{animation:fadeIn .55s cubic-bezier(.2,.7,.2,1) both}
.drop{animation:drop .3s ease both}
.mq{animation:mq 30s linear infinite}
.pulse{animation:pulse 1.8s ease-out infinite}
.spin{animation:spin 18s linear infinite}
.rv{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.lift:hover{transform:translateY(-6px);box-shadow:0 22px 40px -18px rgba(28,26,23,.35)}
.zoom{overflow:hidden}
.zoom img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.zoom:hover img{transform:scale(1.07)}
.btn{transition:transform .2s,filter .2s,background-color .25s,border-color .25s,color .25s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.tr{transition:fill .45s ease}
.hero{height:720px}
.media{height:520px}
.gtile{height:380px}
.mqtxt{font-size:28px}
.desk{display:flex}
.mob{display:none}
@media (max-width:860px){.desk{display:none}.mob{display:flex}}
@media (max-width:640px){.hero{height:640px}.sec{padding:64px 18px}.media{height:300px}.gtile{height:280px}.mqtxt{font-size:20px}.hide-sm{display:none}}
.tab{padding:10px 16px;border-radius:999px;border:0;cursor:pointer;font:inherit;font-weight:600;font-size:15px;min-height:44px;background:transparent;color:#3A362F}
.tab[aria-selected="true"]{background:var(--ink);color:#fff}
.fchip{padding:10px 16px;border-radius:999px;cursor:pointer;font:inherit;font-weight:600;font-size:15px;min-height:44px;background:#fff;color:#3A362F;border:1px solid #D6D0C4}
.fchip[aria-pressed="true"]{background:var(--green);color:#fff;border-color:var(--green)}
.model{display:flex;align-items:center;gap:14px;padding:10px;border-radius:20px;cursor:pointer;font:inherit;min-height:84px;background:rgba(255,255,255,.05);color:#F4F2EC;border:2px solid rgba(255,255,255,.15);text-align:left}
.model[aria-pressed="true"]{background:var(--lime);color:#0F1A12;border-color:var(--lime);box-shadow:0 14px 30px -14px rgba(123,201,74,.7)}
.model img{width:64px;height:64px;border-radius:14px;object-fit:cover;display:block;flex-shrink:0}
.model .n{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:19px;display:block}
.model .p{font-size:14px;opacity:.85;display:block}
.dopt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border-radius:16px;cursor:pointer;font:inherit;font-size:16px;text-align:left;min-height:56px;background:rgba(255,255,255,.05);color:#F4F2EC;border:2px solid rgba(255,255,255,.15)}
.dopt[aria-pressed="true"]{background:var(--lime);color:#0F1A12;border-color:var(--lime)}
.sw{width:48px;height:48px;border-radius:50%;cursor:pointer;border:3px solid rgba(255,255,255,.15)}
.sw[aria-pressed="true"]{border-color:#fff;box-shadow:0 0 0 4px rgba(123,201,74,.6)}
.qbtn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:24px;cursor:pointer}
.legend{padding:0;margin-bottom:12px;font-weight:600;font-size:15px;color:#DDE6D7}
fieldset{border:0;margin:0;padding:0;min-width:0}
.faq details{background:#fff;border-radius:18px;border:1px solid #E2DDD2;overflow:hidden}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;min-height:56px;cursor:pointer;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:19px}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{transition:transform .3s;flex-shrink:0}
.faq details[open] summary svg{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 22px 20px;color:var(--muted);animation:fadeIn .4s ease both}
@media (prefers-reduced-motion:reduce){.up,.fade,.drop,.mq,.pulse,.spin,.bulb,.sway{animation:none!important}.flake{display:none}.rv{opacity:1;transform:none;transition:none}.lift,.zoom img,.btn{transition:none}html{scroll-behavior:auto}}
