:root{
  --brand:#3a7ca5; --brand-600:#2c5f7a;
  --ink:#0f1012; --text:#2b2f36; --muted:#6b7a88;
  --bg:#f7f9fb; --card:#ffffff; --bdr:#e3e8ee; --bdr-strong:#d7dee7; --radius:12px;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{scroll-behavior:smooth;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.container{width:92%;max-width:1200px;margin:0 auto}
.section{padding:64px 0}
.section h2{text-align:center;font-weight:800;font-size:2.0rem;margin-bottom:22px;color:var(--ink)}
.center{text-align:center}
.mt-16{margin-top:16px}
.ticker{position:sticky;top:0;z-index:1200;height:34px;background:linear-gradient(90deg,var(--brand),var(--brand-600));color:#fff;display:flex;align-items:center;overflow:hidden}
.ticker-track{display:flex;gap:42px;white-space:nowrap;animation:ticker-scroll 24s linear infinite;will-change:transform;padding-left:100%}
.ticker-track span{font-weight:800;opacity:.95}
@keyframes ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none;padding-left:0}}

header{position:sticky;top:34px;z-index:1100;background:var(--card);border-bottom:1px solid var(--bdr);padding:12px 4%;display:flex;align-items:center;justify-content:space-between;transition:padding .3s}
.brand{display:flex;align-items:center;gap:10px}
.brand-link{display:flex;align-items:center;gap:10px}
.brand-logo{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--brand);color:#fff;font-weight:900}
.brand-name{font-size:1.05rem;font-weight:900;color:var(--ink);letter-spacing:.3px}
.brand-accent{color:var(--brand)}
#nav-links{display:flex;gap:18px}
#nav-links .nav-link{position:relative;padding:6px 0;font-weight:700;color:var(--text);transition:color .2s}
#nav-links .nav-link::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--brand);transition:width .2s}
#nav-links .nav-link:hover{color:var(--brand)}
#nav-links .nav-link:hover::after,#nav-links .nav-link.active::after{width:100%}
#hamburger{display:none;gap:5px;background:transparent;border:1px solid var(--bdr);padding:6px 8px;border-radius:8px;cursor:pointer}
#hamburger span{width:22px;height:2px;background:var(--ink);display:block;border-radius:2px}

