/*
Theme Name: Savoup
Theme URI: https://savoup.com/
Author: Nimra Suhaib
Description: Cobalt-and-white US coupon site: banner deals, scrolling category pills, a progress-bar carousel and a plain codes grid. Custom theme, no page builder.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: savoup
*/
/* ===== 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 */
.sv-disc{background:var(--bg2);border-bottom:1px solid var(--line);font-size:13px;color:var(--mute);padding:9px 0}
.sv-disc strong{color:var(--ink)}.sv-disc a{font-weight:700;text-decoration:underline;text-underline-offset:2px}
.sv-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}
.sv-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 .sv-note,.ac .sv-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 .sv-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}}
.sv-terms{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.sv-terms .sv-x,.sv-terms .sv-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}
.sv-terms .sv-x{background:#E9F8EE;color:#0B5F2E;border:1px solid #BFE6CC}.sv-x-soon{background:#FEF0EC!important;color:#9A2A12!important;border-color:#F4C6B9!important}.sv-x-ongoing{background:var(--bg2)!important;color:var(--mute)!important;border-color:var(--line)!important}.sv-x-expired{background:#8A1010!important;color:#fff!important;border-color:#8A1010!important}
.sv-terms .sv-t{background:#fff;color:var(--ink);border:1px solid var(--line)}.sv-terms .sv-t-quiet{color:var(--mute);border-style:dashed}
.sv-details{margin-top:8px;font-size:13px}.sv-details summary{cursor:pointer;color:var(--accent-d);font-weight:700;list-style:none;display:flex;align-items:center;gap:6px}.sv-details summary::-webkit-details-marker{display:none}
.sv-d-sign{width:14px;height:14px;border-radius:50%;border:1.5px solid currentColor;position:relative}.sv-d-sign::before{content:"+";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1}
.sv-details[open] .sv-d-sign::before{content:"−"}.sv-d-body{margin-top:8px;color:var(--mute)}.sv-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 .sv-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 */
.sv-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;display:flex;justify-content:center}.sv-cookie[hidden]{display:none!important}
.sv-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)}
.sv-cookie p{margin:0;font-size:13.5px;line-height:1.5}.sv-cookie .acts{display:flex;gap:10px}.sv-cookie .rd{color:#fff;text-decoration:underline;font-size:13px;align-self:center}.sv-cookie .ok{border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;padding:10px 18px}
@media (max-width:700px){.sv-cookie .in{grid-template-columns:1fr}}
.sv-modal{position:fixed;inset:0;background:rgba(10,20,30,.55);display:none;align-items:center;justify-content:center;z-index:70;padding:16px}.sv-modal.open{display:flex}
.sv-modal .box{background:#fff;border-radius:22px;padding:30px;max-width:520px;width:100%;position:relative;color:var(--ink)}
.sv-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}
.sv-modal h3{font-size:22px;margin:6px 0 8px}.sv-modal .sub{color:var(--mute);font-size:14px}
.sv-modal .cw{display:flex;gap:8px;margin:14px 0}.sv-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)}
.sv-modal .cp{border:0;border-radius:12px;background:var(--bg2);font-weight:700;padding:0 18px}.sv-modal .go{display:flex;justify-content:center;padding:14px;border-radius:999px;background:var(--accent);color:#fff;font-weight:800}
.sv-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%}}

