/* Bright retail theme + subtle fantasy touches (overrides style.css/shop.css) */
:root{--bg:#fff;--bg2:#faf7f2;--bone:#222;--mist:#4a4a4a;--dim:#5e5a55;--gold:#c9a45c;--gold-hi:#8a6a1f;--gold-lo:#7a5c18;--navy:#14234a;--ink:#222;--line:rgba(20,35,74,.14);--line-soft:rgba(20,35,74,.08);--wine:#faf7f2;--burg:#14234a}
html,body{background:#fff!important;color:#222!important}
body *{text-shadow:none!important}
a{color:#14234a}
h1,h2,h3,.prod__h,.pcard__t,.shead h2,.ahead h2{color:#14234a!important}
.eyebrow,.pcard__s,.hero-book__t,.planned{color:#7a5c18!important}
p,li,label,legend,.small,.note,.pcard__r,.trust-mini,.lede{color:#333}
/* header: white bar + navy nav row */
.nsbar{background:#f3e6c6!important;color:#14234a!important;border:0!important}.nsbar b{background:#14234a!important;color:#fff!important}
.ns-header{background:#fff!important;border-bottom:1px solid var(--line)!important;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(20,35,74,.06)}
.ns-header .hbar{min-height:64px;position:relative}
.ns-header .hbar::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='64'%3E%3Cg fill='%23c9a45c'%3E%3Ccircle cx='20' cy='14' r='1.2'/%3E%3Ccircle cx='70' cy='40' r='.9'/%3E%3Ccircle cx='120' cy='10' r='1.4'/%3E%3Ccircle cx='190' cy='30' r='1'/%3E%3Ccircle cx='240' cy='16' r='.8'/%3E%3C/g%3E%3Cpath d='M20 14L70 40 120 10 190 30' stroke='%23c9a45c' stroke-width='.4' fill='none'/%3E%3C/svg%3E") right center/260px 64px no-repeat}
.ns-brand{display:flex;align-items:center;gap:.5rem;text-decoration:none}.ns-brand img{height:40px;width:auto;display:block}
.ns-name{color:#14234a!important}.ns-mark{color:#c9a45c!important}
.navrow{background:#14234a}.navrow .ns-nav{display:flex;gap:1.6rem;min-height:40px;align-items:center;overflow-x:auto}
.navrow .ns-nav a{color:#fff!important;font:600 .74rem var(--f-label);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.navrow .ns-nav a:hover{color:#f1d28f!important}
.ns-header.compact .hbar{min-height:46px}.ns-header.compact .ns-brand img{height:28px}.ns-header.compact .navrow .ns-nav{min-height:32px}
.menu-btn{display:none;background:#fff;border:1px solid var(--line);border-radius:6px;padding:.45rem .7rem;color:#14234a;font:600 .8rem var(--f-label);cursor:pointer}
@media(max-width:700px){.menu-btn{display:block}.ns-header .hbar{flex-direction:row!important;align-items:center!important}
 .navrow{display:none}.ns-header.open .navrow{display:block}.navrow .ns-nav{flex-direction:column;align-items:flex-start;gap:0;padding:.4rem 0}.navrow .ns-nav a{padding:.7rem 0;width:100%;border-bottom:1px solid rgba(255,255,255,.12)}}
/* surfaces */
main,.sec,.shop-hero,.toolbar,.shop-side,.series-side,.shop-filters{background:transparent!important;color:#222}
.shop-side,.series-side{background:#faf7f2!important;border-right:1px solid var(--line)!important}
.shop-side *{color:#333}.shop-side h2,.shop-side legend,.shop-side .eyebrow{color:#7a5c18!important}
.shop-hero{position:relative;background:#faf7f2 url(/assets/img/hero-starry-forest.webp) center/cover no-repeat!important;border-bottom:1px solid var(--line)}
.shop-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.7) 45%,rgba(255,255,255,.1) 100%);pointer-events:none}
.shop-hero>*{position:relative}
.shop-hero h1{color:#14234a!important}
input,select,textarea{background:#fff!important;color:#222!important;border:1px solid #c9c2b5!important}
.pcard,.bcard,.hero-book,.pbundle,.reviews__empty,.prod .cover-frame{background:#fff!important;border:1px solid #e6dfd2!important;border-radius:10px!important;box-shadow:0 2px 6px rgba(20,35,74,.06),0 8px 24px rgba(20,35,74,.06)!important;color:#222}
.pcard{position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.pcard:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(20,35,74,.14)!important}
.pcard::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle at 20% 30%,#fff7d6 0 1px,transparent 2px),radial-gradient(circle at 70% 20%,#e9c873 0 1px,transparent 2px),radial-gradient(circle at 50% 70%,#fff3c4 0 1.2px,transparent 2.4px),radial-gradient(circle at 85% 60%,#e9c873 0 .8px,transparent 2px),radial-gradient(circle at 30% 85%,#fff7d6 0 1px,transparent 2px);background-size:120px 120px}
.pcard:hover::after{animation:dust 1.6s ease-out forwards}
@keyframes dust{0%{opacity:0;background-position:0 10px}40%{opacity:.9}100%{opacity:0;background-position:0 -20px}}
@media(prefers-reduced-motion:reduce){.pcard,.pcard:hover{transition:none;transform:none}.pcard:hover::after{animation:none;opacity:.5}}
/* parchment + filigree corners on featured (bundle) cards, hero and panels */
.bcard,.pbundle,.su{background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.7),transparent 60%),repeating-linear-gradient(37deg,rgba(150,120,60,.03) 0 2px,transparent 2px 5px),#fbf6ea!important}
.bcard,.pbundle,.shop-hero__in,.su{position:relative}
.bcard::before,.pbundle::before,.shop-hero__in::before,.su::before{content:"";position:absolute;inset:6px;pointer-events:none;z-index:1;
 background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34'%3E%3Cpath d='M2 32V12Q2 2 12 2h20M7 32V16q0-9 9-9h16M2 12q8 0 10-10' fill='none' stroke='%23b8914a' stroke-width='.9'/%3E%3Ccircle cx='12' cy='12' r='1.6' fill='%23c9a45c'/%3E%3C/svg%3E") top left/34px no-repeat,
 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34'%3E%3Cg transform='rotate(90 17 17)'%3E%3Cpath d='M2 32V12Q2 2 12 2h20M7 32V16q0-9 9-9h16M2 12q8 0 10-10' fill='none' stroke='%23b8914a' stroke-width='.9'/%3E%3Ccircle cx='12' cy='12' r='1.6' fill='%23c9a45c'/%3E%3C/g%3E%3C/svg%3E") top right/34px no-repeat,
 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34'%3E%3Cg transform='rotate(270 17 17)'%3E%3Cpath d='M2 32V12Q2 2 12 2h20M7 32V16q0-9 9-9h16M2 12q8 0 10-10' fill='none' stroke='%23b8914a' stroke-width='.9'/%3E%3Ccircle cx='12' cy='12' r='1.6' fill='%23c9a45c'/%3E%3C/g%3E%3C/svg%3E") bottom left/34px no-repeat,
 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34'%3E%3Cg transform='rotate(180 17 17)'%3E%3Cpath d='M2 32V12Q2 2 12 2h20M7 32V16q0-9 9-9h16M2 12q8 0 10-10' fill='none' stroke='%23b8914a' stroke-width='.9'/%3E%3Ccircle cx='12' cy='12' r='1.6' fill='%23c9a45c'/%3E%3C/g%3E%3C/svg%3E") bottom right/34px no-repeat}
.su-modal .su::before{inset:8px}
/* section headings: crescent icon + constellation divider */
.shead,.ahead{background:none!important;border:0!important;position:relative;padding-bottom:.6rem}
.shead::after,.ahead::after{content:"";display:block;height:14px;margin-top:.4rem;opacity:.45;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='14'%3E%3Cpath d='M0 7H120M180 7H300' stroke='%23c9a45c' stroke-width='.8'/%3E%3Cpath d='M150 1l1.8 4.4 4.7.4-3.6 3 1.1 4.6-4-2.5-4 2.5 1.1-4.6-3.6-3 4.7-.4z' fill='%23c9a45c'/%3E%3Ccircle cx='132' cy='7' r='1' fill='%23c9a45c'/%3E%3Ccircle cx='168' cy='7' r='1' fill='%23c9a45c'/%3E%3C/svg%3E") left center/300px 14px no-repeat}
.shead h2::before,.shead h3::before,.ahead h2::before,.also h2::before,.reviews h2::before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.45em;vertical-align:-.05em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M13 2a8 8 0 1 0 5 13A9 9 0 0 1 13 2z' fill='%23c9a45c'/%3E%3C/svg%3E") center/contain no-repeat}
/* Marisol 18+ accent band stays tasteful-dark; Juno light */
.ahead--mg{background:linear-gradient(90deg,#14234a,#2a2f57)!important;padding:1rem 1.2rem!important;border-radius:8px;color:#fff}.ahead--mg h2,.ahead--mg *{color:#fff!important}.ahead--mg .eyebrow{color:#f1d28f!important}
.ahead--jr{background:#f2f5fb!important;padding:1rem 1.2rem!important;border-radius:8px}
/* buttons/prices */
.btn--cart,.btn--link,.su button[type=submit]{background:#c9a45c!important;color:#14234a!important;border:1px solid #b08a3e!important;font-weight:700}
.btn--cart:hover{background:#b8914a!important}
.btn--ghost{background:#fff!important;color:#14234a!important;border:1px solid #14234a!important}
.btn--free{background:#1d7a52!important;color:#fff!important}
.price{color:#222!important}.price--big{color:#14234a!important}.save{color:#1d6b46!important}
.pill--age{background:#8a1c3a!important;color:#fff!important}
.badge-starter{background:#14234a!important;color:#fff!important}.badge-free{background:#1d7a52!important;color:#fff!important}
s{color:#6b6560!important}.tbd{background:#f3e6c6!important;color:#5a4a12!important}
/* forms + popup */
.su{color:#222;border:1px solid #e0d4b8!important;box-shadow:0 4px 18px rgba(20,35,74,.08)}.su h2,.su h3{color:#14234a!important}.su code{background:#14234a;color:#f1d28f}
.su input[type=email]{background:#fff!important}.su .consent{color:#444!important;opacity:1}.su__err{color:#b00020!important}
.su-modal{background:rgba(20,35,74,.45)}.su__close{color:#14234a!important;z-index:2}
/* footer */
.ns-footer{background:#faf7f2!important;border-top:3px solid #14234a!important;color:#333}.ns-footer .ns-name{color:#14234a!important}
.ns-footer a{color:#14234a!important}
.mbuy{background:#fff!important;border-top:1px solid var(--line)!important;box-shadow:0 -4px 16px rgba(0,0,0,.06)}
.reader{background:#fff!important;color:#222}
