/* Casa N°7 v7 — automatische pagina's, filterbalk en correcties. */

/* Paginabasis */
.cn7-pagina{max-width:1180px;margin:0 auto;padding:clamp(40px,6vw,80px) var(--cn7-pad-x) clamp(64px,9vw,112px);}
.cn7-paginakop{max-width:760px;margin-bottom:clamp(32px,5vw,56px);}
.cn7-paginakop h1,.cn7-invulzin h1{margin:.2em 0 .3em;}
.cn7-kicker{color:var(--cn7-oxide);}
.cn7-lead{font-size:18px;line-height:1.6;color:var(--cn7-text-2);max-width:64ch;}
.cn7-leeg{font-family:var(--cn7-serif);font-size:22px;color:var(--cn7-ink);}

/* Lijst als drankkaart */
.cn7-lijst{list-style:none;margin:0;padding:0;border-top:2px solid var(--cn7-ink);}
.cn7-rij,.cn7-merk{display:grid;grid-template-columns:110px 1fr auto;gap:4px 24px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--cn7-rule);margin:0;}
.cn7-rij:hover,.cn7-merk:hover{background:var(--cn7-hover);}
.cn7-rij-label{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-oxide);}
.cn7-rij-naam{font-family:var(--cn7-serif);font-size:clamp(20px,2vw,24px);line-height:1.15;color:var(--cn7-ink);text-decoration:none;}
.cn7-rij-meta{grid-column:2;font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-label);}
.cn7-rij-prijs{grid-column:3;grid-row:1;font-family:var(--cn7-mono);font-size:16px;color:var(--cn7-ink);text-align:right;white-space:nowrap;}
.cn7-oud{color:var(--cn7-label);margin-right:8px;}
.cn7-flessen .cn7-rij,.cn7-selectie .cn7-rij{grid-template-columns:1fr auto;}
.cn7-flessen .cn7-rij-meta,.cn7-selectie .cn7-rij-meta{grid-column:1;}
.cn7-flessen .cn7-rij-prijs,.cn7-selectie .cn7-rij-prijs{grid-column:2;}

/* Merken */
.cn7-az{display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--cn7-mono);font-size:14px;margin-bottom:32px;}
.cn7-az span{color:var(--cn7-rule);}
.cn7-letterkop{font-family:var(--cn7-mono) !important;font-size:12px !important;color:var(--cn7-oxide) !important;letter-spacing:.06em;margin:36px 0 8px;}
.cn7-merk{grid-template-columns:minmax(180px,1.2fr) 1fr 2fr;}
.cn7-merk .cn7-rij-meta{grid-column:auto;}
.cn7-merk-plek{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-oxide);}

/* Ontdek-tabs */
.cn7-tabs{display:flex;flex-wrap:wrap;gap:8px 40px;margin:12px 0 28px;}
.cn7-tab{font-family:var(--cn7-serif);font-size:clamp(34px,4.6vw,60px);line-height:1;color:var(--cn7-label);text-decoration:none;}
.cn7-tab sup{font-family:var(--cn7-mono);font-size:14px;margin-left:6px;vertical-align:super;}
.cn7-tab[aria-selected="true"]{color:var(--cn7-ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:10px;}
.cn7-tabpaneel .cn7-label{margin-bottom:20px;}

/* Cadeau */
.cn7-invulzin h1{font-size:clamp(34px,4.8vw,66px);line-height:1.12;max-width:20ch;}
.cn7-invulkeuze{font:inherit;color:var(--cn7-oxide);border:0;border-bottom:2px solid var(--cn7-oxide) !important;background:transparent;padding:0 .1em;height:auto;width:auto;display:inline;margin:0;appearance:none;-webkit-appearance:none;cursor:pointer;}
.cn7-cadeau-antwoord{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;margin:32px 0 64px;align-items:start;}
.cn7-cadeau-fles{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--cn7-ink);}
.cn7-cadeau-fles .cn7-beeld{background:var(--cn7-slot);display:block;aspect-ratio:1/1;overflow:hidden;}
.cn7-cadeau-fles.is-eerste .cn7-beeld{aspect-ratio:4/5;}
.cn7-cadeau-fles img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.cn7-cadeau-fles .cn7-rij-prijs{text-align:left;}
.cn7-zin{font-size:16px;color:var(--cn7-text-2);}
.cn7-blok{padding:clamp(32px,5vw,56px);margin:32px 0 64px;}
.cn7-donker{background:var(--cn7-ink);color:var(--cn7-cream-2);}
.cn7-donker h2{color:var(--cn7-cream-1);}
.cn7-donker .cn7-label{color:var(--cn7-oxide-light);}
.cn7-donker .button{background:var(--cn7-paper) !important;color:var(--cn7-ink) !important;}
.cn7-drie{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--cn7-rule);padding-top:40px;}
.cn7-drie h2{font-size:clamp(22px,2.4vw,28px);}

