/* Casa N°7 v7 — productpagina (casan7-productpagina-v7). */

.cn7-product{max-width:1280px;margin:0 auto;padding:0 var(--cn7-pad-x) clamp(64px,9vw,112px);}
.cn7-kruimel{font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-label);padding:12px 0 0;text-transform:none;}
.cn7-kruimel a{color:var(--cn7-label);}

/* Boven: foto en etiket */
.cn7-p-boven{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,540px);gap:36px clamp(32px,6vw,88px);padding:clamp(20px,3vw,36px) 0 0;align-items:start;}
.cn7-p-foto{margin:0;display:flex;flex-direction:column;gap:10px;}
.cn7-p-beeld{aspect-ratio:4/5;background:var(--cn7-slot);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.cn7-p-beeld img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.cn7-p-galerij{list-style:none;margin:0;padding:0;display:flex;gap:8px;}
.cn7-p-galerij li{margin:0;width:64px;height:84px;background:var(--cn7-slot);}
.cn7-p-galerij img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.cn7-p-info{padding-top:clamp(0px,2vw,24px);}
.cn7-p-info .cn7-kicker{margin:0 0 14px;}
html .cn7-p-info h1.product_title{font-size:clamp(36px,4.6vw,60px);line-height:1.02;letter-spacing:-.02em;margin:0 0 20px;text-wrap:balance;}
.cn7-p-alinea{font-size:17px;line-height:1.65;color:var(--cn7-text-2);margin:0 0 28px;}
.cn7-etiket{display:grid;grid-template-columns:auto minmax(0,1fr);margin:0 0 30px;border-top:1px solid var(--cn7-ink);font-size:15px;}
.cn7-etiket dt{padding:10px 24px 10px 0;border-bottom:1px solid var(--cn7-rule);font-family:var(--cn7-mono);font-size:12px;color:var(--cn7-label);text-transform:none;font-weight:400;margin:0;}
.cn7-etiket dd{margin:0;padding:10px 0;border-bottom:1px solid var(--cn7-rule);}

.cn7-bekroond{margin:0 0 26px;}
.cn7-bekroond .cn7-label{margin:0 0 6px;}
.cn7-bekroond ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--cn7-ink);}
.cn7-bekroond li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--cn7-rule);margin:0;}
.cn7-medaille{font-family:var(--cn7-serif);font-size:20px;line-height:1;}
.cn7-medaille.is-hoogste{color:var(--cn7-oxide);}

.cn7-p-prijsregel{display:flex;flex-wrap:wrap;align-items:baseline;gap:16px 24px;}
.cn7-p-prijs,.cn7-p-prijs .amount{font-family:var(--cn7-mono);font-size:28px;color:var(--cn7-ink);font-weight:400;}
.cn7-p-prijs del,.cn7-p-prijs del .amount{font-size:18px;color:var(--cn7-label);}
.cn7-p-prijs ins{text-decoration:none;}
.cn7-p-voorraad{font-size:14px;color:var(--cn7-text-3);}
.cn7-p-voorraad.is-laag{color:var(--cn7-oxide);}
.cn7-p-voorraad.is-op{color:var(--cn7-label);}

/* Koopknop: aantal ± en zwarte knop */
.cn7-p-koop{margin-top:18px;}
.cn7-p-koop form.cart{display:flex;flex-wrap:wrap;gap:12px;margin:0;align-items:stretch;}
.cn7-p-koop .quantity{margin:0 !important;display:flex;border:1px solid var(--cn7-ink);opacity:1;}
.cn7-p-koop .quantity input.qty{width:44px;height:50px;border:0;background:transparent;font-family:var(--cn7-mono);font-size:15px;box-shadow:none;text-align:center;padding:0;}
.cn7-p-koop .quantity .button,.cn7-p-koop .quantity input[type=button]{width:44px;height:50px;min-height:0;border:0 !important;background:transparent !important;color:var(--cn7-ink) !important;font-size:18px;margin:0;padding:0;}
html .cn7-p-koop .single_add_to_cart_button{flex:1;min-width:200px;min-height:52px;margin:0;font-size:16px;}
.cn7-p-koop table.variations{margin-bottom:12px;}
.cn7-p-levering{margin:16px 0 0;font-size:14px;line-height:1.6;color:var(--cn7-text-3);}
.cn7-p-reviews{margin:8px 0 0;text-transform:none;letter-spacing:0;}
.cn7-p-winkel{margin:18px 0 0;font-size:16px;}