/* ===== Savoup — off-white, cobalt, cherry tags. Familjen Grotesk + Onest. ===== */
:root{--ink:#14161A;--accent:#1F4BE8;--accent-d:#1637B5;--accent-l:#8FB0FF;--cherry:#E5383B;--bg:#FAFAFC;--bg2:#EEF2FF;--line:#E6E8EF;--mute:#5F6470;--body:#3B3F48;--font-display:"Familjen Grotesk";--font-body:"Onest";--r:20px}
.logo .wm b{color:var(--accent)}.logo .mark{border-radius:50%}
.site-head .hrow{min-height:76px}.hchips{display:flex;flex:1;min-width:0}.hsearch{display:none}
.dealcard{border:0;box-shadow:0 10px 30px rgba(20,22,26,.06)}.dealcard .badge{border-radius:10px}
.codebox{border-style:dashed;border-radius:12px}
/* hero */
.hero{padding:26px 0 0}
.hero .card{position:relative;background:linear-gradient(135deg,#2B5CFF,#1F4BE8 60%,#173BC4);color:#fff;border-radius:28px;padding:54px 56px 60px;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;overflow:visible}
.hero .pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600}
.hero h1{font-size:clamp(40px,4.6vw,64px);line-height:1.02;margin:22px 0 16px;color:#fff;letter-spacing:-.03em}
.hero p{font-size:17px;opacity:.9;max-width:420px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 18px}.hero .b1,.hero .b2{display:inline-flex;align-items:center;gap:8px;padding:14px 20px;border-radius:999px;font-weight:700;font-size:15px}.hero .b1{background:#fff;color:var(--accent-d)}.hero .b2{border:1.5px solid rgba(255,255,255,.55);color:#fff}
.hero .chk{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;opacity:.95}.hero .chk span{display:inline-flex;align-items:center;gap:6px}
.montage{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,150px);gap:12px}
.montage img{width:100%;height:100%;object-fit:cover;border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.18);animation:sv-float 7s ease-in-out infinite}
.montage img:nth-child(1){grid-row:span 2;height:100%}.montage img:nth-child(4){grid-row:span 2;height:100%}.montage img:nth-child(2n){animation-delay:-3s}
@keyframes sv-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.hero .circ{position:absolute;left:52%;bottom:-44px;width:112px;height:112px;border-radius:50%;background:#fff;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 16px 40px rgba(20,22,26,.18);font-weight:800}.hero .circ i{font-style:normal;font-size:11px;color:var(--mute)}.hero .circ b{font-family:var(--font-display);font-size:30px;color:var(--accent-d);line-height:1}
@media (max-width:1000px){.hero .card{grid-template-columns:1fr;padding:34px 26px 60px}.montage{grid-template-rows:repeat(2,120px)}.hero .circ{left:auto;right:20px;bottom:-30px;width:96px;height:96px}}
/* biggest drops */
.drops{padding-top:80px}
.dgrid{display:grid;grid-template-columns:1.7fr 1fr;gap:18px}
.banner{display:grid;grid-template-columns:1.1fr 1fr;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(20,22,26,.07);min-height:250px}
.banner.dark{background:var(--ink);color:#fff}.banner.dark .m .st{background:#fff;color:var(--ink)}.banner.dark h3{color:#fff}.banner.dark .e{color:rgba(255,255,255,.7)}.banner.dark .big b{color:#fff}
.banner .bd{padding:26px 28px;display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0}
.banner .m{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--mute)}.banner .m .st{background:var(--bg2);color:var(--accent-d);padding:4px 9px;border-radius:8px;font-weight:800}.banner .m em{font-style:normal;background:var(--cherry);color:#fff;padding:3px 9px;border-radius:999px;font-weight:700}
.banner .big{display:flex;align-items:baseline;gap:10px}.banner .big b{font-family:var(--font-display);font-size:64px;line-height:1;color:var(--accent-d);letter-spacing:-.04em}.banner .big span{font-weight:700;font-size:16px}
.banner h3{font-size:19px;font-family:var(--font-body);letter-spacing:0;line-height:1.3}
.banner .e{font-size:12.5px;color:var(--mute);margin:0}.banner .act .sv-note{display:none}.banner .act .codebox.deal{background:var(--accent);border-color:var(--accent)}
.banner .ph{display:block;min-height:250px}.banner .ph img{width:100%;height:100%;object-fit:cover}
.banner.dark{grid-template-columns:1fr 1.1fr}.banner.dark .ph{order:-1}
.smalls{display:grid;grid-template-rows:repeat(3,1fr);gap:14px}
.small{display:grid;grid-template-columns:110px 1fr;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(20,22,26,.06)}
.small .ph{display:block;height:100%}.small .ph img{width:100%;height:100%;object-fit:cover;min-height:120px}
.small .bd{padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}.small .m{display:flex;gap:8px;font-size:11.5px;color:var(--mute)}.small .m .st{background:var(--bg2);color:var(--accent-d);padding:3px 8px;border-radius:7px;font-weight:800}
.small h3{font-size:15px;font-family:var(--font-body);letter-spacing:0;line-height:1.3}.small .e{font-size:11.5px;color:var(--mute);margin:0}.small .act .sv-note{display:none}.small .act .codebox .cd{padding:6px 9px;font-size:11px}.small .act .codebox .cta{padding:6px 10px;font-size:12px}
@media (max-width:1000px){.dgrid{grid-template-columns:1fr}.banner,.banner.dark{grid-template-columns:1fr}.banner.dark .ph{order:0}.banner .ph{min-height:200px}}
/* pills */
.pillrow{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:6px;mask-image:linear-gradient(90deg,#000 92%,transparent)}.pillrow::-webkit-scrollbar{display:none}
.pl{flex:0 0 auto;display:inline-flex;align-items:center;gap:12px;padding:12px 18px 12px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 6px 16px rgba(20,22,26,.04)}
.pl .ic{width:36px;height:36px;border-radius:50%;background:var(--bg2);color:var(--accent-d);display:inline-flex;align-items:center;justify-content:center}.pl b{display:block;font-size:14px}.pl i{font-style:normal;font-size:12px;color:var(--mute)}
.pl.on{background:var(--accent);color:#fff;border-color:var(--accent)}.pl.on .ic{background:rgba(255,255,255,.18);color:#fff}.pl.on i{color:rgba(255,255,255,.8)}
/* progress carousel */
.car.prog .rail>*{flex-basis:calc((100% - 54px)/3.3)}.car .track{display:flex;align-items:center;gap:16px;margin-top:18px}.car .track .bar{flex:1;width:auto;max-width:none}
@media (max-width:1080px){.car.prog .rail>*{flex-basis:calc((100% - 18px)/2)}}@media (max-width:640px){.car.prog .rail>*{flex-basis:88%}}
/* marquee wall */
.marq-sec{padding:44px 0 10px}.marq{overflow:hidden;background:var(--bg2);padding:22px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mrow{display:flex;width:max-content;animation:sv-marq 50s linear infinite}.mrow span{display:flex;gap:14px;padding-right:14px}
.mt{display:flex;flex-direction:column;align-items:center;justify-content:center;width:170px;height:76px;background:#fff;border-radius:14px;color:var(--ink);box-shadow:0 8px 20px rgba(20,22,26,.05)}.mt b{font-size:15px;text-align:center;padding:0 10px}.mt i{font-style:normal;font-size:11.5px;color:var(--mute)}
@keyframes sv-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mrow{animation:none}}
/* trust as timeline */
.trust .wrap{grid-template-columns:1fr;background:#fff;border:1px solid var(--line)}.trust .items{grid-template-columns:repeat(4,minmax(0,1fr))}.trust .it{grid-template-columns:1fr}.trust .ic{grid-row:auto;background:var(--bg2)}
@media (max-width:900px){.trust .items{grid-template-columns:minmax(0,1fr)}}