/* Selecties */
.cn7-selectie-raster{display:grid;grid-template-columns:300px 1fr;gap:56px;align-items:start;}
.cn7-selectie-index{position:sticky;top:24px;display:flex;flex-direction:column;border-top:2px solid var(--cn7-ink);}
.cn7-selectie-index a{display:grid;grid-template-columns:32px 1fr auto;gap:8px;padding:12px 0;border-bottom:1px solid var(--cn7-rule);font-family:var(--cn7-serif);font-size:19px;color:var(--cn7-ink);text-decoration:none;}
.cn7-selectie{margin-bottom:64px;scroll-margin-top:24px;}

/* Artikel (advies) */
.cn7-artikel{display:grid;grid-template-columns:minmax(0,64ch) 300px;gap:clamp(40px,6vw,96px);max-width:1180px;margin:0 auto;padding:clamp(40px,6vw,80px) var(--cn7-pad-x) clamp(64px,9vw,112px);}
.cn7-artikel h1{font-size:clamp(44px,5.6vw,80px);}
.cn7-artikel-tekst p{font-size:18px;line-height:1.72;}
.cn7-artikel-tekst h2{font-size:clamp(26px,3vw,36px);margin-top:1.6em;}
.cn7-randnoot{border-left:2px solid var(--cn7-oxide);padding-left:18px;color:var(--cn7-text-3);}
.cn7-artikel{row-gap:0;}
.cn7-artikel > .cn7-paginakop{grid-column:1/-1;max-width:820px;margin-bottom:8px;}
.cn7-artikel-tekst h2:first-child{margin-top:32px;}
.cn7-artikel aside{margin-top:40px;}
.cn7-artikel aside{position:sticky;top:24px;align-self:start;}
.cn7-artikel aside ol{list-style:none;margin:0 0 32px;padding:0;font-size:15px;}
.cn7-artikel aside li{margin:0;padding:8px 0;border-bottom:1px solid var(--cn7-rule);}

/* Filterbalk (FacetWP) */
.cn7-filterbalk{border-top:2px solid var(--cn7-ink);border-bottom:1px solid var(--cn7-rule);padding:14px 0;margin:0 0 28px;display:flex;flex-direction:column;gap:10px;}
.cn7-filterrij{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:baseline;}
.cn7-filterrij-reset{grid-template-columns:1fr;}
.cn7-filterbalk .facetwp-facet{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 !important;}
.cn7-filterbalk .facetwp-checkbox,.cn7-filterbalk .facetwp-radio{background:none !important;padding:0 !important;margin:0 !important;font-size:15px;color:var(--cn7-ink);cursor:pointer;}
.cn7-filterbalk .facetwp-checkbox.checked,.cn7-filterbalk .facetwp-radio.checked{font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;}
.cn7-filterbalk .facetwp-checkbox.disabled,.cn7-filterbalk .facetwp-radio.disabled{color:#A8987C;cursor:default;}
.cn7-filterbalk .facetwp-counter{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-label);margin-left:4px;}
.cn7-filterbalk .facetwp-toggle{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-oxide);cursor:pointer;}
.cn7-filterbalk .facetwp-reset{background:none !important;color:var(--cn7-ink) !important;min-height:0;padding:0;text-decoration:underline;font-size:14px;}