/* Smaak, voor wie, zo drinkt u hem */
.cn7-p-drie{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:36px clamp(28px,5vw,72px);padding-top:clamp(64px,9vw,112px);}
.cn7-p-drie h2{font-size:clamp(26px,3vw,34px);margin:0 0 14px;}
.cn7-p-wie{padding-top:clamp(0px,2vw,24px);}
.cn7-p-drinken{padding-top:clamp(0px,4vw,48px);}
.cn7-assen{border-top:2px solid var(--cn7-ink);}
.cn7-assen div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;border-bottom:1px solid var(--cn7-rule);font-size:15px;}
.cn7-bollen{font-family:var(--cn7-mono);letter-spacing:.18em;}
.cn7-bollen b{color:var(--cn7-oxide);font-weight:400;}
.cn7-bollen i{color:var(--cn7-rule);font-style:normal;}
.cn7-niveaus{display:flex;flex-wrap:wrap;gap:4px 18px;padding:10px 0 12px;border-top:2px solid var(--cn7-ink);border-bottom:1px solid var(--cn7-rule);font-size:15px;color:var(--cn7-label);}
.cn7-niveaus .is-actief{color:var(--cn7-ink);font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;}
.cn7-p-wie .cn7-label{margin:14px 0 8px;}
.cn7-p-drinken p{margin:0;padding-top:12px;border-top:2px solid var(--cn7-ink);font-size:16px;line-height:1.65;}

/* Waarom deze prijs */
.cn7-p-waarom{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px clamp(28px,5vw,80px);margin-top:clamp(72px,10vw,128px);padding-top:28px;border-top:2px solid var(--cn7-ink);}
.cn7-p-waarom h2{font-size:clamp(30px,3.4vw,44px);line-height:1.05;margin:0;}
.cn7-p-waarom p{margin:0;font-size:16px;line-height:1.7;max-width:52ch;}

/* Maak er een avond van (ink) */
.cn7-p-avond{margin:clamp(72px,10vw,128px) calc(-1 * var(--cn7-pad-x)) 0;background:var(--cn7-ink);color:var(--cn7-cream-2);padding:clamp(40px,6vw,72px) var(--cn7-pad-x);}
.cn7-p-avond h2{color:var(--cn7-cream-1);font-size:clamp(28px,3.2vw,40px);margin:0 0 8px;}
.cn7-p-avond > p{margin:0 0 30px;max-width:56ch;}
.cn7-avond-lijst{list-style:none;margin:0;padding:0;max-width:720px;}
.cn7-avond-lijst li{margin:0;border-bottom:1px solid rgba(243,236,221,.18);}
.cn7-avond-lijst label{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:4px 12px;align-items:baseline;padding:12px 0;cursor:pointer;font-size:15px;color:var(--cn7-cream-1);margin:0;}
.cn7-avond-lijst input{position:absolute;opacity:0;pointer-events:none;}
.cn7-avond-lijst input:focus-visible + .cn7-mark{outline:2px solid var(--cn7-oxide-light);}
.cn7-mark{color:#C98A5E;font-size:14px;}
.cn7-mono{font-family:var(--cn7-mono);font-size:14px;}
.cn7-avond-totaal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:30px;padding-top:22px;border-top:1px solid rgba(243,236,221,.3);max-width:720px;}
.cn7-avond-totaal p{margin:0;}
.cn7-avond-totaal [data-cn7-totaal]{font-size:22px;color:var(--cn7-cream-1);margin-left:auto;}
html .cn7-p-avond .button{background:var(--cn7-paper) !important;color:var(--cn7-ink) !important;margin:0;}

/* Zelfde huis, over deze fles */
.cn7-p-huis{padding-top:clamp(64px,9vw,112px);max-width:1180px;}
.cn7-p-huis h2,.cn7-p-over h2{font-size:clamp(26px,3vw,36px);margin:0 0 18px;}
.cn7-p-over{padding-top:clamp(64px,9vw,112px);max-width:72ch;}
.cn7-p-tekst{font-size:16px;line-height:1.7;color:var(--cn7-text-2);}
.cn7-p-tekst h2,.cn7-p-tekst h3{font-size:22px;margin:1.4em 0 .4em;}

/* Flatsome-resten op de productpagina verbergen */
.single-product .product-footer,.single-product .related-products-wrapper,.single-product .woocommerce-tabs{display:none;}

@media (max-width:899px){
  .cn7-p-boven{grid-template-columns:1fr;}
  .cn7-p-beeld{aspect-ratio:1/1;}
}

/* 0.4.1: Flatsome-titelbalk weg (eigen kruimelpad), etiket zonder hoofdletters, WooCommerce-voorraadregel weg (eigen regel) */
.single-product .product-page-title{display:none;}
.cn7-etiket dd{text-transform:none;letter-spacing:0;}
.cn7-p-koop .stock{display:none;}
