/* Toy Hunt UK mascot + fun type layer (22 Oct 2026). Self-hosted fonts, no external CDN.
   Loaded after styles.css / legal.css on every page. */
@font-face{font-family:"Luckiest Guy";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/luckiest-guy-latin.woff2) format("woff2")}
@font-face{font-family:"Fredoka";font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/fredoka-var-latin.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-style:normal;font-weight:200 1000;font-display:swap;src:url(fonts/nunito-var-latin.woff2) format("woff2")}
:root{--th-pink:#f51b73;--th-red:#f51b36;--th-yel:#ffd52f;--th-ora:#ff9900;--th-navy:#10265b;--th-ink:#101936;--th-blue:#075db9;--th-cyan:#13c7e9;
--th-display:"Luckiest Guy","Fredoka","Arial Rounded MT Bold","Trebuchet MS",sans-serif;--th-round:"Fredoka","Nunito","Arial Rounded MT Bold",sans-serif;--th-body:"Nunito","Poppins",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}

/* ---------- shared bits ---------- */
.th-display{font-family:var(--th-display);font-weight:400;letter-spacing:.02em}
.th-bubble{position:relative;display:inline-block;background:#fff;color:var(--th-navy);font-family:var(--th-round);font-weight:700;font-size:16px;line-height:1.2;border:3px solid var(--th-navy);border-radius:20px;padding:10px 14px;box-shadow:0 4px 0 var(--th-navy);max-width:230px;text-align:center}
.th-bubble::after{content:"";position:absolute;width:18px;height:18px;background:#fff;border:3px solid var(--th-navy);border-top:0;border-left:0;transform:rotate(45deg);bottom:-11px;left:calc(50% - 9px)}
.th-bubble.tail-right::after{left:auto;right:22px}.th-bubble.tail-left::after{left:22px}
.th-bubble.tail-side::after{bottom:auto;top:calc(50% - 9px);left:auto;right:-11px;transform:rotate(-45deg)}
.th-mascot img{display:block;width:100%;height:auto}
.th-pop{animation:thPop .5s cubic-bezier(.2,1.4,.4,1) both}
@keyframes thPop{from{transform:scale(.85) translateY(10px);opacity:0}to{transform:none;opacity:1}}
@keyframes thBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.th-pop,.th-bob{animation:none!important}}
.th-confetti{background-image:radial-gradient(circle,#ffd52f 0 4px,transparent 5px),radial-gradient(circle,#13c7e9 0 3px,transparent 4px),radial-gradient(circle,#fff 0 3px,transparent 4px),radial-gradient(circle,#f51b73 0 3px,transparent 4px);background-size:93px 71px,121px 97px,67px 89px,141px 113px;background-position:7px 11px,53px 37px,31px 61px,89px 5px}

/* ---------- fun header + footer for legal.css pages ---------- */
.legal-head.th-head{position:relative;overflow:hidden;background-color:var(--th-navy);padding:14px 16px 16px;border-bottom:6px solid var(--th-yel);box-shadow:inset 0 -6px 0 var(--th-pink)}
.legal-head.th-head::before{content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;background-image:radial-gradient(circle,#ffd52f 0 3px,transparent 4px),radial-gradient(circle,#13c7e9 0 2px,transparent 3px),radial-gradient(circle,#f51b73 0 3px,transparent 4px);background-size:83px 61px,109px 77px,131px 97px;background-position:5px 9px,47px 29px,71px 3px}
.th-head-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.legal-brand.th-brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.th-brand img{width:56px;height:56px;border-radius:50%;flex:0 0 56px;filter:drop-shadow(0 3px 0 rgba(0,0,0,.25))}
.th-word{font-family:var(--th-display);font-weight:400;font-size:28px;line-height:1;letter-spacing:.03em;color:#fff;text-shadow:0 3px 0 #050f2b}
.th-word b{color:var(--th-pink);-webkit-text-stroke:1px #fff}.th-word strong{color:var(--th-yel)}.th-word em{font-style:normal;color:var(--th-cyan)}
.legal-back.th-back{margin:0;display:inline-block;background:var(--th-yel);color:var(--th-navy);font-family:var(--th-round);font-weight:700;font-size:15px;text-decoration:none;border-radius:999px;padding:8px 14px;box-shadow:0 3px 0 #b88f00}
.legal-back.th-back:hover{background:#fff}
.legal-footer .th-foot-badge{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-family:var(--th-round);font-weight:700;font-size:15px;color:var(--th-navy)}
.th-foot-badge img{width:52px;height:52px;border-radius:50%;flex:0 0 52px}
.th-foot-badge span{background:#fff;border:2px solid var(--th-navy);border-radius:14px;padding:5px 10px;position:relative}
@media(max-width:480px){.legal-head.th-head{padding:10px 12px 14px}.th-head-inner{flex-wrap:nowrap;gap:8px}.th-word{font-size:20px}.th-brand{gap:7px!important}.th-brand img{width:42px;height:42px;flex-basis:42px}.legal-back.th-back{font-size:12px;padding:6px 10px;white-space:nowrap;letter-spacing:-.1px}}
@media(max-width:360px){.th-word{font-size:17px}.legal-back.th-back{font-size:11px;padding:6px 8px}}

/* ---------- fun pages (about, competition, 404): body type ---------- */
body.th-fun{font-family:var(--th-body)}
body.th-fun .legal-card h1,body.th-fun .legal-card h2{font-family:var(--th-display);font-weight:400;letter-spacing:.02em;color:var(--th-navy)}
body.th-fun .legal-card h2{font-size:27px;line-height:1.1}
body.th-fun .legal-card h3{font-family:var(--th-round);font-weight:700}

/* ---------- about page intro ---------- */
.th-about-intro{display:grid;grid-template-columns:1fr 170px;gap:14px;align-items:end;margin:-6px 0 6px}
.th-about-intro h1{margin:0 0 8px!important;font-size:44px!important}
.th-about-intro .th-mascot{position:relative;width:170px;justify-self:end}
.th-about-intro .th-bubble{position:absolute;right:120px;top:-8px;width:170px;font-size:14px}
@media(max-width:560px){.th-about-intro{grid-template-columns:1fr 112px}.th-about-intro h1{font-size:34px!important}.th-about-intro .th-mascot{width:112px}.th-about-intro .th-bubble{display:none}}

/* ---------- homepage ---------- */
body.th-home{font-family:var(--th-body)}
.th-home .hero h1,.th-home .section-title h2,.th-home .hunter-strip h2,.th-home .comparison-head h2,.th-home .social-products-heading h2,.th-home .comp-banner-card h2{font-family:var(--th-display);font-weight:400;letter-spacing:.02em}
.th-home .product-card h3,.th-home .social-product-body h3,.th-home .nav span,.th-home .eyebrow,.th-home .section-kicker{font-family:var(--th-round);font-weight:700}
.th-home .hero h1{font-size:60px;line-height:.98;text-shadow:0 5px 0 #12356e}
.th-home .header{border-top:6px solid var(--th-pink);box-shadow:0 5px 24px #10265b18,inset 0 6px 0 var(--th-yel)}
.th-home .hero{position:relative}
.th-home .hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;background:repeating-conic-gradient(from 0deg at 78% 55%,rgba(255,255,255,.16) 0 7.5deg,transparent 7.5deg 15deg)}
.th-home .hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;background-image:radial-gradient(circle,#ffd52f 0 4px,transparent 5px),radial-gradient(circle,#fff 0 3px,transparent 4px),radial-gradient(circle,#f51b73 0 4px,transparent 5px);background-size:97px 79px,131px 101px,151px 119px;background-position:9px 13px,61px 41px,23px 67px}
.th-home .hero-inner{position:relative;z-index:1}
.th-hero-mascot{position:relative;justify-self:end;align-self:end;width:min(470px,100%);margin-top:26px}
.th-hero-mascot picture img{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 14px rgba(8,47,91,.35))}
.th-hero-mascot .th-bubble{position:absolute;left:-6%;top:-14px;font-size:18px;max-width:240px;transform:rotate(-3deg)}
.th-hero-mascot .hunter-badge{position:absolute;right:6px;bottom:18px}
.th-hero-mascot .th-bubble{z-index:2}
.th-home .comp-banner-card .cb-ico{display:block;width:clamp(64px,13vw,104px);font-size:0;margin:-14px 0 -22px}
.th-home .comp-banner-card .cb-ico img{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 4px rgba(16,38,91,.3))}
@media(max-width:1050px){.th-hero-mascot{justify-self:center}}
@media(max-width:650px){.th-home .hero h1{font-size:36px}.th-hero-mascot{width:min(340px,92%);margin-top:30px}.th-hero-mascot .th-bubble{font-size:15px;left:-2%;top:-26px;max-width:190px}}

.th-head-word{display:none;text-decoration:none;line-height:1}
.th-head-word .th-word{font-size:24px;color:var(--th-navy);text-shadow:0 2px 0 #fff,0 3px 0 rgba(16,38,91,.25)}
.th-head-word .th-word b{-webkit-text-stroke:0}.th-head-word .th-word strong{color:#f5b800;-webkit-text-stroke:1px var(--th-navy)}.th-head-word .th-word em{color:#0aa6c9}
.th-head-word small{display:block;margin-top:4px;font-family:var(--th-round);font-weight:600;font-size:10.5px;color:var(--th-navy)}
@media(max-width:650px){.th-head-word{display:block;flex:1 1 0;min-width:0}.th-head-word .th-word{font-size:21px;white-space:nowrap}.th-head-word small{font-size:10px}}
@media(max-width:360px){.th-head-word .th-word{font-size:19px}.th-head-word small{font-size:9px}}

/* ---------- site footer badge (index + guides) ---------- */
.footer-brand.th-footer-brand{width:auto;min-width:0;display:flex;align-items:center;gap:10px}
.footer-brand.th-footer-brand>img{width:86px;height:86px}
.th-footer-brand .th-foot-avatar{width:58px;height:58px;border-radius:50%;flex:0 0 58px}
.th-footer-brand .th-foot-say{font-family:var(--th-round);font-weight:700;font-size:14px;color:var(--th-navy);background:#fff;border:2px solid var(--th-navy);border-radius:14px;padding:5px 10px;white-space:nowrap}

/* ---------- gift guide headers ---------- */
body.th-guide{font-family:var(--th-body)}
.th-guide .header{border-top:6px solid var(--th-pink);box-shadow:0 5px 24px #10265b18,inset 0 6px 0 var(--th-yel)}
.th-guide .nav span{font-family:var(--th-round);font-weight:700}
.guide-head.th-guide-head{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff3b0,#ffe0ef 60%,#d9f3ff);border:3px solid var(--th-navy);border-radius:24px;padding:18px 18px 16px;box-shadow:0 6px 0 var(--th-navy);margin-bottom:18px}
.th-guide-head::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;-webkit-mask-image:linear-gradient(#000,transparent 170px);mask-image:linear-gradient(#000,transparent 170px);background-image:radial-gradient(circle,#f51b73 0 3px,transparent 4px),radial-gradient(circle,#13c7e9 0 3px,transparent 4px),radial-gradient(circle,#ffd52f 0 4px,transparent 5px);background-size:89px 67px,113px 91px,137px 103px;background-position:11px 7px,57px 33px,29px 59px}
.th-guide-head>*{position:relative}
.th-guide-top{display:grid;grid-template-columns:1fr 190px;gap:10px;align-items:end}
.th-guide-head h1{font-family:var(--th-display)!important;font-weight:400;letter-spacing:.02em!important;font-size:44px!important;line-height:1!important;color:var(--th-navy);text-shadow:0 3px 0 #fff}
.th-guide-head .eyebrow{font-family:var(--th-round);font-weight:700}
.th-guide-mascot{position:relative;width:190px;justify-self:end;margin:-6px -6px -4px 0}
.th-guide-mascot .th-bubble{position:absolute;right:150px;top:4px;width:200px;font-size:15px;transform:rotate(-2deg);z-index:2}
.th-guide-mascot picture img{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 6px rgba(16,38,91,.25))}
.guide-body h2{font-family:var(--th-round);font-weight:700}
.guide-more h2,.guide-tips h2{font-family:var(--th-display);font-weight:400;letter-spacing:.02em}
@media(max-width:650px){
 .guide-head.th-guide-head{padding:12px 14px 14px}
 .th-guide-top{display:flex;flex-direction:column-reverse;gap:2px}
 .th-guide-head h1{font-size:34px!important}
 .th-guide-mascot{display:flex;align-items:center;justify-content:flex-end;gap:12px;width:auto;margin:0 -6px 0 0}
 .th-guide-mascot picture{flex:0 0 112px;width:112px}
 .th-guide-mascot.pose-ai-peeking picture{flex-basis:130px;width:130px}
 .th-guide-mascot.pose-ai-cheering-gift picture{flex-basis:92px;width:92px}
 .th-guide-mascot .th-bubble{position:static;width:auto;max-width:200px;font-size:14px;padding:8px 11px;border-radius:16px;transform:rotate(-2deg)}
 .th-guide-mascot .th-bubble::after{bottom:auto;top:calc(50% - 8px);left:auto;right:-10px;width:15px;height:15px;transform:rotate(-45deg)}
}

/* ---------- homepage gift guides: bold toy-shop restyle (22 Oct 2026, v2) ---------- */
.th-home .gg-section{--gg-ink:#10265b;position:relative}
.th-home .gg-title{position:relative;align-items:flex-end;justify-content:space-between;margin-bottom:0;padding-right:190px;min-height:150px}
.th-home .gg-title h2{font-size:clamp(32px,4.4vw,50px);line-height:1;color:var(--gg-ink);letter-spacing:.02em;text-shadow:3px 3px 0 #ffd52f,5px 5px 0 var(--gg-ink)}
.th-home .gg-title p{display:inline-block;margin:12px 0 18px;font-family:var(--th-round);font-weight:700;font-size:17px;line-height:1.3;color:var(--gg-ink);background:#fff;border:3px solid var(--gg-ink);border-radius:999px;padding:6px 14px;box-shadow:3px 3px 0 var(--gg-ink)}
.th-home .gg-peek{position:absolute;right:28px;bottom:-7px;width:190px;z-index:3;pointer-events:none}
.th-home .gg-peek img{display:block;width:100%;height:auto;filter:drop-shadow(0 -2px 0 rgba(16,38,91,.15))}

/* NeeDoh mega-banner */
.th-home .nd-mega{position:relative;z-index:1;display:grid;grid-template-columns:minmax(200px,26%) 1fr;align-items:end;gap:10px 22px;min-height:300px;padding:24px 34px 0 14px;margin:0 0 30px;border:5px solid var(--gg-ink);border-radius:30px;color:var(--gg-ink);text-decoration:none;background:linear-gradient(115deg,#ff1f8e 0%,#ff4f6a 30%,#ff8a1f 62%,#ffd52f 100%);box-shadow:9px 10px 0 var(--gg-ink);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;-webkit-tap-highlight-color:transparent}
.th-home .nd-mega::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-conic-gradient(from 0deg at 16% 100%,rgba(255,255,255,.16) 0 6deg,transparent 6deg 12deg)}
.th-home .nd-mega::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;background-image:radial-gradient(circle,#fff 0 4px,transparent 5px),radial-gradient(circle,#13c7e9 0 4px,transparent 5px),radial-gradient(circle,#ffd52f 0 3px,transparent 4px);background-size:97px 83px,139px 113px,71px 59px;background-position:41px 17px,11px 61px,63px 29px}
.th-home .nd-mega>*{position:relative;z-index:1}
.th-home .nd-mascot{align-self:end;width:100%;max-width:275px;justify-self:center}
.th-home .nd-mascot img{display:block;width:100%;height:auto;filter:drop-shadow(4px 0 0 rgba(16,38,91,.35))}
.th-home .nd-copy{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:30px;min-width:0}
.th-home .nd-tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:12px}
.th-home .nd-badge{display:inline-block;font-family:var(--th-display);font-size:20px;letter-spacing:.04em;line-height:1;color:#fff;background:#f51b36;border:4px solid var(--gg-ink);border-radius:14px;padding:9px 14px 6px;box-shadow:4px 4px 0 var(--gg-ink);transform:rotate(-6deg);animation:ndWiggle 2.6s ease-in-out infinite}
.th-home .nd-kicker{font-family:var(--th-round);font-weight:700;font-size:15px;color:var(--gg-ink);background:rgba(255,255,255,.88);border:3px solid var(--gg-ink);border-radius:999px;padding:4px 12px}
.th-home .nd-head{margin:0;font-family:var(--th-display);font-weight:400;font-size:clamp(40px,5.2vw,58px);line-height:.98;letter-spacing:.02em;color:#fff;-webkit-text-stroke:2px var(--gg-ink);paint-order:stroke fill;text-shadow:0 5px 0 var(--gg-ink)}
.th-home .nd-sub{margin:12px 0 18px;font-family:var(--th-round);font-weight:700;font-size:clamp(18px,2vw,23px);line-height:1.25;color:var(--gg-ink)}
.th-home .nd-btn{display:inline-block;font-family:var(--th-display);font-size:clamp(22px,2.4vw,28px);letter-spacing:.04em;line-height:1;color:var(--gg-ink);background:#fff;border:4px solid var(--gg-ink);border-radius:999px;padding:15px 28px 11px;box-shadow:0 7px 0 var(--gg-ink);transition:transform .15s ease,box-shadow .15s ease,background .15s ease;animation:ndPulse 2.2s ease-in-out infinite}
@media (hover:hover){.th-home .nd-mega:hover{transform:translate(-2px,-4px);box-shadow:11px 14px 0 var(--gg-ink)}.th-home .nd-mega:hover .nd-btn{background:#ffd52f}}
.th-home .nd-mega:active{transform:translate(4px,5px);box-shadow:4px 4px 0 var(--gg-ink)}
.th-home .nd-mega:focus-visible{outline:4px solid #13c7e9;outline-offset:4px}
@keyframes ndWiggle{0%,70%,100%{transform:rotate(-6deg)}76%{transform:rotate(3deg) scale(1.06)}82%{transform:rotate(-10deg) scale(1.06)}88%{transform:rotate(-2deg)}94%{transform:rotate(-7deg)}}
@keyframes ndPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}

/* guide cards */
.th-home .gift-guides{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px}
.th-home .gift-guides a{--bg:#fff;--dot:#fff;position:relative;grid-column:span 2;display:flex;flex-direction:column;align-items:flex-start;min-height:0;padding:20px 20px 22px;background:var(--bg);border:4px solid var(--gg-ink);border-radius:24px;box-shadow:6px 7px 0 var(--gg-ink);color:var(--gg-ink);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease;-webkit-tap-highlight-color:transparent}
.th-home .gift-guides a.gg-featured{grid-column:span 3;background:var(--bg);border-color:var(--gg-ink)}
.th-home .gift-guides a.gg-bf,.th-home .gift-guides a.gg-trend{grid-column:span 3}
.th-home .gift-guides .gg-ico{display:grid;place-items:center;flex:0 0 auto;width:76px;height:76px;border-radius:50%;background:var(--dot);border:4px solid var(--gg-ink);box-shadow:3px 3px 0 var(--gg-ink);font-size:44px;line-height:1;margin-bottom:12px}
.th-home .gift-guides b{display:block;margin:0;font-family:var(--th-round);font-weight:700;font-size:24px;line-height:1.1;color:var(--gg-ink)}
.th-home .gift-guides a.gg-featured b,.th-home .gift-guides a.gg-bf b{font-family:var(--th-display);font-weight:400;font-size:30px;letter-spacing:.02em;line-height:1.02}
.th-home .gift-guides small{display:block;margin-top:8px;font-family:var(--th-body);font-weight:700;font-size:16px;line-height:1.4;color:var(--gg-ink)}
.th-home .gift-guides b em{position:absolute;top:-14px;right:16px;margin:0;font-family:var(--th-display);font-style:normal;font-weight:400;font-size:17px;letter-spacing:.06em;line-height:1;color:#fff;background:#f51b36;border:3px solid var(--gg-ink);border-radius:10px;padding:7px 10px 4px;box-shadow:3px 3px 0 var(--gg-ink);transform:rotate(7deg);vertical-align:baseline}
@media (hover:hover){.th-home .gift-guides a:hover{transform:translate(-2px,-5px) rotate(-.6deg);box-shadow:9px 12px 0 var(--gg-ink)}}
.th-home .gift-guides a:active{transform:translate(3px,4px);box-shadow:2px 3px 0 var(--gg-ink)}
.th-home .gift-guides a:focus-visible{outline:4px solid #13c7e9;outline-offset:3px}
.th-home .gift-guides a.gg-c1{--bg:#ff9fd0;--dot:#fff1f8}
.th-home .gift-guides a.gg-c2{--bg:#ffd52f;--dot:#fff6c9}
.th-home .gift-guides a.gg-c3{--bg:#5fd8f5;--dot:#e4f9ff}
.th-home .gift-guides a.gg-c4{--bg:#bea8ff;--dot:#f2edff}
.th-home .gift-guides a.gg-c5{--bg:#8ee66d;--dot:#eaffe0}
.th-home .gift-guides a.gg-c6{--bg:#ffb15c;--dot:#fff0de}
/* featured pair: wide, icon on the left */
.th-home .gift-guides a.gg-trend,.th-home .gift-guides a.gg-bf{display:grid;grid-template-columns:100px 1fr;grid-template-rows:auto auto;column-gap:20px;align-content:center;align-items:end;padding:24px 24px 24px 22px;min-height:170px}
.th-home .gift-guides a.gg-trend .gg-ico,.th-home .gift-guides a.gg-bf .gg-ico{grid-row:1/3;align-self:center;width:100px;height:100px;font-size:58px;margin:0}
.th-home .gift-guides a.gg-trend small,.th-home .gift-guides a.gg-bf small{align-self:start}
/* Trending: fiery orange */
.th-home .gift-guides a.gg-trend{--bg:linear-gradient(135deg,#ff3d1f 0%,#ff7a00 55%,#ffb000 100%);--dot:#ffd52f;background:var(--bg)}
.th-home .gift-guides a.gg-trend b{color:#fff;-webkit-text-stroke:1.5px var(--gg-ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--gg-ink)}
.th-home .gift-guides a.gg-trend small{color:#101936}
/* Black Friday: black + yellow */
.th-home .gift-guides a.gg-bf{--bg:#111;--dot:#ffd52f;background:#111 repeating-linear-gradient(-45deg,transparent 0 22px,rgba(255,213,47,.07) 22px 44px);border-color:#111;box-shadow:6px 7px 0 #ffd52f,6px 7px 0 4px #111}
.th-home .gift-guides a.gg-bf b{color:#ffd52f}
.th-home .gift-guides a.gg-bf small{color:#fff}
.th-home .gift-guides a.gg-bf b em{background:#ffd52f;color:#111;border-color:#111}
@media (hover:hover){.th-home .gift-guides a.gg-bf:hover{box-shadow:9px 12px 0 #ffd52f,9px 12px 0 4px #111}}
.th-home .gift-guides a.gg-bf:active{box-shadow:2px 3px 0 #ffd52f,2px 3px 0 4px #111}

/* tablet portrait / small laptop */
@media (max-width:900px){
 .th-home .gift-guides{gap:20px}
 .th-home .gift-guides a,.th-home .gift-guides a.gg-featured,.th-home .gift-guides a.gg-bf,.th-home .gift-guides a.gg-trend{grid-column:span 3}
 .th-home .gift-guides a:last-child{grid-column:1/-1}
 .th-home .gift-guides a.gg-trend,.th-home .gift-guides a.gg-bf{grid-template-columns:72px 1fr;column-gap:14px;padding:20px 18px 20px 16px}
 .th-home .gift-guides a.gg-trend .gg-ico,.th-home .gift-guides a.gg-bf .gg-ico{width:72px;height:72px;font-size:40px}
 .th-home .gift-guides a.gg-featured b,.th-home .gift-guides a.gg-bf b{font-size:26px}
 .th-home .nd-mega{grid-template-columns:200px 1fr;padding-right:24px}
}
/* phones: horizontal list cards */
@media (max-width:600px){
 .th-home .gg-title{padding-right:118px;min-height:118px}
 .th-home .gg-title h2{font-size:32px;text-shadow:2px 2px 0 #ffd52f,4px 4px 0 var(--gg-ink)}
 .th-home .gg-title p{font-size:15px;border-radius:16px;padding:6px 11px;margin:10px 0 14px}
 .th-home .gg-peek{width:124px;right:4px;bottom:-5px}
 .th-home .nd-mega{grid-template-columns:118px 1fr;grid-template-areas:"tags tags" "head head" "mascot sub" "mascot btn";align-items:start;gap:0 10px;min-height:0;padding:18px 14px 0 6px;border-width:4px;border-radius:24px;box-shadow:6px 7px 0 var(--gg-ink);margin-bottom:26px}
 .th-home .nd-mega::before{background:repeating-conic-gradient(from 0deg at 18% 100%,rgba(255,255,255,.16) 0 7deg,transparent 7deg 14deg)}
 .th-home .nd-copy{display:contents}
 .th-home .nd-tags{grid-area:tags;margin:0 0 10px 8px;gap:8px}
 .th-home .nd-badge{font-size:16px;padding:7px 10px 5px;border-width:3px;box-shadow:3px 3px 0 var(--gg-ink)}
 .th-home .nd-kicker{font-size:13px;padding:3px 9px}
 .th-home .nd-head{grid-area:head;margin-left:8px;font-size:34px;-webkit-text-stroke:1.5px var(--gg-ink);text-shadow:0 4px 0 var(--gg-ink)}
 .th-home .nd-mascot{grid-area:mascot;align-self:end;max-width:none;margin-top:4px}
 .th-home .nd-sub{grid-area:sub;align-self:end;margin:12px 0 12px;font-size:17px}
 .th-home .nd-btn{grid-area:btn;align-self:start;justify-self:stretch;text-align:center;white-space:nowrap;font-size:18px;padding:13px 6px 9px;margin-bottom:22px;box-shadow:0 6px 0 var(--gg-ink)}
 .th-home .gift-guides{grid-template-columns:1fr;gap:18px}
 .th-home .gift-guides a,.th-home .gift-guides a.gg-featured,.th-home .gift-guides a.gg-bf,.th-home .gift-guides a.gg-trend,.th-home .gift-guides a:last-child{grid-column:auto;display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto 1fr;column-gap:14px;align-items:start;padding:16px 16px 16px 14px;border-radius:20px;box-shadow:5px 6px 0 var(--gg-ink)}
 .th-home .gift-guides a.gg-bf{box-shadow:5px 6px 0 #ffd52f,5px 6px 0 4px #111}
 .th-home .gift-guides .gg-ico,.th-home .gift-guides a.gg-trend .gg-ico,.th-home .gift-guides a.gg-bf .gg-ico{grid-row:1/3;align-self:start;width:64px;height:64px;font-size:36px;border-width:3px;margin:0}
 .th-home .gift-guides a.gg-trend,.th-home .gift-guides a.gg-bf{min-height:0;align-items:start}
 .th-home .gift-guides b{font-size:21px;padding-right:6px}
 .th-home .gift-guides a.gg-featured b,.th-home .gift-guides a.gg-bf b{font-size:24px}
 .th-home .gift-guides small{font-size:15px;margin-top:5px}
 .th-home .gift-guides b em{top:-13px;right:12px;font-size:15px;padding:6px 8px 3px}
}
@media (max-width:370px){.th-home .nd-head{font-size:30px}.th-home .nd-mega{grid-template-columns:96px 1fr}.th-home .nd-btn{font-size:16px}}

/* slim NeeDoh strip under the competition banner */
.th-home .nd-strip-wrap{margin:12px auto}
.th-home .nd-strip{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 8px;border:3px solid var(--gg-ink);border-radius:999px;background:linear-gradient(100deg,#ff1f8e,#ff8a1f 70%,#ffd52f);color:var(--gg-ink);text-decoration:none;box-shadow:4px 4px 0 var(--gg-ink);transition:transform .15s ease,box-shadow .15s ease}
.th-home .nd-strip-hot{flex:0 0 auto;font-family:var(--th-display);font-size:16px;letter-spacing:.04em;line-height:1;color:#fff;background:#f51b36;border:3px solid var(--gg-ink);border-radius:999px;padding:6px 10px 3px}
.th-home .nd-strip-txt{flex:1 1 auto;min-width:0;font-family:var(--th-round);font-weight:700;font-size:16px;line-height:1.2;color:var(--gg-ink)}
.th-home .nd-strip-txt b{font-family:var(--th-display);font-weight:400;font-size:19px;letter-spacing:.03em;color:#fff;-webkit-text-stroke:1px var(--gg-ink);paint-order:stroke fill;text-shadow:0 2px 0 var(--gg-ink);margin-right:4px}
.th-home .nd-strip-go{flex:0 0 auto;font-family:var(--th-display);font-size:16px;letter-spacing:.04em;line-height:1;background:#fff;border:3px solid var(--gg-ink);border-radius:999px;padding:8px 14px 5px}
@media (hover:hover){.th-home .nd-strip:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--gg-ink)}}
.th-home .nd-strip:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--gg-ink)}
@media (max-width:760px){.th-home .nd-strip-txt>span{display:none}}
@media (max-width:420px){.th-home .nd-strip{gap:8px}.th-home .nd-strip-txt b{font-size:15px}.th-home .nd-strip-hot{font-size:13px;padding:5px 7px 2px}.th-home .nd-strip-go{font-size:13px;padding:7px 9px 4px}}

@media (prefers-reduced-motion:reduce){
 .th-home .nd-badge,.th-home .nd-btn{animation:none!important}
 .th-home .nd-mega,.th-home .nd-btn,.th-home .gift-guides a,.th-home .nd-strip{transition:none!important}
 .th-home .nd-mega:hover,.th-home .gift-guides a:hover,.th-home .nd-strip:hover{transform:none!important}
}

/* ---------- magnifier mascot: search empty state, My Hunt, hunting labels (22 Oct 2026) ---------- */
.empty-hunt .empty-hunt-mascot{display:block;height:170px;margin:0 auto 4px;animation:thBob 3.2s ease-in-out infinite;-webkit-mask-image:linear-gradient(#000 84%,transparent);mask-image:linear-gradient(#000 84%,transparent)}
.empty-hunt .empty-hunt-mascot img{display:block;height:100%;width:auto}
.empty-hunt .empty-hunt-title{font-family:var(--th-display);font-weight:400;font-size:32px;line-height:1.05;letter-spacing:.03em;color:var(--th-navy);text-shadow:0 3px 0 var(--th-yel);margin-top:2px;text-wrap:balance}
.empty-hunt>span{font-family:var(--th-round);font-weight:600;font-size:16px;color:#4b5876}
.th-hunt-ico{display:inline-block;width:1.9em;height:1.9em;margin:-.3em .4em -.3em 0;vertical-align:middle;border-radius:50%;background:#fff;border:2px solid var(--th-navy);object-fit:cover}
.hunt-progress[hidden]{display:none!important} /* styles.css display:flex was overriding [hidden], so the loading bar showed while idle */
.hunt-progress .th-hunt-ico{animation:thBob 1.2s ease-in-out infinite}
.headlinks .th-myhunt-ico{display:block;width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid var(--th-navy);object-fit:cover;box-shadow:0 2px 0 var(--th-navy)}
.modal-icon .modal-mascot{display:block;height:130px;margin:0 auto}
.modal-icon .modal-mascot img{display:block;height:100%;width:auto;margin:0 auto}
.tab-ico.tab-ico-img{overflow:hidden;padding:0}
.tab-ico.tab-ico-img img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:650px){.empty-hunt{padding:24px 10px}.empty-hunt .empty-hunt-mascot{height:145px}.empty-hunt .empty-hunt-title{font-size:24px}.empty-hunt>span{font-size:15px}.headlinks .th-myhunt-ico{width:28px;height:28px}}
@media (prefers-reduced-motion:reduce){.empty-hunt .empty-hunt-mascot,.hunt-progress .th-hunt-ico{animation:none!important}}

/* 20261022comply1: visible "Ad" label on every affiliate link (CAP Code 2.1/2.3, ASA affiliate guidance) */
.th-ad{display:inline-block;vertical-align:middle;margin:0 .35em .1em 0;padding:1px 6px;border-radius:6px;background:#10265b;color:#fff;font:800 10px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;text-shadow:none;white-space:nowrap}
.hunt-btn .th-ad,.social-buy .th-ad,.nd-btn .th-ad,.bf-buy .th-ad,.guide-buy .th-ad{background:#fff;color:#10265b}
.retailer-logo-card{position:relative}
.th-ad.th-ad-corner{position:absolute;top:4px;right:4px;margin:0;font-size:9px;z-index:2}
.affiliate-notice .th-ad,.legal-card .th-ad,.guide-disclosure .th-ad,.affiliate-inline .th-ad{margin:0 .15em .1em}
.th-independent{font-size:10px;color:#68748d;margin-top:4px}