/* Voet: correcties Flatsome-stijl */
.cn7-voet-gegevens dt,.cn7-voet-gegevens dd{text-transform:none !important;letter-spacing:0 !important;margin:0 !important;padding:0 !important;line-height:1.55 !important;font-size:12px !important;}
.cn7-voet dl{margin:0;}
.cn7-voet-links li{border:0 !important;padding:0 !important;}
.cn7-voet-links a{border-bottom:1px solid #3A3128 !important;}

/* Mobiel */
@media (max-width:899px){
  .cn7-rij,.cn7-merk{grid-template-columns:1fr auto;}
  .cn7-rij-label{grid-column:1/-1;}
  .cn7-rij-meta{grid-column:1;}
  .cn7-rij-prijs{grid-column:2;grid-row:auto;}
  .cn7-merk{grid-template-columns:1fr;}
  .cn7-cadeau-antwoord,.cn7-drie,.cn7-selectie-raster,.cn7-artikel{grid-template-columns:1fr;}
  .cn7-selectie-index,.cn7-artikel aside{position:static;}
  .cn7-filterrij{grid-template-columns:1fr;gap:4px;}
}

/* Cadeau: keuzevelden inline, punt niet los op een regel */
html .cn7-invulzin select.cn7-invulkeuze{width:auto !important;max-width:100%;display:inline-block;min-height:0;font-size:inherit;line-height:inherit;background-image:none;padding:0 .1em;}
.cn7-nowrap{white-space:nowrap;}

/* Keuzehulp */
.cn7-keuzehulp{max-width:860px;}
.cn7-kh-resultaat{max-width:1000px;}
.cn7-kh-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:10px;}
.cn7-kh-top .cn7-label{margin:0;}
.cn7-kh-terug{font-size:14px;color:var(--cn7-ink);}
.cn7-kh-balk{height:3px;background:var(--cn7-rule);margin-bottom:clamp(28px,4vw,48px);}
.cn7-kh-balk span{display:block;height:3px;background:var(--cn7-oxide);}
.cn7-keuzehulp h1{font-size:clamp(40px,5.4vw,70px);line-height:1;margin:0 0 26px;}
.cn7-kh-resultaat h1{font-size:clamp(38px,5vw,64px);line-height:1.02;margin:0 0 12px;}
.cn7-kh-opties{list-style:none;margin:0;padding:0;border-top:2px solid var(--cn7-ink);}
.cn7-kh-opties li{margin:0;}
.cn7-kh-opties a{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 24px;padding:20px 8px 20px 0;border-bottom:1px solid var(--cn7-rule);color:var(--cn7-ink);text-decoration:none;}
.cn7-kh-opties a:hover,.cn7-kh-opties a:focus-visible{background:var(--cn7-hover);}
.cn7-kh-optie{font-family:var(--cn7-serif);font-size:clamp(24px,2.8vw,32px);line-height:1.1;}
.cn7-kh-noot{font-size:14px;color:var(--cn7-text-3);}
.cn7-kh-flessen{list-style:none;margin:30px 0 0;padding:0;border-top:2px solid var(--cn7-ink);}
.cn7-kh-flessen li{display:grid;grid-template-columns:34px 64px minmax(0,1fr) auto;gap:4px 18px;align-items:start;padding:18px 0;border-bottom:1px solid var(--cn7-rule);margin:0;}
.cn7-kh-nr{font-family:var(--cn7-mono);font-size:13px;color:var(--cn7-oxide);padding-top:6px;}
.cn7-kh-beeld{display:block;width:64px;height:84px;background:var(--cn7-slot);}
.cn7-kh-beeld img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.cn7-kh-tekst{display:flex;flex-direction:column;gap:4px;}
.cn7-kh-klasse{font-family:var(--cn7-mono);font-size:11px;color:var(--cn7-oxide);}
.cn7-kh-flessen .cn7-rij-prijs{grid-column:4;grid-row:1;padding-top:6px;}
.cn7-kh-verder{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:26px;font-size:15px;}
html .cn7-knop-lijn{background:transparent !important;color:var(--cn7-ink) !important;border:1px solid var(--cn7-ink) !important;margin:0;}
html .cn7-knop-lijn:hover{background:var(--cn7-hover) !important;}
@media (max-width:599px){
  .cn7-kh-flessen li{grid-template-columns:28px 56px minmax(0,1fr);}
  .cn7-kh-flessen .cn7-rij-prijs{grid-column:3;grid-row:auto;text-align:left;padding-top:0;}
  .cn7-kh-beeld{width:56px;height:74px;}
}
html .cn7-invulzin select.cn7-invulkeuze{field-sizing:content;}

