/** Shopify CDN: Minification failed

Line 2169:8 Expected identifier but found whitespace
Line 2169:10 Unexpected "{"
Line 2169:19 Expected ":"
Line 2170:7 Expected identifier but found whitespace
Line 2170:9 Unexpected "{"
Line 2170:18 Expected ":"
Line 2175:8 Expected identifier but found whitespace
Line 2175:10 Unexpected "{"
Line 2175:19 Expected ":"
Line 2176:7 Expected identifier but found whitespace
... and 2 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:domaine-list (INDEX:18) */
.domaine-list__header {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 2rem;
  }

  .domaine-list__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
    border-radius: 16px;
    overflow: hidden;
  }

  .domaine-list__card {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 440px;
    overflow: hidden;
    text-decoration: none;
    color: #fff !important;
    border-radius: 12px;
  }

  .domaine-list__card-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .domaine-list__card-bg img,
  .domaine-list__card-bg .placeholder-svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
  }

  .domaine-list__card:hover .domaine-list__card-bg img {
    transform: scale(1.05);
  }

  .domaine-list__card-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.35);
  }

  .domaine-list__card-content {
    position: relative;
    z-index: 2;
    padding: 2rem;
    width: 100%;
    text-align: center;
  }

  .domaine-list__card-eyebrow {
    color: #fff !important;
    font-size: 0.75rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    opacity: 0.8;
    margin: 0 0 0.5rem;
  }

  .domaine-list__card-title {
    color: #fff !important;
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    font-weight: 700;
    margin: 0 0 0.75rem;
    line-height: 1.2;
  }

  .domaine-list__card-teaser {
    color: #fff !important;
    font-size: 0.95rem;
    line-height: 1.6;
    opacity: 0.9;
    margin: 0 0 1.5rem;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }

  .domaine-list__card-btn {
    color: #fff !important;
    display: inline-block;
    border-bottom: 1px solid rgba(255,255,255,0.6);
    padding-bottom: 2px;
    font-size: 0.85rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: border-color 0.2s, opacity 0.2s;
    opacity: 0.85;
  }

  .domaine-list__card:hover .domaine-list__card-btn {
    border-color: #fff;
    opacity: 1;
  }

  @media (max-width: 749px) {
    .domaine-list__card {
      min-height: 360px;
    }

    .domaine-list__card-content {
      padding: 2rem 1.5rem;
    }
  }
/* END_SECTION:domaine-list */

