/* Whisk Gift — "Cozy Boutique Review Blog". Warm cream + doodles, cute pastel accents. */
:root{
  --bg:#fffbef; --cream:#fffdf5; --pink:#fce7f3; --pink-d:#f9a8d4; --blush:#fdf2f4;
  --ink:#78350f; --ink-soft:#92400e; --muted:#a16207;
  --gold:#b45309; --gold-l:#fbbf24;
  --card:#ffffff; --line:#f5d0e0;
  --radius:22px; --radius-s:14px;
  --shadow:0 8px 30px rgba(180,83,9,.10);
  --shadow-h:0 14px 40px rgba(180,83,9,.16);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23f3c6dd' stroke-width='1.4' opacity='0.35'%3E%3Cpath d='M20 30c-6 0-9 6-9 12a9 9 0 0 0 18 0c0-6-3-12-9-12zM20 30v-8'/%3E%3Cpath d='M85 25l2.5 5 5.5.8-4 3.9.9 5.5-4.9-2.6-4.9 2.6.9-5.5-4-3.9 5.5-.8z'/%3E%3Cpath d='M30 85c0-4 3-7 7-7h14c4 0 7 3 7 7v4H30zM34 96h20'/%3E%3Ccircle cx='90' cy='88' r='7'/%3E%3Cpath d='M90 81v-6M83 88h-6M97 88h6M90 95v6'/%3E%3C/g%3E%3C/svg%3E");line-height:1.75;font-size:17px;-webkit-font-smoothing:antialiased}
h1,h2,h3,.serif{font-family:Georgia,"Times New Roman",serif;color:var(--ink);line-height:1.25}
a{color:var(--gold);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
/* ---- header: centered magazine masthead ---- */
header.site{background:rgba(255,253,245,.96);position:sticky;top:0;z-index:50;border-bottom:2px solid var(--line);backdrop-filter:blur(6px)}
.masthead{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 0 16px}
.masthead .logo{font-size:32px}
.masthead .logo svg{width:36px;height:36px}
.tagline{font-family:Georgia,serif;font-style:italic;color:var(--muted);font-size:15.5px;margin:4px 0 12px;letter-spacing:.3px}
.masthead .nav-links{justify-content:center;flex-wrap:wrap}
/* legacy .nav kept for reference */
.nav{display:flex;align-items:center;justify-content:space-between;height:66px}
.logo{font-family:Georgia,serif;font-weight:700;font-size:24px;color:var(--ink);letter-spacing:-.3px;text-decoration:none;display:flex;align-items:center;gap:8px}
.logo:hover{text-decoration:none}
.logo .wg{color:var(--gold);font-style:italic}
.logo svg{width:30px;height:30px;stroke:var(--gold);fill:none;stroke-width:1.8}
.nav-links{display:flex;gap:6px;font-size:14.5px;font-weight:600}
.nav-links a{color:var(--ink-soft);padding:8px 16px;border-radius:999px}
.nav-links a:hover{color:var(--gold);text-decoration:none;background:var(--pink)}
.nav-links a.active{background:#65a30d;color:#fff}
.nav-links a.active:hover{color:#fff;background:#4d7c0f}
.nav-search{color:var(--muted);font-size:18px;cursor:pointer}
/* breadcrumb */
.crumb{font-size:13px;color:var(--muted);margin-bottom:14px}
.crumb a{color:var(--muted)}
.crumb span{margin:0 6px;color:var(--pink-d)}
/* ---- featured face-off hero ---- */
.faceoff{background:linear-gradient(160deg,var(--pink) 0%,var(--blush) 60%,var(--bg) 100%);padding:60px 0 54px;border-bottom:2px solid var(--line)}
.faceoff-inner{display:grid;grid-template-columns:1fr 300px;gap:36px;align-items:center}
.faceoff .kicker{display:inline-block;background:#fff;border:2px solid var(--pink-d);color:var(--gold);font-weight:700;font-size:13px;padding:6px 18px;border-radius:999px;margin-bottom:16px;letter-spacing:.6px;text-transform:uppercase}
.faceoff h1{font-size:clamp(32px,5vw,52px);letter-spacing:-.8px;margin-bottom:12px}
.faceoff h1 em{color:var(--gold);font-style:italic}
.faceoff p{color:var(--ink-soft);font-size:17px;max-width:600px;margin-bottom:20px}
.btn-cute{display:inline-block;background:var(--gold);color:#fff;font-weight:700;font-size:15px;padding:12px 30px;border-radius:999px;box-shadow:var(--shadow)}
.btn-cute:hover{background:#92400e;color:#fff;text-decoration:none;box-shadow:var(--shadow-h)}
.faceoff-card{background:#fff;border:3px solid var(--pink-d);border-radius:var(--radius);padding:26px;text-align:center;box-shadow:var(--shadow);position:relative}
.rating-badge{position:absolute;top:-22px;right:18px;background:var(--gold);color:#fff;font-family:Georgia,serif;font-weight:700;font-size:26px;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:4px solid #fff;box-shadow:var(--shadow)}
.faceoff-card .vs-names{font-family:Georgia,serif;font-size:19px;font-weight:700;margin:14px 0 6px}
.faceoff-card .vs-sub{color:var(--muted);font-size:14px}
.faceoff-card svg{width:52px;height:52px;stroke:var(--gold);fill:none;stroke-width:1.5}
/* ---- sections ---- */
.section{padding:44px 0}
.section-head{text-align:center;margin-bottom:28px}
.section-head h2{font-size:30px;letter-spacing:-.4px}
.section-head h2 .deco{color:var(--gold)}
.section-head .sub{color:var(--muted);font-size:15px;margin-top:6px}
/* ---- cute review cards ---- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px}
.card{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;position:relative}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-h)}
.card-img{background:linear-gradient(135deg,var(--pink),var(--cream));min-height:150px;display:flex;align-items:center;justify-content:center}
.card-img svg{width:56px;height:56px;stroke:var(--gold);fill:none;stroke-width:1.5;opacity:.75}
.card-body{padding:22px}
.card-tag{display:inline-block;background:var(--pink);color:var(--gold);font-size:12px;font-weight:700;padding:4px 14px;border-radius:999px;margin-bottom:10px;letter-spacing:.5px;text-transform:uppercase}
.card-body h3{font-size:21px;margin-bottom:8px}
.card-body h3 a{color:var(--ink)}
.card-body h3 a:hover{color:var(--gold)}
.card-body p{color:var(--ink-soft);font-size:15px;margin-bottom:12px}
.card-meta{font-size:13px;color:var(--muted)}
.card .mini-rating{position:absolute;top:14px;right:14px;background:#fff;border:2px solid var(--gold-l);color:var(--gold);font-weight:800;font-size:15px;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.stars{color:var(--gold-l);font-size:15px;letter-spacing:2px}
/* ---- article pages ---- */
.article{max-width:780px;margin:0 auto;padding:40px 22px 60px;background:rgba(255,253,245,.7);border-radius:0 0 var(--radius) var(--radius)}
.article .kicker{display:inline-block;background:var(--pink);color:var(--gold);font-weight:700;font-size:13px;padding:6px 18px;border-radius:999px;margin-bottom:14px}
.article h1{font-size:clamp(30px,4.5vw,44px);letter-spacing:-.6px;margin-bottom:10px}
.byline{color:var(--muted);font-size:14px;margin-bottom:24px;border-bottom:2px dashed var(--line);padding-bottom:18px}
.article .lede{font-size:19px;color:var(--ink-soft);margin-bottom:22px}
.article p{margin-bottom:18px}
.article h2{font-size:26px;margin:36px 0 14px}
.article h3{font-size:20px;margin:26px 0 10px}
.article ul,.article ol{margin:0 0 18px 24px}
.article li{margin-bottom:8px}
/* circular rating badge (mockup style) */
.rating-circle-wrap{display:flex;gap:26px;align-items:flex-start;margin:22px 0}
.rating-circle{flex:0 0 auto;width:110px;height:110px;border-radius:50%;background:#fff;border:4px solid var(--gold-l);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.rating-circle b{font-family:Georgia,serif;font-size:32px;color:var(--gold);line-height:1}
.rating-circle .stars{font-size:13px;letter-spacing:1px;margin-top:2px}
.rating-circle small{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:1px;text-transform:uppercase}
/* product face-off columns */
.faceoff-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0}
.product-card{background:#fff;border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);position:relative}
.product-card.winner{border-color:var(--gold);border-width:3px}
.ribbon{position:absolute;top:14px;left:-8px;background:var(--gold);color:#fff;font-size:12px;font-weight:800;padding:6px 16px 6px 14px;border-radius:0 999px 999px 0;letter-spacing:.6px;text-transform:uppercase;box-shadow:var(--shadow);z-index:2}
.product-img{background:linear-gradient(150deg,var(--blush),var(--cream));min-height:190px;display:flex;align-items:center;justify-content:center;padding:20px}
.product-img svg{width:110px;height:110px}
.product-info{padding:20px 22px}
.product-info h3{font-size:21px;margin-bottom:4px}
.product-info .p-sub{color:var(--muted);font-size:14px;margin-bottom:10px}
.product-info .p-price{font-weight:800;color:var(--gold);font-size:18px}
.mini-proscons{background:var(--blush);border-radius:var(--radius-s);padding:16px 18px;margin-top:14px;font-size:14px}
.mini-proscons h4{font-family:Georgia,serif;font-size:15px;margin-bottom:8px;color:var(--ink)}
.mini-proscons ul{margin:0 0 0 18px}
.mini-proscons li{margin-bottom:5px}
.mini-proscons .ck{color:#65a30d;font-weight:700}
/* rating badge at top of articles */
.rating-row{display:flex;align-items:center;gap:18px;background:#fff;border:2px solid var(--line);border-radius:var(--radius);padding:18px 24px;margin:24px 0;box-shadow:var(--shadow)}
.rating-row .big{font-family:Georgia,serif;font-size:44px;font-weight:700;color:var(--gold);line-height:1}
.rating-row .cap{font-size:14px;color:var(--muted)}
.rating-row .cap b{color:var(--ink);display:block;font-size:16px}
/* gift pick cards */
.pick{background:#fff;border:2px solid var(--line);border-radius:var(--radius);padding:26px;margin:26px 0;box-shadow:var(--shadow);position:relative}
.pick .pick-badge{position:absolute;top:-14px;left:24px;background:var(--gold);color:#fff;font-size:12px;font-weight:700;padding:5px 16px;border-radius:999px;letter-spacing:.6px;text-transform:uppercase}
.pick h3{margin-top:4px;font-size:23px}
.pick .price{display:inline-block;background:var(--cream);border:2px solid var(--gold-l);color:var(--gold);font-weight:800;font-size:17px;padding:4px 16px;border-radius:999px;margin:8px 0}
.pick .why{margin:12px 0}
.pick .why b{color:var(--gold)}
.pick .bestfor{background:var(--pink);border-radius:var(--radius-s);padding:12px 18px;font-size:15px;margin-top:12px}
.pick .bestfor b{color:var(--gold)}
/* verdict box */
.verdict{background:linear-gradient(150deg,var(--cream),#fff);border:3px solid var(--gold-l);border-radius:var(--radius);padding:28px;margin:32px 0}
.verdict h2{margin-top:0;font-size:24px}
.verdict .winner{font-size:20px;font-weight:700;color:var(--gold);margin-bottom:10px}
/* pros & cons cards side by side */
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.pros,.cons{background:#fff;border:2px solid var(--line);border-radius:var(--radius-s);padding:20px}
.pros{border-top:5px solid #65a30d}
.cons{border-top:5px solid #e11d48}
.pros h4{color:#4d7c0f;margin-bottom:8px;font-family:Georgia,serif;font-size:17px}
.cons h4{color:#be123c;margin-bottom:8px;font-family:Georgia,serif;font-size:17px}
.pros ul,.cons ul{margin:0 0 0 18px;font-size:15px}
.pros li,.cons li{margin-bottom:6px}
/* method box */
.method{background:#fff;border:2px dashed var(--pink-d);border-radius:var(--radius-s);padding:20px 24px;margin:28px 0;font-size:15px;color:var(--ink-soft)}
.method b{color:var(--ink)}
/* tables */
table{width:100%;border-collapse:separate;border-spacing:0;margin:24px 0;border:2px solid var(--line);border-radius:var(--radius-s);overflow:hidden;font-size:15px}
th{background:var(--pink);color:var(--ink);text-align:left;padding:12px 16px;font-family:Georgia,serif}
td{padding:12px 16px;border-top:1px solid var(--line);background:#fff}
tr td:first-child{font-weight:600}
/* faq */
.faq{margin:24px 0}
.faq details{background:#fff;border:2px solid var(--line);border-radius:var(--radius-s);margin-bottom:10px;padding:14px 20px}
.faq summary{font-weight:700;cursor:pointer;color:var(--ink);font-family:Georgia,serif}
.faq p{margin:10px 0 4px;font-size:15.5px}
/* cta */
.cta{background:linear-gradient(150deg,var(--gold),#d97706);color:#fff;text-align:center;border-radius:var(--radius);padding:36px 28px;margin:36px 0}
.cta h2{color:#fff;margin-bottom:10px}
.cta p{opacity:.95;margin-bottom:0}
/* price disclaimer */
.disclaimer{font-size:13.5px;color:var(--muted);background:var(--cream);border-radius:var(--radius-s);padding:14px 18px;margin:24px 0}
/* footer */
footer.site{background:var(--ink);color:#fde68a;margin-top:20px}
footer.site .wrap{padding-top:36px;padding-bottom:20px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px;margin-bottom:24px}
.foot-brand{font-family:Georgia,serif;font-size:22px;font-weight:700;color:#fff;margin-bottom:8px}
.foot-brand .wg{color:var(--gold-l);font-style:italic}
footer.site h4{color:#fff;font-size:15px;margin-bottom:10px}
footer.site a{color:#fcd34d;display:block;margin-bottom:6px;font-size:14.5px}
footer.site p{font-size:14px;color:#fcd34d}
footer.site .fine{border-top:1px solid rgba(251,191,36,.25);padding-top:16px;font-size:13px;color:#fbbf24}
/* responsive */
@media(max-width:760px){
  .masthead .nav-links{display:flex;flex-wrap:wrap;justify-content:center}
  .masthead .nav-links a{padding:6px 12px;font-size:13.5px}
  .foot-grid{grid-template-columns:1fr}
  .faceoff-inner{grid-template-columns:1fr}
  .faceoff-cols{grid-template-columns:1fr}
  .pros-cons{grid-template-columns:1fr}
  .faceoff{padding:44px 0}
}


/* ---- monetization: price CTA buttons ---- */
.btn-price{display:inline-block;background:var(--gold);color:#fff!important;font-weight:700;font-size:15px;padding:11px 28px;border-radius:999px;box-shadow:var(--shadow);text-decoration:none;margin:10px 0}
.btn-price:hover{background:#92400e;color:#fff!important;text-decoration:none;box-shadow:var(--shadow-h)}
.price-cta-row{text-align:center;margin:14px 0 6px}
.price-note{font-size:12.5px;color:var(--muted);margin-top:4px}

/* ---- monetization: where-to-buy summary ---- */
.where-to-buy{background:var(--cream);border:2px solid var(--gold-l);border-radius:var(--radius);padding:26px;margin:32px 0}
.where-to-buy h2{margin-top:0;font-size:22px}
.where-to-buy ul{list-style:none;margin:12px 0}
.where-to-buy li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:15.5px}
.where-to-buy li:last-child{border-bottom:none}
.where-to-buy .wtb-name{font-weight:600}
.where-to-buy .wtb-price{color:var(--muted);font-size:14px;margin-left:8px}
.where-to-buy .btn-price{margin:0;padding:8px 20px;font-size:14px}

/* ---- monetization: ad slot placeholders ---- */
.ad-slot{background:#fdfbf7;border:2px dashed #e7c9a8;border-radius:var(--radius-s);padding:26px 18px;margin:30px 0;text-align:center;color:#c9a06a;font-size:13px;letter-spacing:1.5px;text-transform:uppercase}
.ad-slot::before{content:"Advertisement";display:block;font-weight:600}
/* desktop sticky sidebar slot: only >1024px */
.sidebar-ad{display:none}
@media(min-width:1025px){
  .sidebar-ad{display:block;position:sticky;top:90px}
}
/* mobile sticky bottom anchor: only <=1024px, dismissible */
.mobile-anchor-ad{display:none}
@media(max-width:1024px){
  .mobile-anchor-ad{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fdfbf7;border-top:2px dashed #e7c9a8;min-height:50px;max-height:60px;align-items:center;justify-content:center;color:#c9a06a;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}
  .mobile-anchor-ad .ad-dismiss{position:absolute;top:-14px;right:8px;background:var(--ink);color:#fff;border:none;border-radius:50%;width:26px;height:26px;font-size:14px;line-height:1;cursor:pointer}
  body.has-anchor-ad{padding-bottom:64px}
}

/* Honest drawbacks — warm warning box matching boutique design */
.keepinmind{background:#fef3c7;border:1px dashed #d97706;border-radius:14px;padding:12px 16px;margin:10px 0;font-size:15px;line-height:1.6}
.keepinmind b{color:#92400e}

/* Buyer's decision matrix */
.decision-matrix{background:#fffbeb;border:2px solid #fde68a;border-radius:18px;padding:18px 22px;margin:18px 0}
.decision-matrix p{margin:10px 0;line-height:1.65}
.decision-matrix p b{color:#78350f}

.disclosure-note{font-style:italic;font-size:12.5px;color:var(--muted);margin:0 0 20px;}

/* ---- journal redesign: baker's notes, loves/wishes, newsletter ---- */
.baker-notes{background:#fffbeb;border:2px solid #fde68a;border-radius:18px;padding:18px 22px;margin:18px 0}
.baker-notes p{margin:10px 0;line-height:1.65}
.baker-notes p b{color:#78350f}
.pick .stars{color:var(--gold-l);font-size:19px;letter-spacing:3px;margin:8px 0 2px;text-shadow:0 1px 0 #fff}
.pick .story{font-size:16px;color:var(--ink-soft);margin:10px 0;line-height:1.7}
.pick .loves,.pick .wishes{border-radius:var(--radius-s);padding:12px 18px;font-size:15px;margin-top:10px}
.pick .loves{background:#f0fdf4;border:1px dashed #86efac}
.pick .loves b{color:#15803d}
.pick .wishes{background:#fef3c7;border:1px dashed #d97706}
.pick .wishes b{color:#92400e}
.pick .loves ul,.pick .wishes ul{margin:8px 0 0 18px}
.pick .loves li,.pick .wishes li{margin-bottom:5px}
/* newsletter in footer */
.news-form{display:flex;gap:8px;margin-top:12px}
.news-form input{flex:1;min-width:0;padding:10px 16px;border-radius:999px;border:2px solid var(--gold-l);background:#fff;font-size:14px;color:var(--ink)}
.news-form button{background:var(--gold-l);color:var(--ink);border:none;font-weight:700;padding:10px 22px;border-radius:999px;cursor:pointer;font-size:14px;white-space:nowrap}
.news-form button:hover{background:#fcd34d}
.news-thanks{color:#fff !important;font-size:14px;margin-top:10px}
/* lede wrapper (formerly held a score badge) */
.lede-wrap{margin:6px 0 18px}
.lede-wrap .lede{margin:0}