/* Home (casan7-home-v7) */
.cn7-home{max-width:1280px;margin:0 auto;padding:clamp(28px,5vw,64px) var(--cn7-pad-x) 0;}
.cn7-home h2{font-size:clamp(32px,4vw,48px);line-height:1.05;margin:0 0 14px;}
.cn7-sterk{font-size:15px;font-weight:600;}
.cn7-h-open{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:40px clamp(28px,5vw,72px);}
.cn7-h-tekst{padding-top:clamp(0px,3vw,36px);max-width:640px;}
.cn7-h-tekst h1{font-size:clamp(44px,6.4vw,86px);line-height:.98;letter-spacing:-.025em;margin:0 0 26px;text-wrap:balance;}
.cn7-h-tekst .cn7-lead{margin:0 0 36px;max-width:44ch;}
.cn7-h-tabs{display:flex;border-bottom:2px solid var(--cn7-ink);max-width:520px;margin-top:12px;}
html .cn7-h-tabs button{flex:1;padding:14px 4px 12px;margin:0;border:0;border-radius:0;background:transparent;color:var(--cn7-ink);font-family:var(--cn7-sans);font-size:16px;font-weight:600;text-transform:none;letter-spacing:0;min-height:0;box-shadow:none;}
html .cn7-h-tabs button[aria-selected="true"]{background:var(--cn7-ink);color:var(--cn7-cream-1);}
.cn7-h-paneel{display:flex;flex-direction:column;gap:14px;padding:20px 0 0;max-width:520px;}
.cn7-h-paneel[hidden]{display:none;}
.cn7-h-paneel p{margin:0;font-size:15px;line-height:1.6;}
.cn7-h-budgets{display:flex;flex-wrap:wrap;gap:8px;}
html .cn7-h-budgets button{min-height:44px;padding:0 18px;margin:0;border:1px solid var(--cn7-ink);border-radius:0;background:transparent;color:var(--cn7-ink);font-family:var(--cn7-sans);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;box-shadow:none;}
html .cn7-h-budgets button[aria-pressed="true"]{background:var(--cn7-ink);color:var(--cn7-cream-1);}
.cn7-h-tips{display:flex;flex-direction:column;border-top:1px solid var(--cn7-rule);}
.cn7-h-tips[hidden]{display:none;}
.cn7-h-tips a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 18px;padding:14px 0;border-bottom:1px solid var(--cn7-rule);color:var(--cn7-ink);text-decoration:none;}
.cn7-h-tips a:hover{background:var(--cn7-hover);}
.cn7-h-naam{font-size:16px;font-weight:600;}
.cn7-h-tips .cn7-rij-prijs{grid-column:2;grid-row:1;font-size:15px;}
.cn7-h-tips .cn7-zin{grid-column:1/-1;font-size:14px;}
.cn7-h-foto{margin:0;display:flex;flex-direction:column;gap:10px;}
.cn7-h-beeld{aspect-ratio:4/5;background:var(--cn7-slot);overflow:hidden;}
.cn7-h-beeld img{width:100%;height:100%;object-fit:cover;}
.cn7-h-foto figcaption{display:flex;justify-content:space-between;gap:16px;text-transform:none;letter-spacing:0;}
.cn7-h-routes{padding-top:clamp(64px,9vw,120px);}
.cn7-h-kop{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 40px;margin-bottom:26px;}
.cn7-h-kop h2{margin:0;}
.cn7-h-kop p{margin:0;font-size:15px;color:var(--cn7-text-3);max-width:42ch;}
.cn7-h-routelijst{border-top:2px solid var(--cn7-ink);}
.cn7-h-routelijst a{display:grid;grid-template-columns:44px minmax(160px,1.1fr) minmax(0,1.6fr) minmax(120px,.8fr);gap:6px 28px;align-items:baseline;padding:20px 0 18px;border-bottom:1px solid var(--cn7-rule);color:var(--cn7-ink);text-decoration:none;}
.cn7-h-routelijst a:hover{background:var(--cn7-hover);}
.cn7-h-plek{font-family:var(--cn7-serif);font-size:clamp(24px,2.6vw,32px);line-height:1.1;}
.cn7-h-smaak{font-size:15px;color:var(--cn7-text-2);}
.cn7-h-soort{font-size:14px;color:var(--cn7-text-3);}
.cn7-h-selectie{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px clamp(32px,6vw,96px);padding-top:clamp(64px,9vw,112px);}
.cn7-h-selectie p{margin:0 0 18px;font-size:16px;line-height:1.6;max-width:40ch;}
.cn7-h-selectie ol{margin:0;padding:0;list-style:none;border-top:2px solid var(--cn7-ink);}
.cn7-h-selectie li{margin:0;}
.cn7-h-selectie li a{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--cn7-rule);color:var(--cn7-ink);text-decoration:none;}
.cn7-h-selectie li a:hover{background:var(--cn7-hover);}
.cn7-h-selectie li a span:first-child{font-family:var(--cn7-serif);font-size:24px;line-height:1.15;}
.cn7-h-fles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:36px clamp(32px,6vw,96px);padding-top:clamp(72px,10vw,128px);}
.cn7-h-flesbeeld{aspect-ratio:3/4;max-width:420px;width:100%;justify-self:end;background:var(--cn7-slot);overflow:hidden;}
.cn7-h-flesbeeld img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.cn7-h-fles > div:last-child{padding-top:clamp(0px,4vw,56px);max-width:520px;}
.cn7-h-fles h2{font-size:clamp(32px,3.8vw,46px);margin:0 0 20px;}
.cn7-h-fles p{font-size:17px;line-height:1.65;margin:0 0 14px;}
.cn7-h-nieuwsbrief{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:28px clamp(32px,6vw,96px);padding-top:clamp(72px,10vw,128px);scroll-margin-top:24px;}
.cn7-h-nieuwsbrief p{margin:0 0 12px;font-size:16px;line-height:1.65;max-width:46ch;}
.cn7-h-winkel{margin:clamp(80px,11vw,150px) calc(-1 * var(--cn7-pad-x)) 0;background:var(--cn7-ink);color:var(--cn7-cream-2);padding:clamp(48px,7vw,88px) var(--cn7-pad-x);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:40px clamp(28px,5vw,80px);}
.cn7-h-winkel h2{color:var(--cn7-cream-1);font-size:clamp(30px,3.4vw,42px);margin:0 0 18px;}
.cn7-h-winkel p{margin:0 0 22px;font-size:16px;line-height:1.65;max-width:46ch;}
.cn7-h-winkel a{color:var(--cn7-cream-1);}
.cn7-h-links{display:flex;flex-wrap:wrap;gap:12px 24px;}
.cn7-h-winkel dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 24px;align-content:start;font-size:15px;}
.cn7-h-winkel dt{font-family:var(--cn7-mono);font-size:12px;color:#A8987C;padding-top:3px;text-transform:none;font-weight:400;margin:0;}
.cn7-h-winkel dd{margin:0;color:var(--cn7-cream-1);}
@media (max-width:760px){
  .cn7-h-routelijst a{grid-template-columns:32px minmax(0,1fr);}
  .cn7-h-smaak,.cn7-h-soort{grid-column:2;}
  .cn7-h-flesbeeld{justify-self:start;}
}

/* Flesvlak (HANDOFF-foto-mobiel §1): witte productfoto's warm tonen. Alleen weergave; het bestand blijft wit (Google Shopping). */
html .cn7-p-beeld,html .cn7-p-galerij li,html .cn7-kh-beeld,html .cn7-cadeau-fles .cn7-beeld,html .cn7-h-flesbeeld,html .cn7-bottle,
html .product-small .box-image{background:radial-gradient(ellipse 95% 85% at 50% 45%,#F2EBDE 0%,#EAE1D0 70%,#E4DAC7 100%);isolation:isolate;box-sizing:border-box;}
html .cn7-p-beeld,html .cn7-cadeau-fles .cn7-beeld,html .cn7-h-flesbeeld,html .cn7-bottle{padding:7% 12% 5%;}
html .cn7-p-galerij li,html .cn7-kh-beeld{padding:4px 6px;}
html .product-small .box-image{padding:5% 8% 4%;}
html .cn7-p-beeld img,html .cn7-p-galerij img,html .cn7-kh-beeld img,html .cn7-cadeau-fles .cn7-beeld img,html .cn7-h-flesbeeld img,html .cn7-bottle img,
html .product-small .box-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;filter:brightness(1.05) contrast(1.03);background:transparent;}
/* Winkelmand, mini-mand, bestelbevestiging, kasticket: witte productfoto's (Google Shopping) op het warme vlak. */
.woocommerce-cart-form .product-thumbnail img,.woocommerce-mini-cart-item img,.widget_shopping_cart .cart_list img,.woocommerce-order-details img,.woocommerce-checkout-review-order-table img,.cn7-kasticket-logo img,.cn7-overgang-logo img,img.cn7-overgang-logo{mix-blend-mode:multiply;background:transparent !important;}
.woocommerce-cart-form .product-thumbnail a,.woocommerce-cart-form .product-thumbnail img{box-shadow:none !important;border:0 !important;}
html .product-small .box-image > *,html .product-small .box-image a{background:transparent !important;}

/* Over de zaak (ontwerp v8, casan7-over-ons-v8) */
.cn7-oz{max-width:1280px;margin:0 auto;padding:clamp(28px,5vw,64px) var(--cn7-pad-x) 0;}
.cn7-oz h2{font-size:clamp(30px,3.6vw,44px);line-height:1.06;margin:0 0 18px;}
.cn7-oz-open{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px clamp(28px,5vw,80px);align-items:end;}
.cn7-oz-tekst{max-width:620px;padding-bottom:clamp(0px,3vw,40px);}
.cn7-oz-tekst h1{margin:0 0 16px;font-size:clamp(44px,5.6vw,74px);line-height:.98;letter-spacing:-.02em;text-wrap:balance;}
.cn7-oz-tekst .cn7-lead{max-width:44ch;margin:0;}
.cn7-oz-logo{margin:28px 0 0;display:flex;align-items:center;gap:18px;}
.cn7-oz-logo img{display:block;width:140px;height:140px;flex:none;}
.cn7-oz-logo figcaption{font-size:12px;line-height:1.6;max-width:22ch;text-transform:none;letter-spacing:0;}
.cn7-oz-gevel{margin:0;display:flex;flex-direction:column;gap:10px;}
.cn7-oz-beeld{aspect-ratio:3/2;background:var(--cn7-slot);overflow:hidden;}
.cn7-oz-beeld img{width:100%;height:100%;object-fit:cover;display:block;}
.cn7-oz-gevel figcaption{text-transform:none;letter-spacing:0;}
.cn7-oz-feiten{padding-top:clamp(72px,10vw,128px);max-width:1180px;}
.cn7-oz-feiten dl{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));border-top:2px solid var(--cn7-ink);}
.cn7-oz-feiten dl > div{padding:22px 24px 22px 0;border-bottom:1px solid var(--cn7-rule);}
.cn7-oz-feiten dt{margin-bottom:8px;text-transform:none;letter-spacing:0;}
.cn7-oz-feiten dd{margin:0;font-family:var(--cn7-serif);font-size:40px;line-height:1;color:var(--cn7-ink);}
.cn7-oz-winkel{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:40px clamp(32px,6vw,96px);padding-top:clamp(72px,10vw,128px);max-width:1240px;}
.cn7-oz-winkel.is-zonder-foto{grid-template-columns:minmax(0,1fr);}
.cn7-oz-humidor{aspect-ratio:4/5;max-width:460px;width:100%;background:var(--cn7-slot-dark);justify-self:end;overflow:hidden;}
.cn7-oz-humidor img{width:100%;height:100%;object-fit:cover;display:block;}
.cn7-oz-winkeltekst{max-width:520px;padding-top:clamp(0px,5vw,72px);}
.cn7-oz-winkel.is-zonder-foto .cn7-oz-winkeltekst{padding-top:0;max-width:620px;}
.cn7-oz-winkeltekst p{margin:0 0 14px;font-size:17px;line-height:1.65;color:var(--cn7-text-2);}
.cn7-oz-link{display:inline-block;margin-top:10px;font-size:15px;font-weight:600;}
.cn7-oz-bezoek{margin:clamp(80px,11vw,150px) calc(-1 * var(--cn7-pad-x)) 0;background:var(--cn7-ink);color:var(--cn7-paper);padding:clamp(48px,7vw,88px) var(--cn7-pad-x);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:36px clamp(28px,5vw,80px);}
.cn7-oz-bezoek h2{margin:0;font-size:clamp(30px,3.4vw,42px);line-height:1.08;color:var(--cn7-cream-1);}
.cn7-oz-bezoek dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 24px;font-size:15px;}
.cn7-oz-bezoek dt{color:var(--cn7-cream-3);padding-top:3px;text-transform:none;letter-spacing:0;}
.cn7-oz-bezoek dd{margin:0;color:var(--cn7-cream-1);}
.cn7-oz-bezoeklinks{display:flex;flex-direction:column;gap:12px;}
.cn7-oz-bezoeklinks a{color:var(--cn7-cream-1);font-size:15px;}
.cn7-oz-bezoeklinks a:first-child{font-weight:600;}
.cn7-oz-bezoeklinks a:hover{color:var(--cn7-oxide-light);}
/* Inktbanden over de volle schermbreedte (zonder horizontaal scrollen) */
.cn7-oz-bezoek,.cn7-h-winkel{border-image:conic-gradient(var(--cn7-ink) 0 0) fill 0 / 0 / 0 100vmax;}
html .cn7-oz dt,html .cn7-oz dd{display:block;float:none;text-transform:none;letter-spacing:0;font-weight:400;}
@media (max-width:760px){
  .cn7-oz-logo img{width:112px;height:112px;}
  .cn7-oz-feiten dd{font-size:34px;}
  .cn7-oz-humidor{justify-self:stretch;max-width:none;}
}

