html{scroll-behavior:smooth}
body.admin-bar .site-header{top:32px}
.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;top:12px;left:12px;z-index:9999;width:auto;height:auto;margin:0;padding:10px 14px;clip:auto;background:#fff;border:2px solid var(--ink);border-radius:8px}
.site-header .brand img{display:block;width:205px;height:auto}
.footer-brand img{display:block;width:205px;height:auto}
.hero-media{max-width:680px}
.hero-media .image-frame{border:0;box-shadow:none;background:transparent;border-radius:0;padding:0;overflow:visible}
.hero-media .image-frame img{aspect-ratio:auto;object-fit:contain;border-radius:0;width:100%;height:auto;display:block}
.hero-sticker{display:none}
.hero-media figcaption{bottom:-22px}
.page-hero{background:linear-gradient(135deg,#ffd8ec 0,#fff0f7 58%,#f7dfff 100%);border-bottom:3px solid var(--ink);padding:90px 6vw 70px}
.page-hero h1{max-width:900px;margin:10px 0 0;font-family:Arial Rounded MT Bold,Arial,sans-serif;font-size:clamp(46px,7vw,82px);font-weight:900;line-height:.98;letter-spacing:-.055em}
.content-shell{width:min(900px,88vw);margin-inline:auto}
.page-content{padding:70px 0 90px;color:#59465f;font-size:17px;line-height:1.75}
.page-content h2,.page-content h3{color:var(--ink);font-family:Arial Rounded MT Bold,Arial,sans-serif;letter-spacing:-.03em}
.page-content h2{margin:44px 0 14px;font-size:34px}
.page-content h3{margin:32px 0 10px;font-size:25px}
.page-content p,.page-content ul,.page-content ol{margin:0 0 20px}
.page-content a{color:var(--pink-dark);text-decoration:underline;font-weight:800}
.page-content img{max-width:100%;height:auto;border-radius:22px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:650px){body.admin-bar .site-header{top:0}.site-header .brand img{width:150px}.footer-brand img{width:180px}.hero-media figcaption{left:10px;bottom:-28px}.page-hero{padding:64px 20px 48px}.content-shell{width:min(100% - 36px,900px)}}

/* Keep the homepage secondary hero action readable after the global button theme. */
.hero-actions .button.secondary{background:#fff;color:var(--ink)}
.hero-actions .button.secondary:hover{background:#fff5fa;color:var(--ink);box-shadow:5px 5px 0 var(--ink)}

/* Dedicated NeeDoh Advent Calendar page */
.ac-page {
  --ac-ink: #2c1930;
  --ac-muted: #684b66;
  --ac-pink: #f54298;
  --ac-pink-dark: #d91d78;
  --ac-blush: #fff0f7;
  --ac-lilac: #f3e7ff;
  --ac-cream: #fffaf2;
  --ac-gold: #f4bd42;
  --ac-line: #3a273b;
  --ac-shadow: #3a223d;
  color: var(--ac-ink);
  background: #fffdfc;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow: hidden;
}

.ac-page *, .ac-page *::before, .ac-page *::after { box-sizing: border-box; }
.ac-page img { display: block; max-width: 100%; }
.ac-page a { color: inherit; }
.ac-wrap { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.ac-kicker { margin: 0 0 12px; color: var(--ac-pink-dark); font-size: .78rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.ac-page h1, .ac-page h2, .ac-page h3 { margin-top: 0; color: var(--ac-ink); font-family: Georgia, "Times New Roman", serif; line-height: 1.05; }
.ac-page h1 { max-width: 760px; margin-bottom: 22px; font-size: clamp(3rem, 6.6vw, 6.4rem); letter-spacing: -.055em; }
.ac-page h2 { margin-bottom: 18px; font-size: clamp(2.1rem, 4vw, 4rem); letter-spacing: -.04em; }
.ac-page h3 { margin-bottom: 10px; font-size: 1.45rem; }
.ac-page p { margin: 0 0 1.05em; color: var(--ac-muted); font-size: 1.05rem; line-height: 1.75; }
.ac-page strong { color: var(--ac-ink); }

.ac-hero { position: relative; padding: 72px 0 54px; background: linear-gradient(128deg, #ffe7f3 0%, #f7eaff 52%, #fff4d8 100%); border-bottom: 2px solid var(--ac-line); }
.ac-hero::before { content: ""; position: absolute; top: 30px; left: -75px; width: 210px; height: 210px; border: 3px solid rgba(217,29,120,.16); border-radius: 50%; }
.ac-hero::after { content: "✦"; position: absolute; right: 4%; top: 35px; color: rgba(217,29,120,.22); font-size: 84px; transform: rotate(12deg); }
.ac-hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: 52px; }
.ac-hero-copy { position: relative; z-index: 2; }
.ac-hero-lede { max-width: 650px; color: #523650; font-size: clamp(1.13rem, 2vw, 1.35rem) !important; line-height: 1.62 !important; }
.ac-hero-media { position: relative; padding: 12px; background: white; border: 2px solid var(--ac-line); border-radius: 38px; box-shadow: 12px 14px 0 var(--ac-shadow); transform: rotate(1.4deg); }
.ac-hero-media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 27px; }
.ac-photo-note { position: absolute; right: 22px; bottom: 20px; margin: 0 !important; padding: 7px 11px; color: #502c41 !important; background: rgba(255,255,255,.9); border-radius: 999px; font-size: .7rem !important; font-weight: 800; letter-spacing: .04em; }
.ac-actions { display: flex; flex-wrap: wrap; gap: 14px; margin: 28px 0 24px; }
.ac-button { display: inline-flex; min-height: 56px; align-items: center; justify-content: center; gap: 10px; padding: 14px 24px; color: #fff !important; background: var(--ac-pink); border: 2px solid var(--ac-line); border-radius: 999px; box-shadow: 7px 8px 0 var(--ac-shadow); font-weight: 900; line-height: 1.2; text-decoration: none !important; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.ac-button:hover { color: #fff !important; background: var(--ac-pink-dark); box-shadow: 4px 5px 0 var(--ac-shadow); transform: translate(3px,3px); }
.ac-button--light { color: var(--ac-ink) !important; background: #fff; }
.ac-button--light:hover { color: var(--ac-ink) !important; background: var(--ac-cream); }
.ac-button--small { min-height: 48px; padding: 12px 18px; box-shadow: 5px 6px 0 var(--ac-shadow); font-size: .94rem; }
.ac-byline { display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: center; color: #60435d; font-size: .91rem; }
.ac-byline a { color: var(--ac-pink-dark); font-weight: 900; text-decoration-thickness: 2px; text-underline-offset: 3px; }

.ac-facts { padding: 0; background: var(--ac-ink); }
.ac-facts-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.ac-fact { padding: 26px 24px; border-right: 1px solid rgba(255,255,255,.19); }
.ac-fact:last-child { border-right: 0; }
.ac-fact span { display: block; margin-bottom: 5px; color: #ff94c9; font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.ac-fact strong { display: block; color: #fff; font-size: 1.05rem; line-height: 1.4; }

.ac-jump { padding: 24px 0; background: #fff; border-bottom: 1px solid #ead8e5; }
.ac-jump-inner { display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; }
.ac-jump strong { font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; }
.ac-jump a { color: #6f3ee8; font-size: .92rem; font-weight: 800; text-decoration: none; }
.ac-jump a:hover { text-decoration: underline; text-underline-offset: 4px; }

.ac-section { padding: 84px 0; }
.ac-section--blush { background: var(--ac-blush); }
.ac-section--lilac { background: var(--ac-lilac); }
.ac-section--cream { background: var(--ac-cream); }
.ac-section-head { display: grid; grid-template-columns: .8fr 1.2fr; gap: 54px; align-items: start; margin-bottom: 38px; }
.ac-section-head > p { margin-top: 4px; }
.ac-prose { max-width: 790px; }
.ac-prose h2 { margin-top: 52px; }
.ac-prose h3 { margin-top: 30px; }
.ac-prose ul, .ac-prose ol { margin: 0 0 25px; padding-left: 1.25rem; color: var(--ac-muted); }
.ac-prose li { margin-bottom: 10px; line-height: 1.65; }

.ac-verdict { display: grid; grid-template-columns: .9fr 1.1fr; overflow: hidden; background: #fff; border: 2px solid var(--ac-line); border-radius: 30px; box-shadow: 10px 11px 0 var(--ac-shadow); }
.ac-verdict-mark { display: grid; place-items: center; min-height: 240px; padding: 34px; text-align: center; background: linear-gradient(150deg, #ff4da1, #864be9); }
.ac-verdict-mark span { display: block; color: white; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.3rem, 4.5vw, 4.4rem); font-weight: 700; line-height: .98; }
.ac-verdict-copy { padding: 38px; }
.ac-verdict-copy p:last-child { margin-bottom: 0; }

.ac-door-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.ac-door { position: relative; min-height: 230px; padding: 28px 24px; overflow: hidden; background: white; border: 2px solid var(--ac-line); border-radius: 22px; box-shadow: 7px 8px 0 #e8bdd7; }
.ac-door::after { content: attr(data-door); position: absolute; right: 13px; bottom: -18px; color: rgba(245,66,152,.11); font-family: Georgia, serif; font-size: 100px; font-weight: 900; line-height: 1; }
.ac-door-icon { position: relative; z-index: 1; display: grid; width: 46px; height: 46px; margin-bottom: 24px; place-items: center; color: var(--ac-ink); background: #ffd44d; border: 2px solid var(--ac-line); border-radius: 50%; font-size: 20px; }
.ac-door h3, .ac-door p { position: relative; z-index: 1; }
.ac-door p { margin: 0; font-size: .94rem; line-height: 1.6; }

.ac-split { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; }
.ac-panel { padding: 34px; background: #fff; border: 2px solid var(--ac-line); border-radius: 26px; }
.ac-panel--pink { background: #ffe9f4; }
.ac-panel--purple { background: #efe7ff; }
.ac-checklist { list-style: none; margin: 0; padding: 0; }
.ac-checklist li { position: relative; margin: 0 0 14px; padding-left: 32px; color: var(--ac-muted); line-height: 1.6; }
.ac-checklist li::before { content: "✓"; position: absolute; left: 0; top: 0; display: grid; width: 22px; height: 22px; place-items: center; color: white; background: var(--ac-pink); border-radius: 50%; font-size: .72rem; font-weight: 900; }
.ac-skip li::before { content: "—"; background: #6f3ee8; }

.ac-product-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 24px; }
.ac-product-card { display: grid; grid-template-columns: 42% 58%; overflow: hidden; background: #fff; border: 2px solid var(--ac-line); border-radius: 28px; box-shadow: 8px 9px 0 var(--ac-shadow); }
.ac-product-media { min-height: 330px; background: linear-gradient(145deg,#ffeaf5,#f0e8ff); }
.ac-product-media img { width: 100%; height: 100%; object-fit: cover; }
.ac-product-body { display: flex; flex-direction: column; padding: 28px 24px; }
.ac-product-label { margin-bottom: 9px; color: var(--ac-pink-dark); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.ac-product-body h3 { font-size: 1.65rem; }
.ac-product-body p { font-size: .93rem; line-height: 1.62; }
.ac-product-body .ac-button { width: 100%; margin-top: auto; }

.ac-table-wrap { overflow-x: auto; background: #fff; border: 2px solid var(--ac-line); border-radius: 24px; box-shadow: 8px 9px 0 var(--ac-shadow); }
.ac-table { width: 100%; min-width: 760px; border-collapse: collapse; }
.ac-table th, .ac-table td { padding: 20px; border-bottom: 1px solid #eadde8; color: var(--ac-muted); text-align: left; vertical-align: top; }
.ac-table th { color: var(--ac-ink); background: #fff0f7; font-size: .77rem; letter-spacing: .08em; text-transform: uppercase; }
.ac-table tbody tr:last-child td { border-bottom: 0; }
.ac-table td:first-child { color: var(--ac-ink); font-weight: 900; }

.ac-review-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.ac-review { padding: 28px; background: #fff; border: 2px solid var(--ac-line); border-radius: 24px; }
.ac-review-symbol { margin-bottom: 18px; color: var(--ac-pink); font-family: Georgia, serif; font-size: 3rem; line-height: .7; }
.ac-review p { font-size: .95rem; line-height: 1.65; }
.ac-review small { display: block; color: #7c6178; font-weight: 800; line-height: 1.5; }
.ac-note { margin-top: 24px; padding: 22px 24px; color: #4f3850; background: #fff9e9; border-left: 5px solid var(--ac-gold); border-radius: 0 18px 18px 0; line-height: 1.65; }

.ac-faq-list { display: grid; gap: 14px; max-width: 900px; }
.ac-faq-list details { background: #fff; border: 2px solid var(--ac-line); border-radius: 20px; }
.ac-faq-list summary { position: relative; padding: 22px 58px 22px 24px; cursor: pointer; color: var(--ac-ink); font-weight: 900; line-height: 1.4; list-style: none; }
.ac-faq-list summary::-webkit-details-marker { display: none; }
.ac-faq-list summary::after { content: "+"; position: absolute; right: 20px; top: 16px; display: grid; width: 34px; height: 34px; place-items: center; color: white; background: var(--ac-pink); border-radius: 50%; font-size: 1.25rem; }
.ac-faq-list details[open] summary::after { content: "−"; }
.ac-faq-answer { padding: 0 24px 22px; }
.ac-faq-answer p { margin-bottom: 0; font-size: .98rem; }

.ac-source { margin-top: 28px; color: #7b6579; font-size: .83rem; line-height: 1.6; }
.ac-source a { color: #6f3ee8; font-weight: 800; text-underline-offset: 3px; }
.ac-author { display: grid; grid-template-columns: auto 1fr; gap: 26px; align-items: center; padding: 32px; background: white; border: 2px solid var(--ac-line); border-radius: 28px; box-shadow: 8px 9px 0 var(--ac-shadow); }
.ac-author-monogram { display: grid; width: 92px; height: 92px; place-items: center; color: #fff; background: linear-gradient(145deg,var(--ac-pink),#774ce4); border: 2px solid var(--ac-line); border-radius: 50%; font-family: Georgia,serif; font-size: 1.8rem; font-weight: 900; }
.ac-author h2 { margin-bottom: 8px; font-size: 2rem; }
.ac-author p { margin: 0; font-size: .96rem; }

.ac-final { padding: 74px 0; text-align: center; background: linear-gradient(135deg,#f54298,#7e4ce4); }
.ac-final .ac-wrap { max-width: 860px; }
.ac-final h2, .ac-final p { color: white; }
.ac-final p { max-width: 690px; margin-inline: auto; }
.ac-final .ac-button { color: var(--ac-ink) !important; background: #fff; }
.ac-final .ac-button:hover { background: #fff8dc; }

body:has(.ac-page) .page-hero { display: none; }
.page-content:has(.ac-page) { width: 100%; max-width: none; margin: 0; padding: 0; color: inherit; font-size: inherit; line-height: inherit; }
.page-content:has(.ac-page) > * { margin-top: 0; margin-bottom: 0; }

@media (max-width: 980px) {
  .ac-hero-grid, .ac-section-head, .ac-verdict { grid-template-columns: 1fr; }
  .ac-hero-copy { order: 1; }
  .ac-hero-media { order: 2; max-width: 720px; }
  .ac-facts-grid { grid-template-columns: repeat(2,1fr); }
  .ac-fact:nth-child(2) { border-right: 0; }
  .ac-fact:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.19); }
  .ac-door-grid { grid-template-columns: repeat(2,1fr); }
  .ac-product-grid { grid-template-columns: 1fr; }
  .ac-review-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .ac-wrap { width: min(100% - 28px,1160px); }
  .ac-hero { padding: 52px 0 42px; }
  .ac-hero-grid { gap: 36px; }
  .ac-page h1 { font-size: clamp(2.8rem,15vw,4.5rem); }
  .ac-page h2 { font-size: clamp(2rem,10vw,3rem); }
  .ac-section { padding: 62px 0; }
  .ac-actions { flex-direction: column; align-items: stretch; }
  .ac-button { width: 100%; }
  .ac-hero-media { border-radius: 26px; box-shadow: 7px 8px 0 var(--ac-shadow); transform: none; }
  .ac-hero-media img { border-radius: 18px; }
  .ac-facts-grid, .ac-door-grid, .ac-split { grid-template-columns: 1fr; }
  .ac-fact { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.19); }
  .ac-fact:last-child { border-bottom: 0; }
  .ac-product-card { grid-template-columns: 1fr; }
  .ac-product-media { min-height: 260px; }
  .ac-product-media img { aspect-ratio: 4/3; }
  .ac-author { grid-template-columns: 1fr; text-align: center; }
  .ac-author-monogram { margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .ac-button { transition: none; }
}


/* Advent Calendar verdict image and FAQ layout fix */
.ac-verdict-mark{position:relative;display:block;min-height:420px;padding:0;overflow:hidden;background:linear-gradient(150deg,#ff4da1,#864be9);isolation:isolate}
.ac-verdict-mark::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 44%,rgba(34,17,36,.84) 100%);pointer-events:none}
.ac-verdict-image{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:70% center}
.ac-verdict-mark span{position:absolute;right:28px;bottom:26px;left:28px;z-index:2;display:block;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.2vw,3.3rem);font-weight:700;line-height:1;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.ac-faq-list summary{position:relative;display:block!important;width:100%;padding:22px 64px 22px 24px;cursor:pointer;color:var(--ac-ink);font-weight:900;line-height:1.4;list-style:none;grid-template-columns:none!important}
@media(max-width:700px){.ac-verdict-mark,.ac-verdict-image{min-height:340px}.ac-verdict-mark span{right:22px;bottom:22px;left:22px;font-size:2.2rem}}


/* Product guide pages — NeeDoh Reviews, September 2026 */
body:has(.pg-page) .page-hero{display:none!important}
body:has(.pg-page) .page-content{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
body:has(.pg-page) .site-main{overflow:clip}
.pg-page{
  --pg-ink:#2b1631;
  --pg-muted:#684d68;
  --pg-pink:#f83f99;
  --pg-deep:#7e2f75;
  --pg-soft:#fff0f7;
  --pg-soft-2:#f6eaff;
  --pg-accent:#8b4de8;
  --pg-sun:#ffd84d;
  color:var(--pg-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:#fff;
  line-height:1.7;
}
.pg-page.pg-dream{--pg-deep:#6550b9;--pg-soft:#eef7ff;--pg-soft-2:#f2eaff;--pg-accent:#39a9d8}
.pg-page.pg-snow{--pg-deep:#32769a;--pg-soft:#f0faff;--pg-soft-2:#ffeef7;--pg-accent:#77cfea}
.pg-page.pg-gum{--pg-deep:#9c3d66;--pg-soft:#fff1f0;--pg-soft-2:#fff0fa;--pg-accent:#f68443}
.pg-page.pg-fruit{--pg-deep:#506c42;--pg-soft:#fff8de;--pg-soft-2:#eff9e8;--pg-accent:#f1a63b}
.pg-page.pg-cats{--pg-deep:#65408e;--pg-soft:#fff0f7;--pg-soft-2:#eaf9f5;--pg-accent:#41afa4}
.pg-page *{box-sizing:border-box}
.pg-page img{display:block;max-width:100%}
.pg-page a{color:var(--pg-deep)}
.pg-wrap{width:min(1180px,calc(100% - 36px));margin-inline:auto}
.pg-hero{
  position:relative;
  padding:72px 0 62px;
  background:
    radial-gradient(circle at 7% 88%,rgba(248,63,153,.14) 0 120px,transparent 121px),
    radial-gradient(circle at 92% 12%,rgba(255,216,77,.22) 0 86px,transparent 87px),
    linear-gradient(120deg,var(--pg-soft),var(--pg-soft-2));
  border-bottom:2px solid var(--pg-ink);
  overflow:hidden;
}
.pg-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:54px;align-items:center}
.pg-kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;font-size:.79rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--pg-deep)}
.pg-kicker:before{content:"";width:34px;height:8px;border-radius:99px;background:var(--pg-pink);box-shadow:12px 7px 0 var(--pg-sun)}
.pg-page h1,.pg-page h2,.pg-page h3{margin-top:0;color:var(--pg-ink);line-height:1.08;letter-spacing:-.035em}
.pg-page h1{font-size:clamp(3.1rem,6vw,6.25rem);margin-bottom:22px;font-weight:950}
.pg-page h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:700;color:var(--pg-pink)}
.pg-page h2{font-size:clamp(2rem,4vw,3.65rem);margin-bottom:22px}
.pg-page h3{font-size:1.28rem;margin-bottom:10px;letter-spacing:-.02em}
.pg-lede{font-size:clamp(1.08rem,1.8vw,1.32rem);line-height:1.68;color:#51364f;margin:0 0 26px;max-width:660px}
.pg-byline{margin:22px 0 0;font-size:.88rem;font-weight:750;color:var(--pg-muted)}
.pg-byline a{font-weight:900;text-underline-offset:3px}
.pg-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.pg-btn{
  display:inline-flex!important;align-items:center;justify-content:center;gap:12px;
  min-height:58px;padding:13px 24px;border:2px solid var(--pg-ink)!important;border-radius:999px!important;
  font-weight:900!important;text-decoration:none!important;line-height:1.1!important;
  box-shadow:7px 8px 0 var(--pg-ink);transition:transform .18s ease,box-shadow .18s ease;background:#fff!important;color:var(--pg-ink)!important;
}
.pg-btn:hover{transform:translate(3px,3px);box-shadow:4px 5px 0 var(--pg-ink)}
.pg-btn-primary{background:var(--pg-pink)!important;color:#fff!important}
.pg-btn span{font-size:1.2em;line-height:1}
.pg-hero-art{position:relative;transform:rotate(1.5deg);filter:drop-shadow(14px 18px 0 rgba(43,22,49,.11))}
.pg-hero-art:before{content:"";position:absolute;inset:-16px;border:16px solid #fff;border-radius:42px;z-index:2;pointer-events:none}
.pg-hero-art img{width:100%;height:480px;object-fit:cover;border-radius:28px;border:2px solid var(--pg-ink)}
.pg-mini-note{position:absolute;right:-10px;bottom:-24px;z-index:4;max-width:215px;background:#fff;border:2px solid var(--pg-ink);border-radius:22px;padding:14px 17px;box-shadow:6px 7px 0 var(--pg-pink);font-size:.83rem;font-weight:800;line-height:1.35;transform:rotate(-3deg)}
.pg-facts{background:#fff;border-bottom:2px solid var(--pg-ink)}
.pg-facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.pg-fact{padding:24px 25px;border-left:1px solid #ead8e7}
.pg-fact:last-child{border-right:1px solid #ead8e7}
.pg-fact small{display:block;margin-bottom:4px;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--pg-pink)}
.pg-fact strong{font-size:1.04rem}
.pg-section{padding:82px 0}
.pg-section-soft{background:linear-gradient(135deg,var(--pg-soft),#fff 55%,var(--pg-soft-2));border-top:1px solid #ecd9e8;border-bottom:1px solid #ecd9e8}
.pg-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.66fr);gap:45px;align-items:end;margin-bottom:40px}
.pg-eyebrow{margin:0 0 12px;color:var(--pg-pink);font-weight:900;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
.pg-section-head>p{margin:0;color:var(--pg-muted);font-size:1.06rem}
.pg-verdict{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:42px;align-items:stretch}
.pg-score-card{background:var(--pg-ink);color:#fff;border-radius:34px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:12px 13px 0 var(--pg-pink)}
.pg-score-card h2,.pg-score-card h3{color:#fff}
.pg-score-card .pg-stamp{width:132px;height:132px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:Georgia,serif;font-size:1.5rem;font-weight:700;line-height:1.02;transform:rotate(-7deg);background:var(--pg-deep)}
.pg-score-card p{color:#f5eaf6}
.pg-pros{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.pg-pro{background:#fff;border:2px solid var(--pg-ink);border-radius:24px;padding:24px;box-shadow:5px 6px 0 rgba(43,22,49,.12)}
.pg-pro .pg-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--pg-soft-2);font-size:1.25rem;margin-bottom:16px}
.pg-pro p{margin:0;color:var(--pg-muted);font-size:.94rem}
.pg-copy{font-size:1.04rem;color:#50394f}
.pg-copy p{margin:0 0 1.15em}
.pg-copy strong{color:var(--pg-ink)}
.pg-callout{margin:28px 0;padding:24px 27px;border:2px solid var(--pg-ink);border-radius:24px;background:var(--pg-soft);box-shadow:7px 8px 0 var(--pg-accent)}
.pg-callout p:last-child{margin-bottom:0}
.pg-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.pg-card{background:#fff;border:2px solid var(--pg-ink);border-radius:28px;padding:28px;box-shadow:8px 9px 0 rgba(43,22,49,.1)}
.pg-card p:last-child{margin-bottom:0}
.pg-card .pg-tag{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--pg-soft-2);color:var(--pg-deep);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:15px}
.pg-specs{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:2px solid var(--pg-ink);border-radius:25px;overflow:hidden;box-shadow:8px 9px 0 rgba(43,22,49,.1)}
.pg-specs th,.pg-specs td{text-align:left;padding:16px 18px;border-bottom:1px solid #e9dbe8;vertical-align:top}
.pg-specs tr:last-child th,.pg-specs tr:last-child td{border-bottom:0}
.pg-specs th{width:34%;background:var(--pg-soft);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.pg-specs td{font-weight:650}
.pg-source{font-size:.84rem;color:var(--pg-muted);margin-top:18px}
.pg-source a{text-underline-offset:3px}
.pg-comparison{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pg-option{position:relative;background:#fff;border:2px solid var(--pg-ink);border-radius:28px;padding:27px;min-height:100%;box-shadow:7px 8px 0 rgba(43,22,49,.12)}
.pg-option.pg-featured{background:linear-gradient(145deg,var(--pg-soft),#fff);box-shadow:8px 9px 0 var(--pg-pink)}
.pg-option .pg-option-top{font-weight:900;color:var(--pg-pink);font-size:.73rem;text-transform:uppercase;letter-spacing:.12em}
.pg-option p{color:var(--pg-muted);font-size:.94rem}
.pg-option .pg-btn{width:100%;min-height:50px;padding:12px 16px;margin-top:9px;box-shadow:4px 5px 0 var(--pg-ink);font-size:.91rem}
.pg-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pg-check{padding:22px 23px;border-left:5px solid var(--pg-pink);background:#fff;border-radius:0 20px 20px 0;box-shadow:0 8px 26px rgba(43,22,49,.08)}
.pg-check strong{display:block;margin-bottom:6px}.pg-check p{margin:0;color:var(--pg-muted);font-size:.91rem}
.pg-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.pg-review-theme{padding:27px;background:var(--pg-ink);color:#fff;border-radius:28px;position:relative;overflow:hidden}
.pg-review-theme:after{content:"“";position:absolute;right:18px;top:-20px;font-family:Georgia,serif;font-size:8rem;color:rgba(255,255,255,.08)}
.pg-review-theme h3{color:#fff}.pg-review-theme p{color:#f3eaf3;margin-bottom:0}
.pg-review-intro{max-width:760px;color:var(--pg-muted);margin:-16px 0 30px}
.pg-faq-list{display:grid;gap:14px}
.pg-faq-list details{background:#fff;border:2px solid var(--pg-ink);border-radius:22px;overflow:hidden;box-shadow:5px 6px 0 rgba(43,22,49,.09)}
.pg-faq-list summary{display:block!important;grid-template-columns:none!important;position:relative;width:100%!important;max-width:none!important;padding:22px 68px 22px 24px!important;cursor:pointer;font-weight:900;line-height:1.35;list-style:none;white-space:normal!important}
.pg-faq-list summary::-webkit-details-marker{display:none}
.pg-faq-list summary:after{content:"+";position:absolute;right:19px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--pg-pink);color:#fff;font-size:1.45rem;line-height:1}
.pg-faq-list details[open] summary:after{content:"−"}
.pg-faq-list .pg-answer{padding:0 24px 23px;color:var(--pg-muted)}
.pg-faq-list .pg-answer p{margin:0}
.pg-author{display:grid;grid-template-columns:92px 1fr auto;gap:22px;align-items:center;padding:26px;border:2px solid var(--pg-ink);border-radius:28px;background:#fff;box-shadow:8px 9px 0 var(--pg-accent)}
.pg-author-badge{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--pg-pink),var(--pg-accent));color:#fff;font-family:Georgia,serif;font-size:2rem;font-weight:700;border:4px solid #fff;outline:2px solid var(--pg-ink)}
.pg-author h3{margin-bottom:4px}.pg-author p{margin:0;color:var(--pg-muted);font-size:.93rem}
.pg-author a{font-weight:900}
.pg-final{padding:80px 0;background:var(--pg-ink);color:#fff;text-align:center}
.pg-final h2{color:#fff;max-width:800px;margin-inline:auto}.pg-final p{color:#ebddea;max-width:700px;margin:0 auto 28px}
.pg-final .pg-actions{justify-content:center}
.pg-final .pg-btn:not(.pg-btn-primary){background:#fff!important}
.pg-breadcrumbs{padding:14px 0;background:#fff;border-bottom:1px solid #eddfeb;font-size:.79rem;color:var(--pg-muted)}
.pg-breadcrumbs a{font-weight:800;text-decoration:none}
@media (max-width:980px){
  .pg-hero-grid,.pg-verdict,.pg-section-head{grid-template-columns:1fr}
  .pg-hero-art{margin-top:20px}.pg-hero-art img{height:420px}
  .pg-facts-grid{grid-template-columns:repeat(2,1fr)}
  .pg-comparison,.pg-checks{grid-template-columns:1fr}
  .pg-author{grid-template-columns:82px 1fr}.pg-author>a{grid-column:2}
}
@media (max-width:700px){
  .pg-wrap{width:min(100% - 24px,1180px)}
  .pg-hero{padding:48px 0 42px}
  .pg-hero-grid{gap:28px}.pg-page h1{font-size:clamp(2.65rem,14vw,4.2rem)}
  .pg-lede{font-size:1.03rem}.pg-actions{align-items:stretch}.pg-btn{width:100%}
  .pg-hero-art{transform:none;margin:15px 5px 18px}.pg-hero-art:before{inset:-9px;border-width:9px;border-radius:27px}.pg-hero-art img{height:310px;border-radius:20px}
  .pg-mini-note{position:relative;right:auto;bottom:auto;margin:-25px 14px 0 auto;max-width:210px}
  .pg-facts-grid{grid-template-columns:1fr 1fr}.pg-fact{padding:18px 15px}.pg-fact strong{font-size:.91rem}
  .pg-section{padding:58px 0}.pg-section-head{gap:5px;margin-bottom:28px}.pg-page h2{font-size:2.25rem}
  .pg-pros,.pg-grid-2,.pg-review-grid{grid-template-columns:1fr}.pg-score-card{padding:28px}.pg-score-card .pg-stamp{width:112px;height:112px;font-size:1.25rem}
  .pg-specs th,.pg-specs td{display:block;width:100%;padding:12px 15px}.pg-specs th{border-bottom:0;padding-bottom:3px}.pg-specs td{padding-top:3px}
  .pg-author{grid-template-columns:70px 1fr;padding:22px}.pg-author-badge{width:68px;height:68px;font-size:1.6rem}.pg-author>a{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){.pg-btn{transition:none}}
