/*
Theme Name: Thriftian
Theme URI: https://thriftian.com/
Author: Nimra Suhaib
Description: White, turquoise and navy US coupon site: a typographic hero with orbiting photo cut-outs, four-way top deals, an aisle mosaic, a scrolling code feed, popular stores with counts, a tide chart of discount depth by aisle and a seven-day ending calendar. Custom theme, no page builder.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: thriftian
*/
/* ===== base layer: shared components. Variables and homepage come from the site layer below. ===== */
:root{--wrap:1200px;--pad:24px;--r:16px;--sh:0 10px 28px rgba(15,23,42,.08);--sh2:0 18px 40px rgba(15,23,42,.14)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body),"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.search{display:block;height:auto;padding:0;border:0;border-radius:0}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-d);text-decoration:none}a:hover{color:var(--accent)}
h1,h2,h3,h4{margin:0;font-family:var(--font-display),var(--font-body),sans-serif;font-weight:800;letter-spacing:-.02em;line-height:1.12}
h1{font-size:clamp(30px,4vw,44px)}h2{font-size:clamp(24px,2.6vw,32px)}h3{font-size:18px}
p{margin:0 0 1em}button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:8px 14px;z-index:99}.skip:focus{left:8px}
.wrap{width:min(var(--wrap),100% - 2*var(--pad));margin-inline:auto}
.hide{display:none!important}
.kick{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-d)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:15px;transition:transform .2s,box-shadow .2s}
.btn:hover{color:#fff;transform:translateY(-2px);box-shadow:var(--sh)}.btn.dark{background:var(--ink)}
/* ticker */
.ticker{background:var(--accent);color:#fff;height:40px;overflow:hidden;display:flex;align-items:center;font-size:13px;font-weight:600}
.ticker .lab{flex:0 0 auto;padding:0 18px;height:40px;display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.14);white-space:nowrap}
.ticker .run{flex:1;min-width:0;overflow:hidden}.ticker .row{display:flex;width:max-content;animation:tk 60s linear infinite}
.ticker .row span{display:flex}.ticker a{color:#fff;padding:0 22px;white-space:nowrap;display:flex;align-items:center;gap:8px}
.ticker a::before{content:"";width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.7)}
@keyframes tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker .row{animation:none}}
/* header */
.site-head{background:var(--head-bg,#fff);border-bottom:1px solid var(--line);position:relative;z-index:20}
.hrow{display:flex;align-items:center;gap:22px;min-height:72px}
.logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:800;font-size:24px;letter-spacing:-.03em;color:var(--ink)}
.logo .mark{width:34px;height:34px;border-radius:10px;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center}
.logo .wm b{color:var(--accent)}
.hsearch{flex:1;display:flex;align-items:center;gap:10px;height:46px;padding:0 6px 0 16px;border:2px solid var(--accent);border-radius:999px;background:#fff;color:var(--mute)}
.hsearch input{flex:1;border:0;background:transparent;font:inherit;font-size:15px;color:var(--ink);outline:none;min-width:0}
.hsearch button{height:34px;padding:0 16px;border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:14px}
.hnav{display:flex;gap:18px;font-weight:600;font-size:15px}.hnav a{color:var(--ink)}.hnav a:hover{color:var(--accent-d)}
.cta{padding:11px 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:14px;white-space:nowrap}.cta:hover{color:#fff;background:var(--accent-d)}
.burger{display:none;border:1.5px solid var(--line);background:#fff;border-radius:10px;width:44px;height:44px;align-items:center;justify-content:center}
.catstrip{border-top:1px solid var(--line);font-size:14px;font-weight:600}
.catstrip .wrap{display:flex;gap:22px;height:44px;align-items:center;overflow-x:auto;scrollbar-width:none}.catstrip .wrap::-webkit-scrollbar{display:none}
.catstrip a{color:var(--ink);white-space:nowrap}.catstrip .all{margin-left:auto;color:var(--accent-d);display:inline-flex;align-items:center;gap:6px}
.mnav{display:none;border-top:1px solid var(--line);background:#fff;padding:14px 0}
.mnav .wrap{display:flex;flex-wrap:wrap;gap:10px}
.mnav form{display:flex;width:100%;gap:8px}.mnav input{flex:1;height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font:inherit}.mnav button{width:44px;border:0;border-radius:10px;background:var(--accent);color:#fff}
.mnav a{padding:8px 12px;border-radius:999px;background:var(--bg2);font-weight:600;font-size:14px;color:var(--ink)}.mnav a.c{background:transparent;border:1px solid var(--line)}
body.nav-open .mnav{display:block}
@media (max-width:1080px){.hnav,.cta,.hsearch{display:none}.burger{display:inline-flex}.hrow{justify-content:space-between}.catstrip{display:none}}
.hchips{display:none;gap:8px;flex-wrap:nowrap;overflow:hidden}.hchips a{padding:8px 14px;border-radius:999px;background:var(--bg2);font-weight:700;font-size:13px;color:var(--ink);white-space:nowrap}.hchips a:first-child{background:var(--accent);color:#fff}
.ubar{background:var(--ink);color:#fff;font-size:13px}.ubar .wrap{display:flex;align-items:center;gap:16px;height:44px}.ubar .ticker{flex:1;min-width:0;height:44px;background:transparent}.ubar .ticker .lab{background:transparent;color:var(--accent-l,#8FB0FF);padding-left:0}
.usearch{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border-radius:999px;padding:0 4px 0 12px;height:32px;width:360px;color:rgba(255,255,255,.7)}.usearch input{flex:1;border:0;background:transparent;color:#fff;font:inherit;font-size:13px;outline:none;min-width:0}.usearch button{border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:12px;height:24px;padding:0 12px}.ubar .ul{color:#fff;font-weight:600;white-space:nowrap}
@media (max-width:1080px){.usearch,.ubar .ul{display:none}.hchips{display:none!important}}
/* disclosure bar */
.th-disc{background:var(--bg2);border-bottom:1px solid var(--line);font-size:13px;color:var(--mute);padding:9px 0}
.th-disc strong{color:var(--ink)}.th-disc a{font-weight:700;text-decoration:underline;text-underline-offset:2px}
.th-inline{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:12px 16px;font-size:14px;color:var(--mute);margin:0 0 18px}
.th-inline strong{color:var(--ink)}
/* sections */
.sec{padding:44px 0}
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.shead p{margin:6px 0 0;color:var(--mute);font-size:15px}.shead .more{font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.phead{padding:44px 0 20px}.phead .lede{color:var(--mute);font-size:17px;max-width:720px;margin:10px 0 18px}
.crumbs{font-size:13px;color:var(--mute);padding:16px 0 0}.crumbs a{color:var(--mute)}.crumbs span{color:var(--ink);font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chips a{padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font-weight:600;font-size:14px;color:var(--ink)}.chips a.on,.chips a:hover{background:var(--ink);border-color:var(--ink);color:#fff}.chips a b{margin-left:6px;font-weight:700;opacity:.7}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;border-bottom:2px solid var(--line)}
.tb{border:0;background:transparent;padding:12px 16px;font-weight:700;font-size:15px;color:var(--mute);border-bottom:3px solid transparent;margin-bottom:-2px}.tb.on{color:var(--ink);border-color:var(--accent)}.tb b{margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--bg2);font-size:12px}
.empty{color:var(--mute);padding:20px;background:var(--bg2);border-radius:12px}
.lede-s{color:var(--mute);font-size:14px}
.pager{display:flex;gap:8px;justify-content:center;margin-top:24px}.pager a,.pager span{padding:8px 14px;border-radius:10px;border:1px solid var(--line);font-weight:600}.pager .current{background:var(--ink);color:#fff;border-color:var(--ink)}
/* deal cards */
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dealcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}
.dealcard:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.dealcard .ph{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bg2)}.dealcard .ph img{width:100%;height:100%;object-fit:cover}
.dealcard .badge{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;font-size:13px}
.dealcard .kind{position:absolute;right:12px;top:12px;padding:5px 9px;border-radius:999px;background:#fff;color:var(--ink);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.dealcard .bd{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;min-width:0}
.dealcard .meta{display:flex;justify-content:space-between;gap:8px;font-size:12px}.dealcard .st{font-weight:800;color:var(--ink);background:var(--bg2);padding:3px 8px;border-radius:6px}.dealcard .ct{color:var(--mute)}
.dealcard .t{font-size:16px;line-height:1.3;font-weight:700;font-family:var(--font-body);letter-spacing:0}
.dealcard .ends{font-size:12px;color:var(--mute);display:flex;flex-direction:column;gap:2px}.dealcard .ends .x{font-weight:700;color:var(--ink)}.dealcard .ends .x.soon{color:#B42318}.dealcard .ends .tm{white-space:normal}
/* code control */
.codebox{display:inline-flex;align-items:stretch;border:2px dashed var(--accent);border-radius:10px;overflow:hidden;background:#fff;padding:0;max-width:100%;font-family:inherit}
.codebox .cd{padding:9px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;letter-spacing:.14em;color:var(--accent-d);font-size:13px;white-space:nowrap}
.codebox .cta{padding:9px 14px;background:var(--accent);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0}
.codebox.deal{border-style:solid;border-color:var(--accent);background:var(--accent)}.codebox.deal .cd{display:none}.codebox.deal .cta{width:100%;justify-content:center}
.codebox:hover .cta{background:var(--accent-d)}.codebox.revealed .cd{letter-spacing:.05em}
.act .th-note,.ac .th-note{display:block;font-size:11.5px;color:var(--mute);margin-top:6px;line-height:1.35}
/* rows (tables) */
.trows{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}
.trows .th{display:grid;grid-template-columns:150px 1.4fr 130px 1fr 190px;gap:14px;padding:12px 18px;background:var(--bg2);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.trow{display:grid;grid-template-columns:150px 1.4fr 130px 1fr 190px;gap:14px;padding:16px 18px;border-top:1px solid var(--line);align-items:center;min-width:0}
.trow .tile,.stile,.sblock .tile{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:10px;background:var(--bg2);font-weight:800;font-size:13px;color:var(--ink);text-align:center;min-width:0;word-break:break-word}
.trow .of .t{display:block;font-weight:700;line-height:1.3}.trow .of .s{font-size:12px;color:var(--mute)}
.trow .en b{display:block;font-size:13px}.trow .en i{display:inline-block;margin-top:4px;font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--ink);color:#fff}
.trow .tm{font-size:12.5px;color:var(--mute)}
@media (max-width:900px){.trows .th{display:none}.trow{grid-template-columns:1fr 1fr}.trow .of{grid-column:1/-1}.trow .tm{grid-column:1/-1}.trow .ac{grid-column:1/-1}}
/* mini list */
.minis{display:flex;flex-direction:column;gap:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.mini{display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}.mini:first-child{border-top:0}
.mini .st{font-weight:800;font-size:13px;color:var(--ink)}.mini .t{font-size:14px;font-weight:600}.mini .en{display:none}
.mini .ac .codebox .cd{padding:6px 9px;font-size:11px}.mini .ac .codebox .cta{padding:6px 10px;font-size:12px}.mini .ac .th-note{display:none}
@media (max-width:640px){.mini{grid-template-columns:1fr}}
/* full rows (store/category/codes pages) */
.orows{display:flex;flex-direction:column;gap:14px}
.orow{display:grid;grid-template-columns:150px minmax(0,1fr) 220px;gap:22px;align-items:center;padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--r);min-width:0}
.orow .bigv b{display:block;font-family:var(--font-display);font-size:38px;line-height:1;letter-spacing:-.03em;color:var(--accent-d)}.orow .bigv i{font-style:normal;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.orow .st{display:inline-block;font-weight:800;font-size:12px;padding:3px 8px;border-radius:6px;background:var(--bg2);color:var(--ink);margin-bottom:6px}
.orow .t{font-size:18px;font-family:var(--font-body);font-weight:700;letter-spacing:0;line-height:1.3;margin-bottom:8px}
.orow.gone{opacity:.6}.orows.gone .orow{background:var(--bg2)}
@media (max-width:820px){.orow{grid-template-columns:minmax(0,1fr)}.orow .bigv b{font-size:30px}}
.th-terms{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.th-terms .th-x,.th-terms .th-t{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:12px;font-size:12px;font-weight:700;line-height:1.3;max-width:100%;word-break:break-word}
.th-terms .th-x{background:#E9F8EE;color:#0B5F2E;border:1px solid #BFE6CC}.th-x-soon{background:#FEF0EC!important;color:#9A2A12!important;border-color:#F4C6B9!important}.th-x-ongoing{background:var(--bg2)!important;color:var(--mute)!important;border-color:var(--line)!important}.th-x-expired{background:#8A1010!important;color:#fff!important;border-color:#8A1010!important}
.th-terms .th-t{background:#fff;color:var(--ink);border:1px solid var(--line)}.th-terms .th-t-quiet{color:var(--mute);border-style:dashed}
.th-details{margin-top:8px;font-size:13px}.th-details summary{cursor:pointer;color:var(--accent-d);font-weight:700;list-style:none;display:flex;align-items:center;gap:6px}.th-details summary::-webkit-details-marker{display:none}
.th-d-sign{width:14px;height:14px;border-radius:50%;border:1.5px solid currentColor;position:relative}.th-d-sign::before{content:"+";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1}
.th-details[open] .th-d-sign::before{content:"−"}.th-d-body{margin-top:8px;color:var(--mute)}.th-d-body p{margin:0 0 6px}
/* category tiles, store tiles */
.cattiles8{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}.cattiles8.big{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.cattile{position:relative;display:block;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--bg2)}.cattile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.cattile:hover img{transform:scale(1.05)}
.cattile .lb{position:absolute;inset:auto 0 0 0;padding:26px 12px 12px;background:linear-gradient(transparent,rgba(10,20,30,.78));color:#fff}.cattile .lb b{display:block;font-size:15px}.cattile .lb i{font-style:normal;font-size:12px;opacity:.85}
.stiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.stile{background:#fff;border:1px solid var(--line);min-height:56px;gap:8px}.stile b{font-size:11px;padding:2px 7px;border-radius:999px;background:var(--accent);color:#fff}
.stile:hover{border-color:var(--accent);color:var(--accent-d)}
@media (max-width:1080px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.cattiles8{grid-template-columns:repeat(4,minmax(0,1fr))}.stiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.grid4,.grid3,.cattiles8.big{grid-template-columns:minmax(0,1fr)}.cattiles8{grid-template-columns:repeat(2,minmax(0,1fr))}.stiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* store hero */
.store-hero{display:grid;grid-template-columns:320px minmax(0,1fr);gap:32px;padding:22px 0 30px;align-items:start}
.store-hero .ph{border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;background:var(--bg2)}.store-hero .ph img{width:100%;height:100%;object-fit:cover}
.store-hero .id{display:flex;gap:16px;align-items:center;margin-bottom:14px}.store-hero .ini{width:64px;height:64px;border-radius:16px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:24px;font-weight:800;flex:0 0 auto}
.store-hero .sub{color:var(--mute);font-size:14px;margin:4px 0 0}.store-hero .lede{color:var(--mute);font-size:16px}
.store-hero .stats{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0}.store-hero .stats div{background:var(--bg2);border-radius:12px;padding:12px 16px;min-width:140px}.store-hero .stats b{display:block;font-family:var(--font-display);font-size:22px;color:var(--accent-d);word-break:break-all}.store-hero .stats i{font-style:normal;font-size:12px;color:var(--mute)}
.visit{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700}.visit:hover{color:#fff;background:var(--accent-d)}
.store-about{padding:30px 0;max-width:800px}.store-about h2{font-size:22px;margin-bottom:10px}.store-about p{color:var(--mute)}
.h-gone{margin-top:40px;font-size:22px}
@media (max-width:820px){.store-hero{grid-template-columns:minmax(0,1fr)}.store-hero .ph{aspect-ratio:16/10}}
/* category hero */
.cat-hero{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:30px;align-items:center;padding:26px 0 10px}.cat-hero .ph{border-radius:var(--r);overflow:hidden;aspect-ratio:12/5}.cat-hero .ph img{width:100%;height:100%;object-fit:cover}.cat-hero .lede{color:var(--mute);margin-top:10px}
@media (max-width:820px){.cat-hero{grid-template-columns:minmax(0,1fr)}}
/* A–Z */
.azbar{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}.azbar a,.azbar span{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;background:#fff;border:1px solid var(--line);color:var(--ink)}.azbar span{opacity:.35}.azbar a:hover{background:var(--ink);color:#fff}
.azlist{columns:4;column-gap:30px;padding-bottom:50px}.azlist .grp{break-inside:avoid;margin-bottom:22px}.azlist h2{font-size:22px;color:var(--accent-d);border-bottom:2px solid var(--accent);display:inline-block;padding-bottom:2px;margin-bottom:8px}
.azlist .names a{display:flex;justify-content:space-between;color:var(--ink);padding:5px 0;border-bottom:1px solid var(--line);font-size:14px}.azlist .names b{color:var(--mute);font-weight:600;font-size:12px}
@media (max-width:900px){.azlist{columns:2}}@media (max-width:560px){.azlist{columns:1}}
/* store block */
.sblock{display:grid;grid-template-columns:360px minmax(0,1fr);gap:28px;background:var(--bg2);border-radius:22px;padding:22px;align-items:start}
.sblock .ph{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/5}.sblock .ph img{width:100%;height:100%;object-fit:cover}.sblock .ph .kick{position:absolute;left:14px;top:14px;background:var(--accent);color:#fff;padding:6px 10px;border-radius:999px}
.sblock .meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--mute)}.sblock .tile{background:#fff}
.sblock h2{margin:12px 0 6px}.sblock p{color:var(--mute);font-size:15px}
.sblock .three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 18px}.sblock .one{background:#fff;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}.sblock .one b{font-size:15px;line-height:1.3}.sblock .one i{font-style:normal;font-size:11.5px;color:var(--mute)}
.sblock .one .th-note{display:none}.sblock .one .codebox{width:100%}.sblock .one .codebox .cd{flex:1}
@media (max-width:1000px){.sblock{grid-template-columns:minmax(0,1fr)}.sblock .ph{aspect-ratio:16/9}.sblock .three{grid-template-columns:minmax(0,1fr)}}
/* trust + newsletter */
.trust{padding:44px 0}.trust .wrap{background:var(--bg2);border-radius:22px;padding:34px;display:grid;grid-template-columns:minmax(0,1fr) 1.6fr;gap:30px;align-items:center}
.trust .hd p{color:var(--mute);margin:10px 0 0}.trust .items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.trust .it{display:grid;grid-template-columns:40px 1fr;gap:6px 12px}.trust .ic{grid-row:span 2;width:40px;height:40px;border-radius:12px;background:#fff;color:var(--accent-d);display:flex;align-items:center;justify-content:center}.trust .it b{font-size:15px}.trust .it p{margin:0;font-size:13.5px;color:var(--mute)}
.trust .btn{grid-column:1/-1;justify-self:start}
@media (max-width:900px){.trust .wrap{grid-template-columns:minmax(0,1fr)}.trust .items{grid-template-columns:minmax(0,1fr)}}
.news{padding:20px 0 50px}.news .wrap{background:var(--accent);color:#fff;border-radius:22px;padding:40px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}
.news .kick{color:#fff;background:rgba(255,255,255,.18);padding:6px 10px;border-radius:999px}.news h2{margin:12px 0 8px;color:#fff}.news p{margin:0;opacity:.9}
.nf{display:flex;background:#fff;border-radius:999px;padding:6px;gap:6px}.nf input{flex:1;border:0;background:transparent;padding:0 16px;font:inherit;color:var(--ink);min-width:0;outline:none}.nf button{border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;padding:12px 20px;white-space:nowrap}
.news .fine{font-size:12px;opacity:.85;margin-top:10px;grid-column:2}.news .fine a{color:#fff;text-decoration:underline}.news .done{font-weight:700}
@media (max-width:900px){.news .wrap{grid-template-columns:minmax(0,1fr)}.news .fine{grid-column:1}}
/* footer */
.site-foot{background:var(--ink);color:#fff;padding:50px 0 24px;margin-top:20px}
.fgrid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:30px}.site-foot .logo{color:#fff}.site-foot .about,.site-foot .disc{font-size:13.5px;opacity:.8;margin-top:14px;line-height:1.55}
.fc h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.7;margin-bottom:12px}.fc a{display:block;color:#fff;opacity:.9;font-size:14px;padding:4px 0}.fc a:hover{opacity:1;text-decoration:underline}
.fbot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.14);margin-top:36px;padding-top:18px;font-size:12.5px;opacity:.8}
@media (max-width:900px){.fgrid{grid-template-columns:repeat(2,1fr)}.fgrid .fb{grid-column:1/-1}.fbot{flex-direction:column}}
/* cookie + modal */
.th-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;display:flex;justify-content:center}.th-cookie[hidden]{display:none!important}
.th-cookie .in{max-width:860px;background:var(--ink);color:#fff;border-radius:18px;padding:18px 22px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;box-shadow:var(--sh2)}
.th-cookie p{margin:0;font-size:13.5px;line-height:1.5}.th-cookie .acts{display:flex;gap:10px}.th-cookie .rd{color:#fff;text-decoration:underline;font-size:13px;align-self:center}.th-cookie .ok{border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;padding:10px 18px}
@media (max-width:700px){.th-cookie .in{grid-template-columns:1fr}}
.th-modal{position:fixed;inset:0;background:rgba(10,20,30,.55);display:none;align-items:center;justify-content:center;z-index:70;padding:16px}.th-modal.open{display:flex}
.th-modal .box{background:#fff;border-radius:22px;padding:30px;max-width:520px;width:100%;position:relative;color:var(--ink)}
.th-modal .x{position:absolute;right:14px;top:14px;border:0;background:var(--bg2);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center}
.th-modal h3{font-size:22px;margin:6px 0 8px}.th-modal .sub{color:var(--mute);font-size:14px}
.th-modal .cw{display:flex;gap:8px;margin:14px 0}.th-modal .cv{flex:1;border:2px dashed var(--accent);border-radius:12px;padding:14px;font-family:ui-monospace,Menlo,monospace;font-weight:800;font-size:22px;letter-spacing:.1em;text-align:center;color:var(--accent-d)}
.th-modal .cp{border:0;border-radius:12px;background:var(--bg2);font-weight:700;padding:0 18px}.th-modal .go{display:flex;justify-content:center;padding:14px;border-radius:999px;background:var(--accent);color:#fff;font-weight:800}
.th-modal .tl{margin-top:14px;font-size:13px;color:var(--mute);border-top:1px solid var(--line);padding-top:12px}
/* contact, prose, search */
.contact{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;padding:10px 0 50px}.contact .info p{color:var(--mute)}
.cform{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px;display:grid;gap:14px}.cform label{display:grid;gap:6px;font-weight:700;font-size:14px}.cform input,.cform select,.cform textarea{border:1.5px solid var(--line);border-radius:10px;padding:11px 12px;font:inherit;width:100%}.cform button{justify-self:start}.cform .ok{background:#E9F8EE;color:#0B5F2E;padding:10px 14px;border-radius:10px}.cform .bad{background:#FEF0EC;color:#9A2A12;padding:10px 14px;border-radius:10px}
.cform button{padding:12px 22px;border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:800}
@media (max-width:820px){.contact{grid-template-columns:minmax(0,1fr)}}
.prose{max-width:800px;padding-bottom:60px;font-size:16px}.prose h2{font-size:24px;margin:30px 0 10px}.prose h3{font-size:18px;margin:22px 0 8px}.prose p,.prose li{color:var(--body,var(--mute))}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose td,.prose th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.bigsearch{display:flex;max-width:640px;border:2px solid var(--accent);border-radius:999px;padding:6px;background:#fff;margin:14px 0}.bigsearch input{flex:1;border:0;padding:0 16px;font:inherit;min-width:0;outline:none}.bigsearch button{border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;padding:12px 20px}
.err{text-align:center;padding:80px 0}.err .bigsearch,.err .chips{margin-inline:auto;justify-content:center}
/* carousels */
.car{position:relative}.car .rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}.car .rail::-webkit-scrollbar{display:none}.car .rail>*{flex:0 0 calc((100% - 54px)/4);scroll-snap-align:start;min-width:0}
.car .ctrl{display:flex;align-items:center;gap:10px}.car .ctrl button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:#fff;display:inline-flex;align-items:center;justify-content:center}.car .ctrl button:disabled{opacity:.4}
.car .bar{position:relative;height:4px;background:var(--line);border-radius:4px;width:160px;overflow:hidden}.car .bar i{position:absolute;top:0;height:100%;background:var(--accent);border-radius:4px}.car .lb{font-size:12px;font-weight:700;color:var(--mute)}
@media (max-width:1080px){.car .rail>*{flex-basis:calc((100% - 18px)/2)}}@media (max-width:640px){.car .rail>*{flex-basis:88%}}

/* ===== Thriftian — white, turquoise, navy, sand. Schibsted Grotesk + Golos Text. ===== */
:root{--ink:#0B2545;--navy:#0B2545;--accent:#06B6D4;--accent-d:#0891B2;--accent-l:#9AE8F5;--bg:#FFFFFF;--bg2:#E6FBFF;--sand:#F6F1EA;--line:#E2E8F0;--mute:#5B6B82;--body:#334155;--font-display:"Schibsted Grotesk";--font-body:"Golos Text";--r:18px}
h1,h2,h3{color:var(--navy);font-weight:800}
/* header: nav pills in a turquoise capsule */
.site-head{border-bottom:1px solid var(--line)}.site-head .hrow{min-height:70px}
.logo .mark{background:var(--accent);border-radius:10px}.logo .wm b{color:var(--accent-d)}
.hsearch{display:none}
.hnav{margin-left:auto;background:var(--bg2);border-radius:999px;padding:5px;gap:2px}.hnav a{padding:8px 14px;border-radius:999px;font-size:14px;color:var(--navy)}.hnav a:first-child{background:#fff;box-shadow:0 2px 8px rgba(11,37,69,.08)}.hnav a:hover{color:var(--accent-d)}
.cta{background:var(--navy)}.cta:hover{background:#12356A}
.ticker{background:var(--navy)}.ticker .lab{background:rgba(255,255,255,.08);color:var(--accent-l)}
.th-disc{background:#fff}
/* hero */
.hero{position:relative;padding:60px 0 40px;overflow:hidden;background:radial-gradient(60% 70% at 50% 0,#E6FBFF 0,#fff 70%)}
.hero .wrap{position:relative;min-height:520px}
.hero .tx{position:relative;z-index:2;max-width:640px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.hero .pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);padding:7px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--navy)}.hero .pill i{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.hero h1{display:flex;align-items:baseline;justify-content:center;gap:12px;flex-wrap:wrap;line-height:.9;margin-top:6px}
.hero h1 .up{font-size:clamp(22px,2.6vw,34px);font-weight:700}.hero h1 b{font-size:clamp(96px,13vw,168px);letter-spacing:-.06em;color:var(--accent);font-weight:900;line-height:.85}.hero h1 sup{font-size:.36em;vertical-align:top;top:.1em;position:relative;color:var(--navy)}.hero h1 .off{font-size:clamp(30px,4vw,54px);font-weight:800}
.hero .sub{font-size:clamp(20px,2.4vw,28px);font-weight:700;margin:0;color:var(--navy)}
.hero .lede{margin:6px 0 10px;color:var(--mute);font-size:16px;max-width:520px}
.hsrch{display:flex;align-items:center;gap:10px;width:100%;max-width:560px;height:56px;padding:0 6px 0 18px;border:2px solid var(--accent);border-radius:999px;background:#fff;color:var(--mute);box-shadow:0 12px 30px rgba(6,182,212,.14)}
.hsrch input{flex:1;border:0;font:inherit;font-size:15px;color:var(--navy);outline:none;min-width:0;background:transparent}.hsrch button{height:42px;padding:0 18px;border:0;border-radius:999px;background:var(--navy);color:#fff;font:inherit;font-weight:700;font-size:14px;white-space:nowrap}
.hero .pop{display:flex;gap:6px 12px;flex-wrap:wrap;justify-content:center;font-size:13px;color:var(--mute)}.hero .pop a{font-weight:700;color:var(--navy);background:#fff;border:1px solid var(--line);padding:4px 10px;border-radius:999px}
.orb{position:absolute;width:118px;height:118px;border-radius:50%;box-shadow:0 14px 34px rgba(11,37,69,.18);animation:th-float 9s ease-in-out infinite;z-index:1}
.orb img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid #fff}
.orb span{position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);background:var(--accent);color:#fff;font-size:12px;font-weight:800;padding:4px 9px;border-radius:999px;white-space:nowrap}
.orb.o1{left:2%;top:30px;width:140px;height:140px}.orb.o2{left:9%;bottom:60px;animation-delay:-2s}.orb.o3{right:3%;top:40px;width:132px;height:132px;animation-delay:-4s}.orb.o4{right:14%;top:230px;width:96px;height:96px;animation-delay:-6s}.orb.o5{right:5%;bottom:40px;width:124px;height:124px;animation-delay:-3s}
@keyframes th-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:1100px){.orb.o4{display:none}.orb{width:90px!important;height:90px!important}.orb.o1{left:0;top:10px}.orb.o2{left:0;bottom:20px}.orb.o3{right:0;top:10px}.orb.o5{right:0;bottom:20px}}
@media (max-width:700px){.orb{display:none}.hero{padding:34px 0 30px}.hero .wrap{min-height:0}.hsrch{height:50px}}
/* four ways */
.wgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.way .wl{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--navy);margin-bottom:10px}.way .wl .ic{width:26px;height:26px;border-radius:8px;background:var(--bg2);color:var(--accent-d);display:inline-flex;align-items:center;justify-content:center}.way .wl i{margin-left:auto;font-style:normal;color:var(--mute);font-size:12px}
.way .dealcard{border-top:3px solid var(--accent)}
@media (max-width:1000px){.wgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.wgrid{grid-template-columns:minmax(0,1fr)}}
/* mosaic */
.mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,190px);gap:14px}
.mt{position:relative;display:block;border-radius:16px;overflow:hidden;background:var(--navy);color:#fff}
.mt img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.mt:hover img{transform:scale(1.04)}
.mt::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,37,69,0) 35%,rgba(11,37,69,.9) 100%)}
.mt .lb{position:absolute;left:14px;right:52px;bottom:14px;z-index:2;display:flex;flex-direction:column;gap:2px}.mt .lb b{font-family:var(--font-display);font-size:18px;color:#fff;line-height:1.1}.mt .lb i{font-style:normal;font-size:12px;color:rgba(255,255,255,.75)}.mt .lb em{font-style:normal;font-size:13px;color:rgba(255,255,255,.85);margin-top:6px}
.mt .go{position:absolute;right:12px;bottom:12px;z-index:2;width:32px;height:32px;border-radius:50%;background:var(--accent);display:inline-flex;align-items:center;justify-content:center}
.mt.m1{grid-column:span 2;grid-row:span 2}.mt.m1 .lb b{font-size:34px}.mt.m2{grid-column:span 2}
@media (max-width:900px){.mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.mt{min-height:170px}.mt.m1{grid-column:span 2;min-height:260px}.mt.m2{grid-column:span 2}}
/* code feed */
.feed-sec{background:var(--sand);padding:50px 0}
.fgrid2{display:grid;grid-template-columns:320px minmax(0,1fr);gap:30px;align-items:start}
.feed-sec .lead .kick{color:var(--accent-d)}.feed-sec .lead h2{font-size:clamp(28px,3vw,40px);line-height:1.05;margin:10px 0 12px}.feed-sec .lead p{color:var(--mute);margin:0 0 14px}
.feed-sec .lead ul{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:14px}.feed-sec .lead li{display:flex;align-items:center;gap:8px;color:var(--navy)}.feed-sec .lead li svg{color:var(--accent-d)}
.feed-sec .lead img{width:100%;height:200px;object-fit:cover;border-radius:16px}
.feed{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(11,37,69,.06)}
.feed .fh{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:13px}.feed .live{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--navy)}.feed .live i{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(6,182,212,.2)}.feed .sub{color:var(--mute)}.feed .fh a{margin-left:auto;font-weight:700;color:var(--accent-d);display:inline-flex;align-items:center;gap:5px}
.feed .th,.fr{display:grid;grid-template-columns:130px 1fr 60px 120px 140px;gap:12px;align-items:center;padding:12px 18px}
.feed .th{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);background:var(--bg2)}
.feed .roll{height:520px;overflow:hidden;position:relative;mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent)}
.feed .col{animation:th-roll 40s linear infinite}.feed .roll:hover .col{animation-play-state:paused}
@keyframes th-roll{from{transform:translateY(0)}to{transform:translateY(-50%)}}
@media (prefers-reduced-motion:reduce){.feed .col{animation:none}.feed .roll{height:auto;mask-image:none}.feed .dup{display:none}}
.fr{border-top:1px solid var(--line);min-width:0}.fr .tile{background:var(--navy);color:#fff;font-size:11px;padding:6px 8px;border-radius:8px;text-align:center;font-weight:800;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fr .of{min-width:0}.fr .of b{display:block;font-size:14px;line-height:1.3}.fr .of i{font-style:normal;font-size:11.5px;color:var(--mute)}
.fr .ty{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-d);background:var(--bg2);padding:3px 6px;border-radius:6px;text-align:center}.fr .en{font-size:12px;color:var(--navy);font-weight:600}
.fr .ac .th-note{display:none}.fr .ac .codebox .cd{padding:6px 8px;font-size:11px}.fr .ac .codebox .cta{padding:6px 9px;font-size:12px}
@media (max-width:1000px){.fgrid2{grid-template-columns:minmax(0,1fr)}.feed-sec .lead img{display:none}}
@media (max-width:700px){.feed .th{display:none}.fr{grid-template-columns:1fr 1fr}.fr .of{grid-column:1/-1}.fr .ac{grid-column:1/-1}}
/* popular stores */
.ptiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.pt{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 12px 14px;text-align:center;display:flex;flex-direction:column;gap:3px;color:var(--navy);min-width:0}.pt:hover{border-color:var(--accent)}
.pt .n{position:absolute;right:8px;top:8px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:800;padding:3px 7px;border-radius:999px}.pt b{font-size:15px;line-height:1.2;word-break:break-word}.pt i{font-style:normal;font-size:11.5px;color:var(--mute)}
@media (max-width:1000px){.ptiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:560px){.ptiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* tide chart */
.tide{background:var(--bg2);padding:50px 0;position:relative;overflow:hidden}
.tide::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-40px;height:120px;background:#fff;border-radius:50% 50% 0 0}
.tgrid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:30px;align-items:center;position:relative;z-index:1}
.tide .lead .kick{color:var(--accent-d)}.tide .lead h2{font-size:clamp(28px,3vw,40px);line-height:1.05;margin:10px 0 12px}.tide .lead p{color:var(--mute);margin:0 0 16px}
.tide .kpis{display:flex;gap:10px}.tide .kpis div{background:#fff;border-radius:12px;padding:12px 16px}.tide .kpis b{display:block;font-family:var(--font-display);font-size:24px;color:var(--navy)}.tide .kpis i{font-style:normal;font-size:12px;color:var(--mute)}
.tide .chart{background:#fff;border-radius:18px;padding:22px 24px 18px;box-shadow:0 12px 30px rgba(11,37,69,.08)}
.tide .ch{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:14px;flex-wrap:wrap}.tide .ch b{font-size:15px;color:var(--navy)}.tide .ch i{font-style:normal;font-size:12px;color:var(--mute)}
.tide .bars{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px;align-items:end;height:260px}
.tide .bar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px;color:var(--navy);min-width:0}
.tide .bar .v{font-weight:800;font-size:14px}.tide .bar .b{width:100%;max-width:64px;flex:1;display:flex;align-items:flex-end;background:var(--bg2);border-radius:8px 8px 0 0;overflow:hidden}.tide .bar .b i{display:block;width:100%;background:linear-gradient(180deg,var(--accent),var(--accent-d));border-radius:8px 8px 0 0;min-height:6px}
.tide .bar b{font-size:12px;text-align:center;line-height:1.2}.tide .bar em{font-style:normal;font-size:11px;color:var(--mute)}
@media (max-width:1000px){.tgrid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.tide .bars{grid-auto-flow:row;grid-template-columns:repeat(5,minmax(0,1fr));height:auto}.tide .bar{height:170px}.tide .bar b{font-size:11px}}
/* calendar */
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.day{background:var(--sand);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px;min-width:0}.day.today{background:var(--bg2);outline:2px solid var(--accent)}
.day .dh{display:flex;align-items:baseline;gap:6px;padding:4px 4px 6px;border-bottom:1px solid rgba(11,37,69,.1)}.day .dh b{font-size:15px;color:var(--navy)}.day .dh i{font-style:normal;font-size:11px;color:var(--mute)}.day .dh span{margin-left:auto;background:var(--navy);color:#fff;font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:999px}.day.today .dh span{background:var(--accent)}
.ce{background:#fff;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px;min-width:0}.ce .tile{background:var(--navy);color:#fff;font-size:10px;padding:4px 6px;border-radius:6px;font-weight:800;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ce b{font-size:12.5px;line-height:1.3}.ce i{font-style:normal;font-size:10.5px;color:var(--mute)}.ce .ac .th-note{display:none}.ce .ac .codebox{width:100%}.ce .ac .codebox .cd{padding:5px 6px;font-size:10px;flex:1;overflow:hidden}.ce .ac .codebox .cta{padding:5px 8px;font-size:11px}
.day .none{font-size:12px;color:var(--mute);margin:4px;text-align:center}
@media (max-width:1100px){.cal{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.cal{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* store of the day: navy */
.sod .sblock{background:var(--navy);color:#fff}.sod .sblock h2,.sod .sblock p{color:#fff}.sod .sblock .meta{color:rgba(255,255,255,.75)}.sod .sblock .one b{color:var(--navy)}.sod .sblock .btn.dark{background:var(--accent);color:#fff}
/* shared */
.dealcard .badge{background:var(--navy)}.dealcard .st{color:var(--navy)}.codebox .cd{color:var(--accent-d)}
.news .wrap{background:var(--accent-d)}.site-foot{background:var(--navy)}