/* Prijsblok (README v8 §7c, richting 1b): actieprijs, vergelijking, besparing, einddatum; Adorini adviesprijs */
.cn7-prijsblok{display:inline-flex;flex-direction:column;gap:3px;font-family:var(--cn7-mono);line-height:1.35;}
.cn7-prijsblok .cn7-pb-soort{font-size:11px;color:var(--cn7-oxide);}
.cn7-prijsblok.is-advies .cn7-pb-soort{color:var(--cn7-label);}
.cn7-prijsblok .cn7-pb-nu,.cn7-prijsblok .cn7-pb-nu .amount{color:var(--cn7-ink);}
.cn7-prijsblok.is-actie .cn7-pb-nu,.cn7-prijsblok.is-actie .cn7-pb-nu .amount{font-weight:500;}
.cn7-prijsblok .cn7-pb-rij{font-family:var(--cn7-sans);font-size:12px;color:var(--cn7-text-2);}
.cn7-prijsblok .cn7-pb-rij s{font-family:var(--cn7-mono);}
.cn7-prijsblok .cn7-pb-bespaard{font-family:var(--cn7-sans);font-size:12px;font-weight:600;color:var(--cn7-success);}
.cn7-rij-prijs .cn7-prijsblok,.product-small .price .cn7-prijsblok{align-items:flex-end;text-align:right;}
.product-small .price .cn7-prijsblok{align-items:inherit;text-align:inherit;}
/* Productpagina: lijn boven, rijen gescheiden */
.cn7-p-prijs .cn7-prijsblok.is-pagina{display:flex;gap:0;min-width:min(100%,340px);}
.cn7-p-prijs .cn7-prijsblok.is-pagina.is-actie,.cn7-p-prijs .cn7-prijsblok.is-pagina.is-advies{border-top:1px solid var(--cn7-ink);}
.cn7-p-prijs .is-pagina > span,.cn7-p-prijs .is-pagina > details{padding:7px 0;}
.cn7-p-prijs .is-pagina.is-actie > span + span,.cn7-p-prijs .is-pagina.is-advies > span + span,.cn7-p-prijs .is-pagina > details{border-top:1px solid var(--cn7-rule);}
.cn7-p-prijs .is-pagina .cn7-pb-nu,.cn7-p-prijs .is-pagina .cn7-pb-nu .amount{font-size:26px;}
.cn7-p-prijs .is-pagina .cn7-pb-soort{font-size:12px;padding-bottom:0;}
.cn7-p-prijs .is-pagina .cn7-pb-soort + .cn7-pb-nu{border-top:0;padding-top:0;}
.cn7-p-prijs .is-pagina .cn7-pb-rij,.cn7-p-prijs .is-pagina .cn7-pb-bespaard{font-size:13px;}
.cn7-pb-uitleg summary{cursor:pointer;list-style:none;font-family:var(--cn7-sans);font-size:13px;text-decoration:underline;text-underline-offset:3px;min-height:32px;display:flex;align-items:center;}
.cn7-pb-uitleg summary::-webkit-details-marker{display:none;}
.cn7-pb-uitleg > span{display:block;margin-top:6px;padding:12px 14px;background:var(--cn7-receipt);font-family:var(--cn7-sans);font-size:13px;line-height:1.55;color:var(--cn7-text-2);max-width:46ch;}
/* Geen rode actiebadge op productfoto's */
html .badge-container .badge:has(.onsale),html .badge-container .callout:has(.onsale),html span.onsale{display:none !important;}