/* START_SECTION:footer (INDEX:30) */
.site-footer__alcohol-warning,
  .site-footer__legal-notice {
    max-width: 80ch;
    margin: 0 auto 24px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
  }

  .site-footer__agency-credit {
    margin-top: 24px;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
  }

  .site-footer__legal-notice p,
  .site-footer__alcohol-warning p,
  .site-footer__agency-credit p {
    margin: 0;
  }

  .site-footer__legal-notice p + p {
    margin-top: 8px;
  }

  .site-footer__legal-notice a,
  .site-footer__agency-credit a {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
/* END_SECTION:footer */

/* START_SECTION:grid-banner (INDEX:32) */
@media only screen and (max-width: 749px) {
    .banner-theme.grid-banner--adaptive-mobile {
      min-height: var(--grid-banner-min-height-mobile);
    }

    .grid-banner--adaptive-mobile > .image-content__image-container {
      position: absolute;
      inset: 0;
    }

    .grid-banner--adaptive-mobile .image-content__image-wrapper {
      height: 100%;
      padding-top: 0 !important;
    }

    .banner-theme.grid-banner--adaptive-mobile > figcaption {
      position: relative;
      inset: auto;
      transform: none;
      width: 100%;
      padding: 16px;
    }
  }
/* END_SECTION:grid-banner */

/* START_SECTION:intro-template-visite (INDEX:46) */
.intro-visit {
    padding-top: clamp(2rem, 4vw, 4rem);
    padding-bottom: clamp(2rem, 4vw, 4rem);
  }

  .intro-visit__grid {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(1.5rem, 3vw, 3rem);
    align-items: stretch;
  }

  .intro-visit__info {
    flex: 0 0 100%;
  }

  @media (min-width: 992px) {
    .intro-visit__info,
    .intro-visit__media-column {
      flex: 0 0 calc(50% - clamp(1.5rem, 3vw, 3rem) / 2);
    }

    .intro-visit__info {
      position: sticky;
      top: calc(var(--height-header, 0px) + var(--height-announbar, 0px) + var(--height-announcementbar, 0px) + 24px);
      align-self: flex-start;
    }
  }

  .intro-visit__info,
  .intro-visit__media-column {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }

  .intro-visit__title {
    margin: 0 0 1rem;
    font-size: clamp(1.75rem, 3vw, 2.5rem);
  }

  .intro-visit__description {
    color: var(--color-body-text);
    margin-bottom: 1.5rem;
  }

  .intro-visit__media-column {
    gap: 1rem;
    flex: 1 1 0;
    min-width: 0;
  }

  .intro-visit__slider-wrapper {
    position: relative;
    flex: 1;
    min-height: 320px;
    display: flex;
  }

  .intro-visit__slider-wrapper .swiper-container,
  .intro-visit__slider-wrapper .swiper-wrapper,
  .intro-visit__slider-wrapper .swiper-slide {
    height: 100%;
  }

  .intro-visit__slider {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 16px 30px rgba(0, 0, 0, 0.08);
    height: 100%;
    min-height: 320px;
  }

  .intro-visit__slider .swiper-slide {
    display: flex;
    align-items: stretch;
  }

  .intro-visit__slide-media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .intro-visit__slide-fallback {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .intro-visit__slider-wrapper .swiper-button-prev,
  .intro-visit__slider-wrapper .swiper-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
    color: var(--g-color-heading);
    z-index: 2;
  }

  .intro-visit__slider-wrapper .swiper-button-prev:after,
  .intro-visit__slider-wrapper .swiper-button-next:after {
    font-size: 16px;
    color: inherit;
  }

  .intro-visit__slider-wrapper .swiper-button-prev {
    left: 12px;
  }

  .intro-visit__slider-wrapper .swiper-button-next {
    right: 12px;
  }

  .intro-visit__slider-wrapper .swiper-scrollbar {
    bottom: 12px;
  }

  .intro-visit__extras {
    margin-top: clamp(1.5rem, 4vw, 3rem);
    border-radius: 24px;
    padding: clamp(1.5rem, 4vw, 3rem);
    background: var(--g-main, #11100e);
    color: #ffffff;
  }

  .intro-visit__extras-inner {
    display: flex;
    flex-direction: column;
    gap: clamp(1rem, 3vw, 2rem);
  }

  .intro-visit__extras-header {
    max-width: 640px;
  }

  .intro-visit__eyebrow {
    margin: 0 0 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.85rem;
    color: #ffffff;
  }

  .intro-visit__extras-title {
    margin: 0 0 0.5rem;
    font-size: clamp(1.1rem, 4vw, 2.25rem);
    color: #ffffff;
    overflow-wrap: break-word;
  }

  .intro-visit__extras-description {
    color: #ffffff;
  }

  .intro-visit__highlights {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 0.75rem;
  }

  .intro-visit__highlight-card {
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.25rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
  }

  .intro-visit__highlight-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.15);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .intro-visit__highlight-icon svg,
  .intro-visit__highlight-icon img {
    width: 28px;
    height: 28px;
  }

  .intro-visit__highlight-text {
    margin: 0;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.3;
  }

  .intro-visit__highlight-description {
    margin: 0.1rem 0 0;
    color: #ffffff;
    font-size: 0.9rem;
  }

  .intro-visit__details {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.75rem;
  }

  @media (min-width: 992px) {
    .intro-visit__details {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  .intro-visit__detail-link {
    display: inline-block;
    margin-top: 0.15rem;
    font-size: 0.85rem;
    text-decoration: underline;
    color: #ffffff;
  }

  .item_visit {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.75rem 1rem;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    background: rgba(0, 0, 0, 0.15);
    color: #ffffff;
  }

  .item_visit_label {
    margin: 0;
    font-weight: 600;
    line-height: 1.35;
    color: #ffffff;
  }

  .svg-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #ffffff;
  }

  .svg-icon svg,
  .svg-icon img {
    width: 44px;
    height: 44px;
  }

  .svg-icon svg *,
  .svg-icon svg path,
  .svg-icon svg circle,
  .svg-icon svg rect {
    fill: none !important;
    stroke: currentColor !important;
  }
/* END_SECTION:intro-template-visite */

/* START_SECTION:main-collection-banner (INDEX:51) */
@media (min-width: 992px) {
    .collection-split .mbanner-right {
      display: flex;
      padding-top: 24px;
    }

    .collection-split .mbanner-right > .collection-hero {
      flex: 1;
    }
  }
/* END_SECTION:main-collection-banner */

/* START_SECTION:main-collection-template (INDEX:52) */
@media (max-width: 749px) {
    .main-collection .product-grid--single-mobile {
      row-gap: 24px;
    }
    .main-collection .product-grid--single-mobile > .grid__item {
      flex: 0 0 100%;
      width: 100%;
      max-width: 100%;
    }
  }
  @media (min-width: 992px) {
    .main-collection .product-grid--single-mobile {
      --g-hgutter: 24px;
      row-gap: 24px;
    }
    .main-collection .product-grid--single-mobile > .grid__item {
      padding-left: 24px;
      padding-right: 24px;
    }
  }
/* END_SECTION:main-collection-template */

/* START_SECTION:main-page-qrcode (INDEX:56) */
.page-title { margin-bottom: 40px; }
  .main-content { padding: 0; }
  .content-block--page ul,
  .content-block--page ol { padding-left: 1rem; }
  .wine-variant-nutrition__title { margin: 40px 0 20px; font-size: 1.5rem; }
  .wine-variant-nutrition__product { border-bottom: 1px solid #e8e2d8; padding: 20px 0; }
  .wine-variant-nutrition__variants { list-style: none; padding: 0; margin: 12px 0 0; }
  .wine-variant-nutrition__variants li { margin-bottom: 6px; }
  .wine-variant-nutrition__link { font-weight: 600; color: var(--color-link, #7a3c3c); }
/* END_SECTION:main-page-qrcode */

/* START_SECTION:metaobject-domaine-description (INDEX:62) */
.domaine-layout {
    padding: 4rem 0;
  }

  .domaine-layout__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: start;
  }

  .domaine-layout__text {
    font-size: 1.0625rem;
    line-height: 1.8;
    position: sticky;
    top: 6rem;
  }

  .domaine-masonry {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 200px;
    gap: 8px;
  }

  .domaine-masonry__item {
    overflow: hidden;
    border-radius: 8px;
    background: #f3f0ea;
  }

  .domaine-masonry__item--featured {
    grid-column: span 2;
    grid-row: span 2;
  }

  .domaine-masonry__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
  }

  .domaine-masonry__item:hover img {
    transform: scale(1.04);
  }

  .domaine-vins {
    padding: 3rem 2rem 5rem;
  }

  .domaine-vins__header {
    text-align: center;
    margin-bottom: 2.5rem;
  }

  .domaine-vins__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 280px));
    gap: 1.5rem;
    justify-content: center;
  }

  @media (max-width: 991px) {
    .domaine-layout__inner {
      grid-template-columns: 1fr;
      gap: 32px;
    }

    .domaine-layout__text {
      position: static;
    }
  }

  @media (max-width: 749px) {
    .domaine-layout {
      padding: 2.5rem 0;
    }

    .domaine-masonry {
      grid-auto-rows: 140px;
      gap: 6px;
    }

    .domaine-vins {
      padding: 2rem 1rem 3rem;
    }

    .domaine-vins__grid {
      grid-template-columns: repeat(auto-fit, minmax(150px, 200px));
      gap: 1rem;
    }
  }
/* END_SECTION:metaobject-domaine-description */

/* START_SECTION:metaobject-domaine-hero (INDEX:63) */
.domaine-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 45vh;
    overflow: hidden;
  }

  .domaine-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .domaine-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .domaine-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.4);
  }

  .domaine-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 4rem 2rem;
    max-width: 800px;
  }

  .domaine-hero__top-title {
    color: #fff;
    font-size: 0.875rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    opacity: 0.85;
  }

  .domaine-hero__title {
    color: #fff;
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 700;
    margin-bottom: 1.25rem;
    line-height: 1.2;
  }

  .domaine-hero__teaser {
    color: #fff;
    font-size: 1.125rem;
    line-height: 1.7;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto;
  }

  @media (max-width: 749px) {
    .domaine-hero {
      min-height: 35vh;
    }
  }
/* END_SECTION:metaobject-domaine-hero */

/* START_SECTION:metaobject-faq (INDEX:64) */
.metaobject-faq {
    padding: 4rem 0;
  }

  .metaobject-faq__header {
    text-align: center;
    margin-bottom: 2.5rem;
  }

  .metaobject-faq__inner {
    max-width: 780px;
    margin: 0 auto;
  }

  .card-faqs {
    border-bottom: 1px solid #ebebeb;
  }

  .card-faqs:first-child {
    border-top: 1px solid #ebebeb;
  }

  .card-faqs-heading {
    cursor: pointer;
    position: relative;
    padding-right: 60px;
  }

  .faq-heading {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .faq-heading .faq-icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    font-size: 14px;
    text-align: center;
    position: absolute;
    top: 10px;
    right: 0;
  }

  .faq-heading .faq-icon i::before {
    content: "\e92d";
  }

  .faq-heading.collapsed .faq-icon i::before {
    content: "\e93d";
  }

  .faq-heading.collapsed .faq-icon {
    background-color: transparent;
  }

  .card-faqs .card-body {
    padding-top: 0;
    padding-bottom: 1.5rem;
  }

  @media (max-width: 749px) {
    .metaobject-faq {
      padding: 2.5rem 0;
    }
  }
