:root{--g:#0f2350;--gold:#d0187f;--teal:#14a3a3;--ink:#1a1c2e;--mute:#5f6378;--line:#e6e3ee;--bg:#fbfaff}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--g)}.disc-top{margin:0;padding:6px 16px;font-size:12px;background:#f6eef7;color:var(--mute);text-align:center}
header.site{border-top:3px solid var(--gold);display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:21px;text-decoration:none;color:var(--g)}.logo img{height:42px;width:auto}nav{display:flex;flex-wrap:wrap;gap:14px}nav a{text-decoration:none;color:var(--ink);font-size:14px}nav a:hover{color:var(--g)}
main{max-width:1240px;margin:0 auto;padding:0 20px}section{margin:40px 0}h1{font-size:clamp(28px,4vw,44px);line-height:1.15}h2{font-size:28px;margin:0 0 4px}.sub{color:var(--mute);margin:0 0 18px}
.hero{position:relative;margin:24px 0;border-radius:18px;min-height:380px;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff;padding:40px}.hero h1{margin:0 0 8px;max-width:720px}.hero p{max-width:620px;font-size:18px}
.cta{display:inline-block;background:var(--gold);color:#fff;padding:10px 18px;border-radius:999px;font-weight:700;text-decoration:none}
.credit{position:absolute;right:8px;bottom:8px;font-size:11px;background:rgba(0,0,0,.55);color:#fff;padding:2px 7px;border-radius:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.pic{position:relative;display:flex;height:200px;align-items:center;justify-content:center;background:#fff}.pic img{max-width:100%;max-height:200px;object-fit:contain}
.pic.cover img{width:100%;height:200px;object-fit:cover;max-height:none}.pic.none{background:#f6eef7;color:var(--mute);height:90px;font-size:14px}
.body{padding:14px;display:flex;flex-direction:column;gap:4px;flex:1}.tag{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.04em}.card h3{margin:0;font-size:17px;line-height:1.3}
.price{margin:0;font-weight:700}.why{margin:0;color:var(--mute);font-size:14px;flex:1}.where{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}.where span{font-size:12px;color:var(--mute);width:100%}
.buy{background:var(--g);color:#fff;text-decoration:none;font-size:13px;padding:6px 12px;border-radius:999px}.buy:hover{background:#d0187f}
.guides{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.gcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink)}.gcard h3{margin:0 0 6px;color:var(--g)}.gcard p{margin:0;color:var(--mute);font-size:14px}
.guide{max-width:760px;margin:40px auto;background:#fff;padding:32px clamp(18px,4vw,48px);border-radius:16px;border:1px solid var(--line)}.guide h2{font-size:23px;margin-top:30px}.meta{color:var(--mute);font-size:14px}.note{background:#f6eef7;padding:12px 16px;border-radius:10px}
footer.site{margin-top:60px;padding:28px 24px;background:#0f2350;color:#d8dbef;font-size:14px;text-align:center}footer.site a{color:#fff}
@media(max-width:640px){header.site{position:static}.hero{min-height:300px;padding:24px}}
h1,h2{font-family:Poppins,'Avenir Next','Segoe UI',system-ui,sans-serif;letter-spacing:-.01em;color:var(--g)}.hero h1{color:#fff}.tag{color:var(--teal);font-weight:600}.gcard h3{color:var(--g)}.buy{border:1px solid var(--gold)}
footer.site{background:#0f2350;border-top:4px solid var(--gold)}.flogo{background:#fff;border-radius:12px;padding:8px;margin-bottom:8px}.alogo{display:block;margin:0 auto 16px}
.deals{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;padding:20px}.dh{margin:18px 0 8px;color:var(--g)}
.strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory}
.deal{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px;text-decoration:none;color:var(--ink);scroll-snap-align:start;background:var(--bg)}
.deal img{width:76px;height:76px;object-fit:cover;border-radius:8px;flex:none}.deal img.prod{object-fit:contain;background:#fff}.deal img.crest{object-fit:contain;padding:8px}
.deal div{display:flex;flex-direction:column;font-size:14px;line-height:1.35}.deal small{color:var(--mute)}.deal em{font-style:normal;color:var(--g);font-weight:700;margin-top:4px}.deal .sale{color:#a3241b;font-weight:700}.deal s{color:var(--mute);font-weight:400}
.logo img{height:40px;width:auto}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.tile{position:relative;display:block;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none;aspect-ratio:4/5;background:#0f2350}.tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.tile:hover img{transform:scale(1.04)}
.tile .cap{position:absolute;left:0;right:0;bottom:0;padding:40px 14px 14px;background:linear-gradient(transparent,rgba(20,18,50,.85))}.tile b{display:block;font-size:18px}.tile small{opacity:.9}
.tile .credit{top:8px;bottom:auto}.feat{font-size:13px;color:var(--mute);margin:6px 2px 0}.feat a{margin-right:8px}
.safety{background:#fff4e5;border-left:4px solid #e08a00;padding:12px 16px;border-radius:10px;margin:0 0 18px}
.cats .tile{aspect-ratio:1/1;background:#fff}.cats .tile img.prod{object-fit:contain;padding:18px;background:#fff}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none}.wm{font-family:Poppins,'Avenir Next','Segoe UI',system-ui,sans-serif;font-weight:600;font-size:24px;color:#0f2350;letter-spacing:-.01em}.wm b{color:#d0187f;font-weight:600}
.sil{height:34px;width:auto;vertical-align:-6px;margin-right:10px;opacity:.9}.phead{display:flex;align-items:center;gap:14px}.psil{height:72px;width:auto;opacity:.85}.gsil{display:block;height:80px;width:auto;margin:0 auto 8px;opacity:.85}
.fsil{display:flex;justify-content:center;gap:28px;margin-bottom:14px}.fsil img{height:48px;width:auto;filter:brightness(0) invert(1);opacity:.35}
@media(max-width:640px){.wm{font-size:20px}.psil{height:52px}}
.logo img{height:48px;width:auto}@media(max-width:640px){.logo img{height:40px}}
/* SEO / answer blocks */
.crumbs{font-size:.85rem;color:#556;margin:12px 0}.crumbs a{color:var(--g)}
.quick{background:#f3f6fc;border-left:5px solid var(--gold);padding:14px 18px;border-radius:8px;margin:16px 0}.quick p{margin:.4em 0}.quick small{color:#667}
.faq details{border-bottom:1px solid #e3e6ef;padding:10px 0}.faq summary{cursor:pointer}.faq summary h3{display:inline;font-size:1.02rem;margin:0}
.tbl{overflow-x:auto;margin:12px 0}.tbl table{border-collapse:collapse;width:100%;font-size:.92rem}.tbl th,.tbl td{border:1px solid #dde;padding:8px;text-align:left}.tbl th{background:var(--g);color:#fff}.tbl tr:nth-child(even){background:#f8f9fc}
@media print{header.site,footer.site,.disc-top,.crumbs,.gsil{display:none}}
.tagline{display:block;font-size:.72rem;color:#5a6785;font-weight:600;letter-spacing:.02em}
.hero .tag{font-size:1.25rem;font-weight:700;margin:.2em 0}
.season{background:linear-gradient(135deg,#fff4f6,#f2f6ff);border-radius:14px;padding:1.2rem;margin:1.5rem 0}
.band{margin:1.5rem 0}
.rating{color:#b8860b;font-weight:600;margin:.2em 0}.rating small{color:#667;font-weight:400;display:block}
.rev{background:#f7f8fb;border-left:4px solid #0f2350;padding:.6rem .9rem;margin:.6rem 0;border-radius:6px}
.giftcards ul{columns:2;gap:2rem}@media(max-width:700px){.giftcards ul{columns:1}}
.hublist li{margin:.4rem 0;font-size:1.1rem}
header.site nav{flex-wrap:wrap}
.template{background:#f7f5ff;border-left:4px solid #6b4bd8;padding:1rem 1.2rem;margin:1rem 0;border-radius:6px}
.books .card img{width:100%;height:auto;max-height:300px;object-fit:contain;background:#f4f4f4}.books .pad{padding:.8rem}
.sources{font-size:.92rem;border-top:1px solid #ddd;margin-top:2rem}