/* Contact en tastings (ontwerp v8, casan7-contact-v8) */
.cn7-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:48px clamp(32px,6vw,96px);max-width:1240px;margin:0 auto;padding:clamp(28px,5vw,64px) var(--cn7-pad-x) clamp(80px,12vw,150px);}
.cn7-contact h1{margin:0 0 16px;font-size:clamp(44px,5.6vw,74px);line-height:.98;letter-spacing:-.02em;text-wrap:balance;}
.cn7-contact .cn7-lead{margin:0 0 36px;max-width:44ch;}
.cn7-contact-tabs{display:flex;flex-wrap:wrap;gap:6px 22px;margin-bottom:22px;}
.cn7-contact-tabs a{min-height:44px;display:inline-flex;align-items:center;font-size:15px;color:var(--cn7-ink);text-decoration:none;}
.cn7-contact-tabs a[aria-selected="true"]{font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;}
.cn7-contact-form{display:flex;flex-direction:column;gap:18px;max-width:560px;margin:0;}
.cn7-contact-form label{display:flex;flex-direction:column;gap:6px;margin:0;font-family:var(--cn7-mono);font-size:12px;font-weight:400;color:var(--cn7-label);text-transform:none;letter-spacing:0;}
.cn7-contact-form label[hidden],.cn7-contact-fout[hidden]{display:none;}
html .cn7-contact-form input[type="text"],html .cn7-contact-form input[type="email"],html .cn7-contact-form textarea{margin:0;padding:10px 0;border:0;border-bottom:1px solid var(--cn7-ink);border-radius:0;background:transparent;box-shadow:none;height:auto;font-family:var(--cn7-sans);font-size:17px;line-height:1.5;color:var(--cn7-ink);}
html .cn7-contact-form textarea{resize:vertical;min-height:130px;}
html .cn7-contact-form input:focus,html .cn7-contact-form textarea:focus{box-shadow:none;border-bottom:2px solid var(--cn7-oxide);outline:none;}
.cn7-contact-hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden;}
.cn7-contact-fout{margin:0;font-size:14px;color:var(--cn7-oxide);}
html .cn7-contact-knop{align-self:flex-start;min-height:52px;margin:0;padding:0 28px;font-size:16px;}
.cn7-contact-ok{display:flex;flex-direction:column;gap:10px;max-width:520px;border-top:2px solid var(--cn7-ink);padding-top:20px;}
.cn7-contact-ok p{margin:0;font-size:16px;line-height:1.6;color:var(--cn7-text-2);}
.cn7-contact-ok .cn7-contact-ok-kop{font-family:var(--cn7-serif);font-size:30px;color:var(--cn7-ink);}
.cn7-contact-rechts{display:flex;flex-direction:column;gap:28px;padding-top:clamp(0px,4vw,56px);}
.cn7-contact-foto{aspect-ratio:4/3;background:var(--cn7-slot);overflow:hidden;}
.cn7-contact-foto img{width:100%;height:100%;object-fit:cover;display:block;}
.cn7-contact-rechts dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 24px;font-size:15px;border-top:1px solid var(--cn7-ink);padding-top:18px;}
html .cn7-contact-rechts dt,html .cn7-contact-rechts dd{display:block;margin:0;font-weight:400;text-transform:none;letter-spacing:0;}
.cn7-contact-rechts dt{padding-top:3px;}

