/* Approved Home/About footer, shared by cart, choice guide and checkout preview. */
.cb-footer,
.cb-footer-signup,
.cb-payment-logos {
  --cb-footer-sans: 'Avenir Next', 'Helvetica Neue', Arial, sans-serif;
  --cb-footer-serif: Didot, 'Bodoni 72', 'Bodoni MT', 'Times New Roman', serif;
  --cb-footer-bronze: #80623e;
  --cb-footer-line: #ddd5ca;
  box-sizing: border-box;
  font: 400 16px/normal var(--cb-footer-sans);
  color: #171511;
}
.cb-footer *, .cb-footer-signup *, .cb-payment-logos * { box-sizing: border-box; }
.cb-footer-signup {
  display: grid;
  grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
  max-width: 1536px;
  min-height: 310px;
  margin: 0 auto;
  background: #e9dfd2;
}
.cb-footer-signup__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 58px max(35px, calc((min(100vw, 1536px) - 1420px) / 2));
  padding-right: 65px;
}
.cb-footer-signup p {
  max-width: 570px;
  margin: 0;
  color: #4b463f;
  font-size: 14px;
  line-height: 1.65;
}
.cb-footer-signup .cb-eyebrow {
  margin-bottom: 14px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: .22em;
}
.cb-footer-signup h2 {
  margin: 0 0 15px;
  font: 400 clamp(2.6rem, 4vw, 4.55rem)/.98 var(--cb-footer-serif);
  letter-spacing: -.035em;
}
.cb-signup-form {
  display: flex;
  max-width: 560px;
  margin-top: 24px;
  border-bottom: 1px solid #9f8d77;
}
.cb-signup-form input {
  flex: 1;
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 14px 4px;
  color: #171511;
  font: 13px var(--cb-footer-sans);
}
.cb-signup-form button {
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  padding: 0 4px 0 18px;
  color: #88602f;
  font: 600 11px var(--cb-footer-sans);
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
}
.cb-footer-signup__image { position: relative; overflow: hidden; }
.cb-footer-signup__image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 63% center;
}
.cb-footer-signup__image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #e9dfd2, transparent 24%);
  pointer-events: none;
}
.cb-footer {
  max-width: 1536px;
  margin: auto;
  padding: 58px max(25px, calc((min(100vw, 1536px) - 1420px) / 2)) 22px;
  background: #fbf8f2;
  border-top: 1px solid var(--cb-footer-line);
}
.cb-footer__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) repeat(4, minmax(0, 1fr));
  gap: 54px;
}
.cb-footer__brand img { width: 105px; height: 105px; border-radius: 50%; object-fit: cover; }
.cb-footer__brand p { max-width: 220px; margin: 17px 0; font: 400 1.35rem/1.15 var(--cb-footer-serif); }
.cb-footer h3 { margin: 3px 0 18px; font: 600 10px var(--cb-footer-sans); text-transform: uppercase; letter-spacing: .1em; }
.cb-footer nav { display: grid; gap: 10px; }
.cb-footer nav a { color: #4f4941; text-decoration: none; font-size: 12px; line-height: normal; overflow-wrap: anywhere; }
.cb-footer nav a:hover { color: #88602f; }
.cb-payment-note { font-size: 12px; line-height: 1.6; color: #4f4941; margin: 12px 0; }
.cb-social { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; }
.cb-social a {
  width: 37px;
  height: 37px;
  border: 1px solid #cfc5b9;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #39352f;
  background: rgba(255, 255, 255, .45);
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.cb-social a:hover { color: #fff; background: #a8783d; border-color: #a8783d; transform: translateY(-2px); }
.cb-social svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.cb-social .cb-youtube-icon svg, .cb-social .cb-linkedin-icon svg { stroke: none; fill: currentColor; }
.cb-payment-logos {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 38px 0 0;
  padding: 22px 0 5px;
  border-top: 1px solid var(--cb-footer-line);
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: #c9bcad transparent;
}
/* Auto margin aligns right when there is room, without clipping the first logo on narrower screens. */
.cb-payment-logos > :first-child { margin-inline-start: auto; }
.cb-pay-logo {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  min-width: 52px;
  padding: 0 8px;
  border: 1px solid #d8ccbd;
  border-radius: 7px;
  background: #fff;
  color: var(--cb-footer-bronze);
  font: 700 9px/1 var(--cb-footer-sans);
  letter-spacing: -.01em;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(31, 26, 20, .04);
}
.cb-pay-logo.cb-visa { font-size: 12px; font-style: italic; }
.cb-pay-logo.cb-apple, .cb-pay-logo.cb-bitcoin { font-size: 10px; }
.cb-pay-logo.cb-mastercard { position: relative; padding-left: 27px; }
.cb-pay-logo.cb-mastercard::before, .cb-pay-logo.cb-mastercard::after { content: ''; position: absolute; width: 13px; height: 13px; border-radius: 50%; left: 8px; background: var(--cb-footer-bronze); }
.cb-pay-logo.cb-mastercard::after { left: 15px; opacity: .42; }
.cb-pay-logo b { color: inherit; font-weight: 700; }
.cb-payment-logos--compact { flex-wrap: wrap; overflow: visible; margin: 24px 0; padding: 0; border: 0; }
.cb-payment-logos--compact > :first-child { margin-inline-start: 0; }
.cb-footer__bottom { display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-top: 45px; padding-top: 19px; border-top: 1px solid var(--cb-footer-line); color: #746d64; font-size: 10px; }
.cb-footer__legal { display: flex; gap: 20px; }
.cb-age { display: flex; align-items: center; gap: 9px; }
.cb-age b { flex: 0 0 auto; width: 29px; height: 29px; border: 1px solid #8d857b; border-radius: 50%; display: grid; place-items: center; color: #39352f; }
.cb-footer :focus-visible, .cb-footer-signup :focus-visible, .cb-payment-logos:focus-visible { outline: 2px solid #88602f; outline-offset: 4px; }
@media (max-width: 1050px) {
  .cb-footer-signup { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .cb-footer-signup__copy { padding: 48px 30px; }
  .cb-footer__grid { grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(0, 1fr)); }
  .cb-footer__grid > div:nth-child(4), .cb-footer__grid > div:nth-child(5) { margin-top: 15px; }
}
@media (max-width: 600px) {
  .cb-footer-signup { grid-template-columns: minmax(0, 1fr); }
  .cb-footer-signup__copy { padding: 45px 20px; }
  .cb-footer-signup__image { min-height: 245px; }
  .cb-footer-signup__image::after { background: linear-gradient(180deg, #e9dfd2, transparent 25%); }
  .cb-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 24px; }
  .cb-footer__brand { grid-column: 1 / -1; }
  .cb-footer__brand img { width: 86px; height: 86px; }
  .cb-footer__bottom { align-items: flex-start; flex-direction: column; }
  .cb-footer__legal { flex-wrap: wrap; gap: 10px 16px; }
  .cb-payment-logos > :first-child { margin-inline-start: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .cb-social a { transition: none; }
}
/* Definitieve mobiele beeldvolgorde: vaste beeldkolom naast de tekst. */
@media(max-width:900px){
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{order:-1!important;width:100%;height:390px!important;min-height:390px!important;aspect-ratio:auto!important}
  .hero__visual>img,.home-hero__image>img,.about-hero__visual>img,.producers-hero__visual>img,.club-hero__visual>img,.gift-hero__visual>img{width:100%!important;height:100%!important;object-fit:cover!important}
  .about-conscious__image,.producer-profile__image,.producer-why__image,.club-selection__visual,.product-story__image,.bio-story__image,.zero-lifestyle__image{order:-1!important;width:100%;height:360px!important;min-height:360px!important}
  .about-conscious__image>img,.producer-profile__image>img,.producer-why__image>img,.product-story__image>img,.bio-story__image>img,.zero-lifestyle__image>img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
  .footer-signup__image,.cb-footer-signup__image{order:-1!important;width:100%;height:270px!important;min-height:270px!important}
  .footer-signup__image>img,.cb-footer-signup__image>img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
}
@media(max-width:760px){
  .category-product,.zero-product,.rose-card{display:flex!important;flex-direction:column!important}
  .category-product__visual,.rose-card__visual{order:-1!important;width:100%;height:410px!important;min-height:410px!important}
  .category-product__visual img,.rose-card__visual img{object-fit:contain!important;object-position:center!important}
}
@media(max-width:430px){
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{height:350px!important;min-height:350px!important}
  .about-conscious__image,.producer-profile__image,.producer-why__image,.club-selection__visual,.product-story__image,.bio-story__image,.zero-lifestyle__image{height:330px!important;min-height:330px!important}
}

/* Duidelijke headerbediening in iedere preview: account als herkenbaar poppetje en een ruimer hart voor Mijn Kelder. */
.header .icons .account,.header .icons .heart{display:grid!important;place-items:center!important;flex:0 0 auto}
.header .icons .account{width:25px;height:25px}
.header .icons .heart{width:34px;height:34px}
.header .icons .account svg{width:24px;height:24px;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.header .icons .heart svg{width:31px;height:31px;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;transform:scale(1.04);transform-origin:center}
@media(max-width:600px){
  .header .icons{gap:9px!important}
  .header .icons .account,.header .icons .heart{display:grid!important}
  .header .icons .account{width:25px;height:25px}
  .header .icons .heart{width:34px;height:34px}
  .header .icons .account svg{width:23px;height:23px}
  .header .icons .heart svg{width:30px;height:30px}
}

/* Mobiel blijft dezelfde desktop-compositie: beeld en tekst naast elkaar. */
@media(max-width:900px){
  .hero,.ref-hero,.home-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{
    display:grid!important;
    grid-template-columns:minmax(150px,.48fr) minmax(0,.52fr)!important;
    align-items:stretch!important;
    min-height:360px!important;
  }
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{
    min-width:0!important;
    padding:28px 16px!important;
    align-self:center!important;
  }
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{
    order:initial!important;
    width:100%!important;
    height:360px!important;
    min-height:360px!important;
    aspect-ratio:auto!important;
  }
  .hero__visual>img,.home-hero__image>img,.about-hero__visual>img,.producers-hero__visual>img,.club-hero__visual>img,.gift-hero__visual>img{
    width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .hero h1,.ref-copy h1,.home-hero h1,.about-hero h1,.producers-hero h1,.club-hero h1,.gift-hero h1{
    font-size:clamp(1.9rem,7vw,3.2rem)!important;
    line-height:.96!important;
    letter-spacing:-.04em!important;
    overflow-wrap:anywhere;
  }
  .hero__copy .intro,.hero-copy>p:not(.eyebrow),.ref-copy>p:not(.eyebrow,.rating-line),.home-hero__intro,.about-hero .intro,.producers-hero .intro,.club-hero .intro,.gift-hero .intro{
    font-size:11px!important;line-height:1.5!important;
  }
  .hero .actions,.hero-copy .actions,.ref-copy .actions,.home-hero .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{
    gap:7px!important;flex-direction:column!important;align-items:stretch!important;margin-top:18px!important;
  }
  .hero .button,.hero .primary,.hero .secondary,.ref-copy .button,.ref-copy .primary,.ref-copy .secondary,.home-hero .button,.home-hero .primary,.home-hero .secondary,.about-hero .primary,.about-hero .secondary,.producers-hero .primary,.producers-hero .secondary,.club-hero .primary,.club-hero .secondary,.gift-hero .primary,.gift-hero .secondary{
    min-height:34px!important;padding:7px 9px!important;font-size:8px!important;white-space:normal!important;text-align:center;
  }
  .home-hero__proof,.rating-line{margin-top:18px!important;font-size:9px!important;line-height:1.35!important}
  .home-hero__proof small,.rating-line small{display:block;margin:4px 0 0!important}
  .about-hero__caption,.producer-caption,.gift-hero__visual figcaption{font-size:7px!important;right:8px!important;bottom:8px!important;padding:5px 6px!important}

  .home-origin,.story-split,.seo-home,.about-conscious,.producer-profile,.producer-why,.club-selection,.product-story,.bio-story,.zero-lifestyle{
    display:grid!important;
    grid-template-columns:minmax(150px,.48fr) minmax(0,.52fr)!important;
    gap:0!important;
    align-items:stretch!important;
  }
  .home-origin__image,.about-conscious__image,.producer-profile__image,.producer-why__image,.club-selection__visual,.product-story__image,.bio-story__image,.zero-lifestyle__image{
    order:initial!important;width:100%!important;height:330px!important;min-height:330px!important;
  }
  .home-origin__image>img,.about-conscious__image>img,.producer-profile__image>img,.producer-why__image>img,.club-selection__visual>img,.product-story__image>img,.bio-story__image>img,.zero-lifestyle__image>img{
    width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .home-origin__copy,.about-conscious__copy,.producer-profile__copy,.producer-why__copy,.club-selection__copy,.product-story__copy,.bio-story__copy,.zero-lifestyle__copy,.story-split>div:last-child,.seo-home>div:last-child{
    min-width:0!important;padding:24px 16px!important;align-self:center!important;
  }
  .home-origin h2,.about-conscious h2,.producer-profile h2,.producer-why h2,.club-selection h2,.product-story h2,.bio-story h2,.zero-lifestyle h2,.story-split h2,.seo-home h2{
    font-size:clamp(1.8rem,6.8vw,2.8rem)!important;line-height:.98!important;
  }
  .home-origin p:not(.eyebrow),.about-conscious p:not(.eyebrow),.producer-profile p,.producer-why p,.club-selection p,.product-story p,.bio-story p,.zero-lifestyle p,.story-split p:not(.eyebrow),.seo-home p{
    font-size:10px!important;line-height:1.55!important;
  }

  .cb-footer-signup,.footer-signup{grid-template-columns:minmax(150px,.48fr) minmax(0,.52fr)!important;min-height:270px!important}
  .cb-footer-signup__copy,.footer-signup__copy{min-width:0!important;padding:28px 16px!important}
  .cb-footer-signup__image,.footer-signup__image{order:initial!important;width:100%!important;height:270px!important;min-height:270px!important}
  .cb-footer-signup h2,.footer-signup h2{font-size:clamp(1.8rem,7vw,3rem)!important}
  .cb-footer-signup p,.footer-signup p{font-size:10px!important;line-height:1.5!important}

  .category-product,.zero-product,.rose-card{
    display:grid!important;grid-template-columns:minmax(150px,.46fr) minmax(0,.54fr)!important;flex-direction:initial!important;min-height:0!important;
  }
  .category-product__visual,.rose-card__visual{order:initial!important;width:100%!important;height:360px!important;min-height:360px!important}
  .category-product__copy,.zero-product__copy,.rose-card__copy{min-width:0!important;padding:24px 14px!important}
  .category-product h3,.zero-product h3,.rose-card h3{font-size:clamp(1.7rem,6vw,2.8rem)!important}
  .category-product__description,.zero-product__description,.rose-card__description{font-size:10px!important;line-height:1.5!important}

  .product-layout{
    display:grid!important;
    grid-template-columns:minmax(150px,.46fr) minmax(0,.54fr)!important;
    gap:0!important;
    align-items:stretch!important;
  }
  .product-gallery,.product-info{min-width:0!important;align-self:center!important}
  .product-main-image{height:360px!important}
  .product-main-image>img{inset:6% 12%!important;width:76%!important;height:88%!important;object-fit:contain!important}
  .product-thumbs{grid-template-columns:repeat(2,1fr)!important;gap:5px!important}
  .product-thumb{height:58px!important}
  .product-info{padding:18px 13px!important}
  .product-info h1{font-size:clamp(1.8rem,7vw,3rem)!important;line-height:.96!important}
  .product-summary{font-size:11px!important;line-height:1.45!important}
  .product-facts{grid-template-columns:1fr!important;gap:6px!important;padding:14px 0!important}
  .product-fact,.reviews-link,.product-price,.stock-note,.delivery-lines{font-size:9px!important}
  .purchase-row{grid-template-columns:1fr!important;gap:7px!important}
  .quantity,.add-button,.save-button{min-height:35px!important}
  .taste-panel,.product-accordion{grid-column:1/-1!important}
  .taste-panel{margin-top:20px!important}
}
@media(max-width:430px){
  .hero,.ref-hero,.home-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{grid-template-columns:minmax(132px,.46fr) minmax(0,.54fr)!important;min-height:320px!important}
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{height:320px!important;min-height:320px!important}
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{padding:22px 12px!important}
  .home-origin,.story-split,.seo-home,.about-conscious,.producer-profile,.producer-why,.club-selection,.product-story,.bio-story,.zero-lifestyle{grid-template-columns:minmax(132px,.46fr) minmax(0,.54fr)!important}
  .home-origin__image,.about-conscious__image,.producer-profile__image,.producer-why__image,.club-selection__visual,.product-story__image,.bio-story__image,.zero-lifestyle__image{height:300px!important;min-height:300px!important}
  .cb-footer-signup,.footer-signup{grid-template-columns:minmax(132px,.46fr) minmax(0,.54fr)!important}
  .cb-footer-signup__image,.footer-signup__image{height:240px!important;min-height:240px!important}
  .category-product,.zero-product,.rose-card{grid-template-columns:minmax(132px,.44fr) minmax(0,.56fr)!important}
  .category-product__visual,.rose-card__visual{height:320px!important;min-height:320px!important}
  .product-main-image{height:300px!important}
  .product-info{padding:16px 10px!important}
  .product-info h1{font-size:clamp(1.65rem,7vw,2.5rem)!important}
}

/* Compacte mobiele hero: beeld en volledige copy blijven samen in beeld. */
@media (max-width:900px) and (max-height:700px){
  .hero,.ref-hero,.home-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{
    grid-template-columns:minmax(0,.46fr) minmax(0,.54fr)!important;
    height:calc(100svh - 112px)!important;
    min-height:280px!important;
    max-height:380px!important;
    overflow:hidden!important;
  }
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{padding:10px 11px!important;overflow:visible!important}
  .hero .eyebrow,.ref-copy .eyebrow,.home-hero .eyebrow,.about-hero .eyebrow,.producers-hero .eyebrow,.club-hero .eyebrow,.gift-hero .eyebrow{font-size:7px!important;letter-spacing:.12em!important;margin-bottom:5px!important}
  .hero h1,.ref-copy h1,.home-hero h1,.about-hero h1,.producers-hero h1,.club-hero h1,.gift-hero h1{font-size:clamp(1.15rem,6vw,1.8rem)!important;line-height:.92!important;margin:0 0 7px!important}
  .hero h1 em,.ref-copy h1 em,.home-hero h1 em{margin-top:3px!important;font-size:.78em!important}
  .hero__copy .intro,.hero-copy>p:not(.eyebrow),.ref-copy>p:not(.eyebrow,.rating-line),.home-hero__intro,.about-hero .intro,.producers-hero .intro,.club-hero .intro,.gift-hero .intro{font-size:8.5px!important;line-height:1.27!important}
  .hero .actions,.hero-copy .actions,.ref-copy .actions,.home-hero .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{gap:4px!important;margin-top:7px!important;flex-direction:column!important;align-items:stretch!important}
  .hero .button,.hero .primary,.hero .secondary,.ref-copy .button,.ref-copy .primary,.ref-copy .secondary,.home-hero .button,.home-hero .primary,.home-hero .secondary,.about-hero .primary,.about-hero .secondary,.producers-hero .primary,.producers-hero .secondary,.club-hero .primary,.club-hero .secondary,.gift-hero .primary,.gift-hero .secondary{min-height:24px!important;padding:4px 5px!important;font-size:7px!important;line-height:1.15!important;white-space:normal!important}
  .home-hero__proof,.rating-line{margin-top:7px!important;font-size:7px!important;line-height:1.15!important}
  .home-hero__proof span,.rating-line span{font-size:10px!important}
  .home-hero__proof small,.rating-line small{display:block;margin:2px 0 0!important;font-size:7px!important}
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{height:100%!important;min-height:0!important}
}

/* Duidelijke account- en keldericonen in de compacte preview-header. */
.icons .account,.icons .heart{display:grid!important;place-items:center}
.icons .account svg{width:23px!important;height:23px!important;stroke-width:1.8!important}
.icons .heart svg{width:28px!important;height:28px!important;stroke-width:1.8!important}

/* Eerste mobiele scherm: hero-afbeelding en volledige copy blijven in één viewport. */
@media(max-width:900px){
  .hero,.ref-hero,.home-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{
    height:calc(100svh - 170px)!important;
    min-height:0!important;
    max-height:760px!important;
  }
  .hero__visual,.home-hero__image,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{
    height:100%!important;
    min-height:0!important;
  }
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{overflow:hidden!important}
  .icons .search{display:none!important}
  .icons .account,.icons .heart,.icons .cart{display:grid!important;place-items:center!important;flex:0 0 auto}
  .icons .account{width:27px!important;height:27px!important}
  .icons .heart{width:35px!important;height:35px!important}
  .icons .cart{width:27px!important;height:27px!important}
  .icons .account svg{width:22px!important;height:22px!important;stroke-width:1.45!important}
  .icons .heart svg{width:28px!important;height:28px!important;stroke-width:1.35!important}
}
.header-actions .cb-preview-account,.header-actions .cb-preview-heart,.header-actions .cb-preview-cart{display:inline-grid;place-items:center;line-height:1}
.header-actions .cb-preview-account{width:27px;height:27px}
.header-actions .cb-preview-heart{width:35px;height:35px}
.header-actions .cb-preview-account svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.header-actions .cb-preview-heart svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:430px){
  .hero .actions,.hero-copy .actions,.ref-copy .actions,.home-hero .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{flex-direction:row!important;gap:4px!important}
  .hero .actions>* ,.hero-copy .actions>* ,.ref-copy .actions>* ,.home-hero .actions>* ,.about-hero .actions>* ,.producers-hero .actions>* ,.club-hero .actions>* ,.gift-hero .actions>*{min-width:0!important;flex:1 1 0!important}
}
@media(max-width:350px){
  .hero .actions,.hero-copy .actions,.ref-copy .actions,.home-hero .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{flex-direction:column!important}
}

/* Laatste mobiele hero-override: alles blijft binnen het eerste scherm, zonder copy af te knippen. */
@media (max-width:900px){
  .hero,.ref-hero,.home-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{
    height:clamp(240px,calc(100svh - 112px),380px)!important;
    min-height:240px!important;
    max-height:380px!important;
  }
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{overflow:visible!important}
}
@media (max-width:900px) and (max-height:700px){
  .hero__copy,.hero-copy,.ref-copy,.home-hero__copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{padding:8px 10px!important}
  .hero .eyebrow,.ref-copy .eyebrow,.home-hero .eyebrow,.about-hero .eyebrow,.producers-hero .eyebrow,.club-hero .eyebrow,.gift-hero .eyebrow{font-size:6px!important;letter-spacing:.1em!important;margin-bottom:3px!important}
  .hero h1,.ref-copy h1,.home-hero h1,.about-hero h1,.producers-hero h1,.club-hero h1,.gift-hero h1{font-size:clamp(1rem,5.4vw,1.55rem)!important;line-height:.9!important;margin-bottom:5px!important}
  .hero h1 em,.ref-copy h1 em,.home-hero h1 em{margin-top:2px!important;font-size:.76em!important}
  .hero__copy .intro,.hero-copy>p:not(.eyebrow),.ref-copy>p:not(.eyebrow,.rating-line),.home-hero__intro,.about-hero .intro,.producers-hero .intro,.club-hero .intro,.gift-hero .intro{font-size:7.5px!important;line-height:1.2!important}
  .hero .actions,.hero-copy .actions,.ref-copy .actions,.home-hero .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{gap:3px!important;margin-top:5px!important;flex-direction:row!important;align-items:center!important}
  .hero .button,.hero .primary,.hero .secondary,.ref-copy .button,.ref-copy .primary,.ref-copy .secondary,.home-hero .button,.home-hero .primary,.home-hero .secondary,.about-hero .primary,.about-hero .secondary,.producers-hero .primary,.producers-hero .secondary,.club-hero .primary,.club-hero .secondary,.gift-hero .primary,.gift-hero .secondary{min-height:20px!important;padding:3px 4px!important;font-size:6px!important;line-height:1.05!important;flex:1 1 0!important}
  .home-hero__proof,.rating-line{margin-top:5px!important;font-size:6px!important;line-height:1.05!important}
  .home-hero__proof span,.rating-line span{font-size:8px!important}
  .home-hero__proof small,.rating-line small{display:block;margin:1px 0 0!important;font-size:6px!important}
}

/* Leesbare eindinstelling voor de eerste mobiele viewport. */
@media (max-width:900px){
  .home-hero,.hero,.ref-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{
    height:clamp(410px,calc(100svh - 156px),680px)!important;
    min-height:410px!important;
    max-height:680px!important;
  }
  .home-hero__copy,.hero__copy,.hero-copy,.ref-copy,.about-hero__copy,.producers-hero__copy,.club-hero__copy,.gift-hero__copy{
    padding:clamp(16px,3.4vw,34px) clamp(14px,3.8vw,42px)!important;
    overflow:visible!important;
  }
  .home-hero__image,.hero__visual,.ref-visual,.about-hero__visual,.producers-hero__visual,.club-hero__visual,.gift-hero__visual{
    height:100%!important;
    min-height:0!important;
  }
  .home-hero__image img,.hero__visual>img,.ref-visual img,.about-hero__visual>img,.producers-hero__visual>img,.club-hero__visual>img,.gift-hero__visual>img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:74% center!important;
  }
  .home-hero .eyebrow,.hero .eyebrow,.ref-copy .eyebrow,.about-hero .eyebrow,.producers-hero .eyebrow,.club-hero .eyebrow,.gift-hero .eyebrow{
    font-size:clamp(.7rem,1.9vw,.86rem)!important;
    letter-spacing:.12em!important;
    margin-bottom:.75rem!important;
  }
  .home-hero h1,.hero h1,.ref-copy h1,.about-hero h1,.producers-hero h1,.club-hero h1,.gift-hero h1{
    font-size:clamp(2rem,6.2vw,3.7rem)!important;
    line-height:.94!important;
    margin:0 0 1rem!important;
  }
  .home-hero h1 em,.hero h1 em,.ref-copy h1 em{margin-top:.2rem!important;font-size:.8em!important}
  .home-hero__intro,.hero__copy .intro,.hero-copy>p:not(.eyebrow),.ref-copy>p:not(.eyebrow,.rating-line),.about-hero .intro,.producers-hero .intro,.club-hero .intro,.gift-hero .intro{
    font-size:clamp(.875rem,2.1vw,1rem)!important;
    line-height:1.4!important;
  }
  .home-hero .actions,.hero .actions,.hero-copy .actions,.ref-copy .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{
    gap:8px!important;
    margin-top:1rem!important;
    flex-direction:row!important;
    align-items:center!important;
  }
  .home-hero .button,.home-hero .text-link,.hero .button,.hero .primary,.hero .secondary,.ref-copy .button,.ref-copy .primary,.ref-copy .secondary,.about-hero .primary,.about-hero .secondary,.producers-hero .primary,.producers-hero .secondary,.club-hero .primary,.club-hero .secondary,.gift-hero .primary,.gift-hero .secondary{
    min-height:38px!important;
    padding:8px 10px!important;
    font-size:clamp(.75rem,1.8vw,.88rem)!important;
    line-height:1.15!important;
    flex:1 1 0!important;
    white-space:normal!important;
  }
  .home-hero__proof,.rating-line{margin-top:1rem!important;font-size:clamp(.75rem,1.8vw,.88rem)!important;line-height:1.25!important}
  .home-hero__proof span,.rating-line span{font-size:1.05em!important}
  .home-hero__proof small,.rating-line small{display:block;margin:3px 0 0!important;font-size:.92em!important}
}
@media (max-width:350px){
  .home-hero,.hero,.ref-hero,.about-hero,.producers-hero,.club-hero,.gift-hero{grid-template-columns:minmax(126px,.43fr) minmax(0,.57fr)!important}
  .home-hero .actions,.hero .actions,.hero-copy .actions,.ref-copy .actions,.about-hero .actions,.producers-hero .actions,.club-hero .actions,.gift-hero .actions{flex-direction:column!important;align-items:stretch!important}
}
