/* PrijsSpot 1.4 — "Het schapkaartje": eigen vormgeving.
   Nachtblauwe band met het zoeklabel als prijskaartje en één gele sticker; lichte, rustige winkelvloer eronder;
   tanken als donkere "nachtrit". Lettertypen: Bricolage Grotesque (koppen, prijzen) en Instrument Sans (tekst), OFL 1.1. */

@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(fonts/bricolage-grotesque-latin-standard-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(fonts/bricolage-grotesque-latin-ext-standard-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+20A0-20AB,U+20AD-20C0,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Sans";font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(fonts/instrument-sans-latin-standard-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Sans";font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(fonts/instrument-sans-latin-ext-standard-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+20A0-20AB,U+20AD-20C0,U+2C60-2C7F,U+A720-A7FF}

:root{
  --night:#0f1b4c; --night-2:#16245f; --blue:#2251ff; --sticker:#ffc73a; --porcelain:#f4f6fb;
  --ink:#121a33; --muted:#5a6480; --line:#e1e5ef; --wash:#eef1f8; --green:#0e8a5f; --orange:#a35a00;
  --radius:18px; --display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif; --text:"Instrument Sans",ui-sans-serif,system-ui,sans-serif;
}
html{scroll-padding-top:16px}
body{font-family:var(--text);background:var(--porcelain);color:var(--ink);overflow-x:clip;-webkit-font-smoothing:antialiased}
h1,h2,h3,.brand,.card-price,.summary-price strong,.selected-total,.fuel-price,.deal-badge,.best-intro strong{font-family:var(--display)}
h2{font-size:clamp(24px,3vw,32px);font-weight:700;letter-spacing:-.02em;line-height:1.15}
h3{font-weight:650;letter-spacing:-.01em}
.eyebrow{display:none}
a{color:var(--blue);text-underline-offset:3px}
button,input,select,textarea{font-family:inherit}
button{border-radius:12px;border:1px solid var(--line);font-weight:600}
input,select,textarea{border:1px solid #cfd5e3;border-radius:12px}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.primary-button,.search-box>button[type=submit]{background:var(--blue);border-color:var(--blue);color:#fff;font-family:var(--display);font-weight:700;letter-spacing:.005em}
.quiet-button{background:var(--wash);border-color:transparent}

/* ---------- Kop en band ---------- */
.nav,.hero,.fuel-section,.footer{position:relative;isolation:isolate}
.nav::before,.hero::before,.footer::before{content:"";position:absolute;inset:0 calc(50% - 50vw);background:var(--night);z-index:-1}
.nav{border:0;padding:22px 0 10px;color:#fff}
.nav .brand,.footer .brand{display:inline-flex;align-items:center;gap:0;color:#fff;font-weight:800;font-size:28px;letter-spacing:-.03em}
.nav .brand::before,.footer .brand::before{content:"";margin-right:10px;width:34px;height:34px;border-radius:10px;background:url(app-icons/icon-192.png) center/cover}
.brand span{color:var(--sticker)}
.nav nav a{color:rgba(255,255,255,.82);text-decoration:none;font-weight:500}
.nav nav a:hover{color:#fff}
.nav a:focus-visible,.nav button:focus-visible,.hero :focus-visible,.fuel-section .section-top a:focus-visible,.footer a:focus-visible{outline-color:var(--sticker)}
.account-button{background:#fff;color:var(--night);font-family:var(--display)}
.account-button.signed-in{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}

.hero{color:#fff;padding:34px 0 0}
.hero::before{background:radial-gradient(900px 380px at 88% 105%,rgba(34,81,255,.55),transparent 70%),radial-gradient(600px 260px at 0% 110%,rgba(255,199,58,.10),transparent 70%),var(--night)}
.hero .workspace-heading{align-items:flex-end}
.hero h1{font-size:clamp(40px,7.2vw,84px);line-height:.95;letter-spacing:-.022em;font-weight:800;font-stretch:90%;max-width:12ch;margin:0 0 14px;color:#fff}
.hero-sub{font-size:clamp(16px,1.6vw,19px);color:rgba(255,255,255,.78);max-width:46ch;margin:0 0 30px}
.hero .heading-actions .quiet-button{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.22)}
.hero .heading-actions .quiet-button span{color:var(--sticker)}
.hero .search-area{position:relative;z-index:2;margin-bottom:-38px;align-items:end}
.hero .country-control{color:rgba(255,255,255,.85);font-weight:600;padding-bottom:46px}
.hero .country-control select{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.28)}
.hero .country-control option{color:var(--ink)}

/* Het zoeklabel als prijskaartje, met oogje en sticker */
.search-box{background:#fff;border:0;border-radius:20px;padding:12px 12px 12px 52px;box-shadow:0 24px 48px -12px rgba(5,12,45,.45),0 2px 0 rgba(255,255,255,.4) inset}
.search-box::before{content:"";position:absolute;left:20px;top:31px;width:12px;height:12px;border-radius:50%;border:3px solid #d5dbea;background:var(--porcelain)}
.search-box input{font-size:19px;font-weight:500;color:var(--ink)}
.search-box input::placeholder{color:#8a93ad}
.search-box>button[type=submit]{border-radius:14px;min-height:52px;padding:0 24px;font-size:17px}
.price-sticker{position:absolute;left:-18px;top:-30px;width:62px;height:62px;border-radius:50%;background:var(--sticker);color:var(--night);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:28px;line-height:1;text-align:center;transform:rotate(-12deg);box-shadow:0 6px 14px rgba(5,12,45,.28);pointer-events:none;animation:ps-sticker .7s cubic-bezier(.2,1.5,.45,1) .35s both}
@keyframes ps-sticker{from{transform:rotate(-55deg) scale(1.9);opacity:0}to{transform:rotate(-12deg) scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.price-sticker{animation:none}}

/* ---------- Winkelvloer ---------- */
.workspace{padding-top:0}
#category-discovery{margin-top:70px}
.category-discovery button{border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:none}
.category-discovery button:hover{border-color:var(--blue);transform:none;box-shadow:none}
.category-discovery strong{font-family:var(--display);font-weight:650;font-size:15px}
.image-note{font-size:13px;color:var(--muted)}

/* Topkortingen als gele schapkaartjes */
.deals-bar{background:none;border:0;padding:8px 0 4px;margin:22px 0 10px}
.deals-head h2{font-size:clamp(22px,2.6vw,28px);margin:0}
.deals-arrows button{background:#fff}
.deals-filter button{background:#fff;border-color:var(--line);font-weight:600}
.deals-filter button[aria-pressed="true"]{background:var(--night);border-color:var(--night);color:#fff}
.deals-track{gap:12px;padding:8px 2px 14px}
.deal-card{flex:0 0 196px;background:var(--sticker);border:0;border-radius:6px 6px 14px 14px;padding:14px 14px 12px;color:var(--night);gap:4px;border-top:6px dashed rgba(15,27,76,.18)}
.deal-card:hover{border-color:rgba(15,27,76,.18);transform:translateY(-2px)}
.deal-card:focus-visible{outline-color:var(--night)}
.deal-badge,.deal-badge.hot{position:static;background:none;color:var(--night);padding:0;font-size:38px;font-weight:800;letter-spacing:-.04em;line-height:1;font-stretch:85%}
.deal-badge.hot::after{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:#e5483b;margin-left:6px;vertical-align:super}
.deal-card img,.deal-noicon{position:absolute;right:12px;top:14px;width:34px;height:34px;background:rgba(255,255,255,.55);border-radius:10px;padding:3px}
.deal-card strong{font-family:var(--text);font-size:14px;font-weight:600;margin-top:4px;min-height:36px}
.deal-price{font-family:var(--display);font-size:17px}
.deal-card small{color:rgba(15,27,76,.72)}

/* Zoekresultaten */
.workspace-toolbar{margin-top:14px}
.amount-control button{border-radius:10px;background:#fff}
.amount-control button[aria-pressed="true"]{background:var(--night);color:#fff;border-color:var(--night)}
.filter-panel{border-radius:14px;background:#fff;border:1px solid var(--line)}
.result-heading h2{font-size:24px}
.product-card{border-radius:16px;border-color:var(--line);background:#fff}
.product-card.selected{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}
.card-price{font-weight:800;font-size:22px;letter-spacing:-.02em}
.detail-panel{border-radius:22px;border-color:var(--line);box-shadow:0 18px 40px -28px rgba(15,27,76,.35)}
.detail-top h2{font-size:clamp(24px,2.8vw,34px);letter-spacing:-.025em}
.summary-price strong{font-size:clamp(34px,4vw,48px);font-weight:800;letter-spacing:-.03em}
.offer{border-radius:14px}
.offer-heading strong{font-family:var(--display);font-size:20px}
.winning-tag{border-radius:999px;font-weight:700}
.shopping-list,.shortlist{border-radius:22px}

/* ---------- Tanken: de nachtrit ---------- */
.fuel-section{background:none;border:0;color:#fff;padding:64px 0 56px;margin-top:40px}
.fuel-section::before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:radial-gradient(900px 380px at 100% 0%,rgba(255,199,58,.12),transparent 60%),radial-gradient(800px 400px at 0% 100%,rgba(34,81,255,.35),transparent 60%),var(--night)}
.fuel-section h2{color:#fff;font-size:clamp(30px,4.6vw,52px);letter-spacing:-.03em;font-weight:800;font-stretch:90%}
.fuel-section .section-top a,.fuel-section>.wrap>p a,.fuel-privacy a{color:var(--sticker)}
.fuel-section>.wrap>p,.fuel-privacy{color:rgba(255,255,255,.75)}
.provider-badge{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.85)}
.provider-badge.available{background:rgba(14,138,95,.25);border-color:rgba(98,214,163,.6);color:#c9f5df}
#fuel-status{color:rgba(255,255,255,.85)}
#fuel-status.error{color:#ffb4a8}
.live-location,.fuel-form,.detour-tool,.best-tile,.fuel-card,.fuel-results .notice,.fuel-results .empty{color:var(--ink)}
.live-location{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.live-location .live-text span{color:rgba(255,255,255,.75)}
.live-location.on{background:rgba(14,138,95,.18);border-color:rgba(98,214,163,.55)}
.live-location.on .live-text span{color:#c9f5df}
.live-location .live-icon{background:rgba(255,255,255,.1)}
.live-location .live-icon svg{stroke:var(--sticker)}
.live-location .live-icon svg circle:first-child{fill:var(--sticker)}
.switch{color:#fff}
.switch-track{background:rgba(255,255,255,.25)}
.switch[aria-checked="true"] .switch-track{background:#19b07a}
.fuel-form,.detour-tool{border:0;border-radius:22px;box-shadow:0 24px 50px -24px rgba(0,0,0,.5)}
.fuel-form .primary-button{background:var(--sticker);border-color:var(--sticker);color:var(--night)}
.detour-tool summary{font-family:var(--display);font-size:20px;letter-spacing:-.01em}
.car-row input{font-family:var(--display);font-size:18px}
.fuel-best .best-intro{color:rgba(255,255,255,.85)}
.fuel-best .best-intro strong{color:#fff}
.fuel-best .muted{color:rgba(255,255,255,.65)}
.best-tile{border:0;border-radius:20px}
.best-tiles{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.best-tile.winner{background:#fff;box-shadow:0 0 0 3px var(--sticker)}
.best-tile .fuel-price{font-size:38px;font-weight:800;letter-spacing:-.03em}
.fuel-results>.muted,.fuel-results>p{color:rgba(255,255,255,.75)}
.fuel-results>p a{color:var(--sticker)}
.fuel-card{border:0;border-radius:18px}
.fuel-results .notice{background:#fff;border-radius:18px}

/* ---------- Onder de vouw ---------- */
.trust-section{padding:72px 0 56px}
.trust-section h2{font-size:clamp(26px,3.4vw,40px);letter-spacing:-.03em;max-width:16ch}
.trust-section h3{font-family:var(--display);font-size:19px}
.trust-section h3::before{content:"";display:block;width:26px;height:26px;border-radius:50%;background:var(--sticker);margin-bottom:12px}
.iphone-section{background:#fff;border:1px solid var(--line);border-radius:28px;padding:36px}
.iphone-section h2{font-size:clamp(26px,3.4vw,40px);letter-spacing:-.03em}
.faq{padding:56px 0}
.faq summary{font-family:var(--display);font-weight:650;font-size:18px;padding:16px 0}
.footer{background:none;border:0;color:rgba(255,255,255,.75);padding:44px 0 40px;margin-top:40px}
.footer p{color:rgba(255,255,255,.65)}
.footer nav a{color:rgba(255,255,255,.85)}

/* Documentpagina's */
.document h1{font-size:clamp(34px,5vw,56px);letter-spacing:-.035em;font-weight:800}
.document{padding-top:40px;max-width:760px}
.document p{max-width:68ch}
.back-link{display:inline-block;margin-bottom:16px}

/* ---------- Mobiel ---------- */
@media(max-width:760px){
  .nav{padding:16px 0 6px}
  .nav nav{display:none}
  .nav .brand{font-size:24px}
  .hero{padding-top:18px}
  .hero h1{font-size:clamp(40px,12vw,56px)}
  .hero-sub{margin-bottom:22px}
  .hero .search-area{grid-template-columns:1fr;margin-bottom:-30px}
  .hero .country-control{order:-1;padding-bottom:6px}
  .search-box{padding:10px 10px 10px 44px}
  .search-box::before{left:16px;top:25px}
  .price-sticker{width:50px;height:50px;font-size:22px;left:-8px;top:-24px}
  .category-discovery strong{font-size:12px;hyphens:auto;-webkit-hyphens:auto}
  .switch{background:rgba(255,255,255,.08);color:#fff}
  #category-discovery{margin-top:52px}
  .category-discovery button{border-radius:14px}
  .deal-card{flex-basis:168px}
  .deal-badge,.deal-badge.hot{font-size:32px}
  .fuel-section{padding:44px 0 40px}
  .trust-section{padding:48px 0 32px}
  .iphone-section{padding:24px;border-radius:22px}
}
.card-price.unknown{font-family:var(--text);font-size:14px;font-weight:600;color:var(--muted);letter-spacing:0}

/* ===== 1.5 — landingspagina's en interne links ===== */
.landing{padding:28px 0 64px}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 22px;font-size:14px;color:var(--muted)}
.breadcrumbs li+li::before{content:"/";margin-right:6px;color:#b4bbcd}
.breadcrumbs a{color:var(--muted)}
.landing-head{display:flex;gap:22px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;margin-bottom:28px}
.landing-head img{width:88px;height:88px;flex-shrink:0;border-radius:20px}
.landing-head h1{font-size:clamp(32px,5vw,56px);line-height:1;letter-spacing:-.03em;font-weight:800;font-stretch:90%;margin:0 0 12px}
.landing-lead{font-size:18px;max-width:60ch;margin:0 0 8px}
.landing-meta{font-size:14px;color:var(--muted);margin:0 0 18px}
.landing-head .primary-button{display:inline-flex;align-items:center;min-height:48px;padding:0 20px;border-radius:14px;text-decoration:none}
.offer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:0 0 36px}
.offer-tile{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:6px}
.offer-tile img{width:88px;height:88px;object-fit:contain;align-self:center;margin:8px 0}
.offer-tile h3{font-family:var(--text);font-size:15px;font-weight:600;line-height:1.35;margin:0}
.tile-discount{align-self:flex-start;background:var(--sticker);color:var(--night);font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;padding:2px 10px;border-radius:8px;transform:rotate(-3deg)}
.tile-discount.hot{background:#e5483b;color:#fff}
.tile-discount.quiet{font-size:13px;font-family:var(--text);font-weight:700;background:var(--wash);transform:none}
.tile-price{font-family:var(--display);font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0}
.tile-price s{font-family:var(--text);font-size:14px;font-weight:500;color:var(--muted);margin-left:6px}
.tile-meta{font-size:13px;color:var(--muted);margin:0}
.tile-actions{display:flex;flex-wrap:wrap;gap:10px;margin:auto 0 0;padding-top:8px;font-size:14px}
.landing-text{max-width:72ch;margin:0 0 36px}
.landing-text h2,.landing-links h2,.store-group h2{font-size:clamp(22px,2.6vw,30px);margin:28px 0 12px}
.store-group h2 a{color:var(--ink);text-decoration:none}
.link-grid{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.link-grid a{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;color:var(--ink);text-decoration:none;font-weight:600;min-height:52px}
.link-grid a:hover{border-color:var(--blue)}
.link-grid img{width:32px;height:32px;flex-shrink:0}
.link-grid small{margin-left:auto;color:var(--muted);font-weight:500}
.store-links{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-wrap:wrap;gap:8px}
.store-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600}
.store-links a:hover{border-color:var(--blue)}
.seo-links{padding:56px 0 8px}
.seo-links h2{font-size:clamp(24px,3vw,34px);margin-bottom:18px}
.seo-links h3{font-family:var(--display);font-size:19px;margin:8px 0 12px}
@media(max-width:760px){
  .landing-head{flex-direction:column;padding:20px;border-radius:22px}
  .landing-head img{width:64px;height:64px}
  .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .offer-tile{padding:12px}
  .offer-tile img{width:64px;height:64px}
  .tile-price{font-size:19px}
  .link-grid{grid-template-columns:1fr 1fr}
}
.link-grid a span{min-width:0;hyphens:auto;-webkit-hyphens:auto}.link-grid a{font-size:15px}