/* Juridisch sjabloon (ontwerp v8, casan7-voorwaarden-v8) */
.cn7-jur{max-width:1180px;margin:0 auto;padding:clamp(28px,5vw,64px) var(--cn7-pad-x) clamp(80px,12vw,140px);}
.cn7-jur-kop h1{margin:0 0 18px;font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:break-word;}
.cn7-jur-kop .cn7-lead{margin:0;max-width:58ch;}
.cn7-jur-status{margin:14px 0 0;text-transform:none;letter-spacing:0;}
.cn7-jur-status.is-voorlopig{color:var(--cn7-oxide);}
.cn7-jur-body{display:flex;flex-wrap:wrap;align-items:flex-start;gap:36px clamp(36px,6vw,88px);padding-top:clamp(40px,6vw,72px);}
.cn7-jur-inhoud{flex:0 1 250px;position:sticky;top:16px;display:flex;flex-direction:column;border-top:2px solid var(--cn7-ink);padding-top:4px;}
.cn7-jur-inhoud .cn7-label{margin:8px 0 6px;text-transform:none;letter-spacing:0;}
.cn7-jur-inhoud a{padding:7px 0;border-bottom:1px solid var(--cn7-rule);font-size:14px;line-height:1.35;color:var(--cn7-ink);text-decoration:none;}
.cn7-jur-inhoud a:hover{color:var(--cn7-oxide);}
.cn7-jur-tekst{flex:1 1 520px;min-width:0;}
.cn7-jur-artikel{padding:26px 0 30px;border-top:1px solid var(--cn7-rule);scroll-margin-top:16px;}
.cn7-jur-artikel:first-child,.cn7-jur-inleiding + .cn7-jur-artikel{border-top:2px solid var(--cn7-ink);}
.cn7-jur-artikel h2{margin:0 0 14px;display:flex;gap:16px;align-items:baseline;font-size:clamp(22px,2.2vw,27px);line-height:1.15;color:var(--cn7-ink);}
.cn7-jur-artikel h2 span{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-oxide);min-width:22px;}
.cn7-jur-artikel p,.cn7-jur-artikel ul,.cn7-jur-artikel ol,.cn7-jur-inleiding p{margin:0 0 12px;padding-left:38px;font-size:16px;line-height:1.7;color:var(--cn7-text-2);max-width:68ch;text-wrap:pretty;}
.cn7-jur-artikel ul,.cn7-jur-artikel ol{padding-left:58px;}
.cn7-jur-artikel h3{margin:22px 0 8px;padding-left:38px;font-family:var(--cn7-sans);font-weight:600;font-size:17px;line-height:1.35;letter-spacing:0;text-transform:none;color:var(--cn7-ink);}
.cn7-jur-artikel a,.cn7-jur-inleiding a{color:var(--cn7-ink);text-decoration:underline;text-underline-offset:2px;}
.cn7-jur-vragen{margin:18px 0 0;padding-top:20px;border-top:2px solid var(--cn7-ink);font-size:15px;color:var(--cn7-text-2);}
.cn7-jur-vragen a{color:var(--cn7-ink);text-decoration:underline;text-underline-offset:2px;}
a[href^="tel:"]{white-space:nowrap;}
@media (max-width:760px){
  .cn7-jur-kop h1{font-size:clamp(28px,8.2vw,40px);line-height:1.04;hyphens:auto;}
  .cn7-jur-inhoud{position:static;flex-basis:100%;}
  .cn7-jur-artikel p,.cn7-jur-inleiding p,.cn7-jur-artikel h3{padding-left:0;}
  .cn7-jur-artikel ul,.cn7-jur-artikel ol{padding-left:20px;}
}

