:root{--navy:#1B1A17;--tag:#F2B632;--brass:#E0A425;--was:#FF6FB5;--mist:#5E584A;--soft:#655534;--glass:rgba(27,26,23,0.066);--gline:rgba(27,26,23,0.154);
  --display:"Young Serif","Avenir Next","Segoe UI",system-ui,sans-serif;--body:"Figtree","Helvetica Neue",Arial,system-ui,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#FFF6E3;color:#1B1A17;font:400 1.0625rem/1.6 var(--body);padding-bottom:env(safe-area-inset-bottom,0px);overflow-x:clip}
a{color:inherit}:focus-visible{outline:3px solid var(--tag);outline-offset:3px;border-radius:6px}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,40px);position:relative;z-index:2}
.dk{position:relative;overflow:hidden;padding:clamp(80px,11vw,140px) 0;background:radial-gradient(ellipse at 50% 40%,#F3EBD8 0%,#FFF6E3 45%,#FFF6E3 100%)}
.dk.alt{background:radial-gradient(ellipse at 20% 30%,#F3EBD8 0%,#D8D9F3 45%,#FFF6E3 100%)}
.amb{position:absolute;inset:0;pointer-events:none;z-index:1}
.eyebrow{font:700 .78rem var(--body);letter-spacing:.16em;color:#7A5310;margin:0 0 14px}
.h2{font:800 clamp(2.4rem,5.4vw,4.6rem)/.92 var(--display);letter-spacing:-.045em;margin:0 0 18px;max-width:16ch}
.h2 em{font-style:normal;color:#7A5310}
.lead{color:var(--soft);font-size:1.15rem;max-width:54ch;margin:0 0 54px}
.glass{background:var(--glass);border:1px solid var(--gline);border-radius:28px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.rv{opacity:0;transform:translateY(46px) scale(.98);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
.tilt{transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .3s}
.tilt:hover{border-color:rgba(255,211,78,.6)}
.amb .o{position:absolute;will-change:transform;filter:drop-shadow(0 10px 16px rgba(0,0,0,.35))}
.amb .gold{width:var(--s);height:var(--s);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#FFF1B8,#F2B632 45%,#E0A425);color:var(--navy);font:800 calc(var(--s)*.42) var(--display)}
.amb .mini{background:var(--tag);color:var(--navy);font:800 .95rem var(--display);padding:7px 13px 7px 21px;border-radius:8px;white-space:nowrap;clip-path:polygon(12px 0,100% 0,100% 100%,12px 100%,0 50%)}
.amb .mini.ghost{background:#F5ECD6;color:#232D76}
.rise{position:absolute;bottom:-40px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFF1B8,#F2B632 45%,#E0A425);box-shadow:0 0 12px rgba(255,211,78,.35);pointer-events:none}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step3{padding:30px;min-height:330px;display:flex;flex-direction:column}
.step3 .n{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--tag);color:var(--navy);font:800 1.1rem var(--display)}
.step3 h3{font:800 1.6rem/1.05 var(--display);letter-spacing:-.03em;margin:18px 0 8px}
.step3 p{color:var(--soft);margin:0}
.scene{margin-top:auto;padding-top:26px;height:140px;position:relative}
.s-link{display:flex;align-items:center;gap:8px;background:#fff;color:var(--navy);border-radius:14px;padding:12px 14px;font:600 .9rem var(--body);box-shadow:0 14px 30px -12px rgba(0,0,0,.5);overflow:hidden;white-space:nowrap}
.s-link .t{overflow:hidden;width:0;animation:typing 3.2s steps(22) infinite}
.s-link .c{width:2px;height:16px;background:var(--navy);animation:blink 1s steps(1) infinite}
@keyframes typing{0%{width:0}55%,100%{width:13.5em}}
@keyframes blink{50%{opacity:0}}
.s-go{display:inline-block;margin-top:12px;background:var(--tag);color:var(--navy);font:700 .85rem var(--body);padding:8px 14px;border-radius:10px;box-shadow:0 3px 0 var(--brass);animation:press 3.2s infinite}
@keyframes press{0%,60%{transform:none}66%{transform:translateY(3px);box-shadow:0 0 0 var(--brass)}72%,100%{transform:none}}
.s-radar{position:absolute;left:50%;top:60%;width:120px;height:120px;margin:-60px;border-radius:50%;border:1px solid rgba(255,211,78,.35)}
.s-radar::before,.s-radar::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--tag);animation:ping 2.4s ease-out infinite;opacity:0}
.s-radar::after{animation-delay:1.2s}
@keyframes ping{0%{transform:scale(.3);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.s-radar i{position:absolute;inset:34px;border-radius:50%;background:var(--tag);display:grid;place-items:center;color:var(--navy);font:800 1.1rem var(--display);font-style:normal}
.s-tag{position:absolute;background:#fff;color:var(--navy);font:800 .78rem var(--display);padding:4px 9px 4px 14px;border-radius:6px;white-space:nowrap;
  clip-path:polygon(8px 0,100% 0,100% 100%,8px 100%,0 50%);opacity:0;animation:tagPop 4.8s ease-in-out infinite}
.s-tag.t1{left:-46px;top:6px}.s-tag.t2{right:-50px;top:30px;animation-delay:.6s}
.s-tag.t3{right:-44px;bottom:6px;background:#FFFDF7;color:#1B1A17;animation-name:tagBest;animation-delay:1.2s}
@keyframes tagPop{0%,6%{opacity:0;translate:0 6px}14%,80%{opacity:1;translate:0 0}92%,100%{opacity:0}}
@keyframes tagBest{0%,6%{opacity:0;scale:.6}14%{opacity:1;scale:1.18}20%,80%{opacity:1;scale:1}92%,100%{opacity:0}}
.s-bell{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%)}
.s-bell svg{width:84px;height:84px;transform-origin:50% 8%;animation:swing 2.4s ease-in-out infinite}
@keyframes swing{0%,40%,100%{transform:rotate(0)}5%{transform:rotate(18deg)}12%{transform:rotate(-14deg)}19%{transform:rotate(9deg)}26%{transform:rotate(-5deg)}}
.s-save{position:absolute;right:6%;top:4%;background:#fff;color:var(--navy);font:800 1.05rem var(--display);padding:7px 12px;border-radius:12px;animation:pop 2.4s ease-in-out infinite}
@keyframes pop{0%,8%{transform:scale(0);opacity:0}16%{transform:scale(1.15);opacity:1}24%,85%{transform:scale(1);opacity:1}100%{transform:scale(.9);opacity:0}}
.promo{position:relative;padding:10px;margin:0 0 26px}
.promo video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:20px;background:#FFF6E3}
.snd{position:absolute;left:26px;bottom:26px;display:inline-flex;align-items:center;gap:8px;background:rgba(255,246,227,0.75);color:#1B1A17;border:1px solid rgba(27,26,23,0.275);border-radius:999px;padding:9px 16px;font:700 .9rem var(--body);cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.snd:hover{border-color:var(--tag)}
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.person{padding:14px 14px 22px}
.person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:20px;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.person{overflow:hidden}
.person:hover img{transform:scale(1.04)}
.flake{position:absolute;top:-20px;border-radius:50%;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.6);pointer-events:none;z-index:1;animation:flake var(--t) linear forwards}
@keyframes flake{0%{transform:translate(0,0);opacity:0}10%{opacity:var(--o)}100%{transform:translate(var(--sx),112vh);opacity:.1}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.person strong{display:block;font:800 1.35rem/1.15 var(--display);letter-spacing:-.02em;margin:18px 8px 4px}
.person span{display:block;color:var(--soft);margin:0 8px}
.getapp{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(28px,5vw,60px)}
.appicon{width:clamp(110px,15vw,170px);aspect-ratio:1;border-radius:28%;background:#FFF6E3;display:grid;place-items:center;box-shadow:0 30px 60px -20px rgba(0,0,0,.7),inset 0 0 0 2px rgba(255,255,255,.08);animation:bob 6s ease-in-out infinite}
.appicon img{width:62%;height:62%}
.getapp .fine{color:var(--mist);font-size:.9rem;margin:16px 0 0}
.stores{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.store{display:inline-flex;align-items:center;gap:12px;padding:10px 20px 10px 14px;border-radius:14px;background:#FFF6E3;color:#1B1A17;text-decoration:none;border:2px solid rgba(27,26,23,0.22);cursor:pointer;font:inherit;text-align:left;transition:border-color .2s,transform .2s}
.store:hover{border-color:var(--tag);transform:translateY(-2px)}
.store svg{width:30px;height:30px;flex:none}
.store small{display:block;font:600 .72rem/1.2 var(--body);opacity:.75;letter-spacing:.04em;text-transform:uppercase}
.store b{display:block;font:800 1.15rem/1.1 var(--display);letter-spacing:-.01em}
.fixes{list-style:none;margin:0;padding:0}
.fixes li{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,4vw,56px);padding:28px 0;border-bottom:1px solid var(--gline)}
.fixes .old{margin:0;color:var(--mist);font-size:1.08rem;position:relative;width:fit-content}
.fixes .old::after{content:"";position:absolute;left:-2%;right:-2%;top:52%;height:3px;border-radius:2px;background:var(--was);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.6,0,.2,1) .35s}
.fixes li.in .old::after{transform:scaleX(1)}
.fixes .new{margin:0}
.fixes .new strong{display:block;font:800 1.35rem/1.2 var(--display);letter-spacing:-.02em;margin-bottom:4px;color:#7A5310}
.fixes .new span{color:var(--soft)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1100px}
.plan{padding:34px}
.plan.main{border-color:rgba(255,211,78,.7);box-shadow:0 0 0 1px rgba(255,211,78,.3),0 30px 80px -30px rgba(255,211,78,.35)}
.plan h3{font:800 1.4rem var(--display);margin:0}
.price{font:800 3.6rem/1 var(--display);letter-spacing:-.04em;margin:16px 0 4px}
.price small{font:500 1rem var(--body);color:var(--mist);letter-spacing:0}
.plan ul{list-style:none;padding:0;margin:20px 0 0}
.plan li{padding:8px 0 8px 30px;position:relative;color:var(--soft)}
.plan li::before{content:"";position:absolute;left:0;top:13px;width:16px;height:16px;border-radius:50%;background:var(--tag);box-shadow:inset 0 0 0 4px #FFE9A0}
.fine{color:var(--mist);font-size:.92rem;margin-top:22px}
.faq{display:grid;gap:12px;max-width:820px}
.faq details{padding:6px 24px}
.faq summary{cursor:pointer;font:800 1.15rem var(--display);list-style:none;display:flex;justify-content:space-between;gap:16px;padding:16px 0}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:#7A5310;font-weight:800;font-size:1.5rem;line-height:1;transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--soft);margin:0 0 18px;max-width:62ch}
.closer{text-align:center;padding:clamp(110px,14vw,180px) 0}
.closer .h2{margin:0 auto 26px;font-size:clamp(3rem,8vw,7rem)}
.closer .stores{justify-content:center}
.xh-go2{display:inline-flex;align-items:center;gap:22px;background:rgba(255,246,227,0.45);color:#1B1A17;text-decoration:none;font:700 1rem var(--body);padding:6px 6px 6px 24px;border-radius:999px;transition:background .3s,transform .3s}
.xh-go2:hover{background:rgba(255,246,227,0.7);transform:translateY(-3px)}
.xh-go2 i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--tag);color:var(--navy);font:900 1.5rem/1 var(--body);font-style:normal;padding-bottom:2px}
footer{background:#FFF6E3;color:var(--mist);font-size:.9rem;padding:30px 0 96px}
footer .wrap{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:flex-start}
footer a{color:var(--mist)}
dialog.ios{border:0;border-radius:22px;padding:26px;max-width:min(420px,calc(100vw - 32px));background:#fff;color:var(--navy);box-shadow:0 30px 80px -20px rgba(10,12,30,.6)}
dialog.ios::backdrop{background:rgba(217,219,242,0.6)}
dialog.ios h3{font:800 1.4rem var(--display);letter-spacing:-.02em;margin:0 0 6px}
dialog.ios ol{padding-left:1.2em;margin:14px 0}dialog.ios li{margin:8px 0}
dialog.ios .close{float:right;background:none;border:0;font:600 .95rem var(--body);color:#5E584A;text-decoration:underline;cursor:pointer}
dialog.ios .go{display:inline-block;text-decoration:none;font:700 1rem var(--body);padding:13px 22px;border-radius:12px;background:var(--tag);color:var(--navy);box-shadow:0 3px 0 var(--brass)}
.brands{min-height:78vh;display:grid;align-items:center;text-align:center}
.brands .h2,.brands .lead{margin-left:auto;margin-right:auto}
.brands .wrap{z-index:3}
.brands .wrap::before{content:"";position:absolute;inset:-40px -20px;background:radial-gradient(ellipse at center,rgba(255,246,227,0.85) 30%,transparent 72%);z-index:-1}
.rain{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.drop{position:absolute;top:-60px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 16px 9px 26px;border-radius:9px;
  background:#fff;color:#1B1A17;font:800 var(--fs,1rem) var(--display);letter-spacing:-.01em;box-shadow:0 14px 28px -12px rgba(0,0,0,.6);
  clip-path:polygon(13px 0,100% 0,100% 100%,13px 100%,0 50%);animation:drop var(--t) linear forwards;opacity:var(--o)}
.drop.y{background:#F2B632}.drop.ghost{background:#F5ECD6;color:#232D76}.drop.red{background:#F7D4D8;color:#1B1A17}
.drop i{font-style:normal;color:#3D6B55;font-size:.85em}.drop.red i,.drop.ghost i{color:#1B1A17}
@keyframes drop{0%{transform:translate(0,0) rotate(var(--r0))}100%{transform:translate(var(--sx),calc(78vh + 140px)) rotate(var(--r1))}}
.xmas-sec{display:none}
html.xmas .xmas-sec{display:block}
.gifts{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.gtag{position:relative;background:#fff;color:#1B1A17;padding:46px 22px 24px;border-radius:18px;clip-path:polygon(0 14%,14% 0,86% 0,100% 14%,100% 100%,0 100%);transform:rotate(var(--r));transition:transform .5s cubic-bezier(.2,1.4,.4,1)}
.gtag.rv.in{transform:rotate(var(--r))}
.gtag:hover{transform:rotate(0) translateY(-8px) scale(1.03)}
.gtag .hole{position:absolute;top:16px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:#D6F5E9;box-shadow:inset 0 2px 4px rgba(0,0,0,.4)}
.gtag small{display:block;font:700 .72rem var(--body);letter-spacing:.14em;color:#D7263D}
.gtag b{display:block;font:800 1.35rem/1.15 var(--display);letter-spacing:-.02em;margin:6px 0 10px}
.gtag p{margin:0;font:800 1.9rem/1 var(--display);letter-spacing:-.03em}
.gtag s{font-size:.55em;color:#5E584A;text-decoration-color:#D7263D;text-decoration-thickness:3px;margin-right:6px}
.gtag .kept{display:inline-block;margin-top:14px;background:#FFFDF7;color:#1B1A17;font:700 .82rem var(--body);padding:5px 11px;border-radius:999px}
.gtag.gold{background:#F2B632}
.gtag.gold b{font-size:2.2rem}
html.xmas .dk{background:radial-gradient(ellipse at 50% 35%,#D6F5E8 0%,#D6F5E9 45%,#D5F7E7 100%)}
html.xmas .dk.alt{background:radial-gradient(ellipse at 25% 30%,#F5D6DC 0%,#F5D6DD 45%,#FFF6E3 100%)}
html.xmas .brands{background:radial-gradient(ellipse at 50% 50%,#D7DAF4 0%,#FFF6E3 50%,#FFF6E3 100%)}
html.xmas .xlist{background:radial-gradient(ellipse at 50% 30%,#F6D5DA 0%,#F7D4DB 50%,#F6D5DF 100%)}
.baubles{position:absolute;top:0;left:0;right:0;height:0;z-index:2;pointer-events:none}
.bb{position:absolute;top:0;transform-origin:50% 0;animation:sway var(--t) ease-in-out infinite alternate}
.bb::before{content:"";display:block;width:2px;height:var(--l);margin:0 auto;background:rgba(255,255,255,.35)}
.bb i{display:block;width:var(--s);height:var(--s);margin-left:calc(1px - var(--s)/2);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0%,var(--c) 30%,color-mix(in srgb,var(--c) 60%,#FFF6E3) 100%);box-shadow:0 10px 20px -6px rgba(0,0,0,.6)}
.bb i::before{content:"";display:block;width:30%;height:14%;margin:-10% auto 0;border-radius:2px;background:#D9B24A}
@keyframes sway{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}
.xmas-foot{display:none}
html.xmas .xmas-foot{display:inline}
@media (max-width:900px){
  .gifts{grid-template-columns:1fr 1fr}
  .bb:nth-child(n+3){display:none}
  .bb::before{height:calc(var(--l) * .35)}
  .bb{left:auto}
  .bb:nth-child(1){left:3%!important}.bb:nth-child(2){left:auto!important;right:4%}
  .drop{--o:.5!important;font-size:.85rem}
  .brands .wrap::before{background:radial-gradient(ellipse at center,rgba(255,246,227,0.92) 45%,transparent 80%)}
  .steps3,.people,.plans{grid-template-columns:1fr}
  .getapp{grid-template-columns:1fr}
  .fixes li{grid-template-columns:1fr;gap:8px}
  .amb{opacity:.5;scale:.7}
}
@media (prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .s-tag{animation:none;opacity:1}.s-link .t{animation:none;width:13.5em}.s-go,.s-radar::before,.s-radar::after,.s-bell svg,.s-save,.appicon{animation:none}
  .s-save{opacity:1;transform:none}
  .fixes .old::after{transform:scaleX(1);transition:none}
  .bb{animation:none}
}