/* END_SECTION:metaobject-faq */

/* START_SECTION:product-related (INDEX:84) */
.product-related {
    margin-top: 50px;
  }

  .product-related__header {
    text-align: center;
    margin-bottom: 2rem;
  }

  .product-related__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 280px));
    gap: 1.5rem;
    justify-content: center;
  }

  @media (max-width: 749px) {
    .product-related__grid {
      grid-template-columns: repeat(auto-fit, minmax(150px, 200px));
      gap: 1rem;
    }
  }
/* END_SECTION:product-related */

/* START_SECTION:product-tab-vin (INDEX:87) */
.product-tab-vin__intro {
margin-bottom: 2rem;
}
.product-tab-vin__tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
}
.product-tab-vin__tag {
display: inline-flex;
align-items: center;
padding: 0.35rem 0.85rem;
border-radius: 999px;
border: 1px solid #d8c9b8;
font-size: 0.85rem;
font-weight: 600;
background: #fff;
color: var(--color-heading, #111);
}
.product-tab-vin__title {
margin-bottom: 0.5rem;
}
.product-tab-vin__description {
margin: 0 auto;
max-width: 720px;
color: var(--color-body-text);
}
.product-tab-vin__nav-wrapper {
margin-bottom: 1.5rem;
display: flex;
justify-content: center;
}
.product-tab-vin__nav .nav-link {
border: 0;
border-bottom: 2px solid transparent;
font-weight: 600;
padding: 0.75rem 1rem;
color: var(--color-body-text);
font-size: 1.1rem;
transition: color 0.2s ease, border-color 0.2s ease;
}
.product-tab-vin__nav .nav-link.active {
color: var(--color-heading, #111);
border-bottom-color: currentColor;
}
.product-tab-vin__panel {
padding-top: 1em;
display: none;
animation: fadeTabs 0.3s ease-in-out;
}
.product-tab-vin__panel.show.active {
display: block;
}
.product-tab-vin__accordion {
display: none;
border-top: 1px solid rgba(0,0,0,0.1);
}
.product-tab-vin__accordion-item {
border-bottom: 1px solid rgba(0,0,0,0.1);
padding: 0.5rem 0;
}
.product-tab-vin__accordion-item summary {
display: flex;
justify-content: space-between;
align-items: center;
font-weight: 600;
cursor: pointer;
list-style: none;
font-size: 1rem;
color: #000;
}
.product-tab-vin__accordion-item summary::after {
content: '+';
font-size: 1.1rem;
transition: transform 0.2s ease;
}
.product-tab-vin__accordion-item summary.is-open::after,
.product-tab-vin__accordion-item[open] summary::after {
content: '−';
}
.product-tab-vin__accordion-item summary::-webkit-details-marker {
display: none;
}
.product-tab-vin__accordion-body {
padding: 0.5rem 0 0;
}
.product-tab-vin__features {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px 40px;
}
@media (max-width: 749px) {
.product-tab-vin__features {
grid-template-columns: 1fr;
}
}
.product-tab-vin__feature {
display: grid;
grid-template-columns: minmax(120px, 1fr) 1fr;
gap: 20px;
align-items: center;
padding-bottom: 0.75rem;
border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.product-tab-vin__feature-label {
font-weight: 600;
color: var(--color-heading, #111);
}
.product-tab-vin__feature-value {
color: var(--color-body-text);
}
.product-tab-vin__nutrition-table {
width: 100%;
border-collapse: collapse;
}
.product-tab-vin__nutrition-table th,
.product-tab-vin__nutrition-table td {
padding: 0.4rem 0.6rem;
border-bottom: 1px solid rgba(0,0,0,0.08);
text-align: left;
}
.product-tab-vin__nutrition-table th {
font-weight: 600;
color: var(--color-heading, #111);
width: 55%;
}
.product-tab-vin__nutrition-intro {
margin-bottom: 0.75rem;
font-size: 0.9rem;
color: var(--color-body-text);
}
.product-tab-vin__gauge-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 16px;
}
.product-tab-vin__empty {
color: var(--color-body-text);
opacity: 0.8;
margin: 0;
}
@keyframes fadeTabs {
from {
opacity: 0;
transform: translateY(6px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@media (max-width: 749px) {
.product-tab-vin__nav {
flex-direction: column;
}
.product-tab-vin__nav .nav-link {
width: 100%;
text-align: left;
}
.product-tab-vin__nav-wrapper,
.product-tab-vin__panels {
display: none;
}
.product-tab-vin__accordion {
display: block;
}
.product-tab-vin__accordion-item summary {
font-size: 1.1rem;
}
.product-tab-vin__accordion-item summary.is-open,
.product-tab-vin__accordion-item[open] summary {
color: var(--g-main-2, #6d7c3c);
}
.product-tab-vin__accordion-item summary:not(.is-open):not(:focus) {
color: #000;
}
.product-tab-vin__accordion-item[open] .product-tab-vin__accordion-body {
background: var(--color-form, #f7f3ee);
padding: 0.75rem 0.75rem 1.25rem;
border-radius: 12px;
margin-top: 0.5rem;
}
}
/* END_SECTION:product-tab-vin */

/* START_SECTION:product-template-location (INDEX:90) */
.location-product {
    padding: 40px 0 60px;
  }

  .location-product__header {
    margin-bottom: 28px;
  }

  .location-product__eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.75rem;
    color: rgba(32, 28, 24, 0.6);
    margin-bottom: 6px;
  }

  .location-product__title {
    font-size: clamp(2rem, 3vw, 2.8rem);
    font-weight: 600;
    margin: 0;
  }

  .location-gallery {
    margin-bottom: 24px;
  }

  .location-gallery__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, 220px);
    gap: 10px;
  }

  .location-gallery__item {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: #f3f0ea;
  }

  .location-gallery__item picture,
  .location-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
  }

  .location-gallery__item:not(.location-gallery__item--cta):hover img {
    transform: scale(1.04);
  }

  .location-gallery__item--featured {
    grid-column: span 2;
    grid-row: span 2;
  }

  .location-gallery__item--cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #f9f6f3;
    border: 2px dashed #d6cfc6;
    color: rgba(32, 28, 24, 0.75);
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    text-align: center;
  }

  .location-gallery__item--cta button {
    border: none;
    background: transparent;
    color: inherit;
    font: inherit;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 0;
  }

  .location-gallery__item--cta button:hover {
    color: rgba(32, 28, 24, 1);
  }

  .location-gallery__item--cta .cta-icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(15, 19, 36, 0.1);
  }
  .location-gallery__modal {
    position: fixed;
    inset: 0;
    background: rgba(10, 10, 14, 0.96);
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 10001;
  }

  .location-gallery__modal.is-active {
    display: flex;
  }

  .location-gallery__modal-inner {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .location-gallery__modal-close {
    position: absolute;
    top: 20px;
    right: 24px;
    border: none;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    padding: 8px 16px 8px 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    z-index: 2;
    transition: background 0.2s, color 0.2s;
  }

  .location-gallery__modal-close:hover {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
  }

  .location-gallery__modal-carousel {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 60px 80px;
    box-sizing: border-box;
  }

  .location-gallery__modal-viewport {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .location-gallery__modal-track {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .location-gallery__modal-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
    transition: opacity 450ms cubic-bezier(0.4, 0, 0.2, 1),
                transform 450ms cubic-bezier(0.4, 0, 0.2, 1);
    transform: scale(0.97);
  }

  .location-gallery__modal-slide.is-active {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }

  .location-gallery__modal-slide picture,
  .location-gallery__modal-slide img {
    max-width: 100%;
    max-height: calc(100vh - 120px);
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
    display: block;
    box-shadow: 0 32px 80px rgba(0, 0, 0, 0.6);
  }

  .location-gallery__modal-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
    z-index: 2;
  }

  .location-gallery__modal-nav:hover {
    background: rgba(255, 255, 255, 0.22);
  }

  .location-gallery__modal-nav:disabled {
    opacity: 0.25;
    pointer-events: none;
  }

  .location-gallery__modal-nav--prev {
    left: 20px;
  }

  .location-gallery__modal-nav--next {
    right: 20px;
  }

  .location-gallery__modal-counter {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.8rem;
    letter-spacing: 0.08em;
    pointer-events: none;
  }

  .location-gallery__modal-dots {
    position: fixed;
    bottom: 48px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 8px;
    pointer-events: none;
  }

  .location-gallery__modal-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.35);
    transition: background 0.25s, transform 0.25s;
    flex-shrink: 0;
  }

  .location-gallery__modal-dot.is-active {
    background: #fff;
    transform: scale(1.5);
  }


  .location-product__subtitle {
    font-size: 1.1rem;
    margin-bottom: 20px;
    color: rgba(32, 28, 24, 0.9);
  }

  .location-product__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 32px;
  }

  .location-highlight {
    flex: 1 1 220px;
    border: 1px solid #e4dfd6;
    border-radius: 16px;
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
  }

  .location-highlight__icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f9f6f3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
  }

  .location-highlight__title {
    font-weight: 600;
    margin: 0;
  }

  .location-highlight__text {
    margin: 2px 0 0;
    color: rgba(21, 21, 21, 0.75);
  }

  .location-product__content {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
    gap: 32px;
  }

  .location-product__description {
    background: #fff;
    border-radius: 20px;
    padding: 32px;
    box-shadow: 0 24px 60px rgba(15, 19, 36, 0.08);
  }

  .location-product__description h2 {
    margin-top: 0;
  }

  .location-product__booking-card {
    background: #fff;
    border-radius: 24px;
    padding: 28px;
    box-shadow:
      0 2px 4px rgba(15, 19, 36, 0.06),
      0 12px 32px rgba(15, 19, 36, 0.10),
      0 32px 64px rgba(15, 19, 36, 0.08);
    border: 1px solid rgba(228, 223, 214, 0.9);
    position: sticky;
    top: 30px;
    align-self: start;
    overflow: hidden;
  }

  .location-product__booking-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #a40645, #d4547a);
  }

  .location-product__booking-card > * {
    position: relative;
  }

  .location-product__contact-card h2 {
    margin: 0 0 18px;
    font-size: clamp(1.6rem, 2.4vw, 2.15rem);
    line-height: 1.15;
  }

  .location-product__contact-card p {
    margin: 0 0 16px;
    line-height: 1.65;
  }

  .location-product__contact-card .location-product__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 8px;
    text-decoration: none;
  }

  .location-product__alert {
    font-size: 0.95rem;
    background: #fff5f7;
    border-radius: 14px;
    padding: 10px 14px;
    margin-bottom: 18px;
    color: #c72a62;
  }

  .location-product__price-row {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-top: 16px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f0ebe4;
  }

  .location-product__price {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1a1714;
  }

  .location-product__compare {
    text-decoration: line-through;
    color: rgba(21, 21, 21, 0.45);
    font-size: 1rem;
  }

  .location-product__form label {
    font-weight: 600;
    font-size: 0.85rem;
    display: block;
    margin-bottom: 6px;
  }

  .location-product__form select {
    width: 100%;
    border: 1px solid #e4dfd6;
    border-radius: 12px;
    padding: 10px 12px;
    margin-bottom: 14px;
    font-size: 1rem;
  }

  .location-product__equipments {
    margin-top: 32px;
  }

  .location-product__equipments h2 {
    font-size: 1.1rem;
    margin-bottom: 16px;
  }

  .location-product__equipments-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
  }

  .location-product__equipments-item {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .location-product__equipments-item img {
    width: 24px;
    height: 24px;
    object-fit: contain;
  }

  .location-product__submit {
    width: 100%;
    margin-top: 6px;
    min-height: 48px;
    border-radius: 999px;
  }

  .location-product__host-note {
    margin-top: 18px;
    font-size: 0.9rem;
    color: rgba(21, 21, 21, 0.75);
  }

  .location-reviews {
    margin-top: 48px;
  }

  .location-reviews__header {
    margin-bottom: 32px;
    padding-bottom: 28px;
    border-bottom: 1px solid #ede8e1;
    text-align: center;
  }

  .location-reviews__slider-wrapper {
    position: relative;
  }

  .location-reviews__slider {
    overflow: hidden;
  }

  .location-reviews__track {
    display: flex;
    gap: 20px;
    transition: transform 550ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
  }

  .location-review-card {
    background: #fff;
    border-radius: 20px;
    padding: 24px;
    border: 1px solid #ede8e1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: 0;
  }

  .location-reviews__nav-row {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 20px;
  }

  .location-reviews__nav {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #ede8e1;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: rgba(21, 21, 21, 0.7);
    transition: background 0.2s, border-color 0.2s;
  }

  .location-reviews__nav:hover {
    background: #f9f6f3;
    border-color: #c8c0b5;
  }

  .location-review-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  .location-review-card__stars {
    display: flex;
    gap: 2px;
    color: #f5a623;
    flex-shrink: 0;
  }

  .location-review-card__date {
    font-size: 0.8rem;
    color: rgba(21, 21, 21, 0.45);
    white-space: nowrap;
  }

  .location-review-card__title {
    font-weight: 600;
    font-size: 1rem;
    margin: 0;
    color: #1a1714;
  }

  .location-review-card__body {
    font-size: 0.9rem;
    color: rgba(21, 21, 21, 0.75);
    line-height: 1.6;
  }

  .location-review-card__body p {
    margin: 0;
  }

  @media (max-width: 749px) {
    .location-review-card {
      flex: 0 0 100%;
    }

    .location-reviews__header {
      padding: 0 16px;
    }
  }

  @media (max-width: 991px) {
    .location-product__content {
      grid-template-columns: 1fr;
    }

    .location-product__booking-card {
      position: static;
    }
  }

  @media (max-width: 749px) {
    .location-product__header {
      padding: 0 16px;
    }

    .location-gallery__grid {
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: 200px 160px;
    }

    .location-gallery__item--featured {
      grid-column: span 2;
      grid-row: span 1;
    }

    .location-product__description,
    .location-product__booking-card {
      padding: 20px;
    }

    .location-product__booking-card {
      border-radius: 20px;
    }

    .location-gallery__modal-carousel {
      padding: 60px 12px;
    }

    .location-gallery__modal-nav {
      width: 36px;
      height: 36px;
    }

    .location-gallery__modal-nav--prev {
      left: 8px;
    }

    .location-gallery__modal-nav--next {
      right: 8px;
    }
  }
/* END_SECTION:product-template-location */

/* START_SECTION:product-visite-faq (INDEX:94) */
.pv-faq {
    padding: 80px 0 50px;
  }

  .pv-faq__header {
    text-align: center;
    margin-bottom: 2.5rem;
  }

  .pv-faq__inner {
    max-width: 780px;
    margin: 0 auto;
  }

  .pv-faq .card-faqs {
    border-bottom: 1px solid #ebebeb;
  }

  .pv-faq .card-faqs:first-child {
    border-top: 1px solid #ebebeb;
  }

  .pv-faq .card-faqs-heading {
    cursor: pointer;
    position: relative;
    padding-right: 60px;
  }

  .pv-faq .faq-heading {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .pv-faq .faq-heading .faq-icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    font-size: 14px;
    text-align: center;
    position: absolute;
    top: 10px;
    right: 0;
  }

  .pv-faq .faq-heading .faq-icon i::before {
    content: "\e92d";
  }

  .pv-faq .faq-heading.collapsed .faq-icon i::before {
    content: "\e93d";
  }

  .pv-faq .faq-heading.collapsed .faq-icon {
    background-color: transparent;
  }

  .pv-faq .card-faqs .card-body {
    padding-top: 0;
    padding-bottom: 1.5rem;
  }

  @media (max-width: 749px) {
    .pv-faq {
      padding: 60px 0;
    }
  }
/* END_SECTION:product-visite-faq */

/* START_SECTION:product-visite-reviews (INDEX:95) */
.visite-reviews {
    background-color: var(--bg, #f1f1f1);
    padding: var(--padding-section, 50px 0);
    margin: 50px 0;
  }
  .location-reviews__header {
    margin-bottom: 32px;
    padding-bottom: 28px;
    border-bottom: 1px solid #ede8e1;
    text-align: center;
  }
  .location-reviews__slider-wrapper { position: relative; }
  .location-reviews__slider { overflow: hidden; }
  .location-reviews__track {
    display: flex;
    gap: 20px;
    transition: transform 550ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
  }
  .location-review-card {
    background: #fff;
    border-radius: 20px;
    padding: 24px;
    border: 1px solid #ede8e1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: 0;
  }
  .location-reviews__nav-row {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 20px;
  }
  .location-reviews__nav {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #ede8e1;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: rgba(21, 21, 21, 0.7);
    transition: background 0.2s, border-color 0.2s;
  }
  .location-reviews__nav:hover { background: #f9f6f3; border-color: #c8c0b5; }
  .location-review-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }
  .location-review-card__stars { display: flex; gap: 2px; color: #f5a623; flex-shrink: 0; }
  .location-review-card__date { font-size: 0.8rem; color: rgba(21, 21, 21, 0.45); white-space: nowrap; }
  .location-review-card__title { font-weight: 600; font-size: 1rem; margin: 0; color: #1a1714; }
  .location-review-card__body { font-size: 0.9rem; color: rgba(21, 21, 21, 0.75); line-height: 1.6; }
  .location-review-card__body p { margin: 0; }
  @media (max-width: 749px) {
    .location-review-card { flex: 0 0 100%; }
    .location-reviews__header { padding: 0 16px; }
  }
/* END_SECTION:product-visite-reviews */

/* START_SECTION:product_accord (INDEX:97) */
.product-accord__intro {
margin-bottom: 2rem;
}
.product-accord__title {
margin-bottom: 0.5rem;
}
.product-accord__description {
margin: 0 auto;
max-width: 720px;
color: var(--color-body-text);
}
.product-accord__list {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.product-accord__item {
display: grid;
grid-template-columns: minmax(140px, 240px) 1fr;
column-gap: 1.5rem;
row-gap: 0.5rem;
padding: 0.75rem 0;
border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.product-accord__item-key {
font-weight: 600;
color: var(--color-heading, #111);
}
.product-accord__item-value {
color: var(--color-body-text);
}
.product-accord__empty {
color: var(--color-body-text);
opacity: 0.8;
margin: 0;
}
@media (max-width: 749px) {
.product-accord__item {
grid-template-columns: 1fr;
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.product-accord__item-key {
font-size: 0.95rem;
}
}

.wine-gauges {
margin: 32px 0;
}

.wine-gauge-card {
padding: 28px;
border: 1px solid rgba(0, 0, 0, 0.08);
border-radius: 20px;
background: linear-gradient(180deg, #ffffff 0%, #faf8f5 100%);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
}

.wine-gauge-card__header {
margin-bottom: 24px;
}

.wine-gauge-card__title {
margin: 0 0 6px;
font-size: 24px;
line-height: 1.1;
}

.wine-gauge-card__subtitle {
margin: 0;
font-size: 14px;
line-height: 1.5;
opacity: 0.7;
}

.wine-gauge-list {
gap: 22px;
}
.wine-gauge-item{
padding: 1rem}
.wine-gauge-item__top {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-bottom: 10px;
}

.wine-gauge-item__label {
font-size: 15px;
font-weight: 600;
line-height: 1.2;
}

.wine-gauge-item__value {
font-size: 14px;
font-weight: 700;
line-height: 1;
opacity: 0.8;
}

.wine-gauge {
position: relative;
padding-top: 6px;
padding-bottom: 24px;
}

.wine-gauge__track {
height: 10px;
border-radius: 999px;
background: linear-gradient(90deg, #ece7e1 0%, #d8c9b8 100%);
}

.wine-gauge__fill {
position: absolute;
top: 6px;
left: 0;
height: 10px;
border-radius: 999px;
background: linear-gradient(90deg, #6d1f2f 0%, #8a2f45 100%);
}

.wine-gauge__marker {
position: absolute;
top: 11px;
width: 18px;
height: 18px;
border-radius: 50%;
background: #ffffff;
border: 2px solid #6d1f2f;
box-shadow: 0 4px 10px rgba(109, 31, 47, 0.18);
transform: translate(-50%, -50%);
z-index: 2;
box-sizing: border-box;
}

.wine-gauge__steps {
position: absolute;
top: 26px;
left: 0;
width: 100%;
display: flex;
justify-content: space-between;
font-size: 11px;
line-height: 1;
opacity: 0.6;
}

@media screen and (max-width: 749px) {
.wine-gauge-card {
padding: 20px;
border-radius: 16px;
}

.wine-gauge-card__title {
font-size: 20px;
}

.wine-gauge-item__label {
font-size: 14px;
}

.wine-gauge-item__value {
font-size: 13px;
}
}
/* END_SECTION:product_accord */

/* START_SECTION:product_caracteristique (INDEX:98) */
.product-caracteristique .lpb-product-info__features-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 120px;
  margin-top: 32px;
}

.product-caracteristique .product-specifications__item {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.product-caracteristique .lpb-body-l-bold {
  min-width: 140px;
  font-weight: 600;
}

.product-caracteristique .lpb-body-l {
  width: 100%;
}

.product-caracteristique .product-accord__empty {
  margin-top: 1rem;
  opacity: 0.8;
}

@media (max-width: 768px) {
  .product-caracteristique .lpb-product-info__features-container {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .product-caracteristique .product-specifications__item {
    flex-direction: column;
    gap: 8px;
  }
  .product-caracteristique .lpb-body-l-bold {
    min-width: auto;
  }
}
/* END_SECTION:product_caracteristique */

/* START_SECTION:product_domaine (INDEX:99) */
.product-domaine .contentimg3-des {
    position: relative;
    z-index: 1;
    padding-right: 120px;
  }
  .product-domaine.contentimg-left .contentimg3-des {
    padding-left: 120px;
    padding-right: 0;
  }
  .product-domaine .imgblock {
    padding-bottom: 4rem;
  }
  .product-domaine .imgblock .imgblock-bg {
    content: "";
    height: 297px;
    background-color: #f4f1eb;
    width: 100%;
    top: 150px;
    right: 7rem;
    position: absolute;
  }
  .product-domaine.contentimg-left .imgblock .imgblock-bg {
    left: 7rem;
    right: auto;
  }
  @media only screen and (max-width: 991px) {
    .product-domaine .contentimg3-des {
      padding: 0;
    }
    .product-domaine .imgblock {
      padding-bottom: 48px;
    }
  }
/* END_SECTION:product_domaine */

/* START_SECTION:product_profil (INDEX:100) */
.product-accord__intro {
margin-bottom: 2rem;
}
.product-accord__title {
margin-bottom: 0.5rem;
}
.product-accord__description {
margin: 0 auto;
max-width: 720px;
color: var(--color-body-text);
}
.product-accord__list {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.product-accord__item {
display: grid;
grid-template-columns: minmax(140px, 240px) 1fr;
column-gap: 1.5rem;
row-gap: 0.5rem;
padding: 0.75rem 0;
border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.product-accord__item-key {
font-weight: 600;
color: var(--color-heading, #111);
}
.product-accord__item-value {
color: var(--color-body-text);
}
.product-accord__empty {
color: var(--color-body-text);
opacity: 0.8;
margin: 0;
}
@media (max-width: 749px) {
.product-accord__item {
grid-template-columns: 1fr;
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.product-accord__item-key {
font-size: 0.95rem;
}
}

.wine-gauges {
margin: 32px 0;
}

.wine-gauge-card {
padding: 28px;
border: 1px solid rgba(0, 0, 0, 0.08);
border-radius: 20px;
background: linear-gradient(180deg, #ffffff 0%, #faf8f5 100%);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
}

.wine-gauge-card__header {
margin-bottom: 24px;
}

.wine-gauge-card__title {
margin: 0 0 6px;
font-size: 24px;
line-height: 1.1;
}

.wine-gauge-card__subtitle {
margin: 0;
font-size: 14px;
line-height: 1.5;
opacity: 0.7;
}

.wine-gauge-list {
gap: 22px;
}
.wine-gauge-item{
padding: 1rem}
.wine-gauge-item__top {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-bottom: 10px;
}

.wine-gauge-item__label {
font-size: 15px;
font-weight: 600;
line-height: 1.2;
}

.wine-gauge-item__value {
font-size: 14px;
font-weight: 700;
line-height: 1;
opacity: 0.8;
}

.wine-gauge {
position: relative;
padding-top: 6px;
padding-bottom: 24px;
}

.wine-gauge__track {
height: 10px;
border-radius: 999px;
background: linear-gradient(90deg, #ece7e1 0%, #d8c9b8 100%);
}

.wine-gauge__fill {
position: absolute;
top: 6px;
left: 0;
height: 10px;
border-radius: 999px;
background: linear-gradient(90deg, #6d1f2f 0%, #8a2f45 100%);
}

.wine-gauge__marker {
position: absolute;
top: 11px;
width: 18px;
height: 18px;
border-radius: 50%;
background: #ffffff;
border: 2px solid #6d1f2f;
box-shadow: 0 4px 10px rgba(109, 31, 47, 0.18);
transform: translate(-50%, -50%);
z-index: 2;
box-sizing: border-box;
}

.wine-gauge__steps {
position: absolute;
top: 26px;
left: 0;
width: 100%;
display: flex;
justify-content: space-between;
font-size: 11px;
line-height: 1;
opacity: 0.6;
}

@media screen and (max-width: 749px) {
.wine-gauge-card {
padding: 20px;
border-radius: 16px;
}

.wine-gauge-card__title {
font-size: 20px;
}

.wine-gauge-item__label {
font-size: 14px;
}

.wine-gauge-item__value {
font-size: 13px;
}
}
/* END_SECTION:product_profil */

/* START_SECTION:timeline-decazes (INDEX:117) */
.timeline-decazes {
padding: {{ section.settings.paddingsection }};
margin: {{ section.settings.marginsection }};
}

@media (max-width: 767px) {
.timeline-decazes {
padding: {{ section.settings.paddingmobile }};
margin: {{ section.settings.marginmobile }};
}
}

.timeline-decazes__inner {
text-align: center;
}

.timeline-decazes__header {
margin-bottom: 3rem;
}

.timeline-decazes__eyebrow {
font-size: 0.95rem;
letter-spacing: 0.3em;
text-transform: uppercase;
color: var(--g-main-2, #6d7c3c);
margin-bottom: 0.75rem;
}

.timeline-decazes__title {
font-size: clamp(2rem, 5vw, 3rem);
font-weight: 600;
letter-spacing: 0.05em;
color: var(--g-color-heading, #2b2b2b);
margin-bottom: 0.5rem;
}

.timeline-decazes__subtitle {
font-style: italic;
color: var(--color-body-text, #555);
margin-bottom: 1rem;
}

.timeline-decazes__divider {
display: inline-block;
width: 120px;
height: 1px;
background-color: currentColor;
opacity: 0.3;
}

.timeline-decazes__columns {
display: flex;
gap: 2rem;
align-items: stretch;
justify-content: center;
}

.timeline-decazes__column {
flex: 1;
display: flex;
flex-direction: column;
gap: 2.5rem;
}

.timeline-decazes__column--center {
flex: 0 0 300px;
display: flex;
align-items: center;
justify-content: center;
align-self: stretch;
}

.timeline-decazes__image-wrapper img {
width: 100%;
height: auto;
object-fit: contain;
filter: grayscale(100%);
}

.timeline-decazes__item {
text-align: left;
position: relative;
}

.timeline-decazes__item-content {
display: flex;
align-items: center;
gap: 1.5rem;
}

.timeline-decazes__item-content--right {
flex-direction: row-reverse;
}

.timeline-decazes__item-content--right-fixed {
flex-direction: row;
}

.timeline-decazes__column--right .timeline-decazes__item-content--right-fixed {
justify-content: flex-end;
gap: 1.5rem;
}

.timeline-decazes__column--right .timeline-decazes__item {
text-align: right;
}

.timeline-decazes__icon {
width: 75px;
height: 75px;
border-radius: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
margin-bottom: 0.75rem;
}

.timeline-decazes__icon img {
object-fit: contain;
}

.timeline-decazes__heading {
display: flex;
align-items: center;
gap: 1rem;
}

.timeline-decazes__title-block {
text-align: left;
}

.timeline-decazes__column--right .timeline-decazes__heading {
flex-direction: row-reverse;
justify-content: flex-end;
text-align: right;
}

.timeline-decazes__column--right .timeline-decazes__title-block {
text-align: right;
}

.timeline-decazes__photo {
flex: 0 0 120px;
}

.timeline-decazes__photo--right {
order: 2;
}

.timeline-decazes__photo img {
width: 100%;
height: auto;
border-radius: 8px;
object-fit: cover;
}

.timeline-decazes__year {
font-size: 1.5rem;
letter-spacing: 0.3em;
text-transform: uppercase;
color: var(--g-color-heading, #2b2b2b);
margin-bottom: 0.4rem;
}

.timeline-decazes__label {
font-family: "Playfair Display", serif;
font-style: italic;
color: var(--g-main-2, #6d7c3c);
margin-bottom: 0.6rem;
font-size: 1.25rem;
}

.timeline-decazes__description-wrapper {
position: relative;
}

.timeline-decazes__description-content {
margin: 0;
color: var(--color-body-text, #555);
line-height: 1.6;
}

.timeline-decazes__description-wrapper.has-toggle .timeline-decazes__description-content {
max-height: 70px;
overflow: hidden;
transition: max-height 0.35s ease;
position: relative;
}

.timeline-decazes__description-wrapper.has-toggle .timeline-decazes__description-content::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 50px;
background: linear-gradient(to bottom, rgba(255,255,255,0), var(--g-body-bg, #fff));
pointer-events: none;
transition: opacity 0.3s ease;
}

.timeline-decazes__toggle-checkbox {
display: none;
}

.timeline-decazes__toggle-label {
display: inline-block;
font-size: 0.75rem;
letter-spacing: 0.1em;
color: var(--g-main-2, #6d7c3c);
cursor: pointer;
}

.timeline-decazes__toggle-label::before {
content: attr(data-read-more);
}

.timeline-decazes__toggle-checkbox:checked ~ .timeline-decazes__description-content {
max-height: 2000px;
}

.timeline-decazes__toggle-checkbox:checked ~ .timeline-decazes__description-content::after {
opacity: 0;
}

.timeline-decazes__toggle-checkbox:checked ~ .timeline-decazes__toggle-label::before {
content: attr(data-read-less);
}

.timeline-decazes__meta {
margin-top: 0.5rem;
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 0.15em;
color: var(--color-body-text, #777);
}

@media (max-width: 1024px) {
.timeline-decazes__columns {
flex-direction: column;
text-align: center;
}

.timeline-decazes__column--right .timeline-decazes__item,
.timeline-decazes__item {
text-align: center;
}

.timeline-decazes__item-content,
.timeline-decazes__item-content--right,
.timeline-decazes__column--right .timeline-decazes__item-content {
flex-direction: column;
justify-content: center;
}
}
/* END_SECTION:timeline-decazes */

/* START_SECTION:wine-nutrition-list (INDEX:120) */
.wine-nutrition-list {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px;
}
.wine-nutrition-list__product {
  border-bottom: 1px solid #e9e4dc;
  padding: 24px 0;
}
.wine-nutrition-list__variants {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
}
.wine-nutrition-list__variant {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
}
.wine-nutrition-list__link {
  font-weight: 600;
  color: var(--color-link, #7a3c3c);
}
/* END_SECTION:wine-nutrition-list */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:localization-language (INDEX:223) */
.localization-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.08);
    font-weight: 600;
    font-size: 0.8rem;
    margin-right: 0.5rem;
  }
  .disclosure__link .localization-flag {
    margin-right: 0.4rem;
  }
  .disclosure__button.localization-form__select {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
  }
/* END_SNIPPET:localization-language */

/* START_SNIPPET:map-open-card (INDEX:225) */
.map-open-card {
    --map-open-height: 360px;
    width: 100%;
  }
  .map-open-card__wrapper {
    position: relative;
    width: 100%;
  }
  .map-open-card__info {
    position: absolute;
    top: clamp(32px, 8vh, 140px);
    left: clamp(24px, 5vw, 120px);
    transform: none;
    z-index: 1000;
    width: min(90%, 400px);
    text-align: left;
    background-color: var(--color-body, #fff);
    padding: 40px 32px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
  }
  .map-open-card__heading {
    margin-bottom: 1rem;
  }
  .map-open-card__body {
    margin-bottom: 1rem;
  }
  .map-open-card__marker {
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1.5rem;
    color: currentColor;
    opacity: 0.7;
  }
  .map-open-card__button {
    display: inline-flex;
    align-items: center;
    column-gap: 0.5rem;
  }
  .map-open-card__button-icon {
    display: inline-flex;
    font-size: 0;
    line-height: 1;
  }
  .map-open-card__map-wrapper {
    width: 100%;
    min-height: var(--map-open-height);
    position: relative;
    overflow: visible;
  }
  .map-open-card__map {
    width: 100%;
    height: var(--map-open-height);
  }
  .map-open-card__image,
  .map-open-card__placeholder {
    width: 100%;
    min-height: var(--map-open-height);
    border: 0;
  }
  .map-open-card__image {
    background-size: cover;
    background-repeat: no-repeat;
  }
  .map-open-card__placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.04);
  }
  .map-open-card__map-wrapper > * {
    display: block;
  }
  .map-open-card__popup-title {
    font-weight: 600;
    margin-bottom: 0.25rem;
  }
  .map-open-card__popup-address {
    font-size: 0.875rem;
  }
  @media (max-width: 749px) {
    .map-open-card__info {
      position: relative;
      transform: none;
      top: auto;
      left: auto;
      width: 100%;
      box-shadow: none;
      margin-bottom: 24px;
      text-align: center;
    }
  }
/* END_SNIPPET:map-open-card */

/* START_SNIPPET:product-card (INDEX:243) */
.product-card__price {
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.35;
  }
  .product-card__price-note {
    color: #000;
    font-size: 12px;
    margin-top: 4px;
  }
  .product-card__price-suffix {
    display: inline;
    margin-left: 0.35rem;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    white-space: nowrap;
  }
  .product-card__visit {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 0.75rem;
  }
  .product-card__visit-description {
    color: var(--color-body-text, #1a1a1a);
    font-size: 0.85rem;
    font-weight: 500;
    margin: 0.4rem 0 0.6rem;
    line-height: 1.5;
  }
  .product-card__visit-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    margin-bottom: 0.25rem;
  }
  .product-card__visit-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    background-color: rgba(0, 0, 0, 0.05);
  }
  .product-card__visit-icon {
    display: inline-flex;
    align-items: center;
    margin-right: 0.4rem;
  }
  .product-card__visit-icon svg {
    width: 24px;
    height: 24px;
  }
  .product-card__visit-text {
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--color-body-text, #1a1a1a);
  }
  .product-card--style6 .product-card__info {
    font-size: calc(var(--g-font-size) * 0.8);
  }
  .product-card--style6 .product-card__info .product-card__name {
    font-size: calc(var(--g-p-font-size) * 0.8);
  }
  .product-card--style6 .product-card__info .product-card__price {
    margin-top: 10px;
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--g-color-heading, #1a1a1a);
  }
  .product-card--style6 .product-card__info .product-card__pricesale {
    color: var(--g-main-2);
  }
  .product-card--style6 .product-card__info .product-card__price-unit,
  .product-card--style6 .product-card__info .product-card__price-suffix {
    font-size: inherit;
    font-weight: 400;
  }
  .product-card--style6 .product-card__info .product-card__price-note,
  .product-card--style6 .product-card__info .product-card__regular-price {
    font-size: 10px;
  }
  .product-card--style6 .product-card__info .product-card__visit-description {
    font-size: 0.68rem;
  }
  .product-card--style6 .product-card__info .product-card__visit-text {
    font-size: 0.72rem;
  }
  @media (max-width: 749px), (min-width: 992px) {
    .product-card--style6 .product-card__info {
      font-size: var(--g-font-size);
    }
    .product-card--style6 .product-card__info .product-card__name {
      font-size: var(--g-p-font-size);
    }
    .product-card--style6 .product-card__info .product-card__price,
    .product-card--style6 .product-card__info .product-card__visit-description {
      font-size: 0.85rem;
    }
    .product-card--style6 .product-card__info .product-card__visit-text {
      font-size: 0.9rem;
    }
    .product-card--style6 .product-card__info .product-card__price-note,
    .product-card--style6 .product-card__info .product-card__regular-price {
      font-size: 12px;
    }
  }
  .product-card--style6 .product-card__overlay--booking {
    flex-wrap: wrap;
    row-gap: 8px;
    padding-bottom: 16px;
  }
  .product-card--style6 .product-card__overlay .btn.product-card__reserve {
    flex: 0 1 100%;
    margin: 0;
    padding: 12px 16px;
    min-height: 44px;
    font-size: 0.875rem;
    line-height: 1.4;
    white-space: normal;
    pointer-events: none;
  }
  .product-card--style6:hover .product-card__overlay .btn.product-card__reserve,
  .product-card--style6:focus-within .product-card__overlay .btn.product-card__reserve {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
  @media (hover: none), (max-width: 991px) {
    .product-card--style6 .product-card__overlay .btn.product-card__reserve {
      opacity: 1;
      transform: translateY(0);
      pointer-events: auto;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .product-card--style6 .product-card__overlay .btn.product-card__reserve {
      transition: none;
    }
  }
  .product-card--style6 .product-card__short-title p {
    margin: 0;
    font-size: inherit;
  }
/* END_SNIPPET:product-card */

/* START_SNIPPET:wine-newsletter-popup (INDEX:276) */
.wine-newsletter-popup {
    width: min(520px, calc(100% - 32px));
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 44px 36px 32px;
    border: 0;
    background: #faf8f3;
    color: #28251f;
    text-align: center;
    box-shadow: 0 16px 64px #0003;
  }
  .wine-newsletter-popup::backdrop { background: #0008; }
  .wine-newsletter-popup__close {
    position: absolute;
    top: 12px;
    right: 12px;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 10px;
    border: 0;
    color: inherit;
    background: transparent;
    cursor: pointer;
  }
  .wine-newsletter-popup__close svg { width: 20px; height: 20px; }
  .wine-newsletter-popup__offer { color: #82725b; font-size: 48px; font-weight: 600; }
  .wine-newsletter-popup h2 { font-size: 26px; line-height: 1.25; margin: 16px 0; }
  .wine-newsletter-popup form { text-align: left; margin-top: 24px; }
  .wine-newsletter-popup label { display: block; margin-bottom: 8px; }
  .wine-newsletter-popup input[type="email"] {
    width: 100%;
    min-height: 48px;
    padding: 12px;
    border: 1px solid #82725b;
    background: #fff;
    color: inherit;
  }
  .wine-newsletter-popup .btn { width: 100%; margin-top: 12px; }
  .wine-newsletter-popup__consent { font-size: 12px; line-height: 1.5; margin: 16px 0 0; }
  .wine-newsletter-popup :focus-visible { outline: 2px solid #28251f; outline-offset: 3px; }
  @media (max-width: 480px) {
    .wine-newsletter-popup { padding: 40px 24px 24px; }
    .wine-newsletter-popup h2 { font-size: 22px; }
  }
/* END_SNIPPET:wine-newsletter-popup */

/* START_SNIPPET:wine-review-summary (INDEX:277) */
.wine-review-summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-top: 12px;
    font-size: 0.95rem;
  }

  .wine-review-summary__stars {
    position: relative;
    display: inline-block;
    color: #bcb8b0;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 2px;
  }

  .wine-review-summary__stars-filled {
    position: absolute;
    inset: 0 auto 0 0;
    width: var(--stars-width);
    overflow: hidden;
    white-space: nowrap;
    color: #82725b;
  }

  .wine-review-summary a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  #judgeme_product_reviews {
    scroll-margin-top: 100px;
  }
/* END_SNIPPET:wine-review-summary */