/* PetRemedyUSA design system. System fonts, no external requests, mobile first. */
:root{
  --navy:#0c2a3a; --navy-2:#123a4f; --teal:#0f766e; --teal-2:#0d9488; --mint:#ccfbf1; --mint-2:#f0fdfa;
  --amber:#f59e0b; --amber-d:#b45309; --red:#b91c1c; --ink:#0f172a; --muted:#475569; --line:#e2e8f0;
  --bg:#ffffff; --bg-soft:#f8fafc; --radius:14px; --shadow:0 1px 2px rgba(15,23,42,.06),0 6px 24px rgba(15,23,42,.06);
  --max:1160px; --font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.65;font-size:17px}
img{max-width:100%;height:auto;display:block} a{color:var(--teal);text-underline-offset:3px} a:hover{color:var(--navy)}
h1,h2,h3,h4{line-height:1.2;color:var(--navy);margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,4.6vw,2.9rem);font-weight:800} h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:750;margin-top:2em}
h3{font-size:1.15rem;font-weight:700} p{margin:0 0 1em} ul,ol{padding-left:1.3em;margin:0 0 1em} li{margin:.25em 0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 18px} .narrow{max-width:780px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:100;border-radius:0 0 8px 0}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:4px}

/* promo + header */
.promo{background:var(--navy);color:#e6fffa;font-size:.88rem;text-align:center;padding:8px 12px}
.promo strong{color:var(--amber)}
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:18px;min-height:68px}
.logo img{height:44px;width:auto} .nav{display:flex;gap:4px;margin-left:auto;align-items:center}
.nav a{color:var(--navy);text-decoration:none;font-weight:600;font-size:.96rem;padding:8px 12px;border-radius:8px}
.nav a:hover,.nav a[aria-current="page"]{background:var(--mint-2);color:var(--teal)}
.cart-link{display:inline-flex;align-items:center;gap:8px;background:var(--navy);color:#fff!important;padding:9px 16px!important}
.cart-link:hover{background:var(--teal)!important} .cart-count{background:var(--amber);color:var(--navy);border-radius:999px;font-size:.78rem;min-width:22px;height:22px;display:inline-grid;place-items:center;font-weight:800;padding:0 6px}
.nav-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-weight:700;color:var(--navy)}
@media(max-width:860px){.nav-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:stretch;padding:10px 18px 18px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{padding:12px}.hdr-in{position:relative}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--teal);color:#fff;border:0;border-radius:12px;padding:13px 22px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .08s,background .15s}
.btn:hover{background:var(--navy);color:#fff} .btn:active{transform:translateY(1px)}
.btn-amber{background:var(--amber);color:var(--navy)} .btn-amber:hover{background:#fbbf24;color:var(--navy)}
.btn-ghost{background:#fff;color:var(--navy);border:2px solid var(--line)} .btn-ghost:hover{border-color:var(--teal);color:var(--teal);background:#fff}
.btn-lg{padding:16px 28px;font-size:1.05rem} .btn[disabled]{opacity:.6;cursor:wait}

/* hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,#14b8a655,transparent),linear-gradient(135deg,var(--navy),var(--navy-2));color:#e6fffa;padding:56px 0 64px}
.hero h1{color:#fff;max-width:18ch} .hero p.lead{font-size:1.2rem;max-width:56ch;color:#c7f0ea}
.hero-grid{display:grid;gap:36px;align-items:center;grid-template-columns:1.15fr .85fr}
.hero-img{border-radius:22px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.35)} @media(max-width:820px){.hero-grid{grid-template-columns:1fr}.hero{padding:40px 0}}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.badge{display:inline-block;background:var(--amber);color:var(--navy);font-weight:800;font-size:.82rem;padding:5px 12px;border-radius:999px;letter-spacing:.02em}
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:-32px auto 0;position:relative}
.trust>div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);font-size:.93rem}
.trust b{display:block;color:var(--navy)} @media(max-width:820px){.trust{grid-template-columns:1fr 1fr;margin-top:-22px}}

/* sections + cards */
section.block{padding:54px 0} section.soft{background:var(--bg-soft)} .sec-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.sec-head h2{margin:0}.eyebrow{color:var(--teal);font-weight:800;font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px}
.grid{display:grid;gap:20px}.g4{grid-template-columns:repeat(4,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:980px){.g4{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.g4,.g3{grid-template-columns:repeat(2,1fr)}.g2{grid-template-columns:1fr}}@media(max-width:440px){.g4,.g3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,transform .15s;position:relative}
.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.card .body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.card h3{font-size:1rem;margin:0}.card h3 a{color:var(--navy);text-decoration:none}.card h3 a::after{content:"";position:absolute;inset:0}
.card .cls{color:var(--muted);font-size:.85rem}
.price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto}.price .now{font-size:1.25rem;font-weight:800;color:var(--navy)}
.price s{color:#94a3b8;font-size:.95rem}.price .off{color:var(--red);font-weight:800;font-size:.82rem}
.chip{position:absolute;top:10px;left:10px;background:var(--amber);color:var(--navy);font-weight:800;font-size:.75rem;padding:4px 10px;border-radius:999px;z-index:2}
.tile{padding:22px;background:var(--mint-2);border:1px solid #99f6e4;border-radius:var(--radius);text-decoration:none;color:var(--navy);display:block;height:100%}
.tile:hover{background:var(--mint);color:var(--navy)} .tile h3{margin:0 0 4px}.tile p{margin:0;color:var(--muted);font-size:.95rem}
.guide-card{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;display:block;text-decoration:none;color:inherit;height:100%}
.guide-card:hover{box-shadow:var(--shadow);border-color:var(--teal)} .guide-card .tag{font-size:.75rem;font-weight:800;color:var(--teal);text-transform:uppercase;letter-spacing:.07em}
.guide-card h3{margin:.3em 0 .4em}.guide-card p{color:var(--muted);font-size:.95rem;margin:0}

/* breadcrumbs */
.crumbs{font-size:.88rem;color:var(--muted);padding:16px 0 4px}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}
.crumbs li{margin:0}.crumbs li+li::before{content:"/";margin-right:6px;color:#cbd5e1}.crumbs a{color:var(--muted)}

/* product page */
.pdp{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:14px 0 30px;align-items:start}@media(max-width:860px){.pdp{grid-template-columns:1fr;gap:22px}}
.pdp-img{border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#0b1d33}
.pdp h1{font-size:clamp(1.6rem,3.6vw,2.3rem)}.pdp .pricebox{background:var(--mint-2);border:1px solid #99f6e4;border-radius:var(--radius);padding:18px 20px;margin:16px 0}
.pdp .pricebox .now{font-size:2rem;font-weight:800;color:var(--navy)}.pdp .pricebox s{color:#64748b;margin-left:8px}
.pdp .pricebox .save{color:var(--red);font-weight:800;margin-left:10px}
.opts{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.opts label{cursor:pointer}.opts input{position:absolute;opacity:0}
.opts span{display:block;border:2px solid var(--line);border-radius:12px;padding:10px 16px;font-weight:700;background:#fff}
.opts input:checked+span{border-color:var(--teal);background:var(--mint-2);color:var(--teal)}.opts input:focus-visible+span{outline:3px solid var(--amber)}
.buyrow{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:14px}
.qty{display:inline-flex;border:2px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.qty button{background:#fff;border:0;width:42px;font-size:1.25rem;cursor:pointer;color:var(--navy)}.qty button:hover{background:var(--mint-2)}
.qty input{width:48px;text-align:center;border:0;font:inherit;font-weight:700;-moz-appearance:textfield}.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.perks{list-style:none;padding:0;display:grid;gap:8px;margin:18px 0}.perks li{display:flex;gap:10px;align-items:start;margin:0}.perks li::before{content:"✓";color:var(--teal);font-weight:900}
.specs{width:100%;border-collapse:collapse;margin:0 0 1.2em;font-size:.97rem}.specs th,.specs td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.specs th{width:38%;color:var(--navy);background:var(--bg-soft)}
.notice{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:14px 16px;font-size:.93rem;color:#78350f;margin:18px 0}

/* article / prose */
.prose{max-width:760px}.prose h2{margin-top:1.8em}.prose h3{margin-top:1.4em}
.prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.95rem;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}.prose th{background:var(--bg-soft);color:var(--navy)}
.answer{background:var(--mint-2);border-left:5px solid var(--teal);padding:16px 20px;border-radius:0 12px 12px 0;margin:0 0 1.5em}.answer b{color:var(--teal);display:block;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.callout{background:var(--bg-soft);border:1px solid var(--line);border-left:5px solid var(--amber);padding:14px 18px;border-radius:0 12px 12px 0;margin:1.5em 0}
.meta{color:var(--muted);font-size:.92rem;margin-bottom:1.2em}.toc{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:14px 20px;margin:0 0 1.6em}
.toc b{color:var(--navy)}.toc ol{margin:.4em 0 0}
.layout-2{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;align-items:start}@media(max-width:980px){.layout-2{grid-template-columns:1fr}}
.aside{position:sticky;top:90px;display:grid;gap:16px}.aside .box{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;background:#fff}.aside h3{font-size:1rem}
.mini{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center;text-decoration:none;color:var(--navy);padding:8px 0;border-bottom:1px solid var(--line)}.mini:last-child{border:0}.mini img{border-radius:10px}.mini span{font-weight:650;font-size:.92rem;line-height:1.3}.mini small{display:block;color:var(--teal);font-weight:800}

/* FAQ */
.faq details{border:1px solid var(--line);border-radius:12px;margin:0 0 10px;background:#fff}.faq summary{cursor:pointer;padding:15px 18px;font-weight:700;color:var(--navy);list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--teal)}.faq details[open] summary::after{content:"−"}.faq details[open]{border-color:#99f6e4;background:var(--mint-2)}
.faq .ans{padding:0 18px 16px;color:#1e293b}

/* forms + cart + checkout */
.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-weight:700;color:var(--navy);font-size:.92rem}
.field input,.field select,.field textarea{font:inherit;padding:12px 14px;border:2px solid var(--line);border-radius:10px;background:#fff;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);outline:none}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:560px){.row2{grid-template-columns:1fr}}
.co{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;align-items:start;padding-bottom:50px}@media(max-width:940px){.co{grid-template-columns:1fr}}
.panel{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:#fff}.panel.sticky{position:sticky;top:90px}
.line{display:grid;grid-template-columns:72px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.line:last-child{border:0}.line img{border-radius:10px}
.line .nm{font-weight:650;color:var(--navy);text-decoration:none;line-height:1.3}.line .sub{color:var(--muted);font-size:.88rem}
.line button.rm{background:none;border:0;color:var(--red);cursor:pointer;font-size:.85rem;padding:4px 0;text-decoration:underline}
.sumrow{display:flex;justify-content:space-between;padding:6px 0}.sumrow.total{font-weight:800;font-size:1.2rem;border-top:2px solid var(--line);margin-top:8px;padding-top:12px;color:var(--navy)}
.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 14px;border-radius:10px;margin:0 0 14px}
.pay-logos{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:.85rem;align-items:center}.pay-logos span{border:1px solid var(--line);border-radius:6px;padding:3px 9px;font-weight:700;background:#fff}
.empty{text-align:center;padding:60px 0}

/* footer */
.ftr{background:var(--navy);color:#bfe9e3;padding:46px 0 24px;margin-top:40px;font-size:.95rem}.ftr a{color:#e6fffa;text-decoration:none}.ftr a:hover{color:var(--amber);text-decoration:underline}
.ftr-grid{display:grid;gap:30px;grid-template-columns:1.4fr 1fr 1fr 1fr}@media(max-width:820px){.ftr-grid{grid-template-columns:1fr 1fr}}
.ftr h4{color:#fff;font-size:.95rem;margin-bottom:.7em}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin:.35em 0}
.disclaimer{border-top:1px solid #ffffff22;margin-top:28px;padding-top:18px;font-size:.84rem;color:#8fc9c1}
.tools{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.tools input,.tools select{font:inherit;padding:11px 14px;border:2px solid var(--line);border-radius:10px;background:#fff}.tools input{flex:1;min-width:200px}
@media print{.hdr,.promo,.ftr,.btn{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ================= slide-out cart drawer ================= */
.cd-overlay{position:fixed;inset:0;background:rgba(12,42,58,.55);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:300;backdrop-filter:blur(2px)}
.cd-overlay.open{opacity:1;visibility:visible}
.cd{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:min(440px,100vw);background:#fff;z-index:301;display:flex;flex-direction:column;transform:translateX(105%);transition:transform .32s cubic-bezier(.2,.8,.2,1);box-shadow:-14px 0 44px rgba(0,0,0,.2)}
.cd.open{transform:none}
.cd-hd{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}
.cd-hd h2{margin:0;font-size:1.2rem;display:flex;align-items:center;gap:10px}.cd-hd .n{background:var(--navy);color:#fff;border-radius:999px;font-size:.78rem;padding:2px 10px}
.cd-x{background:none;border:0;width:40px;height:40px;border-radius:50%;cursor:pointer;color:var(--navy);display:grid;place-items:center}.cd-x:hover{background:var(--mint-2)}
.cd-ship{padding:12px 20px;background:var(--mint-2);border-bottom:1px solid #99f6e4;font-size:.9rem;color:#115e59}
.cd-ship b{display:block}.cd-bar{height:6px;border-radius:99px;background:#99f6e4;margin-top:8px;overflow:hidden}.cd-bar i{display:block;height:100%;width:100%;background:var(--teal);border-radius:99px}
.cd-body{flex:1;overflow-y:auto;padding:4px 20px 12px;overscroll-behavior:contain}
.cd-item{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.cd-item img{width:78px;height:78px;border-radius:10px;object-fit:cover;background:#0b1d33;border:1px solid var(--line)}
.cd-item .nm{font-weight:700;color:var(--navy);text-decoration:none;line-height:1.3;display:block;font-size:.98rem}.cd-item .nm:hover{color:var(--teal)}
.cd-item .vr{color:var(--muted);font-size:.85rem;margin-top:2px}
.cd-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:10px}
.cd-q{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;overflow:hidden}
.cd-q button{width:34px;height:34px;border:0;background:#fff;font-size:1.1rem;cursor:pointer;color:var(--navy)}.cd-q button:hover{background:var(--mint-2)}.cd-q span{min-width:32px;text-align:center;font-weight:700}
.cd-pr{text-align:right;font-weight:800;color:var(--navy)}.cd-pr s{display:block;color:#94a3b8;font-weight:500;font-size:.82rem}
.cd-rm{background:none;border:0;color:var(--muted);font-size:.82rem;text-decoration:underline;cursor:pointer;padding:6px 0 0}.cd-rm:hover{color:var(--red)}
.cd-recs{padding:18px 0 6px}.cd-recs h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px}
.cd-rec{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px}
.cd-rec img{width:56px;height:56px;border-radius:8px;object-fit:cover;background:#0b1d33}.cd-rec .t{font-weight:650;font-size:.88rem;line-height:1.25;color:var(--navy);text-decoration:none}.cd-rec .p{font-size:.82rem;color:var(--muted)}.cd-rec .p b{color:var(--navy)}
.cd-add{background:#fff;border:1.5px solid var(--teal);color:var(--teal);border-radius:9px;padding:6px 12px;font-weight:700;cursor:pointer;font-size:.85rem;text-decoration:none;white-space:nowrap}.cd-add:hover{background:var(--teal);color:#fff}
.cd-ft{border-top:1px solid var(--line);padding:16px 20px 18px;background:#fff;box-shadow:0 -8px 24px rgba(15,23,42,.06)}
.cd-sum{display:flex;justify-content:space-between;font-size:.95rem;margin-bottom:4px}.cd-sum.tot{font-size:1.15rem;font-weight:800;color:var(--navy);margin-bottom:2px}.cd-sum.sv{color:var(--green,#15803d);font-weight:600}
.cd-note{color:var(--muted);font-size:.82rem;margin:2px 0 12px}
.cd-go{width:100%;justify-content:center;font-size:1.05rem;padding:15px}
.cd-alt{display:block;text-align:center;margin-top:10px;font-size:.9rem;color:var(--muted)}
.cd-trust{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:.78rem;color:var(--muted)}.cd-trust span{display:inline-flex;align-items:center;gap:5px}
.cd-empty{text-align:center;padding:52px 8px}.cd-empty p{color:var(--muted)}
.cd.loading .cd-body{opacity:.55;pointer-events:none;transition:opacity .15s}
.cart-link.bump{animation:bump .4s}@keyframes bump{30%{transform:scale(1.12)}}

/* ================= checkout (minimal "bare" layout) ================= */
body.bare{background:#fff}
.co-wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.co-hdr{border-bottom:1px solid var(--line);background:#fff}.co-hdr .co-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.co-logo img{height:44px;width:auto}
.co-steps{display:flex;list-style:none;gap:0;padding:0;margin:0;font-size:.9rem;color:var(--muted)}.co-steps li+li::before{content:"›";margin:0 10px;color:#9ca3af}.co-steps a{color:var(--teal);text-decoration:none}.co-steps a:hover{text-decoration:underline}.co-steps b{color:var(--ink)}
.co-secure{display:inline-flex;gap:6px;align-items:center;color:var(--teal);font-weight:700;font-size:.9rem;white-space:nowrap}
@media(max-width:760px){.co-steps{display:none}}
.co-main{padding:28px 0 8px}
.co-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:56px;align-items:start}
@media(max-width:960px){.co-grid{grid-template-columns:1fr;gap:0}}
.co-side{position:sticky;top:20px;background:#f7f8fa;border:1px solid var(--line);border-radius:14px;padding:22px}
@media(max-width:960px){.co-side{display:none}}
.co-msum{display:none;margin:0 0 18px;border:1px solid var(--line);border-radius:12px;background:#f7f8fa}
@media(max-width:960px){.co-msum{display:block}}
.co-msum summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:700;color:var(--teal)}.co-msum summary::-webkit-details-marker{display:none}
.co-msum summary span:last-child{color:var(--ink);font-size:1.1rem}.co-msum .in{padding:0 16px 16px}
.co-sec{margin-bottom:26px}.co-sec h2{font-size:1.15rem;margin:0 0 12px}
.co-sec .sub{color:var(--muted);font-size:.9rem;margin:-6px 0 12px}
.fl{position:relative;margin-bottom:12px}.fl input,.fl select{width:100%;height:54px;padding:22px 13px 6px;border:1.5px solid #d1d5db;border-radius:10px;background:#fff;font:inherit;color:var(--ink);appearance:none;-webkit-appearance:none}
.fl select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236b7280' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:36px}
.fl label{position:absolute;left:14px;top:17px;font-size:.98rem;color:#6b7280;pointer-events:none;transition:all .14s;background:transparent}
.fl input:focus+label,.fl input:not(:placeholder-shown)+label,.fl select+label{top:7px;font-size:.72rem;letter-spacing:.02em}
.fl input:focus,.fl select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #99f6e455}
.fl.bad input,.fl.bad select{border-color:var(--red);background:#fff7f7}.fl .em{color:var(--red);font-size:.82rem;margin:4px 2px 0;display:none}.fl.bad .em{display:block}
.fl.ro input{background:#f3f4f6;color:#6b7280}
.co-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:560px){.co-row{grid-template-columns:1fr}}
.co-opt{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1.5px solid var(--teal);background:var(--mint-2);border-radius:12px;padding:14px 16px}.co-opt b{color:var(--navy)}.co-opt small{display:block;color:var(--muted)}
.co-pay{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.co-pay .hd{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;background:#f9fafb;border-bottom:1px solid var(--line);font-weight:700;color:var(--navy)}
.co-pay .bd{padding:18px 16px;text-align:center;color:var(--muted);font-size:.93rem}.co-pay .bd svg{display:block;margin:0 auto 8px;color:var(--teal)}
.brands{display:flex;gap:6px;flex-wrap:wrap}.brands span{border:1px solid var(--line);background:#fff;border-radius:6px;padding:2px 9px;font-size:.75rem;font-weight:800;color:#374151}
.co-agree{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;font-size:.9rem;cursor:pointer;background:#fff}.co-agree input{width:20px;height:20px;margin-top:2px;accent-color:var(--teal);flex:none}
.co-agree.bad{border-color:var(--red);background:#fff7f7}
.co-go{width:100%;height:58px;border:0;border-radius:12px;background:var(--amber);color:var(--navy);font-size:1.1rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,transform .08s}
.co-go:hover{background:#fbbf24}.co-go:active{transform:translateY(1px)}.co-go[disabled]{opacity:.7;cursor:wait}
.co-fine{color:var(--muted);font-size:.8rem;text-align:center;margin:12px 0 0}
.co-err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 14px;border-radius:10px;margin:0 0 18px}
.co-line{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:10px 0}
.co-line .im{position:relative}.co-line img{width:64px;height:64px;border-radius:10px;object-fit:cover;background:#0b1d33;border:1px solid var(--line)}
.co-line .q{position:absolute;top:-8px;right:-8px;background:#4b5563;color:#fff;border-radius:99px;min-width:22px;height:22px;display:grid;place-items:center;font-size:.75rem;font-weight:700}
.co-line .nm{font-weight:650;color:var(--navy);line-height:1.3}.co-line .vr{font-size:.82rem;color:var(--muted)}
.co-tot{border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.co-tot .r{display:flex;justify-content:space-between;padding:4px 0;font-size:.95rem}.co-tot .r.g{color:#15803d;font-weight:600}
.co-tot .r.t{font-size:1.35rem;font-weight:800;color:var(--navy);align-items:baseline;padding-top:10px}.co-tot .r.t small{font-size:.75rem;color:var(--muted);font-weight:500;margin-right:6px}
.co-trust{margin-top:18px;display:grid;gap:12px;font-size:.88rem}.co-trust div{display:flex;gap:10px;align-items:flex-start;color:#374151}.co-trust svg{flex:none;color:var(--teal);margin-top:2px}.co-trust b{color:var(--navy);display:block}
.co-ftr{border-top:1px solid var(--line);margin-top:34px;padding:22px 0 30px;font-size:.85rem}.co-ftr .co-wrap{display:flex;gap:18px;flex-wrap:wrap}.co-ftr a{color:var(--teal)}.co-ftr p{margin:0;color:var(--muted);width:100%}
/* reviews (Judge.me) */
.reviews{padding:20px 0 10px;max-width:980px}.reviews h2{margin-top:.5em}
.pdp .jdgm-preview-badge{margin:2px 0 6px}

.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0;white-space:nowrap}

/* checkout step 2 (embedded payment) */
.co-steps li[aria-current="step"]{color:var(--ink);font-weight:700}
.co-rev{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.co-rev .r{display:grid;grid-template-columns:78px 1fr auto;gap:10px;align-items:baseline;padding:13px 16px;border-bottom:1px solid var(--line);font-size:.93rem}.co-rev .r:last-child{border:0}
.co-rev .k{color:var(--muted)}.co-rev .v{color:var(--ink);overflow-wrap:anywhere}.co-rev a{color:var(--teal);font-size:.85rem}
.co-embed{padding:16px;min-height:150px;position:relative}
.co-skel{display:grid;gap:12px}.co-skel i{display:block;height:46px;border-radius:10px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:sk 1.2s infinite}.co-skel i:nth-child(3){width:60%}
@keyframes sk{to{background-position:-200% 0}}
.co-alt{margin:12px 2px 0;font-size:.9rem;color:var(--muted)}.co-alt a{color:var(--teal)}

/* cookie / privacy choices banner */
.cc{position:fixed;left:16px;right:16px;bottom:16px;max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px rgba(15,23,42,.22);padding:16px 18px;z-index:400;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.cc p{margin:0;flex:1 1 320px;font-size:.92rem;color:#334155}.cc a{color:var(--teal)}.cc-b{display:flex;gap:10px}.cc-b .btn{padding:10px 20px}
.cd-open .cc{display:none}