/* Header cart icon */
.header-cart-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--bdr);background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer}
.header-cart-btn:hover{background:#f7fbfe}
.cart-svg{width:20px;height:20px;fill:#1c2733}
.header-cart-count{background:#111;color:#fff;border-radius:999px;padding:0 6px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800}

/* Hero */
.hero{position:relative;min-height:60vh;display:grid;place-items:center;text-align:center}
.hero-media,.hero-media picture,.hero-media img{position:absolute;inset:0;width:100%;height:100%}
.hero-media img{object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.3))}
.hero-text{position:relative;z-index:1;color:#fff;padding:0 6%}
.hero-text h1{font-size:2.6rem;font-weight:900;margin-bottom:10px}
.hero-text p{font-size:1.05rem;opacity:.95;margin-bottom:18px}
.hero-actions{display:flex;gap:10px;justify-content:center}
.btn{display:inline-block;padding:10px 18px;border-radius:10px;background:var(--brand);color:#fff;font-weight:900;transition:.2s;border:1px solid var(--brand)}
.btn:hover{background:var(--brand-600);border-color:var(--brand-600)}
.btn-outline{display:inline-block;padding:10px 18px;border-radius:10px;border:1px solid var(--brand);color:var(--brand);background:transparent;transition:.2s}
.btn-outline:hover{background:var(--brand);color:#fff}

/* Grids/productcards (compact) */
.grid{display:grid;gap:12px}
.grid-tight{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.grid-mini{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.product.mini{padding:8px;border-radius:10px;background:#fff;border:1px solid var(--bdr);transition:transform .12s, border-color .12s;cursor:pointer}
.product.mini:hover{transform:translateY(-2px);border-color:var(--bdr-strong)}
.product.mini .thumb{border-radius:8px;aspect-ratio:4/5;background:#f4f7fb;overflow:hidden}
.product.mini .thumb img{width:100%;height:100%;object-fit:cover;object-position:40% 50%;transition:transform .2s}
.product.mini:hover .thumb img{transform:scale(1.02)}
.product.mini .row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}
.product.mini .row .t{font-size:.92rem;line-height:1.15;font-weight:800;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}
.product.mini .row .p{font-size:.92rem;font-weight:900;color:var(--brand)}
.btn-mini{margin-top:6px;padding:7px 10px;border-radius:9px;background:var(--brand);color:#fff;border:1px solid var(--brand);font-weight:900;font-size:.9rem}
.btn-mini:hover{background:var(--brand-600);border-color:var(--brand-600)}

/* Collections page headings */
.collections-head{display:grid;gap:10px;margin-bottom:10px}
.collections-head h1{text-align:left;font-size:1.6rem;font-weight:900;color:var(--ink)}

/* Filters / view toggle */
.searchbar{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start;align-items:center}
.price-input,.sort-select,input[type="search"]{padding:8px 10px;border:1px solid var(--bdr);border-radius:10px;background:#fff;min-width:130px;font-weight:600}
.sort-select{min-width:200px}
.view-toggle{display:flex;gap:8px;flex-wrap:wrap}
.view-btn{padding:8px 12px;border:1px solid var(--bdr);background:#fff;border-radius:999px;font-weight:900;cursor:pointer}
.view-btn[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}

/* Accordion (caret via CSS) */
.brand-accordion{border:1px solid var(--bdr);border-radius:12px;background:#fff;margin:8px 0 12px;overflow:hidden}
.brand-header{width:100%;background:#fff;border:none;display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer}
.brand-name{font-weight:900;color:var(--ink);flex:1;text-align:left}
.brand-count{color:#6f7c89;font-weight:800;font-size:.9rem}
.brand-caret .caret{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--brand);transition:transform .15s}
.brand-accordion.open .brand-caret .caret{transform:rotate(180deg)}
.brand-content{padding:0 12px 12px;background:#fff}

/* PDP & Cart (zoals eerder) */
.pdp{position:fixed;inset:0;z-index:1500;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.pdp[hidden]{display:none}
.pdp-inner{background:#fff;border-radius:16px;box-shadow:0 18px 48px rgba(0,0,0,.35);width:min(980px,96vw);max-height:92vh;overflow:auto;position:relative;padding:14px}
.pdp-close{position:absolute;right:10px;top:10px;border:1px solid var(--bdr);background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:800}
.pdp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:900px){ .pdp-grid{grid-template-columns:1fr} }
.pdp-gallery{position:relative;background:#f5f7fa;border-radius:12px;padding:8px}
.pdp-slide-wrap{width:100%;aspect-ratio:4/5;background:#e9eef3;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pdp-slide-wrap img{width:100%;height:100%;object-fit:cover}
.pdp-nav{position:absolute;top:calc(50% - 18px);width:34px;height:34px;border-radius:50%;border:1px solid var(--bdr);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.pdp-nav i.chev{display:inline-block;width:8px;height:8px;border-top:2px solid #333;border-right:2px solid #333;transform:rotate(45deg)}
.pdp-nav i.chev.left{transform:rotate(-135deg)}
.pdp-nav i.chev.right{transform:rotate(45deg)}
.pdp-nav.left{left:10px}
.pdp-nav.right{right:10px}
.pdp-thumbs{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.pdp-thumbs button{width:60px;height:76px;border:1px solid var(--bdr);border-radius:8px;overflow:hidden;background:#fff;cursor:pointer;opacity:.9}
.pdp-thumbs button.active{outline:2px solid var(--brand);opacity:1}
.pdp-thumbs img{width:100%;height:100%;object-fit:cover}

#scrollTop{position:fixed;right:14px;bottom:14px;width:42px;height:42px;border-radius:50%;background:var(--brand);color:#fff;border:none;display:none;align-items:center;justify-content:center;font-size:18px;cursor:pointer}
#scrollTop:hover{background:var(--brand-600)}

.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1400;opacity:0;pointer-events:none;transition:opacity .2s}
.cart-overlay.show{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;height:100vh;width:min(400px,92vw);background:#fff;z-index:1450;transform:translateX(100%);transition:transform .22s;display:flex;flex-direction:column;border-top-left-radius:14px;border-bottom-left-radius:14px;border-left:1px solid var(--bdr)}
.cart-drawer.show{transform:translateX(0)}
.cart-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--bdr)}
.cart-title{font-size:1.05rem;font-weight:900;color:var(--ink)}
.cart-close{border:1px solid var(--bdr);background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:800}
.cart-items{padding:8px 12px;overflow:auto;flex:1;display:flex;flex-direction:column;gap:10px}
.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:center;background:var(--card);border:1px solid var(--bdr);border-radius:10px;padding:8px}
.cart-thumb{width:64px;height:80px;border-radius:8px;overflow:hidden;background:#f2f4f7}
.cart-thumb img{width:100%;height:100%;object-fit:cover}
.qty-controls button{min-width:28px;height:28px;border-radius:8px;border:1px solid var(--bdr);background:#fff;font-weight:900;cursor:pointer;padding:0 8px}
.qty-badge{min-width:28px;text-align:center;font-weight:900;color:#111}

footer{background:#0b0d10;color:#cfd6dc;text-align:center;padding:36px 0;margin-top:22px}

@media (max-width:768px){
  #nav-links{display:none;flex-direction:column;position:absolute;left:0;top:calc(34px + 56px);width:100%;background:var(--card);border-top:1px solid var(--bdr);padding:12px 0}
  #nav-links .nav-link{padding:12px 16px;text-align:center}
  #hamburger{display:flex}
  .section{padding:52px 0}
  .hero-text h1{font-size:2.1rem}
}
/* ====== Collections Compact Mode ====== */
body.collections-compact{
  --scale: .90;           /* globale schaal */
  --gap: 10px;            /* standaard grid gap */
  --radius: 10px;         /* iets strakker */
  --fs-xxs: .78rem;
  --fs-xs:  .85rem;
  --fs-sm:  .92rem;
  --fs-md:  1.05rem;
}

body.collections-compact .section{padding:40px 0}
body.collections-compact .collections-head{gap:8px;margin-bottom:8px}
body.collections-compact .collections-head h1{
  font-size:1.35rem; font-weight:900; margin:0 0 6px 0; color:var(--ink);
}

/* Filterrijen: strak en klein */
body.collections-compact .filters-compact{display:grid;gap:6px;border:1px solid var(--bdr);border-radius:var(--radius);background:#fff;padding:8px}
body.collections-compact .filters-compact .row-compact{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
body.collections-compact input[type="search"],
body.collections-compact .price-input,
body.collections-compact .sort-select{
  padding:6px 10px; border:1px solid var(--bdr); border-radius:8px; background:#fff; min-width:120px; font-size:var(--fs-xs); font-weight:600
}
body.collections-compact .sizes-line label{font-size:var(--fs-xs); font-weight:700; color:#3f566b}
body.collections-compact .btn-xs{padding:6px 10px; border-radius:8px; font-size:var(--fs-xs); font-weight:800}

/* View toggle compact */
body.collections-compact .view-btn.view-btn-xs{
  padding:6px 10px; border-radius:999px; font-size:var(--fs-xs); font-weight:800
}

/* Categorie koppen */
body.collections-compact .cat-section-compact{margin:14px 0 8px}
body.collections-compact .cat-title-compact{
  font-size:1rem; font-weight:900; color:var(--ink); margin:0 0 6px 0
}

/* Accordeon veel strakker */
body.collections-compact .brand-compact{margin:6px 0 8px; border-radius:var(--radius)}
body.collections-compact .brand-header-compact{
  padding:6px 8px; gap:8px
}
body.collections-compact .brand-header-compact .brand-name{font-size:.95rem}
body.collections-compact .brand-header-compact .brand-count{font-size:.82rem}

/* Grid compacter en kleinere kaarten */
body.collections-compact .grid-compact{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:var(--gap);
}

body.collections-compact .product.mini.mini-compact{
  padding:6px; border-radius:8px; border:1px solid var(--bdr);
}
body.collections-compact .product.mini.mini-compact .thumb{border-radius:8px; aspect-ratio:4/5}
body.collections-compact .product.mini.mini-compact .row{margin-top:6px}
body.collections-compact .product.mini.mini-compact .row .t{
  font-size:var(--fs-xs); font-weight:800; line-height:1.2;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
body.collections-compact .product.mini.mini-compact .row .p{
  font-size:var(--fs-xs); color:var(--brand); font-weight:900
}
body.collections-compact .btn-mini.btn-mini-compact{
  margin-top:6px; padding:6px 8px; font-size:var(--fs-xxs); border-radius:8px
}

/* Load more compact */
body.collections-compact .load-more-compact{margin-top:6px; text-align:center}
body.collections-compact .load-more-compact .btn-xs{min-width:140px}

/* Lijstweergave nog compacter */
body.collections-compact.list-view .grid-compact{grid-template-columns:1fr}
body.collections-compact.list-view .product.mini.mini-compact{
  display:grid; grid-template-columns:80px 1fr auto; gap:8px; padding:6px
}
body.collections-compact.list-view .product.mini.mini-compact .thumb{width:80px; height:100px; aspect-ratio:auto}
body.collections-compact.list-view .btn-mini.btn-mini-compact{margin:0; align-self:center}
/* ===== Collecties   Bershka-stijl, ge ntegreerd ===== */
body.collections-page { background: var(--bg); }

/* HERO */
.dx-hero{position:relative;min-height:42vh;display:grid;place-items:center;overflow:hidden}
.dx-hero-media{position:absolute;inset:0}
.dx-hero picture,.dx-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dx-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(16,24,32,.28))}
.dx-hero-text{position:relative;z-index:1;text-align:center;color:#fff;padding-inline:6%}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* SECTIE-TITEL */
.dx-section-title{
  font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:clamp(1.25rem,1rem + 1vw,1.8rem);
  font-weight:800;color:var(--ink);
  text-align:center;margin:34px auto 18px;
}

/* GRID 3/2/1 */
.dx-collections{padding:8px clamp(16px,4vw,36px) 64px}
.dx-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1024px){ .dx-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:640px){ .dx-grid{grid-template-columns:1fr} }

/* CARD */
.dx-card{display:block;position:relative;border-radius:12px;overflow:hidden;background:var(--card);box-shadow:0 10px 24px rgba(0,0,0,.08);text-decoration:none;color:inherit;transform:translateZ(0)}
.dx-figure{position:relative;margin:0;aspect-ratio:16/10;background:#e9eef3}
.dx-figure>img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform .3s ease,filter .3s ease}
.dx-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,28,36,.28);transition:background .3s ease}
.dx-title{color:#0f141a;font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:clamp(1rem,.8rem + .9vw,1.6rem);text-align:center;padding:8px 12px;transition:text-shadow .3s ease,backdrop-filter .3s ease}
.dx-card:hover .dx-figure>img{transform:scale(1.05);filter:saturate(1.02) contrast(1.02)}
.dx-card:hover .dx-overlay{background:rgba(20,28,36,.45)}
.dx-card:hover .dx-title{text-shadow:0 2px 10px rgba(0,0,0,.25);backdrop-filter:blur(1px)}
.reduced-motion .dx-figure>img,.reduced-motion .dx-title{transition:none}
/* === PATCH: 2025 polish zonder je look te veranderen === */
html,body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
h1,h2,h3{letter-spacing:-0.3px}

/* Hairline utility + subtiele shadows */
.hairline{border:1px solid rgba(0,0,0,.06)}

/* Modals die ooit per ongeluk inline staan — verbergen als fallback */
.modal{display:none}

/* Chips (voor filters) als ze nog geen stijl hebben */
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.06);background:#fff}

/* Buttons micro-animatie */
.btn, .btn-mini{transition:transform .18s cubic-bezier(.22,1,.36,1), box-shadow .18s cubic-bezier(.22,1,.36,1)}
.btn:hover, .btn-mini:hover{transform:translateY(-3px)}
.btn:active, .btn-mini:active{transform:translateY(0) scale(.98)}