/* Winkelmand: drempel gratis verzending (zelfde opmaak als afrekenen) */
.woocommerce-cart .cart_totals .cn7-drempel td{border:0 !important;padding-top:16px !important;font-size:14px;text-align:left;}
.woocommerce-cart .cart_totals .cn7-drempel td:before{display:none;}
.woocommerce-cart .cn7-drempel p{margin:0 0 8px;}
.woocommerce-cart .cn7-drempelbalk{height:6px;background:#E2D8C4;margin:0 0 18px;}
.woocommerce-cart .cn7-drempelbalk span{display:block;height:6px;background:var(--cn7-oxide);}
.woocommerce-cart .cn7-drempel .cn7-label{margin:0 0 6px;}
.woocommerce-cart .cn7-aanvullers{list-style:none;margin:0;padding:0;border-top:1px solid var(--cn7-ink);}
.woocommerce-cart .cn7-aanvullers li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 12px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--cn7-rule);margin:0;font-size:14px;}
.woocommerce-cart .cn7-aanvullers a{font-weight:600;white-space:nowrap;}

/* 0.7.2 — Paginatitel op categorie-, winkel- en zoekpagina's (onder het kruimelpad) */
.cn7-cat-titel{margin:10px 0 0;font-size:clamp(34px,4.4vw,60px);line-height:1.02;}
/* 0.7.2 — Mobiel: filters achter de knop "Filteren"; uitgegrijsde opties (0) weg */
.cn7-filterknop{display:none;}
@media (max-width:760px){
  .cn7-cat-titel{margin-top:6px;font-size:36px;}
  html .cn7-filterknop{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;margin:0 0 18px;padding:0 16px;
    border:1px solid var(--cn7-ink);border-radius:0;background:transparent !important;box-shadow:none;color:var(--cn7-ink) !important;
    font-family:var(--cn7-sans);font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer;}
  .cn7-filterknop::after{content:"+";font-family:var(--cn7-mono);font-size:18px;font-weight:400;}
  .cn7-filterknop[aria-expanded="true"]::after{content:"\2013";}
  .cn7-filterbalk{display:none;}
  .cn7-filterbalk.is-open{display:flex;}
  .cn7-filterrij{grid-template-columns:1fr;gap:6px;}
  .cn7-filterbalk .facetwp-checkbox.disabled,.cn7-filterbalk .facetwp-radio.disabled{display:none;}
}

/* 0.7.9 — Kenmerkpagina's (moment, regio, merk …): geen kruimelpad. Titel op één regel zolang hij past; aantal en sortering schuiven dan onder de titel */
body[class*=" tax-pa_"] .category-page-title .woocommerce-breadcrumb{display:none;}
.category-page-title .page-title-inner{flex-wrap:wrap;row-gap:12px;}
.category-page-title .page-title-inner>.flex-col.flex-grow{flex:1 0 auto;max-width:100%;}
/* 0.7.9 — Ontdek: zichtbare paginatitel (H1); home: foto zonder onderschrift */
.cn7-ontdek-titel{margin:6px 0 22px;}
/* 0.7.11 — Winkelmand, mini-mand en bestelling: de witte achtergrond van productfoto's verdween niet op iPhone/Safari.
   Safari mengt (multiply) alleen binnen de eigen groep; daarom krijgt de cel/link zelf het warme vlak als achtergrond. */
.woocommerce-cart-form .product-thumbnail,.woocommerce-cart-form .product-thumbnail a{background-color:var(--cn7-paper) !important;isolation:isolate;}
