
  @font-face{font-family:'Clash Grotesk';src:url(fonts/ClashGrotesk.woff2) format('woff2');font-weight:200 700;font-display:swap}
  @font-face{font-family:'Satoshi';src:url(fonts/Satoshi.woff2) format('woff2');font-weight:300 900;font-display:swap}
  :root{
    --ground:#FFFFFF; --panel:#F4F6FB; --ink:#0F1420; --ink-soft:#44506A;
    --accent:#2356E0; --accent-deep:#101E4D; --green:#2356E0; --tint:#E9EFFC; --line:#DBE2F2;
    --gold:#8A6A00; --gold-tint:#FFF3C2; --star:#E8A33D; --white:#FFFFFF; --ok:#12794C;
    --radius:12px;
    --head:'Clash Grotesk',sans-serif;
    --body:'Satoshi',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:var(--body);background:#DCEEFB url('img/bg_sky.webp') center top / cover no-repeat fixed;color:var(--ink);line-height:1.55;font-size:15px;overflow-x:hidden}
  img{max-width:100%;display:block}
  .wrap{max-width:1400px;margin:0 auto;padding:0 50px}
  h1,h2,h3{font-family:var(--head);text-wrap:balance;line-height:1.2;font-weight:500}
  h2{font-size:24px}
  h3{font-size:17px}
  @media(max-width:750px){h2{font-size:20px}}
  section{padding:56px 0}
  section.wrap{padding:56px 50px}
  .muted{color:var(--ink-soft)}

  .announce{background:var(--accent-deep);color:#fff;font-size:12.5px;font-weight:800;letter-spacing:.05em}
  .ann-view{position:relative;height:32px;overflow:hidden}
  .ann-msg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    text-align:center;padding:0 14px;white-space:nowrap;line-height:1;
    transform:translateY(100%);opacity:0;
    transition:transform .4s cubic-bezier(.22,.61,.36,1), opacity .4s ease}
  .ann-msg.is-on{transform:translateY(0);opacity:1}
  .ann-msg.is-out{transform:translateY(-100%);opacity:0}
  @media(max-width:520px){
    .announce{font-size:12.5px;letter-spacing:.02em}
    .ann-view{height:34px}
    .ann-msg{padding:0 10px}
  }
  @media(prefers-reduced-motion:reduce){.ann-msg{transition:none}}

  header{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:84px}
  @media(max-width:880px){.nav{height:70px}}
  .logo{display:block}
  .logo img{height:62px;width:auto;display:block}
  @media(max-width:880px){.logo img{height:50px}}
  .nav-icons{display:flex;gap:18px;align-items:center;color:var(--ink-soft);font-size:.88rem;font-weight:500}
  .nav-icons a{color:inherit;text-decoration:none;display:flex;align-items:center;gap:6px}
  .cart-dot{background:var(--accent);color:#fff;border-radius:999px;font-size:.65rem;font-weight:700;padding:1px 6px}

  .hero{display:grid;grid-template-columns:1.05fr 1fr;gap:52px;padding:40px 50px 56px;max-width:1400px;margin:0 auto}
  .hero>*{min-width:0}
  @media(max-width:880px){
    .hero{grid-template-columns:1fr;gap:28px;padding:24px 10px 40px}
    .wrap{padding:0 10px}
    section.wrap{padding:48px 10px}
  }

  .gallery{position:sticky;top:96px;align-self:start}
  @media(max-width:880px){
    .gallery{position:static;margin-left:-10px;margin-right:-10px}
    .g-main{border-radius:0;border-left:none;border-right:none}
  }
  .g-main{border-radius:0;overflow:hidden;border:1px solid var(--line);background:linear-gradient(160deg,#F0F6F9,#E2EDF3);aspect-ratio:1/1;position:relative;min-width:0}
  .slide{position:absolute;inset:0;display:none;align-items:center;justify-content:center}
  .slide.on{display:flex}
  .slide img{width:100%;height:100%;object-fit:contain}
  .thumbs{display:grid;grid-template-columns:repeat(9,1fr);gap:6px;margin-top:10px}
  .thumbs button{aspect-ratio:1/1;border-radius:8px;border:2px solid var(--line);background:var(--panel);cursor:pointer;overflow:hidden;padding:0;transition:border-color .15s}
  .thumbs button img{width:100%;height:100%;object-fit:cover}
  .thumbs button.on{border-color:var(--accent)}
  .thumbs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .g-nav{display:none;position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid var(--line);box-shadow:0 2px 8px rgba(15,20,32,.12);align-items:center;justify-content:center;font-size:1.5rem;line-height:1;color:var(--ink);cursor:pointer;z-index:2;padding:0 0 3px}
  .g-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .g-prev{left:10px}
  .g-next{right:10px}
  @media(max-width:880px){
    .thumbs{display:none}
    .g-nav{display:flex}
  }
  .p-acc{margin-top:22px}

  .rating{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;font-size:13px;font-weight:700;margin-bottom:10px}
  .rating .revlink{white-space:nowrap;color:var(--accent);text-decoration:underline;cursor:pointer}
  .rating .revlink:hover{color:var(--accent-deep)}
  .rating .revlink:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}
  @media(max-width:430px){.rating{font-size:11.5px;column-gap:5px}}
  .stars{color:var(--star);letter-spacing:2px}
  .p-title{font-size:clamp(1.55rem,3.4vw,2.15rem);font-weight:700;text-transform:uppercase;letter-spacing:-.005em;line-height:1.18;margin-bottom:8px}
  .p-title .t2{display:inline}
  .p-title .hl{background:#FFD41F;padding:.02em .18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
  .p-sub{color:var(--ink-soft);margin-bottom:16px;max-width:46ch}
  .quick-b{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;font-size:13px;font-weight:600}
  .quick-b span{display:flex;align-items:center;gap:8px}
  .quick-b svg{width:18px;height:18px;color:var(--accent);flex:none}
  .divider{border:none;border-top:1px solid var(--line);margin:16px 0}
  .sale-pill{background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;white-space:nowrap}
  .price-row{display:flex;align-items:center;gap:12px;margin-bottom:4px;flex-wrap:wrap}
  .price{font-family:var(--head);font-size:18px;font-weight:600;color:var(--accent)}
  .compare{font-size:13px;color:var(--ink-soft);text-decoration:line-through}
  .save-badge{background:var(--gold-tint);color:var(--gold);border-radius:6px;padding:3px 10px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
  .stock{font-size:.8rem;color:var(--gold);font-weight:700;margin-bottom:18px}

  .tiers{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
  .tier{border:2px solid var(--line);border-radius:var(--radius);padding:14px 16px;cursor:pointer;position:relative;background:var(--white);transition:border-color .15s, background .15s}
  .tier.on{border-color:var(--accent);background:var(--tint)}
  .tier:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .tier .pop{position:absolute;top:-11px;right:14px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:3px 10px;border-radius:999px}
  .tier-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-weight:700}
  .tier-head .tp{font-variant-numeric:tabular-nums}
  .tier small{display:block;color:var(--ink-soft);font-size:.8rem;margin-top:3px}
  .tier .gift{color:var(--accent);font-weight:700}

  /* build-your-pack */
  .pack{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--white);margin-bottom:16px}
  .pack-head{background:var(--accent);color:#fff;padding:8px 16px 9px}
  .pack-head h3{font-size:1.15rem;text-transform:uppercase;letter-spacing:.02em;line-height:1.2}
  .pack-head p{font-size:12px;margin-top:0;line-height:1.3;white-space:nowrap}
  @media(max-width:374px){.pack-head p{font-size:11px}}
  .hl-y{color:#FFD41F;font-weight:800}
  .pack-body{padding:14px}
  .pack-main{background:var(--tint);border:1px solid var(--line);border-radius:10px;padding:12px}
  .pm-row{display:flex;align-items:flex-start;gap:12px}
  .p-thumb{flex:none;width:58px;height:58px;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}
  .p-thumb img{width:100%;height:100%;object-fit:cover}
  .pm-info{flex:1;min-width:0}
  .bestseller{display:inline-block;background:#FFD41F;color:var(--ink);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:4px;line-height:1.3}
  .pm-name{font-weight:800;font-size:15px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pm-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:-3px}
  .pm-price{font-size:13px;font-weight:700;white-space:nowrap}
  .pm-price s{color:var(--ink-soft);font-weight:500;margin-left:4px}
  .qty{display:flex;align-items:center;border:1px solid var(--ink);border-radius:7px;overflow:hidden;background:#fff;flex:none;transform:translateY(-6px)}
  .qty button{width:24px;height:22px;border:none;background:#fff;font-size:13px;font-weight:800;cursor:pointer;color:var(--ink);font-family:var(--body);line-height:1}
  .qty button:hover{background:var(--tint)}
  .qty span{width:22px;text-align:center;font-weight:800;font-size:12px;font-variant-numeric:tabular-nums;border-left:1px solid var(--line);border-right:1px solid var(--line);align-self:stretch;display:flex;align-items:center;justify-content:center}
  .addon-head{font-family:var(--body);font-size:12.5px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin-top:16px}
  .addon-wrap{position:relative;margin-top:8px}
  .addons{display:flex;gap:10px;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .addons::-webkit-scrollbar{display:none}
  .addon{flex:0 0 calc((100% - 20px)/3)}
  .a-nav{position:absolute;top:34%;transform:translateY(-50%);width:32px;height:32px;border-radius:999px;background:rgba(255,255,255,.95);border:1px solid var(--line);box-shadow:0 2px 8px rgba(15,20,32,.14);display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;color:var(--ink);cursor:pointer;z-index:2;padding:0 0 2px}
  .a-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .a-prev{left:-9px}
  .a-next{right:-9px}
  .swipe-cue{display:none;align-items:center;justify-content:flex-end;gap:6px;font-size:11.5px;font-weight:700;color:var(--accent);margin-top:8px;padding:0 2px 0 0;transition:opacity .3s;background:none;border:none;font-family:var(--body);cursor:pointer;margin-left:auto}
  .swipe-cue:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
  .swipe-cue.gone{opacity:0;pointer-events:none}
  .swipe-cue .arw{animation:nudge 1.4s ease-in-out infinite}
  @keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
  @media(prefers-reduced-motion:reduce){.swipe-cue .arw{animation:none}}
  .pack-sep{border:none;border-top:1px dashed var(--line);margin:14px 2px 0}
  @media(max-width:520px){
    .addon{flex:0 0 41%}
    .a-nav{display:none}
    .swipe-cue{display:flex}
  }
  .addon{border:1px solid var(--line);border-radius:10px;padding:10px;text-align:center;background:var(--white);display:flex;flex-direction:column;gap:7px}
  .addon>img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px}
  .a-name{font-weight:700;font-size:.78rem;line-height:1.3;flex:1}
  .a-price{font-weight:800;font-size:.85rem}
  .add-btn{display:block;width:104px;height:28px;margin:0 auto;background:var(--accent-deep);color:#fff;border:none;border-radius:7px;padding:0;font-size:13px;font-weight:800;line-height:1;cursor:pointer;font-family:var(--body);transition:background .15s}
  .add-btn:hover{background:var(--accent)}
  .add-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .add-btn[hidden]{display:none}
  .addon.added{background:var(--tint);border-color:var(--accent)}
  .a-qty{display:flex;align-items:center;justify-content:space-between;width:104px;margin:0 auto;border:1px solid var(--ink);border-radius:7px;overflow:hidden;background:#fff}
  .a-qty[hidden]{display:none}
  .a-qty button{flex:none;width:30px;height:26px;border:none;background:#fff;font-size:13px;font-weight:800;cursor:pointer;color:var(--ink);font-family:var(--body);line-height:1}
  .a-qty button:hover{background:var(--tint)}
  .a-qty button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
  .aq-val{flex:1;text-align:center;font-weight:800;font-size:13px;font-variant-numeric:tabular-nums;border-left:1px solid var(--line);border-right:1px solid var(--line);align-self:stretch;display:flex;align-items:center;justify-content:center}

  .sum{margin:14px 4px 0;display:flex;flex-direction:column;gap:5px}
  .sline{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;font-weight:600;color:var(--ink-soft)}
  .sline span:last-child{font-variant-numeric:tabular-nums}
  .sline.save{color:var(--ok);font-weight:800}
  .sline.save[hidden]{display:none}
  .ladder{background:var(--tint);border:1px solid var(--line);border-radius:10px;padding:14px 14px 10px;margin-top:14px;text-align:center}
  .ladder .msg{font-size:12px;white-space:nowrap}
  @media(max-width:374px){.ladder .msg{font-size:11px}}
  .ladder .msg b{color:var(--accent)}
  .track{position:relative;height:6px;background:#fff;border-radius:99px;margin:14px 8px 8px}
  .track .fill{position:absolute;left:0;top:0;height:100%;background:var(--accent);border-radius:99px;transition:width .25s}
  .track .dot{position:absolute;top:50%;transform:translate(-50%,-50%);width:15px;height:15px;border-radius:999px;background:#fff;border:2px solid var(--line)}
  .track .dot.hit{background:var(--accent);border-color:var(--accent)}
  .track .d1{left:0%}.track .d2{left:50%}.track .d3{left:100%}
  .t-labels{display:flex;justify-content:space-between;font-size:.68rem;font-weight:700;color:var(--ink-soft)}
  .t-labels span:first-child{color:var(--accent)}
  .total-row{display:flex;justify-content:space-between;align-items:baseline;margin:8px 4px 12px;padding-top:8px;border-top:1px solid var(--line);font-family:var(--head);font-weight:700;font-size:1.15rem;text-transform:uppercase}
  .total-row span:last-child{font-size:1.4rem}
  .total-row s{font-size:.95rem;color:var(--ink-soft);font-weight:500;margin-right:8px;text-transform:none}
  .applepay{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#000;color:#fff;border:none;border-radius:8px;padding:16px;font-size:17px;letter-spacing:.5px;line-height:1.2;font-weight:700;cursor:pointer;font-family:var(--body);margin-top:10px}
  .applepay svg{width:17px;height:20px;fill:#fff;flex:none}
  .applepay:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  .deliv2{margin-top:12px;background:var(--tint);border:1px solid var(--accent);border-radius:8px;padding:9px 6px;text-align:center;font-size:12px;font-weight:600;white-space:nowrap}
  @media(max-width:374px){.deliv2{font-size:11px}}
  .deliv2 b{color:var(--accent);text-decoration:underline}
  .perks{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:.76rem;font-weight:700;color:var(--ink-soft)}

  .cta{display:block;width:100%;text-align:center;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:16px;font-size:17px;letter-spacing:.5px;line-height:1.2;font-weight:700;cursor:pointer;font-family:var(--body);transition:background .15s}
  .cta:hover{background:var(--accent-deep)}
  .cta:focus-visible{outline:3px solid var(--accent-deep);outline-offset:3px}
  .guarantee-line{text-align:center;font-size:.8rem;color:var(--ink-soft);margin-top:10px}
  .pay-row{display:flex;justify-content:center;gap:8px;margin-top:14px;flex-wrap:wrap}
  .pay{border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:.68rem;font-weight:700;color:var(--ink-soft);background:var(--white)}

  .desc h2{max-width:26ch;margin:0 auto 14px;text-align:center}
  .desc p{max-width:62ch;margin:0 auto;text-align:center;color:var(--ink-soft)}

  .benefits{background:var(--panel)}
  .b-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;max-width:840px;margin:26px auto 0}
  @media(max-width:680px){.b-grid{grid-template-columns:1fr}}
  .b-item{display:flex;gap:12px;align-items:flex-start;font-weight:600}
  .b-item .ic{flex:none;width:34px;height:34px;border-radius:999px;background:var(--tint);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1rem}
  .diet-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:26px}
  .chip{border:1px solid var(--line);background:var(--white);border-radius:999px;padding:5px 14px;font-size:.75rem;font-weight:700;color:var(--ink-soft)}

  .tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
  @media(max-width:880px){.tiles{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.tiles{grid-template-columns:1fr}}
  .tile{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--white)}
  .tile .art{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:2.6rem;background:linear-gradient(160deg,var(--tint),#D5E8E1)}
  .tile .body{padding:16px}
  .tile h3{font-size:1.02rem;margin-bottom:6px}
  .tile p{font-size:.85rem;color:var(--ink-soft)}

  .install{background:var(--panel);text-align:center}
  .install>.wrap>p{max-width:58ch;margin:14px auto 0;color:var(--ink-soft)}
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:860px;margin:30px auto 0;counter-reset:step}
  @media(max-width:680px){.steps{grid-template-columns:1fr}}
  .step{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px 18px}
  .step::before{counter-increment:step;content:counter(step);display:inline-flex;width:30px;height:30px;border-radius:999px;background:var(--accent);color:#fff;align-items:center;justify-content:center;font-weight:800;margin-bottom:10px;font-family:var(--body)}
  .step h3{font-size:1rem;margin-bottom:6px}
  .step p{font-size:.85rem;color:var(--ink-soft)}

  .gifts .g2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
  @media(max-width:680px){.gifts .g2{grid-template-columns:1fr}}
  .gift-card{display:flex;gap:16px;border:1px solid var(--line);border-radius:var(--radius);padding:18px;background:var(--white)}
  .gift-card .ic{flex:none;width:56px;height:56px;border-radius:var(--radius);background:var(--gold-tint);display:flex;align-items:center;justify-content:center;font-size:1.6rem}
  .gift-card h3{font-size:1.02rem;margin-bottom:4px}
  .gift-card p{font-size:.85rem;color:var(--ink-soft)}

  .trust{background:var(--accent-deep);color:#fff}
  .trust h2{text-align:center}
  .pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
  @media(max-width:760px){.pillars{grid-template-columns:repeat(2,1fr)}}
  .pillar{text-align:center;padding:18px 10px}
  .pillar .ic{font-size:1.7rem;margin-bottom:10px}
  .pillar h3{font-size:.95rem;font-weight:600}
  .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px;border-top:1px solid rgba(255,255,255,.15);padding-top:34px}
  @media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}
  .stat{text-align:center}
  .stat .n{font-family:var(--head);font-size:1.8rem;font-weight:600;color:#FFD41F;font-variant-numeric:tabular-nums}
  .stat p{font-size:.8rem;color:rgba(255,255,255,.75);max-width:20ch;margin:4px auto 0}

  .testi .sub{margin-bottom:16px;font-weight:700;font-size:13px}

  .core{background:var(--panel)}
  .core3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:860px;margin:0 auto}
  @media(max-width:680px){.core3{grid-template-columns:1fr}}
  .core3 .c{text-align:center;padding:24px 14px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}
  .core3 .ic{font-size:1.9rem;margin-bottom:10px}
  .core3 h3{font-size:1.02rem}

  /* panels — live-site structure, new theme */
  .panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}
  @media(max-width:520px){.panel{padding:16px 14px}}
  .sec-title{font-family:var(--head);font-weight:500;font-size:24px;margin-bottom:10px;text-align:left}
  @media(max-width:750px){.sec-title{font-size:20px}}
  section.panel-sec{padding:0 20px 22px}
  @media(max-width:880px){section.panel-sec{padding:0 10px 18px}}

  /* see it in action */
  .sec-note{color:var(--ink-soft);font-size:13px;margin-bottom:16px}
  .videos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
  @media(max-width:760px){.videos{grid-template-columns:1fr 1fr}}
  .vslot{position:relative;aspect-ratio:9/16;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--accent-deep);display:flex;align-items:center;justify-content:center}
  .vplay{width:54px;height:54px;border-radius:999px;border:2px solid #fff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;padding-left:4px}
  .vcap{position:absolute;left:0;right:0;bottom:0;background:rgba(16,30,77,.92);color:#fff;font-size:12px;font-weight:700;padding:9px 10px}

  /* reviews */
  .rev-top{display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:16px 18px;background:var(--panel);margin-bottom:14px}
  @media(max-width:820px){.rev-top{grid-template-columns:1fr;gap:16px}}
  .avg .lbl{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
  .avg .big{font-size:20px;letter-spacing:3px;margin:5px 0}
  .avg .cnt{font-size:12px;font-weight:600;color:var(--ink-soft);font-variant-numeric:tabular-nums}
  .bars{display:flex;flex-direction:column;gap:4px}
  .bar{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;color:var(--ink-soft)}
  .bl{width:48px;flex:none;text-transform:uppercase}
  .btrack{flex:1;max-width:290px;height:13px;background:var(--white);border:1px solid var(--ink);border-radius:0;overflow:hidden}
  .bfill{display:block;height:100%;background:var(--accent);border-radius:0}
  .bn{width:26px;text-align:right;flex:none;font-variant-numeric:tabular-nums}
  .rev-actions{display:flex;flex-direction:column;gap:9px}
  .writebtn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:14px 22px;font-family:var(--body);font-size:15px;letter-spacing:.5px;line-height:1.2;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}
  .writebtn:hover{background:var(--accent-deep)}
  .writebtn:focus-visible{outline:3px solid var(--accent-deep);outline-offset:3px}
  .sortsel{border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-family:var(--body);font-size:14px;font-weight:600;background:var(--white);color:var(--ink);cursor:pointer}
  .rcard{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:14px 16px;margin-bottom:12px}
  .rcard.hidden{display:none}
  .rcard .who{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:13.5px}
  .rcard .loc{color:var(--ink-soft);font-weight:500}
  .rcard .vf{color:var(--accent);font-weight:800;font-size:11.5px}
  .rst{letter-spacing:2px;font-size:13px;margin-top:5px}
  .rtitle{font-family:var(--head);font-weight:500;font-size:16px;margin-top:5px}
  .rtext{font-size:14px;color:var(--ink-soft);margin-top:4px}
  .rbottom{font-size:11.5px;font-weight:600;color:var(--ink-soft);margin-top:8px}
  .showmore{display:block;margin:6px auto 0;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:13px 30px;font-family:var(--body);font-size:15px;letter-spacing:.5px;line-height:1.2;font-weight:700;cursor:pointer}
  .showmore:hover{background:var(--panel)}
  .showmore:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

  /* policy / info popups */
  .doc-overlay{position:fixed;inset:0;background:rgba(15,20,32,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:120}
  .doc-overlay[hidden]{display:none}
  .doc-modal{background:var(--white);border-radius:var(--radius);width:100%;max-width:640px;max-height:86vh;display:flex;flex-direction:column}
  .doc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}
  .doc-head h3{font-size:20px}
  .doc-close{background:none;border:none;font-size:17px;cursor:pointer;color:var(--ink-soft);padding:4px 6px;line-height:1;font-family:var(--body)}
  .doc-close:hover{color:var(--ink)}
  .doc-body{padding:20px 22px 24px;overflow-y:auto;font-size:14px;line-height:1.65;color:var(--ink-soft)}
  .doc-body h4{font-family:var(--head);font-weight:500;font-size:16px;color:var(--ink);margin:20px 0 6px}
  .doc-body h4:first-child{margin-top:0}
  .doc-body p{margin-bottom:10px}
  .doc-body ul{margin:0 0 12px 18px}
  .doc-body li{margin-bottom:6px}
  .doc-body strong{color:var(--ink)}
  .doc-body a{color:var(--accent)}
  @media(max-width:520px){.doc-head{padding:15px 16px}.doc-body{padding:16px}}
  /* contact form */
  .cf{display:flex;flex-direction:column;gap:12px;margin:14px 0 4px}
  .cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  @media(max-width:520px){.cf-grid{grid-template-columns:1fr}}
  .cf label{display:flex;flex-direction:column;gap:5px}
  .cf-l{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}
  .cf .req{color:#C0392B}
  .cf .opt{color:var(--ink-soft);font-weight:600;text-transform:none;letter-spacing:0}
  .cf input,.cf textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:11px 12px;
    font-family:var(--body);font-size:14px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink);background:var(--white);resize:vertical}
  .cf input:focus-visible,.cf textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
  .cf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
  .cf-send{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:13px 22px;
    font-family:var(--body);font-size:15px;font-weight:700;letter-spacing:.3px;cursor:pointer;align-self:flex-start;transition:background .15s}
  .cf-send:hover{background:var(--accent-deep)}
  .cf-send:disabled{opacity:.6;cursor:default}
  .cf-msg{font-size:13.5px;font-weight:700;margin:0}
  .cf-msg[hidden]{display:none}
  .cf-msg.ok{color:var(--ok)}
  .cf-msg.bad{color:#C0392B}

  /* sticky mobile cart bar */
  .sticky-cart{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;align-items:center;justify-content:space-between;gap:12px;
    background:var(--white);border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(15,20,32,.1);
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    transform:translateY(110%);transition:transform .25s ease}
  .sticky-cart.show{transform:translateY(0)}
  .sc-info{display:flex;align-items:center;gap:10px;min-width:0}
  .sc-info img{width:38px;height:38px;object-fit:cover;border:1px solid var(--line);border-radius:7px;flex:none}
  .sc-txt{display:flex;flex-direction:column;line-height:1.25;min-width:0}
  .sc-name{font-size:12px;font-weight:700;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sc-price{font-family:var(--head);font-size:16px;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}
  .sc-btn{flex:none;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:13px 20px;
    font-family:var(--body);font-size:14px;font-weight:700;letter-spacing:.3px;cursor:pointer;white-space:nowrap;transition:background .15s}
  .sc-btn:hover{background:var(--accent-deep)}
  .sc-btn:focus-visible{outline:3px solid var(--accent-deep);outline-offset:3px}
  @media(max-width:880px){.sticky-cart{display:flex}}
  @media(prefers-reduced-motion:reduce){.sticky-cart{transition:none}}

  /* write-a-review modal */
  .rv-overlay{position:fixed;inset:0;background:rgba(15,20,32,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}
  .rv-overlay[hidden]{display:none}
  .rv-modal{background:var(--white);border-radius:var(--radius);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:22px}
  .rv-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
  .rv-head h3{font-size:20px}
  .rv-close{background:none;border:none;font-size:17px;cursor:pointer;color:var(--ink-soft);padding:4px 6px;line-height:1;font-family:var(--body)}
  .rv-close:hover{color:var(--ink)}
  .rv-lbl{display:block;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:14px 0 6px}
  .rv-lbl:first-of-type{margin-top:0}
  .req{color:#C0392B}
  .star-pick{display:flex;gap:4px}
  .star-pick button{background:none;border:none;font-size:28px;line-height:1;padding:0 2px;cursor:pointer;color:var(--line);transition:color .12s}
  .star-pick button.on{color:var(--star)}
  .star-pick button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .rv-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
  @media(max-width:520px){.rv-grid{grid-template-columns:1fr}}
  #rvForm input,#rvForm textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-family:var(--body);font-size:14px;color:var(--ink);background:var(--white);resize:vertical}
  #rvForm input:focus-visible,#rvForm textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
  .rv-err{color:#C0392B;font-size:13px;font-weight:700;margin-top:12px}
  .rv-err[hidden]{display:none}
  .rv-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
  .rv-cancel,.rv-submit{border-radius:8px;padding:12px 20px;font-family:var(--body);font-size:14px;font-weight:700;cursor:pointer}
  .rv-cancel{background:var(--white);color:var(--ink);border:1px solid var(--line)}
  .rv-cancel:hover{background:var(--panel)}
  .rv-submit{background:var(--accent);color:#fff;border:none}
  .rv-submit:hover{background:var(--accent-deep)}
  .rbadge-new{background:#FFD41F;color:var(--ink);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:4px}
  .rv-thanks{background:#E6F5EE;border:1px solid var(--ok);color:var(--ok);border-radius:8px;padding:11px 14px;font-size:13.5px;font-weight:700;margin-bottom:14px}
  .rv-thanks[hidden]{display:none}

  /* loved by travelers */
  .loved-title{font-family:var(--head);font-weight:500;font-size:24px;text-align:center}
  @media(max-width:750px){.loved-title{font-size:20px}}
  .loved-sub{text-align:center;font-size:13px;font-weight:700;margin-top:4px;margin-bottom:18px}
  .featured{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:24px 0 18px;overflow:hidden}
  .fcar{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .fcar::-webkit-scrollbar{display:none}
  .fslide{flex:0 0 100%;scroll-snap-align:center;text-align:center;padding:0 26px}
  .featured .stars{font-size:17px;letter-spacing:4px}
  .featured blockquote{font-family:var(--head);font-size:clamp(17px,2vw,21px);font-weight:500;line-height:1.35;margin:12px auto 0;max-width:44ch;text-wrap:balance;min-height:3.4em}
  .fattr{font-size:13px;font-weight:600;color:var(--ink-soft);margin-top:14px}
  .dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
  .dots button{width:8px;height:8px;padding:0;border-radius:999px;border:none;background:var(--line);cursor:pointer;transition:background .2s, width .2s}
  .dots button.on{background:var(--accent);width:22px}
  .dots button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

  .faq{margin:0 auto}
  .faq h2{margin-bottom:16px}
  details{border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:var(--panel)}
  details[open]{background:var(--white)}
  summary{padding:15px 18px;font-family:var(--head);font-weight:500;font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
  summary::-webkit-details-marker{display:none}
  .delivery{display:flex;justify-content:center;align-items:center;gap:8px;background:var(--tint);border-radius:8px;padding:10px 14px;font-size:.85rem;font-weight:600;margin-bottom:12px}
  .delivery strong{text-decoration:underline}
  summary::after{content:"+";font-size:20px;color:var(--ink);font-weight:400;font-family:var(--body)}
  details[open] summary::after{content:"–"}
  summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}
  details .a{padding:0 18px 16px;font-size:14px;color:var(--ink-soft)}

  .checkout{background:var(--tint);text-align:center}
  .checkout .row{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:14px;font-size:.85rem;font-weight:700}
  .checkout .row div{display:flex;gap:8px;align-items:center}

  /* footer */
  footer{background:var(--accent-deep);color:rgba(255,255,255,.78);border-top:4px solid #FFD41F;font-size:14px}
  footer a{color:inherit;text-decoration:none}
  footer a:hover{color:#fff;text-decoration:underline}
  .foot-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.7fr;gap:30px;padding-top:40px;padding-bottom:36px}
  .fb-logo{height:52px;width:auto;border-radius:6px}
  .fb-tag{margin-top:16px;max-width:34ch;line-height:1.6}
  .socials{display:flex;gap:10px;margin-top:20px}
  .socials a{width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}
  .socials a:hover{background:rgba(255,255,255,.1);text-decoration:none}
  .socials svg{width:18px;height:18px}
  footer details.foot-acc,
  footer details.foot-acc[open]{border:none;background:none;border-radius:0;margin:0}
  footer .foot-acc summary{font-family:var(--body);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#fff;padding:0;cursor:default}
  footer .foot-acc summary::after{content:none}
  .foot-acc ul{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:10px}
  .fnews h4{font-family:var(--body);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#FFD41F}
  .fnews p{margin-top:10px;line-height:1.55}
  .nform{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
  .nform input{flex:1;min-width:170px;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:12px 14px;color:#fff;font-family:var(--body);font-size:14px}
  .nform input::placeholder{color:rgba(255,255,255,.5)}
  .nform input:focus-visible{outline:2px solid #FFD41F;outline-offset:1px}
  .nform button{background:#FFD41F;color:var(--ink);border:none;border-radius:6px;padding:12px 20px;font-family:var(--body);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
  .nform button:hover{background:#FFE066}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.15)}
  .fb-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:18px;padding-bottom:22px}
  .accept{display:flex;align-items:center;gap:10px}
  .acc-lbl{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.6)}
  .pi{height:26px;min-width:44px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;background:#fff;color:#1A1F71}
  .pi-mc{gap:0;background:#fff}
  .pi-mc i{width:13px;height:13px;border-radius:99px;display:block}
  .pi-mc i:first-child{background:#EB001B}
  .pi-mc i:last-child{background:#F79E1B;margin-left:-5px;opacity:.9}
  .pi-apple{background:#000;color:#fff;gap:2px}
  .pi-apple svg{width:9px;height:11px;fill:#fff}
  .pi-g{color:#3C4043}
  .copy{font-size:12.5px;color:rgba(255,255,255,.6)}
  @media(max-width:760px){
    .foot-main{display:flex;flex-direction:column;gap:0;padding-top:0;padding-bottom:24px}
    .fb-logo,.fb-tag{display:none}
    .fbrand{order:4;margin-top:20px}
    .socials{margin-top:0}
    .fcol-help{order:1}
    .fcol-info{order:2}
    .fnews{order:3;margin-top:22px}
    footer details.foot-acc,
    footer details.foot-acc[open]{border-bottom:1px solid rgba(255,255,255,.15)}
    footer .foot-acc summary{padding:16px 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
    footer .foot-acc summary::after{content:"+";font-family:var(--body);font-size:17px;font-weight:400;color:#fff}
    footer .foot-acc[open] summary::after{content:"–"}
    .foot-acc ul{margin-top:0;padding-bottom:16px}
    .fb-inner{flex-direction:column;justify-content:center;text-align:center;gap:12px}
    .accept{flex-wrap:wrap;justify-content:center;gap:8px}
    .acc-lbl{flex-basis:100%;text-align:center;margin-bottom:2px}
  }
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
