.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-fbdb615:#6B2232;--e-global-color-c5a48f1:#C38B89;--e-global-color-2457dc4:#8D8A56;--e-global-color-1167860:#C7A15A;--e-global-color-a9882b6:#F2ECE5;--e-global-color-98ba701:#4B3426;--e-global-color-9e58757:#2F211B;--e-global-color-03edf56:#FFFDF9;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:500;--e-global-typography-70e9db0-font-family:"Playfair Display";--e-global-typography-70e9db0-font-size:20px;--e-global-typography-70e9db0-font-weight:500;--e-global-typography-70e9db0-line-height:1.05px;--e-global-typography-40aa90f-font-family:"Montserrat";--e-global-typography-40aa90f-font-size:16px;--e-global-typography-40aa90f-font-weight:600;--e-global-typography-40aa90f-text-transform:uppercase;--e-global-typography-40aa90f-letter-spacing:1.5px;--e-global-typography-c97b742-font-family:"Montserrat";--e-global-typography-c97b742-font-size:16px;--e-global-typography-c97b742-font-weight:400;--e-global-typography-c97b742-line-height:1.7px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-family:"Montserrat", Sans-serif;font-weight:600;letter-spacing:0.8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ======================================================================
   NEEL CSS V22
   Complete 1-op-1 vervanging van de aangeleverde neel.css.
   Story/Over NEEL definitief gecorrigeerd voor Elementor:
   neel-container + story-grid kan nu veilig op dezelfde Flexbox staan.
   ====================================================================== */

/* ======================================================================
   NEEL – Elementor stylesheet
   Gebaseerd op voorbeeld-2(2).html
   Gebruik de classnamen uit de implementatiehandleiding.
   ====================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600&family=Playfair+Display:wght@500;600;700&display=swap');

:root{
  --bordeaux:#6B2232;
  --rose:#C38B89;
  --olive:#8D8A56;
  --gold:#C7A15A;
  --cream:#F2ECE5;
  --wood:#4B3426;
  --white:#fffdf9;
  --ink:#2f211b;
  --max:1440px;
  --reading:760px;
  --serif:"Playfair Display",serif;
  --sans:"Montserrat",sans-serif;
}

html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);overflow-x:hidden}

.neel-page,
.neel-page *{box-sizing:border-box}

.neel-page{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:var(--cream);
  overflow:hidden;
}

.neel-page p{margin-top:0}
.neel-page a{text-decoration:none}

/* -----------------------------
   Algemene containers / typografie
   ----------------------------- */
.neel-page .section{
  position:relative;
  width:100%;
  max-width:none!important;
  padding:115px 24px;
}

.neel-page .neel-container{
  position:relative;
  width:100%!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding:0!important;
}

.neel-page .eyebrow .elementor-heading-title,
.neel-page .eyebrow .elementor-widget-container{
  color:var(--bordeaux);
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.neel-page .eyebrow{margin-bottom:16px!important}

.neel-page .section-title .elementor-heading-title{
  margin:0;
  color:var(--bordeaux);
  font-family:var(--serif);
  font-size:clamp(48px,6vw,84px);
  font-weight:500;
  line-height:1.02;
}

.neel-page .section-intro,
.neel-page .section-intro p{
  margin:0;
  color:var(--wood);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.75;
}

.neel-page .section-head{
  display:grid!important;
  grid-template-columns:1.08fr .72fr;
  gap:70px;
  align-items:end;
  width:100%;
  margin:0 0 55px;
  padding:0;
}

.neel-page .section-intro-wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:24px!important;
  padding:0!important;
}

/* -----------------------------
   Knoppen
   class op Elementor Button-widget:
   btn + optioneel btn-light / btn-outline / assortment-cta
   ----------------------------- */
.neel-page .btn .elementor-button,
.site-header .nav-button .elementor-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 22px;
  border:1px solid var(--gold);
  border-radius:0;
  background:var(--bordeaux);
  color:var(--cream);
  box-shadow:none;
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

.neel-page .btn .elementor-button:hover,
.site-header .nav-button .elementor-button:hover{
  background:var(--gold);
  color:var(--bordeaux);
}

.neel-page .btn-light .elementor-button{
  background:var(--cream);
  color:var(--bordeaux);
}

.neel-page .btn-outline .elementor-button{
  background:transparent;
  color:var(--cream);
  border-color:rgba(242,236,229,.65);
}

.neel-page .assortment-cta{
  width:auto!important;
  min-width:290px;
  align-self:flex-start;
}
.neel-page .assortment-cta .elementor-button{padding:15px 23px}
.neel-page .assortment-cta .elementor-button-icon{transition:transform .25s ease}
.neel-page .assortment-cta .elementor-button:hover .elementor-button-icon{transform:translateX(5px)}

/* ======================================================================
   HEADER – Elementor Theme Builder
   ====================================================================== */
.site-header{
  position:fixed!important;
  inset:0 0 auto!important;
  z-index:1000!important;
  width:100%!important;
  max-width:none!important;
  padding:18px 22px!important;
  background:transparent!important;
  pointer-events:none;
}

.site-header .nav{
  pointer-events:auto;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:nowrap!important;
  gap:28px!important;
  width:100%!important;
  max-width:var(--max)!important;
  min-height:82px;
  margin:0 auto!important;
  padding:10px 18px 10px 24px!important;
  border:1px solid rgba(199,161,90,.65);
  background:rgba(242,236,229,.94)!important;
  box-shadow:0 12px 35px rgba(75,52,38,.11);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.site-header .brand{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:15px!important;
  min-width:230px;
  width:auto!important;
  padding:0!important;
}

.site-header .brand-symbol{
  flex:0 0 52px;
  width:52px!important;
  height:52px!important;
  min-height:52px!important;
  display:grid!important;
  place-items:center;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--gold);
  border-radius:50%;
  background:var(--bordeaux);
}
.site-header .brand-symbol .elementor-heading-title{
  color:var(--gold);
  font-family:var(--serif);
  font-size:28px;
  font-weight:600;
  line-height:50px;
  text-align:center;
}

.site-header .brand-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  width:auto!important;
  padding:0!important;
}

.site-header .brand-name{margin:0!important}
.site-header .brand-name .elementor-heading-title{
  color:var(--bordeaux);
  font-family:var(--serif);
  font-size:28px;
  font-weight:500;
  line-height:.9;
  letter-spacing:.16em;
}
.site-header .brand-sub{margin:9px 0 0!important}
.site-header .brand-sub,
.site-header .brand-sub p{
  margin-bottom:0;
  color:var(--wood);
  font-family:var(--sans);
  font-size:8px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.19em;
  text-transform:uppercase;
}

.site-header .nav-links{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:22px!important;
  width:auto!important;
  margin-left:auto;
}

.site-header .nav-menu{width:auto!important}
.site-header .nav-menu .elementor-nav-menu--main .elementor-item{
  padding:9px 0!important;
  margin:0 13px!important;
  color:var(--ink)!important;
  font-family:var(--sans);
  font-size:13px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.03em;
}
.site-header .nav-menu .elementor-nav-menu--main .elementor-item:after{
  height:1px!important;
  background:var(--gold)!important;
}

.site-header .nav-button{width:auto!important;flex:0 0 auto}

/* ======================================================================
   HERO
   ====================================================================== */
.neel-page .hero{
  position:relative;
  display:flex!important;
  align-items:center!important;
  width:100%;
  max-width:none!important;
  min-height:920px;
  padding:155px 24px 150px!important;
  overflow:hidden;
  background-color:var(--wood);
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center calc(50% + var(--hero-shift,0px));
}

.neel-page .hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(75,52,38,.86),rgba(75,52,38,.22)),
    linear-gradient(rgba(107,34,50,.15),rgba(107,34,50,.15)),
    radial-gradient(circle at 75% 35%,rgba(199,161,90,.15),transparent 35%);
  pointer-events:none;
}
.neel-page .hero:after{
  content:"";
  position:absolute;
  z-index:1;
  left:-5%;
  right:-5%;
  bottom:-96px;
  height:190px;
  background:var(--cream);
  clip-path:polygon(0 34%,10% 47%,20% 38%,31% 53%,43% 42%,55% 56%,66% 45%,79% 59%,90% 46%,100% 60%,100% 100%,0 100%);
  pointer-events:none;
}

.neel-page .hero-inner{
  position:relative;
  z-index:2;
  display:grid!important;
  grid-template-columns:1.02fr .98fr;
  gap:70px!important;
  align-items:center!important;
  width:100%!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding:0!important;
}

.neel-page .hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  width:100%;
  max-width:700px;
  color:var(--cream);
}

.neel-page .ornament{
  position:relative;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  width:auto!important;
  margin:0 0 26px!important;
  color:#e6c78f;
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.neel-page .ornament:before,
.neel-page .ornament:after{
  content:"";
  width:44px;
  height:1px;
  margin:0 14px 0 0;
  background:var(--gold);
}
.neel-page .ornament:after{margin:0 0 0 14px}
.neel-page .ornament p{margin:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}

.neel-page .hero-title-main,
.neel-page .hero-title-accent{margin:0!important}
.neel-page .hero-title-main .elementor-heading-title{
  margin:0;
  color:var(--cream);
  font-family:var(--serif);
  font-size:clamp(68px,7.8vw,118px);
  font-weight:500;
  line-height:.94;
  letter-spacing:.02em;
}
.neel-page .hero-title-accent .elementor-heading-title{
  margin:0;
  color:#e5c78f;
  font-family:var(--serif);
  font-size:clamp(42px,4.8vw,73px);
  font-weight:500;
  line-height:1.05;
  letter-spacing:.06em;
}
.neel-page .hero-title-accent{margin-top:2px!important;margin-bottom:26px!important}

.neel-page .hero-text,
.neel-page .hero-text p{
  max-width:610px;
  margin:0;
  color:var(--cream);
  font-family:var(--sans);
  font-size:18px;
  line-height:1.72;
}

.neel-page .hero-actions{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  gap:14px!important;
  width:100%;
  margin-top:32px!important;
  padding:0!important;
}
.neel-page .hero-actions .elementor-widget-button{width:auto!important}

.neel-page .hero-panel{
  position:relative;
  width:100%;
  min-height:560px;
  padding:0!important;
}
.neel-page .hero-panel:before{
  content:"";
  position:absolute;
  inset:20px 0 0 45px;
  z-index:0;
  border:1px solid var(--gold);
  pointer-events:none;
}

.neel-page .hero-photo{
  position:absolute!important;
  z-index:1;
  inset:0 45px 40px 0!important;
  width:auto!important;
  height:auto!important;
  overflow:hidden;
  box-shadow:0 24px 65px rgba(30,14,10,.35);
}
.neel-page .hero-photo .elementor-widget-container{width:100%;height:100%;overflow:hidden}
.neel-page .hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.neel-page .hero-photo:after{
  content:"";
  position:absolute;
  inset:14px;
  z-index:2;
  border:1px solid rgba(242,236,229,.65);
  pointer-events:none;
}

.neel-page .hero-card{
  position:absolute!important;
  z-index:3;
  right:0;
  bottom:0;
  width:260px!important;
  min-height:0;
  padding:24px!important;
  border:1px solid var(--gold);
  background:var(--rose)!important;
  color:var(--bordeaux);
  box-shadow:0 18px 40px rgba(75,52,38,.22);
}
.neel-page .hero-card-title{margin:0 0 8px!important}
.neel-page .hero-card-title .elementor-heading-title{
  color:var(--bordeaux);
  font-family:var(--serif);
  font-size:29px;
  font-weight:600;
  line-height:1.1;
}
.neel-page .hero-card-text,
.neel-page .hero-card-text p{
  margin:0;
  color:var(--wood);
  font-family:var(--sans);
  font-size:13px;
  line-height:1.55;
}

/* ======================================================================
   ASSORTIMENT / CATEGORIEËN
   ====================================================================== */
.neel-page .categories{background:var(--cream)}
.neel-page .categories .neel-container{max-width:1440px!important}

.neel-page .category-grid-centered{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:300px 300px;
  gap:22px!important;
  width:min(1360px,100%)!important;
  max-width:1360px!important;
  margin:0 auto!important;
  padding:0!important;
}

.neel-page .category-card{
  position:relative;
  min-width:0;
  min-height:0;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  overflow:hidden;
  color:var(--cream);
  box-shadow:0 18px 45px rgba(75,52,38,.13);
}
.neel-page .category-card.card-1{grid-column:1/span 7;grid-row:1/span 2}
.neel-page .category-card.card-2{grid-column:8/span 5;grid-row:1}
.neel-page .category-card.card-3{grid-column:8/span 2;grid-row:2}
.neel-page .category-card.card-4{grid-column:10/span 3;grid-row:2}

.neel-page .category-card:before{
  content:"";
  position:absolute;
  inset:14px;
  z-index:3;
  border:1px solid rgba(242,236,229,.5);
  pointer-events:none;
}
.neel-page .category-card:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,transparent 30%,rgba(43,26,21,.86));
  pointer-events:none;
}

.neel-page .category-image{
  position:absolute!important;
  inset:0!important;
  z-index:0;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  transition:transform 1.2s cubic-bezier(.2,.65,.25,1);
}
.neel-page .category-image .elementor-widget-container{height:100%;overflow:hidden}
.neel-page .category-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.65,.25,1)}
.neel-page .category-card:hover .category-image img{transform:scale(1.06)}

.neel-page .category-content{
  position:absolute!important;
  z-index:4;
  left:26px;
  right:26px;
  bottom:23px;
  width:auto!important;
  padding:0!important;
  gap:0!important;
}
.neel-page .category-kicker{margin:0 0 9px!important}
.neel-page .category-kicker .elementor-heading-title{
  color:#e5c78f;
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.neel-page .category-title{margin:0 0 9px!important}
.neel-page .category-title .elementor-heading-title{
  color:var(--cream);
  font-family:var(--serif);
  font-size:36px;
  font-weight:500;
  line-height:1.08;
}
.neel-page .category-text,
.neel-page .category-text p{
  margin:0;
  color:var(--cream);
  font-family:var(--sans);
  font-size:14px;
  line-height:1.6;
}
.neel-page .category-card.card-3 .category-title .elementor-heading-title,
.neel-page .category-card.card-4 .category-title .elementor-heading-title{font-size:27px}
.neel-page .category-card.card-3 .category-text,
.neel-page .category-card.card-3 .category-text p,
.neel-page .category-card.card-4 .category-text,
.neel-page .category-card.card-4 .category-text p{font-size:12px}

/* ======================================================================
   OVER NEEL / STORY — V10 DEFINITIEF
   ----------------------------------------------------------------------
   Elementor structuur:
   section + story
   └── neel-container + story-grid
       ├── story-photo-wrap
       │   ├── story-photo
       │   └── story-detail
       └── story-copy
           ├── eyebrow
           ├── section-title
           ├── tekst
           └── values
   ====================================================================== */

.neel-page .story{
  position:relative!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:90px 24px 96px!important;

  overflow:hidden!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}


/* subtiel NEEL-patroon over de volledige sectie */
.neel-page .story::before{
  content:"";

  position:absolute;
  z-index:0;
  inset:0;

  opacity:.16;
  background-size:62px 62px;

  pointer-events:none;
}


/*
 * BELANGRIJK:
 * Dit Elementor-element heeft BEIDE classes:
 * neel-container + story-grid.
 *
 * De algemene .neel-container wordt later in dit stylesheet als flex
 * ingesteld. Met deze specifiekere .elementor-kit-6 blijft Story altijd een grid.
 */
/* =========================================================
   STORY — BREEDTE GELIJK AAN ANDERE SECTIES
   ========================================================= */

.neel-page .story .neel-container.story-grid{
  position:relative!important;
  z-index:2!important;

  display:grid!important;

  grid-template-columns:
    minmax(0,600px)
    minmax(0,1fr)!important;

  align-items:center!important;

  width:100%!important;
  max-width:1440px!important;
  min-width:0!important;

  margin:0 auto!important;
  padding:0!important;

  gap:72px!important;

  /* Elementor flexinstellingen neutraliseren */
  flex-direction:unset!important;
  flex-wrap:unset!important;
  justify-content:unset!important;
}


/* beide kolommen volledig door het grid laten bepalen */
.neel-page .story .neel-container.story-grid > .story-photo-wrap,
.neel-page .story .neel-container.story-grid > .story-copy{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
}


/* ----------------------------------------------------------------------
   LINKERKANT — FOTO-COLLAGE
   ---------------------------------------------------------------------- */

.neel-page .story .story-photo-wrap{
  position:relative!important;

  width:100%!important;
  max-width:600px!important;
  min-width:0!important;

  min-height:580px!important;

  margin:0!important;
  padding:0!important;

  justify-self:start!important;
  align-self:center!important;

  overflow:visible!important;
}


.neel-page .story .story-photo{
  position:absolute!important;

  inset:
    0
    44px
    42px
    0!important;

  width:auto!important;
  height:auto!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;

  border:1px solid rgba(199,161,90,.72)!important;
  background:#281b16!important;
}


.neel-page .story .story-photo .elementor-widget-container{
  width:100%!important;
  height:100%!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;
}


.neel-page .story .story-photo img{
  display:block!important;

  width:100%!important;
  height:100%!important;

  margin:0!important;

  object-fit:cover!important;
}


/* dunne lichte binnenlijn */
.neel-page .story .story-photo::after{
  content:"";

  position:absolute;
  z-index:2;

  inset:14px;

  border:1px solid rgba(242,236,229,.48);

  pointer-events:none;
}


/* overlappende detailfoto */
.neel-page .story .story-detail{
  position:absolute!important;
  z-index:4!important;

  right:0!important;
  bottom:0!important;

  width:220px!important;
  height:205px!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;

  border:9px solid var(--bordeaux)!important;
  outline:1px solid var(--gold)!important;

  background:var(--cream)!important;
}


.neel-page .story .story-detail .elementor-widget-container{
  width:100%!important;
  height:100%!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;
}


.neel-page .story .story-detail img{
  display:block!important;

  width:100%!important;
  height:100%!important;

  object-fit:cover!important;
}


/* ----------------------------------------------------------------------
   RECHTERKANT — COPY
   ---------------------------------------------------------------------- */

.neel-page .story .story-copy{
  display:flex!important;
  flex-direction:column!important;

  align-items:flex-start!important;
  justify-content:center!important;

  width:100%!important;
  max-width:660px!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  justify-self:end!important;

  color:#f2e4db!important;
}


.neel-page .story .story-copy > *{
  max-width:100%!important;
}


.neel-page .story .eyebrow{
  margin:0 0 15px!important;
}


.neel-page .story .eyebrow .elementor-heading-title,
.neel-page .story .eyebrow .elementor-widget-container{
  color:#e4c68d!important;
}


/* Story-titel bewust compacter dan de algemene section-title */
.neel-page .story .story-copy .section-title{
  width:100%!important;

  margin:0 0 22px!important;
}


.neel-page .story .story-copy .section-title .elementor-heading-title{
  margin:0!important;

  color:var(--cream)!important;

  font-family:var(--serif)!important;
  font-size:clamp(50px,4.4vw,68px)!important;
  font-weight:500!important;
  line-height:1.02!important;
}


/* losse tekstwidgets */
.neel-page .story .story-copy > .elementor-widget-text-editor{
  width:100%!important;

  margin:0 0 18px!important;
}


.neel-page .story .story-copy,
.neel-page .story .story-copy p{
  color:#f2e4db!important;

  font-family:var(--sans)!important;
  font-size:15px!important;
  line-height:1.72!important;
}


.neel-page .story .story-copy p{
  margin-top:0!important;
}

.neel-page .story .story-copy p:last-child{
  margin-bottom:0!important;
}


/* ----------------------------------------------------------------------
   WAARDEN
   ---------------------------------------------------------------------- */

.neel-page .story .values{
  display:grid!important;

  grid-template-columns:
    repeat(2,minmax(0,1fr))!important;

  width:100%!important;
  max-width:none!important;

  margin:26px 0 0!important;
  padding:0!important;

  gap:17px 20px!important;
}


.neel-page .story .value{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;

  min-width:0!important;

  margin:0!important;
  padding:16px 0 0!important;

  gap:5px!important;

  border-top:1px solid rgba(199,161,90,.55)!important;
}


.neel-page .story .value-title{
  margin:0!important;
}


.neel-page .story .value-title .elementor-heading-title{
  margin:0!important;

  color:#e4c68d!important;

  font-family:var(--serif)!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.2!important;
}


.neel-page .story .value-text,
.neel-page .story .value-text p{
  margin:0!important;

  color:var(--cream)!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  line-height:1.55!important;
}


/* ----------------------------------------------------------------------
   TABLET
   ---------------------------------------------------------------------- */

@media(max-width:980px){

  .neel-page .story{
    padding:88px 24px 94px!important;
  }

  .neel-page .story .neel-container.story-grid{
    grid-template-columns:1fr!important;

    max-width:760px!important;

    gap:48px!important;
  }

  .neel-page .story .story-photo-wrap{
    width:100%!important;
    max-width:620px!important;

    min-height:540px!important;

    justify-self:center!important;
  }

  .neel-page .story .story-copy{
    width:100%!important;
    max-width:none!important;

    justify-self:stretch!important;
  }

  .neel-page .story .story-copy .section-title .elementor-heading-title{
    font-size:clamp(48px,7vw,64px)!important;
  }
}


/* ----------------------------------------------------------------------
   MOBIEL
   ---------------------------------------------------------------------- */

@media(max-width:640px){

  .neel-page .story{
    padding:72px 18px 78px!important;
  }

  .neel-page .story .neel-container.story-grid{
    max-width:100%!important;

    gap:38px!important;
  }

  .neel-page .story .story-photo-wrap{
    max-width:none!important;
    min-height:430px!important;

    justify-self:stretch!important;
  }

  .neel-page .story .story-photo{
    inset:0 28px 38px 0!important;
  }

  .neel-page .story .story-photo::after{
    inset:10px!important;
  }

  .neel-page .story .story-detail{
    width:155px!important;
    height:150px!important;

    border-width:7px!important;
  }

  .neel-page .story .story-copy .section-title .elementor-heading-title{
    font-size:46px!important;
  }

  .neel-page .story .story-copy,
  .neel-page .story .story-copy p{
    font-size:14px!important;
  }

  .neel-page .story .values{
    grid-template-columns:1fr!important;

    gap:14px!important;
  }
}


/* ======================================================================
   EXPERIENCE
   ====================================================================== */
.neel-page .experience{
  overflow:hidden;
  background:#efe5dc!important;
}
.neel-page .experience:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:42%;
  background:var(--rose);
  clip-path:polygon(0 0,100% 0,78% 100%,0 100%);
  opacity:.55;
  pointer-events:none;
}
.neel-page .experience-grid{
  position:relative;
  z-index:2;
  display:grid!important;
  grid-template-columns:.85fr 1.15fr;
  gap:75px!important;
  align-items:center!important;
}

.neel-page .experience-collage{
  position:relative;
  min-height:570px;
  padding:0!important;
}
.neel-page .experience-main{
  position:absolute!important;
  inset:0 55px 55px 0!important;
  width:auto!important;
  height:auto!important;
  overflow:hidden;
  box-shadow:0 25px 55px rgba(75,52,38,.2);
}
.neel-page .experience-main .elementor-widget-container,
.neel-page .experience-main img{width:100%;height:100%;object-fit:cover}
.neel-page .experience-main:after{
  content:"";
  position:absolute;
  inset:15px;
  border:1px solid rgba(242,236,229,.72);
  pointer-events:none;
}
.neel-page .experience-small{
  position:absolute!important;
  z-index:3;
  right:0;
  bottom:0;
  width:235px!important;
  height:225px!important;
  overflow:hidden;
  border:8px solid #efe5dc;
  outline:1px solid var(--gold);
}
.neel-page .experience-small .elementor-widget-container,
.neel-page .experience-small img{width:100%;height:100%;object-fit:cover}

.neel-page .list{
  display:grid!important;
  gap:18px!important;
  width:100%;
  margin:30px 0 35px!important;
  padding:0!important;
}
.neel-page .list-item{
  display:grid!important;
  grid-template-columns:40px 1fr;
  gap:14px!important;
  align-items:start!important;
  padding:0!important;
}
.neel-page .list-icon{
  display:grid!important;
  place-items:center;
  width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  border:1px solid var(--gold);
  border-radius:50%;
  color:var(--gold);
}
.neel-page .list-icon .elementor-heading-title{
  color:var(--gold);
  font-family:var(--serif);
  font-size:19px;
  line-height:38px;
  text-align:center;
}
.neel-page .list-title{margin:0 0 3px!important}
.neel-page .list-title .elementor-heading-title{
  color:var(--bordeaux);
  font-family:var(--serif);
  font-size:20px;
  font-weight:600;
  line-height:1.25;
}
.neel-page .list-text,
.neel-page .list-text p{margin:0;color:var(--wood);font-size:14px;line-height:1.55}

.neel-page .note-arch{
  position:absolute!important;
  z-index:6;
  right:1vw;
  top:12%;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:175px!important;
  min-height:145px!important;
  padding:22px!important;
  border:1px solid rgba(242,236,229,.75);
  border-radius:90px 90px 18px 18px;
  background:rgba(195,139,137,.96)!important;
  color:var(--bordeaux);
  box-shadow:0 18px 38px rgba(55,30,24,.22);
  text-align:center;
  animation:neelFloat 5.8s ease-in-out infinite;
}
.neel-page .note-arch,
.neel-page .note-arch p{font-family:var(--serif);font-size:21px;line-height:1.16;color:var(--bordeaux)}
.neel-page .note-arch strong{display:block;color:#f0d39d;font-size:28px;font-weight:500}

@keyframes neelFloat{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-14px) rotate(2deg)}
}

/* ======================================================================
   CADEAUS
   ====================================================================== */
.neel-page .gifts{
  position:relative!important;
  overflow:hidden!important;
  background:var(--olive)!important;
  color:var(--cream)!important;
}
.neel-page .gifts::after{
  content:none!important;
  display:none!important;
}
.neel-page .gifts .section-title .elementor-heading-title{color:var(--cream)}
.neel-page .gifts .eyebrow .elementor-heading-title{color:#f1d9ab}
.neel-page .gifts .section-intro,
.neel-page .gifts .section-intro p{color:#f0eadf}

.neel-page .gift-grid{
  position:relative;
  z-index:2;
  display:grid!important;
  grid-template-columns:repeat(3,1fr);
  gap:22px!important;
  width:min(1500px,calc(100vw - 72px))!important;
  max-width:none!important;
  margin:45px 0 0 50%!important;
  padding:0!important;
  transform:translateX(-50%);
}
.neel-page .gift-card{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  min-height:430px;
  padding:0!important;
  overflow:hidden;
  background:var(--cream)!important;
  color:var(--bordeaux);
  box-shadow:none!important;
}
.neel-page .gift-image{
  width:100%!important;
  height:280px!important;
  flex:0 0 280px;
  margin:0!important;
  overflow:hidden;
}
.neel-page .gift-image .elementor-widget-container,
.neel-page .gift-image img{width:100%;height:100%;object-fit:cover}
.neel-page .gift-image img{transition:transform 1.2s cubic-bezier(.2,.65,.25,1)}
.neel-page .gift-card:hover .gift-image img{transform:scale(1.06)}

.neel-page .gift-body{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:25px 25px 28px!important;
}
.neel-page .gift-title{margin:0 0 8px!important}
.neel-page .gift-title .elementor-heading-title{
  color:var(--bordeaux);
  font-family:var(--serif);
  font-size:29px;
  font-weight:500;
  line-height:1.15;
}
.neel-page .gift-text,
.neel-page .gift-text p{margin:0;color:var(--wood);font-size:14px;line-height:1.6}

.neel-page .gift-number{
  position:absolute!important;
  z-index:5;
  top:18px;
  right:18px;
  display:grid!important;
  place-items:center;
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--gold);
  border-radius:50%;
  background:var(--bordeaux)!important;
}
.neel-page .gift-number .elementor-heading-title{
  color:var(--gold);
  font-family:var(--serif);
  font-size:16px;
  line-height:40px;
  text-align:center;
}

/* ======================================================================
   TESTIMONIAL
   ====================================================================== */
.neel-page .testimonial{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%;
  max-width:none!important;
  padding:105px 24px!important;
  overflow:hidden;
  background:var(--wood)!important;
  color:var(--cream);
  text-align:center;
}
.neel-page .testimonial:before,
.neel-page .testimonial:after{
  content:"";
  position:absolute;
  top:50%;
  width:30%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold));
}
.neel-page .testimonial:before{left:0}
.neel-page .testimonial:after{right:0;transform:scaleX(-1)}
.neel-page .quote{position:relative;z-index:2;max-width:900px!important;margin:0 auto!important}
.neel-page .quote,
.neel-page .quote p{
  margin:0;
  color:var(--cream);
  font-family:var(--serif);
  font-size:clamp(38px,5vw,66px);
  font-weight:500;
  line-height:1.2;
}
.neel-page .quote em{color:#e3c589;font-style:normal}
.neel-page .quote-sub{position:relative;z-index:2;margin:24px 0 0!important}
.neel-page .quote-sub,
.neel-page .quote-sub p{
  margin-bottom:0;
  color:#e4d5c8;
  font-size:11px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.17em;
  text-transform:uppercase;
}

/* ======================================================================
   CONTACT
   ====================================================================== */
.neel-page .contact{padding-bottom:115px!important;background:var(--cream)}
.neel-page .contact-wrap{
  display:grid!important;
  grid-template-columns:1fr .85fr;
  gap:0!important;
  width:100%;
  overflow:hidden;
  border:1px solid rgba(107,34,50,.22);
  box-shadow:0 24px 60px rgba(75,52,38,.12);
}
.neel-page .contact-copy{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  padding:72px!important;
  overflow:hidden;
  background:var(--bordeaux)!important;
  color:var(--cream);
}
.neel-page .contact-copy:after{
  content:"N";
  position:absolute;
  right:22px;
  bottom:-75px;
  color:rgba(199,161,90,.08);
  font-family:var(--serif);
  font-size:260px;
  line-height:1;
  pointer-events:none;
}
.neel-page .contact-copy > *{position:relative;z-index:2}
.neel-page .contact-copy .section-title .elementor-heading-title{color:var(--cream)}
.neel-page .contact-copy .eyebrow .elementor-heading-title{color:#e5c78f}
.neel-page .contact-copy .contact-text,
.neel-page .contact-copy .contact-text p{max-width:570px;margin:0;color:#eee0d5;font-size:16px;line-height:1.75}

.neel-page .contact-info{
  display:flex!important;
  flex-direction:column!important;
  padding:72px 55px!important;
  background:#eaded4!important;
}
.neel-page .info-row{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  padding:20px 0!important;
  border-bottom:1px solid rgba(107,34,50,.18);
}
.neel-page .info-row:first-child{padding-top:0!important}
.neel-page .info-label{margin:0!important}
.neel-page .info-label .elementor-heading-title{
  color:var(--bordeaux);
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.neel-page .info-value{margin:0!important}
.neel-page .info-value .elementor-heading-title{
  color:var(--ink);
  font-family:var(--serif);
  font-size:24px;
  font-weight:500;
  line-height:1.25;
}
.neel-page .contact-info .btn{width:100%!important;margin-top:28px!important}
.neel-page .contact-info .btn .elementor-button{width:100%}

/* ======================================================================
   OVERGANGEN
   Maak in Elementor: parent container + 1 lege child container
   parent: transition-divider + type-class
   child: transition-next
   ====================================================================== */
.neel-page .transition-divider,
.footer-transition{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:112px!important;
  min-height:112px!important;
  margin:-1px 0!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
  line-height:0;
  z-index:3;
}

.neel-page .transition-divider .transition-next,
.footer-transition .footer-transition-next{
  position:absolute!important;
  display:block!important;
  z-index:2!important;
  left:-1%!important;
  right:-1%!important;
  bottom:-2px!important;
  width:auto!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}

.neel-page .td-cream-bordeaux{background:var(--cream)!important}
.neel-page .td-cream-bordeaux .transition-next{
  background:var(--bordeaux)!important;
  clip-path:polygon(0 42%,8% 60%,17% 48%,27% 67%,38% 43%,50% 72%,61% 45%,72% 66%,83% 47%,92% 61%,100% 40%,100% 100%,0 100%)!important;
}
.neel-page .td-bordeaux-rose{background:var(--bordeaux)!important}
.neel-page .td-bordeaux-rose .transition-next{
  background:#efe5dc!important;
  clip-path:ellipse(72% 82% at 50% 100%)!important;
}
.neel-page .td-rose-olive{
  background:#efe5dc!important;
}
.neel-page .td-rose-olive .transition-next{
  background:var(--olive)!important;
  clip-path:polygon(0 78%,18% 55%,35% 73%,53% 32%,69% 65%,84% 43%,100% 66%,100% 100%,0 100%)!important;
}
.neel-page .td-olive-wood{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  height:112px!important;
  min-height:112px!important;
  margin:-2px 0!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--olive)!important;
}

.neel-page .td-olive-wood .transition-next{
  position:absolute!important;
  display:block!important;
  z-index:2!important;
  left:-1%!important;
  right:-1%!important;
  bottom:-2px!important;
  width:auto!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:var(--wood)!important;
  clip-path:polygon(
    0 62%,
    8% 46%,
    17% 58%,
    27% 37%,
    38% 60%,
    50% 33%,
    61% 58%,
    72% 39%,
    83% 60%,
    92% 43%,
    100% 57%,
    100% 100%,
    0 100%
  )!important;
}
.neel-page .td-wood-cream{background:var(--wood)!important}
.neel-page .td-wood-cream .transition-next{
  background:var(--cream)!important;
  clip-path:polygon(0 52%,8% 38%,16% 52%,24% 66%,32% 52%,40% 38%,48% 52%,56% 66%,64% 52%,72% 38%,80% 52%,88% 66%,96% 52%,100% 46%,100% 100%,0 100%)!important;
}

/* Omgekeerde variant voor BOVENAAN een wood-sectie.
   Zelfde vorm als td-wood-cream, maar verticaal gespiegeld:
   crème zit boven, wood onder en de punten wijzen omhoog. */
.neel-page .td-wood-cream-top{
  background:var(--wood)!important;
}
.neel-page .td-wood-cream-top .transition-next{
  background:var(--cream)!important;
  clip-path:polygon(0 52%,8% 38%,16% 52%,24% 66%,32% 52%,40% 38%,48% 52%,56% 66%,64% 52%,72% 38%,80% 52%,88% 66%,96% 52%,100% 46%,100% 100%,0 100%)!important;
  transform:scaleY(-1)!important;
  transform-origin:center center!important;
}

/* ======================================================================
   FOOTER – Elementor Theme Builder
   ====================================================================== */
.footer-transition{
  background:var(--cream)!important;
  height:122px!important;
  min-height:122px!important;
}
.footer-transition .footer-transition-next{
  background:#281b16!important;
  clip-path:polygon(0 46%,10% 62%,21% 42%,32% 68%,44% 40%,56% 70%,68% 41%,79% 66%,90% 43%,100% 58%,100% 100%,0 100%)!important;
}

.neel-footer-main{
  position:relative;
  width:100%!important;
  max-width:none!important;
  margin:-1px 0 0!important;
  padding:60px 24px 28px!important;
  background:#281b16!important;
  color:var(--cream);
}
.neel-footer-main .footer-grid{
  display:grid!important;
  grid-template-columns:1.3fr .75fr .75fr;
  gap:55px!important;
  width:100%!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding:0!important;
}
.neel-footer-main .footer-logo{margin:0!important}
.neel-footer-main .footer-logo .elementor-heading-title{
  color:var(--gold);
  font-family:var(--serif);
  font-size:58px;
  font-weight:500;
  line-height:1;
  letter-spacing:.18em;
}
.neel-footer-main .footer-sub{margin:8px 0 0!important}
.neel-footer-main .footer-sub,
.neel-footer-main .footer-sub p{
  margin-bottom:0;
  color:#decdbf;
  font-size:9px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.neel-footer-main .footer-desc{max-width:430px;margin-top:22px!important}
.neel-footer-main .footer-desc,
.neel-footer-main .footer-desc p{margin-bottom:0;color:#d9cbbf;font-size:14px;line-height:1.7}
.neel-footer-main .footer-title{margin:0 0 16px!important}
.neel-footer-main .footer-title .elementor-heading-title{
  color:var(--gold);
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.neel-footer-main .footer-links .elementor-icon-list-item{margin:0 0 10px!important}
.neel-footer-main .footer-links .elementor-icon-list-text,
.neel-footer-main .footer-links a{color:#eadfd5!important;font-size:14px;font-family:var(--sans)}
.neel-footer-main .footer-links .elementor-icon-list-icon{display:none}
.neel-footer-main .footer-bottom{
  display:flex!important;
  flex-direction:row!important;
  justify-content:space-between!important;
  gap:20px!important;
  width:100%!important;
  max-width:var(--max)!important;
  margin:48px auto 0!important;
  padding:22px 0 0!important;
  border-top:1px solid rgba(199,161,90,.22);
}
.neel-footer-main .footer-bottom,
.neel-footer-main .footer-bottom p,
.neel-footer-main .footer-bottom .elementor-heading-title{margin:0;color:#baa99d;font-size:12px;font-family:var(--sans);font-weight:400}

/* ======================================================================
   RESPONSIVE
   ====================================================================== */
@media(max-width:1100px){
  .neel-page .category-grid-centered{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
    max-width:900px!important;
  }
  .neel-page .category-card.card-1,
  .neel-page .category-card.card-2,
  .neel-page .category-card.card-3,
  .neel-page .category-card.card-4{
    grid-column:auto;
    grid-row:auto;
    min-height:390px;
  }
  .neel-page .category-card.card-1{grid-column:1/span 2;min-height:520px}
}

@media(max-width:980px){
  .site-header .nav{min-height:72px}
  .site-header .nav-links{gap:10px!important}
  .site-header .nav-button{display:none!important}
  .site-header .brand{min-width:0}
  .site-header .nav-menu .elementor-menu-toggle{
    position:relative;
    z-index:1003;
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    padding:0;
    border:1px solid var(--gold);
    border-radius:0;
    background:var(--bordeaux);
    color:var(--cream);
  }
  .site-header .nav-menu .elementor-nav-menu--dropdown{
    position:fixed!important;
    inset:0!important;
    z-index:1002!important;
    width:100vw!important;
    height:100vh!important;
    margin:0!important;
    padding:120px 24px 40px!important;
    background:var(--bordeaux)!important;
    overflow:auto;
  }
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:calc(100vh - 160px);
  }
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-item{
    justify-content:center;
    padding:12px 10px!important;
    color:var(--cream)!important;
    background:transparent!important;
    font-family:var(--serif);
    font-size:42px;
    line-height:1.2;
  }

  .neel-page .hero-inner,
  .neel-page .section-head,
  .neel-page .experience-grid,
  .neel-page .contact-wrap{
    grid-template-columns:1fr;
  }

  .neel-page .hero{padding-top:145px!important}
  .neel-page .hero-panel{min-height:520px}
  .neel-page .section-head{gap:25px!important}
  .neel-page .gift-grid{grid-template-columns:1fr 1fr;width:100%!important;margin-left:0!important;transform:none}
  .neel-page .gift-card:last-child{grid-column:span 2}
  .neel-page .contact-copy,
  .neel-page .contact-info{padding:55px 42px!important}
  .neel-page .note-arch{display:none!important}

  .neel-footer-main .footer-grid{grid-template-columns:1fr 1fr}
  .neel-footer-main .footer-grid > :first-child{grid-column:1/span 2}
}

@media(max-width:700px){
  .neel-page .category-grid-centered{grid-template-columns:1fr}
  .neel-page .category-card.card-1,
  .neel-page .category-card.card-2,
  .neel-page .category-card.card-3,
  .neel-page .category-card.card-4{
    grid-column:auto;
    min-height:360px;
  }
}

@media(max-width:767px){
  .neel-page .transition-divider{height:76px!important;min-height:76px!important}
  .footer-transition{height:84px!important;min-height:84px!important}
  .neel-page .contact{padding-bottom:82px!important}
}

@media(max-width:640px){
  .site-header{padding:11px!important}
  .site-header .nav{min-height:68px;padding:8px 9px 8px 13px!important}
  .site-header .brand-symbol{flex-basis:43px;width:43px!important;height:43px!important;min-height:43px!important}
  .site-header .brand-symbol .elementor-heading-title{font-size:23px;line-height:41px}
  .site-header .brand-name .elementor-heading-title{font-size:22px}
  .site-header .brand-sub{display:none!important}

  .neel-page .hero{min-height:auto;padding:135px 18px 105px!important}
  .neel-page .hero-inner{gap:45px!important}
  .neel-page .hero-title-main .elementor-heading-title{font-size:58px}
  .neel-page .hero-title-accent .elementor-heading-title{font-size:36px}
  .neel-page .hero-text,
  .neel-page .hero-text p{font-size:16px}
  .neel-page .hero-panel{min-height:420px}
  .neel-page .hero-panel:before{inset:16px 0 0 26px}
  .neel-page .hero-photo{inset:0 26px 45px 0!important}
  .neel-page .hero-card{width:215px!important;padding:19px!important}
  .neel-page .hero-actions{flex-direction:column!important}
  .neel-page .hero-actions .elementor-widget-button{width:100%!important}
  .neel-page .hero-actions .elementor-button{width:100%}

  .neel-page .section{padding:82px 18px}
  .neel-page .section-title .elementor-heading-title{font-size:48px}
  .neel-page .section-head{margin-bottom:38px}
  .neel-page .assortment-cta{min-width:0;width:100%!important}
  .neel-page .assortment-cta .elementor-button{width:100%}

  .neel-page .experience-collage{min-height:445px}
  .neel-page .experience-main{inset:0 28px 45px 0!important}
  .neel-page .experience-small{width:165px!important;height:160px!important}
  .neel-page .gift-grid{grid-template-columns:1fr}
  .neel-page .gift-card:last-child{grid-column:auto}

  .neel-page .quote,
  .neel-page .quote p{font-size:38px}
  .neel-page .contact-copy,
  .neel-page .contact-info{padding:42px 25px!important}

  .neel-footer-main{padding:50px 18px 26px!important}
  .neel-footer-main .footer-grid{grid-template-columns:1fr;gap:36px!important}
  .neel-footer-main .footer-grid > :first-child{grid-column:auto}
  .neel-footer-main .footer-bottom{flex-direction:column!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .neel-page .note-arch{animation:none}
}


/* ======================================================================
   V2 – Elementor structuurcorrecties
   - container -> neel-container (Elementor reserveert "container")
   - sectiekop links altijd verticaal
   - Elementor breedte-instellingen neutraliseren binnen section-head
   ====================================================================== */
.neel-page .neel-container{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  width:100%!important;
  max-width:var(--max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0!important;
}

.neel-page .categories .neel-container{
  max-width:1440px!important;
}

.neel-page .section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.72fr)!important;
  gap:70px!important;
  align-items:end!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 55px!important;
  padding:0!important;
}

.neel-page .section-head > *{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}

.neel-page .section-head-left{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
}

.neel-page .section-head-left > *{
  width:100%!important;
  max-width:100%!important;
}

.neel-page .section-intro-wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  gap:24px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
}

@media(max-width:980px){
  .neel-page .section-head{
    grid-template-columns:1fr!important;
    gap:25px!important;
  }
}

/* ======================================================================
   V3 – CONTACT CORRECTIE
   Verwijdert de ongewenste rand/padding rond de contact-wrap.
   ====================================================================== */
.neel-page .contact-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.85fr)!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  overflow:hidden!important;
  box-shadow:0 24px 60px rgba(75,52,38,.12);
}
.neel-page .contact-wrap > .contact-copy,
.neel-page .contact-wrap > .contact-info{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  align-self:stretch!important;
}

/* ======================================================================
   V3 – NEEL WEBSHOP / WOOCOMMERCE PRODUCT ARCHIVE
   Gebaseerd op webshop-v1(1).html.

   Elementor classes:
   neel-shop-page
   neel-shop-hero
   neel-shop-hero-inner
   neel-shop-hero-copy
   neel-shop-hero-eyebrow
   neel-shop-hero-title
   neel-shop-hero-text
   neel-shop-hero-note
   neel-shop-note-title
   neel-shop-filter-toggle
   neel-shop-main
   neel-shop-sidebar
   neel-shop-filter-heading
   neel-shop-filter-title
   neel-shop-filter-close
   neel-shop-products-area
   neel-shop-toolbar
   neel-shop-toolbar-left
   neel-shop-search
   neel-shop-count
   neel-shop-ordering
   neel-shop-active
   neel-shop-products-grid
   neel-shop-filter-backdrop
   ====================================================================== */

/* ---------- Shop archive: header zoals het HTML-voorbeeld ---------- */
body.woocommerce-shop .site-header,
body.post-type-archive-product .site-header,
body.tax-product_cat .site-header,
body.tax-product_tag .site-header{
  position:sticky!important;
  inset:auto!important;
  top:0!important;
  width:100%!important;
  z-index:1000!important;
  padding:18px 22px!important;
  background:var(--bordeaux)!important;
  pointer-events:auto!important;
}

body.woocommerce-shop .site-header .nav,
body.post-type-archive-product .site-header .nav,
body.tax-product_cat .site-header .nav,
body.tax-product_tag .site-header .nav{
  width:100%!important;
  max-width:var(--max)!important;
  min-height:82px!important;
  margin:0 auto!important;
  padding:10px 18px 10px 24px!important;
  border:1px solid rgba(199,161,90,.65)!important;
  background:rgba(242,236,229,.94)!important;
  box-shadow:0 12px 35px rgba(75,52,38,.11)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

/* ---------- Pagina wrapper ---------- */
.neel-shop-page,
.neel-shop-page *{box-sizing:border-box}

.neel-shop-page{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  background:var(--cream)!important;
  color:var(--ink);
  font-family:var(--sans);
  overflow:visible!important;
}

.neel-shop-page p{margin-top:0}
.neel-shop-page a{text-decoration:none}

/* ---------- Hero ---------- */
.neel-shop-page .neel-shop-hero{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:95px 24px 115px!important;
  overflow:hidden!important;
  background:var(--bordeaux)!important;
  color:var(--cream);
}

.neel-shop-page .neel-shop-hero:after{
  content:"";
  position:absolute;
  z-index:1;
  left:0;
  right:0;
  bottom:-1px;
  height:82px;
  background:var(--cream);
  clip-path:polygon(0 75%,10% 45%,22% 72%,35% 36%,50% 70%,65% 39%,80% 75%,92% 48%,100% 70%,100% 100%,0 100%);
  pointer-events:none;
}

.neel-shop-page .neel-shop-hero-inner{
  position:relative!important;
  z-index:2;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.72fr)!important;
  gap:70px!important;
  align-items:end!important;
  width:100%!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:0!important;
}

.neel-shop-page .neel-shop-hero-inner > *{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}

.neel-shop-page .neel-shop-hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:0!important;
  padding:0!important;
}

.neel-shop-page .neel-shop-hero-eyebrow{
  margin:0 0 14px!important;
}
.neel-shop-page .neel-shop-hero-eyebrow .elementor-heading-title,
.neel-shop-page .neel-shop-hero-eyebrow .elementor-widget-container{
  color:#e9ca91!important;
  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}

.neel-shop-page .neel-shop-hero-title{
  margin:0 0 18px!important;
}
.neel-shop-page .neel-shop-hero-title .elementor-heading-title{
  margin:0!important;
  color:var(--cream)!important;
  font-family:var(--serif)!important;
  font-size:clamp(58px,7vw,96px)!important;
  font-weight:500!important;
  line-height:.98!important;
  letter-spacing:0!important;
}

.neel-shop-page .neel-shop-hero-text,
.neel-shop-page .neel-shop-hero-text p{
  max-width:650px!important;
  margin:0!important;
  color:#f0e1d6!important;
  font-family:var(--sans)!important;
  font-size:17px!important;
  font-weight:400!important;
  line-height:1.7!important;
}

.neel-shop-page .neel-shop-hero-note{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  width:100%!important;
  margin:0!important;
  padding:26px 29px!important;
  gap:0!important;
  border:1px solid rgba(199,161,90,.72)!important;
  background:rgba(75,52,38,.28)!important;
  color:#f0e1d6!important;
  font-size:14px!important;
  line-height:1.65!important;
}

.neel-shop-page .neel-shop-note-title{
  margin:0 0 8px!important;
}
.neel-shop-page .neel-shop-note-title .elementor-heading-title{
  margin:0!important;
  color:#edcf97!important;
  font-family:var(--serif)!important;
  font-size:27px!important;
  font-weight:500!important;
  line-height:1.15!important;
}

.neel-shop-page .neel-shop-hero-note .elementor-widget-text-editor,
.neel-shop-page .neel-shop-hero-note .elementor-widget-text-editor p{
  margin:0!important;
  color:#f0e1d6!important;
  font-family:var(--sans)!important;
  font-size:14px!important;
  line-height:1.65!important;
}

/* ---------- Mobiele filterknop: desktop verborgen ---------- */
.neel-shop-page .neel-shop-filter-toggle{
  display:none!important;
}

/* ---------- Hoofdgebied ---------- */
.neel-shop-page .neel-shop-main{
  display:grid!important;
  grid-template-columns:285px minmax(0,1fr)!important;
  gap:42px!important;
  align-items:start!important;
  width:100%!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:78px 24px 110px!important;
}

.neel-shop-page .neel-shop-main > *{
  min-width:0!important;
}

/* ---------- Filterkolom ---------- */
.neel-shop-page .neel-shop-sidebar{
  position:sticky!important;
  top:125px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  border:1px solid rgba(107,34,50,.18)!important;
  background:#eaded4!important;
  overflow:hidden!important;
  z-index:20;
}

.neel-shop-page .neel-shop-filter-heading{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:15px!important;
  width:100%!important;
  margin:0!important;
  padding:24px 25px!important;
  background:var(--bordeaux)!important;
}

.neel-shop-page .neel-shop-filter-title{
  margin:0!important;
  width:auto!important;
}
.neel-shop-page .neel-shop-filter-title .elementor-heading-title{
  margin:0!important;
  color:var(--cream)!important;
  font-family:var(--serif)!important;
  font-size:26px!important;
  font-weight:500!important;
  line-height:1.15!important;
}

.neel-shop-page .neel-shop-filter-close{
  display:none!important;
}

/* Shortcode: filterformulier */
.neel-shop-page .neel-shop-filter-form{
  display:block;
  width:100%;
  margin:0;
  padding:0;
}

.neel-shop-page .neel-shop-filter-group{
  width:100%;
  padding:22px 25px;
  border-bottom:1px solid rgba(107,34,50,.15);
}

.neel-shop-page .neel-shop-filter-group:last-child{
  border-bottom:0;
}

.neel-shop-page .neel-shop-filter-group-title{
  display:block;
  margin:0 0 14px;
  color:var(--bordeaux);
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.neel-shop-page .neel-filter-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  margin:11px 0;
  color:var(--ink);
  font-family:var(--sans);
  font-size:13px;
  line-height:1.45;
}

.neel-shop-page .neel-filter-option > label,
.neel-shop-page label.neel-filter-option{
  cursor:pointer;
}

.neel-shop-page .neel-filter-label{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  cursor:pointer;
}

.neel-shop-page .neel-filter-label input,
.neel-shop-page .neel-filter-option > input{
  flex:0 0 auto;
  width:14px;
  height:14px;
  margin:0;
  accent-color:var(--bordeaux);
}

.neel-shop-page .neel-filter-count{
  flex:0 0 auto;
  color:#826c60;
  font-size:11px;
}

.neel-shop-page .neel-shop-price-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:9px;
}

.neel-shop-page .neel-shop-price-row input{
  width:100%;
  min-width:0;
  height:44px;
  padding:12px;
  border:1px solid rgba(107,34,50,.22);
  border-radius:0;
  outline:none;
  background:var(--cream);
  color:var(--ink);
  font-family:var(--sans);
  font-size:13px;
  box-shadow:none;
}
.neel-shop-page .neel-shop-price-row input:focus{
  border-color:var(--gold);
}

.neel-shop-page .neel-shop-clear-filters{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:43px;
  padding:13px;
  border:1px solid var(--gold);
  background:transparent;
  color:var(--bordeaux);
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.1em;
  text-align:center;
  text-transform:uppercase;
  transition:.25s ease;
}
.neel-shop-page .neel-shop-clear-filters:hover{
  background:var(--bordeaux);
  color:var(--cream);
}

/* ---------- Productgebied ---------- */
.neel-shop-page .neel-shop-products-area{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
}

/* Toolbar */
.neel-shop-page .neel-shop-toolbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:20px!important;
  align-items:center!important;
  width:100%!important;
  margin:0 0 27px!important;
  padding:0!important;
}

.neel-shop-page .neel-shop-toolbar-left{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:15px!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

.neel-shop-page .neel-shop-search{
  width:100%!important;
  max-width:390px!important;
  min-width:0!important;
  margin:0!important;
}
.neel-shop-page .neel-shop-search .elementor-shortcode,
.neel-shop-page .neel-shop-search-form{
  width:100%;
  margin:0;
}
.neel-shop-page .neel-shop-search-form input[type="search"]{
  width:100%;
  height:44px;
  padding:12px;
  border:1px solid rgba(107,34,50,.22);
  border-radius:0;
  outline:none;
  background:var(--cream);
  color:var(--ink);
  font-family:var(--sans);
  font-size:13px;
  line-height:1.2;
  box-shadow:none;
  -webkit-appearance:none;
}
.neel-shop-page .neel-shop-search-form input[type="search"]:focus{
  border-color:var(--gold);
}
.neel-shop-page .neel-shop-search-form input[type="search"]::placeholder{
  color:#826c60;
  opacity:1;
}

.neel-shop-page .neel-shop-count{
  flex:0 0 auto;
  width:auto!important;
  margin:0!important;
}
.neel-shop-page .neel-shop-result-count{
  white-space:nowrap;
  color:#705b50;
  font-family:var(--sans);
  font-size:13px;
  line-height:1.4;
}

.neel-shop-page .neel-shop-ordering{
  width:auto!important;
  min-width:210px!important;
  margin:0!important;
}
.neel-shop-page .neel-shop-ordering .elementor-shortcode,
.neel-shop-page .neel-shop-ordering .woocommerce-ordering{
  width:100%;
  margin:0!important;
}
.neel-shop-page .neel-shop-ordering .woocommerce-ordering select{
  width:100%;
  min-width:210px;
  height:44px;
  margin:0;
  padding:11px 38px 11px 12px;
  border:1px solid rgba(107,34,50,.22);
  border-radius:0;
  outline:none;
  background-color:var(--cream);
  color:var(--ink);
  font-family:var(--sans);
  font-size:13px;
  box-shadow:none;
  cursor:pointer;
}

/* Actieve filters/chips */
.neel-shop-page .neel-shop-active{
  width:100%!important;
  margin:0 0 24px!important;
  padding:0!important;
}
.neel-shop-page .neel-shop-active-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  width:100%;
  min-height:0;
}
.neel-shop-page .neel-shop-filter-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid rgba(107,34,50,.22);
  background:#eaded4;
  color:var(--bordeaux);
  font-family:var(--sans);
  font-size:11px;
  line-height:1.2;
}
.neel-shop-page .neel-shop-active-filters:empty{
  display:none;
}
.neel-shop-page .neel-shop-active:has(.neel-shop-active-filters:empty){
  display:none!important;
}

/* ---------- WooCommerce productgrid ---------- */
.neel-shop-page .neel-shop-products-grid{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.neel-shop-page .neel-shop-products-grid .woocommerce,
.neel-shop-page .neel-shop-products-grid .elementor-widget-container{
  width:100%!important;
  min-width:0!important;
}

.neel-shop-page .neel-shop-products-grid ul.products,
.neel-shop-page .neel-shop-products-grid .products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

.neel-shop-page .neel-shop-products-grid ul.products:before,
.neel-shop-page .neel-shop-products-grid ul.products:after{
  display:none!important;
  content:none!important;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(107,34,50,.13)!important;
  border-radius:0!important;
  background:var(--white)!important;
  box-shadow:none!important;
  transition:transform .25s ease,box-shadow .25s ease!important;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 40px rgba(75,52,38,.12)!important;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product .woocommerce-LoopProduct-link{
  position:relative;
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  width:100%!important;
  color:inherit!important;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product img{
  display:block!important;
  width:100%!important;
  height:270px!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  transition:transform .7s ease!important;
}
.neel-shop-page .neel-shop-products-grid ul.products li.product:hover img{
  transform:scale(1.05);
}

/* Badge uit productattribuut "Webshop label" */
.neel-shop-page .neel-shop-products-grid .neel-loop-badge,
.neel-shop-page .neel-shop-products-grid .onsale{
  position:absolute!important;
  z-index:4!important;
  top:14px!important;
  left:14px!important;
  right:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:7px 10px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--bordeaux)!important;
  color:var(--cream)!important;
  font-family:var(--sans)!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}

.neel-shop-page .neel-shop-products-grid .neel-loop-category{
  display:block;
  margin:21px 21px 6px;
  color:var(--olive);
  font-family:var(--sans);
  font-size:10px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product .woocommerce-loop-product__title{
  margin:0 21px 9px!important;
  padding:0!important;
  color:var(--bordeaux)!important;
  font-family:var(--serif)!important;
  font-size:25px!important;
  font-weight:500!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.neel-shop-page .neel-shop-products-grid .neel-loop-description{
  min-height:43px;
  margin:0 21px 17px;
  color:#705b50;
  font-family:var(--sans);
  font-size:12px;
  font-weight:400;
  line-height:1.55;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product .star-rating{
  display:none!important;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product .price{
  display:block!important;
  width:auto!important;
  min-height:53px;
  margin:auto 21px 0!important;
  padding:15px 120px 17px 0!important;
  border-top:1px solid rgba(107,34,50,.12)!important;
  color:var(--wood)!important;
  font-family:var(--serif)!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.2!important;
}
.neel-shop-page .neel-shop-products-grid ul.products li.product .price del{
  opacity:.55;
  font-size:.82em;
}
.neel-shop-page .neel-shop-products-grid ul.products li.product .price ins{
  text-decoration:none;
}

.neel-shop-page .neel-shop-products-grid ul.products li.product > .button,
.neel-shop-page .neel-shop-products-grid ul.products li.product > a.button{
  position:absolute!important;
  z-index:5!important;
  right:21px!important;
  bottom:17px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:36px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid var(--gold)!important;
  border-radius:0!important;
  background:var(--bordeaux)!important;
  color:var(--cream)!important;
  font-family:var(--sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  transition:.25s ease!important;
}
.neel-shop-page .neel-shop-products-grid ul.products li.product > .button:hover{
  background:var(--gold)!important;
  color:var(--bordeaux)!important;
}

/* AJAX add-to-cart loader/message niet over de kaart laten springen */
.neel-shop-page .neel-shop-products-grid ul.products li.product .added_to_cart{
  position:absolute;
  z-index:6;
  right:21px;
  bottom:58px;
  padding:5px 0;
  color:var(--bordeaux);
  font-size:10px;
  font-weight:600;
  text-transform:uppercase;
}

/* ---------- WooCommerce pagination ---------- */
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination{
  margin:42px 0 0!important;
  text-align:center;
}
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul{
  display:inline-flex!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul li{
  margin:0!important;
  border:0!important;
}
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul li a,
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul li span{
  display:grid!important;
  place-items:center;
  width:42px;
  height:42px;
  padding:0!important;
  border:1px solid rgba(107,34,50,.22)!important;
  background:#eaded4!important;
  color:var(--bordeaux)!important;
  font-family:var(--sans)!important;
  font-size:12px!important;
}
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul li span.current,
.neel-shop-page .neel-shop-products-grid nav.woocommerce-pagination ul li a:hover{
  border-color:var(--gold)!important;
  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}

/* ---------- Woo notices ---------- */
.neel-shop-page .woocommerce-notices-wrapper{
  width:100%;
  margin:0 0 24px;
}
.neel-shop-page .woocommerce-message,
.neel-shop-page .woocommerce-info,
.neel-shop-page .woocommerce-error{
  margin:0 0 18px!important;
  padding:18px 20px!important;
  border:1px solid rgba(107,34,50,.18)!important;
  border-top:3px solid var(--gold)!important;
  border-radius:0!important;
  background:#eaded4!important;
  color:var(--ink)!important;
  font-size:13px!important;
}

/* ---------- Lege Woo shop ---------- */
.neel-shop-page .woocommerce-info:before{
  color:var(--bordeaux)!important;
}

/* ---------- Filter backdrop ---------- */
.neel-shop-page .neel-shop-filter-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:1190!important;
  display:block!important;
  width:100vw!important;
  height:100vh!important;
  margin:0!important;
  padding:0!important;
  background:rgba(28,18,14,.48)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .25s ease,visibility .25s ease!important;
}
.neel-shop-page .neel-shop-filter-backdrop.is-open{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body.neel-shop-filters-open{overflow:hidden!important}

/* ---------- Desktop/tablet ---------- */
@media(max-width:1050px){
  .neel-shop-page .neel-shop-main{
    grid-template-columns:240px minmax(0,1fr)!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products,
  .neel-shop-page .neel-shop-products-grid .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:980px){
  body.woocommerce-shop .site-header,
  body.post-type-archive-product .site-header,
  body.tax-product_cat .site-header,
  body.tax-product_tag .site-header{
    padding:14px 16px!important;
  }
}

/* ---------- Mobiel ---------- */
@media(max-width:760px){
  .neel-shop-page .neel-shop-hero{
    padding:72px 18px 92px!important;
  }
  .neel-shop-page .neel-shop-hero:after{
    height:62px;
  }
  .neel-shop-page .neel-shop-hero-inner{
    grid-template-columns:1fr!important;
    gap:34px!important;
    align-items:start!important;
  }
  .neel-shop-page .neel-shop-hero-title .elementor-heading-title{
    font-size:clamp(50px,14vw,70px)!important;
  }
  .neel-shop-page .neel-shop-hero-text,
  .neel-shop-page .neel-shop-hero-text p{
    font-size:15px!important;
  }
  .neel-shop-page .neel-shop-hero-note{
    padding:22px!important;
  }

  .neel-shop-page .neel-shop-filter-toggle{
    display:block!important;
    width:auto!important;
    margin:18px 16px 0!important;
  }
  .neel-shop-page .neel-shop-filter-toggle .elementor-button{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:50px!important;
    padding:15px 18px!important;
    border:1px solid var(--gold)!important;
    border-radius:0!important;
    background:var(--bordeaux)!important;
    color:var(--cream)!important;
    font-family:var(--sans)!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }

  .neel-shop-page .neel-shop-main{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    padding:24px 16px 82px!important;
  }

  .neel-shop-page .neel-shop-sidebar{
    position:fixed!important;
    z-index:1200!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(88vw,360px)!important;
    max-width:360px!important;
    height:100vh!important;
    max-height:100vh!important;
    overflow-y:auto!important;
    transform:translateX(-105%)!important;
    transition:transform .32s cubic-bezier(.77,0,.18,1)!important;
    box-shadow:18px 0 45px rgba(35,20,15,.28)!important;
    visibility:hidden!important;
  }
  .neel-shop-page .neel-shop-sidebar.is-open{
    transform:translateX(0)!important;
    visibility:visible!important;
  }

  .neel-shop-page .neel-shop-filter-heading{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
  }
  .neel-shop-page .neel-shop-filter-close{
    display:block!important;
    flex:0 0 38px!important;
    width:38px!important;
    height:38px!important;
    margin:0!important;
  }
  .neel-shop-page .neel-shop-filter-close .elementor-icon{
    display:grid!important;
    place-items:center!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    border:1px solid rgba(242,236,229,.45)!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--cream)!important;
    font-size:20px!important;
  }

  .neel-shop-page .neel-shop-products-area{
    width:100%!important;
  }

  .neel-shop-page .neel-shop-toolbar{
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-bottom:20px!important;
  }
  .neel-shop-page .neel-shop-toolbar-left{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
  }
  .neel-shop-page .neel-shop-search{
    max-width:none!important;
  }
  .neel-shop-page .neel-shop-ordering,
  .neel-shop-page .neel-shop-ordering .woocommerce-ordering select{
    width:100%!important;
    min-width:0!important;
  }

  .neel-shop-page .neel-shop-products-grid ul.products,
  .neel-shop-page .neel-shop-products-grid .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product img{
    height:170px!important;
  }
  .neel-shop-page .neel-shop-products-grid .neel-loop-category{
    margin:14px 14px 5px!important;
    font-size:8px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product .woocommerce-loop-product__title{
    margin:0 14px 8px!important;
    font-size:19px!important;
  }
  .neel-shop-page .neel-shop-products-grid .neel-loop-description{
    min-height:0!important;
    margin:0 14px 12px!important;
    font-size:11px!important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product .price{
    min-height:0!important;
    margin:auto 14px 10px!important;
    padding:12px 0 0!important;
    font-size:16px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product > .button,
  .neel-shop-page .neel-shop-products-grid ul.products li.product > a.button{
    position:static!important;
    width:auto!important;
    min-height:36px!important;
    margin:0 14px 14px!important;
    padding:9px 7px!important;
    font-size:9px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product .added_to_cart{
    position:static!important;
    margin:-7px 14px 14px!important;
    padding:0!important;
  }
}

@media(max-width:640px){
  body.woocommerce-shop .site-header,
  body.post-type-archive-product .site-header,
  body.tax-product_cat .site-header,
  body.tax-product_tag .site-header{
    padding:11px!important;
  }
}

@media(max-width:420px){
  .neel-shop-page .neel-shop-products-grid ul.products,
  .neel-shop-page .neel-shop-products-grid .products{
    gap:9px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product img{
    height:145px!important;
  }
  .neel-shop-page .neel-shop-products-grid .neel-loop-category{
    margin:11px 11px 4px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product .woocommerce-loop-product__title{
    margin:0 11px 7px!important;
    font-size:17px!important;
  }
  .neel-shop-page .neel-shop-products-grid .neel-loop-description{
    margin:0 11px 10px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product .price{
    margin:auto 11px 9px!important;
  }
  .neel-shop-page .neel-shop-products-grid ul.products li.product > .button,
  .neel-shop-page .neel-shop-products-grid ul.products li.product > a.button{
    margin:0 11px 11px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .neel-shop-page .neel-shop-products-grid ul.products li.product,
  .neel-shop-page .neel-shop-products-grid ul.products li.product img,
  .neel-shop-page .neel-shop-sidebar,
  .neel-shop-page .neel-shop-filter-backdrop{
    transition:none!important;
  }
}

/* V3.1 – voorkom dubbele WooCommerce toolbar in Archive Products widget */
.neel-shop-page .neel-shop-products-grid .woocommerce-result-count,
.neel-shop-page .neel-shop-products-grid .woocommerce-ordering{
  display:none!important;
}

/* Een eventueel standaard WooCommerce archiefhoofd uit thema/plug-in verbergen. */
.neel-shop-page .woocommerce-products-header{
  display:none!important;
}

/* =========================================================
   NEEL WEBSHOP V4 — filterstructuur + AJAX productgebied
   ========================================================= */

/* Sidebar is de lichte basis. Alleen de kop is bordeaux. */
.neel-shop-page .neel-shop-sidebar{
  background:#eaded4!important;
  padding:0!important;
  gap:0!important;
}

.neel-shop-page .neel-shop-filter-heading{
  flex:0 0 auto!important;
  width:100%!important;
  min-height:82px!important;
  margin:0!important;
  padding:24px 25px!important;
  background:var(--bordeaux)!important;
  border:0!important;
}

/* Geef de Elementor Shortcode-widget met [neel_shop_filters]
   de class: neel-shop-filter-content */
.neel-shop-page .neel-shop-filter-content,
.neel-shop-page .neel-shop-filter-content > .elementor-widget-container{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#eaded4!important;
}

.neel-shop-page .neel-shop-filter-form{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:#eaded4!important;
  color:var(--ink)!important;
}

.neel-shop-page .neel-shop-filter-group{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:22px 25px!important;
  background:#eaded4!important;
  border:0!important;
  border-bottom:1px solid rgba(107,34,50,.15)!important;
}

.neel-shop-page .neel-shop-filter-group:last-child{
  border-bottom:0!important;
}

/* Productgebied dat bij filteren via fetch wordt vervangen. */
.neel-shop-page .neel-shop-products-area{
  position:relative!important;
  transition:opacity .18s ease!important;
}

.neel-shop-page .neel-shop-products-area.is-loading{
  opacity:.42!important;
  pointer-events:none!important;
  min-height:280px;
}

.neel-shop-page .neel-shop-products-area.is-loading::after{
  content:"";
  position:absolute;
  z-index:50;
  left:50%;
  top:130px;
  width:34px;
  height:34px;
  margin:-17px 0 0 -17px;
  border:2px solid rgba(107,34,50,.18);
  border-top-color:var(--bordeaux);
  border-radius:50%;
  animation:neelShopSpin .7s linear infinite;
}

@keyframes neelShopSpin{
  to{transform:rotate(360deg)}
}

@media(prefers-reduced-motion:reduce){
  .neel-shop-page .neel-shop-products-area{
    transition:none!important;
  }
  .neel-shop-page .neel-shop-products-area.is-loading::after{
    animation:none!important;
  }
}

/* ======================================================================
   NEEL – SINGLE PRODUCT PAGE V8
   ----------------------------------------------------------------------
   Doel:
   - Producthero exact dezelfde desktophoogte als de winkelhero.
   - Producttitel in de hero, gelijk aan "Ontdek het assortiment".
   - Breadcrumbs subtiel en terugknop als luxe outline-CTA.
   - Productinhoud max. 1240px: afbeelding links, informatie rechts.
   - Rustig productfotokader zonder uitstekende decoratielijnen.
   - Robuuste WooCommerce Add-to-Cart layout.
   - "Meer over dit product" en "Verder proeven" max. 1240px.
   - Tablet en mobiel volledig responsive.
   ====================================================================== */

body.single-product{
  background:var(--cream)!important;
}

/* ----------------------------------------------------------------------
   0. HEADER – gelijk aan de winkelpagina
   ---------------------------------------------------------------------- */
body.single-product .site-header{
  position:sticky!important;
  inset:auto!important;
  top:0!important;
  z-index:1000!important;

  width:100%!important;
  padding:18px 22px!important;

  background:var(--bordeaux)!important;
  pointer-events:auto!important;
}

body.single-product .site-header .nav{
  width:100%!important;
  max-width:var(--max)!important;
  min-height:82px!important;

  margin:0 auto!important;
  padding:10px 18px 10px 24px!important;

  border:1px solid rgba(199,161,90,.65)!important;
  background:rgba(242,236,229,.94)!important;

  box-shadow:0 12px 35px rgba(75,52,38,.11)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}


/* ----------------------------------------------------------------------
   1. PRODUCTPAGINA ROOT
   ---------------------------------------------------------------------- */
.neel-product-page,
.neel-product-page *{
  box-sizing:border-box;
}

.neel-product-page{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;
  gap:0!important;

  overflow:visible!important;

  background:var(--cream)!important;
  color:var(--ink)!important;
  font-family:var(--sans)!important;
}

.neel-product-page > .e-con,
.neel-product-page > .elementor-element,
.neel-product-page > section,
.neel-product-page > div{
  flex:0 0 auto!important;
  min-width:0!important;
}

.neel-product-page a{
  text-decoration:none;
}

.neel-product-page p{
  margin-top:0;
}


/* ======================================================================
   2. PRODUCT HERO / MASTHEAD
   Structuur:
   .neel-product-masthead
     .neel-product-masthead-inner
       .neel-product-masthead-nav
         .neel-product-breadcrumb
         .neel-product-back
       .neel-product-masthead-copy
         .neel-product-eyebrow
         .neel-product-title
   ====================================================================== */

/*
 * De shophero is op desktop visueel ca. 410px hoog.
 * V8 synchroniseert BEIDE hero's zodat ze exact dezelfde hoogte hebben.
 */
:root{
  --neel-commerce-hero-height:410px;
}

.neel-shop-page .neel-shop-hero,
.neel-product-page .neel-product-masthead{
  height:var(--neel-commerce-hero-height)!important;
  min-height:var(--neel-commerce-hero-height)!important;
}

.neel-product-page .neel-product-masthead{
  position:relative!important;
  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0 24px!important;

  overflow:hidden!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}

/* exact dezelfde onderste scheiding als de winkelhero */
.neel-product-page .neel-product-masthead::after{
  content:"";

  position:absolute;
  z-index:1;
  left:0;
  right:0;
  bottom:-1px;

  width:100%;
  height:82px;

  background:var(--cream);

  clip-path:polygon(
    0 75%,
    10% 45%,
    22% 72%,
    35% 36%,
    50% 70%,
    65% 39%,
    80% 75%,
    92% 48%,
    100% 70%,
    100% 100%,
    0 100%
  );

  pointer-events:none;
}

.neel-product-page .neel-product-masthead-inner{
  position:relative!important;
  z-index:2!important;

  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-items:stretch!important;

  width:100%!important;
  max-width:1240px!important;
  min-width:0!important;

  height:100%!important;
  min-height:var(--neel-commerce-hero-height)!important;

  margin:0 auto!important;
  padding:42px 0 88px!important;
  gap:0!important;
}


/* ---------- bovenste navigatierij ---------- */
.neel-product-page .neel-product-masthead-nav{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;

  align-items:center!important;
  justify-content:space-between!important;

  width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;
  gap:14px 24px!important;
}


/* Breadcrumbs: bewust géén kader/knopvorm */
.neel-product-page .neel-product-breadcrumb{
  display:block!important;

  width:auto!important;
  max-width:100%!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.neel-product-page .neel-product-breadcrumb .elementor-widget-container,
.neel-product-page .neel-product-breadcrumb .woocommerce-breadcrumb{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;

  width:auto!important;
  max-width:100%!important;

  margin:0!important;
  padding:8px 0!important;

  border:0!important;
  background:transparent!important;

  color:rgba(242,236,229,.68)!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:.035em!important;
}

.neel-product-page .neel-product-breadcrumb a{
  color:#e9ca91!important;
  transition:color .2s ease!important;
}

.neel-product-page .neel-product-breadcrumb a:hover{
  color:var(--cream)!important;
}


/* ---------- terug naar assortiment ---------- */
.neel-product-page .neel-product-back{
  width:auto!important;
  max-width:none!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-back .elementor-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  min-height:46px!important;

  margin:0!important;
  padding:0 20px!important;

  border:1px solid rgba(199,161,90,.72)!important;
  border-radius:0!important;

  background:rgba(75,52,38,.16)!important;
  color:var(--cream)!important;

  box-shadow:none!important;

  font-family:var(--sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;

  transition:
    background .22s ease,
    color .22s ease,
    border-color .22s ease!important;
}

/* eventuele oude handmatige/automatische pseudo-pijlen neutraliseren */
.neel-product-page .neel-product-back .elementor-button-text::before{
  content:none!important;
  display:none!important;
}

.neel-product-page .neel-product-back .elementor-button::before{
  content:"←";

  display:inline-block;

  margin-right:10px;

  color:#e9ca91;
  font-size:14px;
  font-weight:400;

  transition:
    transform .22s ease,
    color .22s ease;
}

.neel-product-page .neel-product-back .elementor-button:hover{
  border-color:var(--gold)!important;
  background:var(--gold)!important;
  color:var(--bordeaux)!important;
}

.neel-product-page .neel-product-back .elementor-button:hover::before{
  color:var(--bordeaux);
  transform:translateX(-3px);
}


/* ---------- producttitel onderin de hero ---------- */
.neel-product-page .neel-product-masthead-copy{
  align-self:end!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;

  width:100%!important;
  max-width:760px!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-eyebrow{
  width:100%!important;

  margin:0 0 14px!important;
  padding:0!important;
}

.neel-product-page .neel-product-eyebrow .elementor-heading-title,
.neel-product-page .neel-product-eyebrow .elementor-widget-container{
  margin:0!important;
  padding:0!important;

  color:#e9ca91!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-title{
  width:100%!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-title .product_title,
.neel-product-page .neel-product-title .elementor-heading-title,
.neel-product-page .neel-product-title .elementor-widget-container{
  margin:0!important;
  padding:0!important;

  color:var(--cream)!important;

  font-family:var(--serif)!important;
  font-size:clamp(58px,7vw,96px)!important;
  font-weight:500!important;
  line-height:.98!important;
  letter-spacing:0!important;
  text-transform:none!important;
}


/* ======================================================================
   3. PRODUCTDETAIL
   Foto links – productinformatie rechts.
   ====================================================================== */
.neel-product-page .neel-product-main{
  position:relative!important;
  z-index:2!important;

  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:78px 24px 96px!important;

  background:var(--cream)!important;
}

.neel-product-page .neel-product-main-inner{
  display:grid!important;
  grid-template-columns:minmax(0,520px) minmax(0,1fr)!important;

  align-items:start!important;
  justify-content:stretch!important;

  width:100%!important;
  max-width:1240px!important;
  min-width:0!important;

  margin:0 auto!important;
  padding:0!important;

  gap:64px!important;
}


/* ---------- linker kolom ---------- */
.neel-product-page .neel-product-media{
  position:relative!important;

  display:block!important;

  width:100%!important;
  max-width:520px!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;

  overflow:visible!important;
}

/* ALLE oude uitstekende decoratielijnen uit eerdere versies uit */
.neel-product-page .neel-product-media::before,
.neel-product-page .neel-product-media::after,
.neel-product-page .neel-product-gallery::before{
  content:none!important;
  display:none!important;
}


/* nieuw rustig kader */
.neel-product-page .neel-product-gallery{
  position:relative!important;

  display:block!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:16px!important;

  overflow:hidden!important;

  border:1px solid rgba(107,34,50,.14)!important;
  border-radius:0!important;

  background:#eaded4!important;

  box-shadow:0 18px 42px rgba(75,52,38,.08)!important;
}

/* één gouden binnenlijn – volledig ín het kader */
.neel-product-page .neel-product-gallery::after{
  content:"";

  position:absolute!important;
  z-index:12!important;

  inset:10px!important;

  border:1px solid rgba(199,161,90,.58)!important;

  pointer-events:none!important;
}

.neel-product-page .neel-product-gallery > .elementor-widget-container{
  position:relative!important;
  z-index:2!important;

  display:block!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;
}

.neel-product-page .neel-product-gallery .woocommerce-product-gallery{
  position:relative!important;

  display:block!important;
  float:none!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;

  background:var(--white)!important;
}

.neel-product-page .neel-product-gallery .woocommerce-product-gallery__wrapper{
  width:100%!important;

  margin:0!important;
  padding:0!important;

  background:var(--white)!important;
}

.neel-product-page .neel-product-gallery .woocommerce-product-gallery__image,
.neel-product-page .neel-product-gallery .woocommerce-product-gallery__image a{
  display:block!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-gallery .woocommerce-product-gallery__image img{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  height:auto!important;

  aspect-ratio:1 / 1!important;
  object-fit:cover!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  border-radius:0!important;
}


/* Woo zoomknop */
.neel-product-page .neel-product-gallery .woocommerce-product-gallery__trigger{
  top:26px!important;
  right:26px!important;
  z-index:20!important;

  width:40px!important;
  height:40px!important;

  border:1px solid rgba(107,34,50,.14)!important;
  border-radius:50%!important;

  background:var(--white)!important;
  color:var(--bordeaux)!important;

  box-shadow:0 5px 18px rgba(75,52,38,.10)!important;
}


/* sale badge */
.neel-product-page .neel-product-gallery .onsale,
.neel-product-page .neel-product-media .onsale,
.neel-product-page .onsale{
  position:absolute!important;
  z-index:20!important;

  top:27px!important;
  left:27px!important;
  right:auto!important;

  min-width:0!important;
  min-height:0!important;

  margin:0!important;
  padding:8px 12px!important;

  border:1px solid rgba(199,161,90,.65)!important;
  border-radius:0!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;

  font-family:var(--sans)!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}


/* thumbnails */
.neel-product-page .neel-product-gallery .flex-control-thumbs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;

  width:100%!important;

  margin:12px 0 0!important;
  padding:0!important;

  gap:9px!important;

  list-style:none!important;
}

.neel-product-page .neel-product-gallery .flex-control-thumbs li{
  float:none!important;

  width:auto!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-gallery .flex-control-thumbs img{
  display:block!important;

  width:100%!important;
  height:86px!important;

  margin:0!important;

  border:1px solid transparent!important;

  object-fit:cover!important;

  opacity:.72!important;
  cursor:pointer;

  transition:
    opacity .2s ease,
    border-color .2s ease!important;
}

.neel-product-page .neel-product-gallery .flex-control-thumbs img.flex-active,
.neel-product-page .neel-product-gallery .flex-control-thumbs img:hover{
  border-color:var(--gold)!important;
  opacity:1!important;
}


/* ---------- rechter kolom ---------- */
.neel-product-page .neel-product-summary{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:8px 0 0!important;

  gap:0!important;

  overflow:visible!important;
}


/* prijs */
.neel-product-page .neel-product-price{
  width:100%!important;

  margin:0!important;
  padding:0 0 26px!important;

  border-bottom:1px solid rgba(107,34,50,.15)!important;
}

.neel-product-page .neel-product-price .price,
.neel-product-page .neel-product-price p.price,
.neel-product-page .neel-product-price .woocommerce-Price-amount{
  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:27px!important;
  font-weight:600!important;
  line-height:1.2!important;
}

.neel-product-page .neel-product-price del{
  margin-right:7px;

  color:#8c796d!important;

  font-size:.68em!important;
  font-weight:500!important;

  opacity:.70!important;
}

.neel-product-page .neel-product-price ins{
  color:var(--bordeaux)!important;
  text-decoration:none!important;
}


/* korte omschrijving */
.neel-product-page .neel-product-short{
  width:100%!important;

  margin:0!important;
  padding:24px 0!important;

  border-bottom:1px solid rgba(107,34,50,.15)!important;

  color:var(--wood)!important;

  font-family:var(--sans)!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.75!important;
}

.neel-product-page .neel-product-short p:last-child{
  margin-bottom:0!important;
}


/* meta */
.neel-product-page .neel-product-meta{
  width:100%!important;

  margin:0!important;
  padding:20px 0!important;

  border-bottom:1px solid rgba(107,34,50,.15)!important;

  color:#766258!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  line-height:1.6!important;
}

.neel-product-page .neel-product-meta .sku_wrapper{
  display:none!important;
}

.neel-product-page .neel-product-meta .posted_in,
.neel-product-page .neel-product-meta .tagged_as{
  display:block!important;
}

.neel-product-page .neel-product-meta a{
  color:var(--bordeaux)!important;
  font-weight:600!important;
}


/* ======================================================================
   4. ADD TO CART – simpele producten
   ====================================================================== */
.neel-product-page .neel-product-cart{
  display:block!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:24px 0 0!important;

  overflow:visible!important;
}

.neel-product-page .neel-product-cart .elementor-widget-container{
  display:block!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  overflow:visible!important;
}

.neel-product-page .neel-product-cart form.cart{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;

  align-items:stretch!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  gap:12px!important;

  float:none!important;
  clear:both!important;

  overflow:visible!important;
}

/* Quantity */
.neel-product-page .neel-product-cart form.cart .quantity{
  display:block!important;
  float:none!important;

  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;

  height:54px!important;

  margin:0!important;
  padding:0!important;
}

.neel-product-page .neel-product-cart form.cart .quantity .qty{
  display:block!important;

  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;

  height:54px!important;

  margin:0!important;
  padding:0 7px!important;

  border:1px solid rgba(107,34,50,.20)!important;
  border-radius:0!important;

  outline:0!important;

  background:var(--white)!important;
  color:var(--ink)!important;

  font-family:var(--sans)!important;
  font-size:13px!important;
  text-align:center!important;

  box-shadow:none!important;
}


/* Button */
.neel-product-page .neel-product-cart form.cart .single_add_to_cart_button{
  display:flex!important;
  float:none!important;
  clear:none!important;

  align-items:center!important;
  justify-content:center!important;

  width:100%!important;
  max-width:none!important;
  min-width:0!important;

  min-height:54px!important;
  height:auto!important;

  margin:0!important;
  padding:14px 24px!important;

  overflow:visible!important;

  border:1px solid var(--gold)!important;
  border-radius:0!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;

  box-shadow:none!important;

  font-family:var(--sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1.25!important;
  letter-spacing:.095em!important;

  text-align:center!important;
  text-transform:uppercase!important;
  white-space:normal!important;

  transition:
    background .22s ease,
    color .22s ease,
    border-color .22s ease!important;
}

.neel-product-page .neel-product-cart form.cart .single_add_to_cart_button:hover{
  border-color:var(--gold)!important;
  background:var(--gold)!important;
  color:var(--bordeaux)!important;
}

.neel-product-page .neel-product-cart form.cart .single_add_to_cart_button.disabled,
.neel-product-page .neel-product-cart form.cart .single_add_to_cart_button:disabled{
  cursor:not-allowed!important;
  opacity:.50!important;
}


/* ======================================================================
   5. VARIABELE PRODUCTEN
   ====================================================================== */
.neel-product-page .neel-product-cart form.variations_form{
  display:block!important;

  width:100%!important;
}

.neel-product-page .neel-product-cart table.variations{
  width:100%!important;

  margin:0 0 18px!important;

  border-collapse:collapse!important;
}

.neel-product-page .neel-product-cart table.variations tr{
  display:grid!important;
  grid-template-columns:120px minmax(0,1fr)!important;

  align-items:center!important;

  gap:14px!important;

  padding:10px 0!important;

  border-bottom:1px solid rgba(107,34,50,.12)!important;
}

.neel-product-page .neel-product-cart table.variations th,
.neel-product-page .neel-product-cart table.variations td{
  display:block!important;

  width:auto!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;
}

.neel-product-page .neel-product-cart table.variations label{
  color:var(--bordeaux)!important;

  font-family:var(--sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-cart table.variations select{
  width:100%!important;
  min-height:46px!important;

  margin:0!important;
  padding:10px 38px 10px 12px!important;

  border:1px solid rgba(107,34,50,.20)!important;
  border-radius:0!important;

  background:var(--white)!important;
  color:var(--ink)!important;

  box-shadow:none!important;
}

.neel-product-page .neel-product-cart .reset_variations{
  display:inline-block!important;

  margin-top:7px!important;

  color:var(--bordeaux)!important;

  font-size:10px!important;
  font-weight:600!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-cart .single_variation_wrap{
  width:100%!important;

  margin-top:18px!important;
}

.neel-product-page .neel-product-cart .woocommerce-variation-price{
  margin-bottom:16px!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:22px!important;
  font-weight:600!important;
}

.neel-product-page .neel-product-cart .woocommerce-variation-add-to-cart{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;

  align-items:stretch!important;

  width:100%!important;

  gap:12px!important;
}


/* ======================================================================
   6. PRODUCT NOTE
   ====================================================================== */
.neel-product-page .neel-product-note{
  display:grid!important;
  grid-template-columns:minmax(0,165px) minmax(0,1fr)!important;

  align-items:center!important;

  width:100%!important;
  min-width:0!important;

  margin:22px 0 0!important;
  padding:20px!important;

  gap:20px!important;

  border:1px solid rgba(199,161,90,.65)!important;

  background:#eaded4!important;
}

.neel-product-page .neel-product-note-title{
  margin:0!important;
}

.neel-product-page .neel-product-note-title .elementor-heading-title{
  margin:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:22px!important;
  font-weight:500!important;
  line-height:1.08!important;
}

.neel-product-page .neel-product-note-text,
.neel-product-page .neel-product-note-text p{
  margin:0!important;

  color:#705b50!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  line-height:1.6!important;
}


/* ======================================================================
   7. MEER OVER DIT PRODUCT
   De zichtbare inhoud is max. 1240px, niet sitebreed.
   ====================================================================== */
.neel-product-page .neel-product-details-section{
  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0 24px 88px!important;

  background:var(--cream)!important;

  clear:both!important;
}

.neel-product-page .neel-product-details-inner{
  display:block!important;

  width:100%!important;
  max-width:1240px!important;
  min-width:0!important;

  margin:0 auto!important;
  padding:42px!important;

  border:1px solid rgba(107,34,50,.14)!important;

  background:#eaded4!important;

  overflow:hidden!important;
}

.neel-product-page .neel-product-details-heading{
  width:100%!important;
  max-width:760px!important;

  margin:0 0 30px!important;
}

.neel-product-page .neel-product-details-heading .elementor-heading-title{
  margin:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:clamp(42px,4.7vw,62px)!important;
  font-weight:500!important;
  line-height:1.03!important;
}


/* Tabs */
.neel-product-page .neel-product-tabs,
.neel-product-page .neel-product-tabs > .elementor-widget-container,
.neel-product-page .neel-product-tabs .woocommerce-tabs{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  float:none!important;
  clear:both!important;
}

.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs{
  display:flex!important;
  flex-wrap:wrap!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;

  border:0!important;

  gap:0!important;

  list-style:none!important;
}

.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs::before,
.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs::after,
.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li::before,
.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li::after{
  display:none!important;
  content:none!important;
}

.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li{
  display:block!important;
  float:none!important;

  width:auto!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  border-radius:0!important;

  background:transparent!important;
}

.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li a{
  display:block!important;

  padding:14px 20px!important;

  color:var(--bordeaux)!important;

  font-family:var(--sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1.3!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li.active a{
  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}

.neel-product-page .neel-product-tabs .woocommerce-Tabs-panel{
  display:block;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:34px!important;

  border:0!important;

  background:var(--cream)!important;
  color:var(--wood)!important;

  font-family:var(--sans)!important;
  font-size:14px!important;
  line-height:1.75!important;

  overflow-wrap:anywhere;
}

.neel-product-page .neel-product-tabs .woocommerce-Tabs-panel h2,
.neel-product-page .neel-product-tabs .woocommerce-Tabs-panel h3{
  margin:0 0 17px!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-weight:500!important;
}

.neel-product-page .neel-product-tabs .woocommerce-Tabs-panel h2{
  font-size:31px!important;
}

.neel-product-page .neel-product-tabs table{
  width:100%!important;

  border-collapse:collapse!important;
  border:0!important;
}

.neel-product-page .neel-product-tabs table th,
.neel-product-page .neel-product-tabs table td{
  padding:12px 14px!important;

  border:1px solid rgba(107,34,50,.12)!important;

  background:transparent!important;

  text-align:left!important;
  vertical-align:top!important;
}

.neel-product-page .neel-product-tabs table th{
  width:28%!important;

  color:var(--bordeaux)!important;
  font-weight:600!important;
}


/* ======================================================================
   8. VERDER PROEVEN
   Ook max. 1240px.
   ====================================================================== */
.neel-product-page .neel-product-related-section{
  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0 24px 110px!important;

  background:var(--cream)!important;

  clear:both!important;
}

.neel-product-page .neel-product-related-inner{
  display:block!important;

  width:100%!important;
  max-width:1240px!important;
  min-width:0!important;

  margin:0 auto!important;
  padding:52px 0 0!important;

  border-top:1px solid rgba(199,161,90,.48)!important;
}

.neel-product-page .neel-product-related-eyebrow{
  margin:0 0 10px!important;
}

.neel-product-page .neel-product-related-eyebrow .elementor-heading-title{
  margin:0!important;

  color:var(--olive)!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-related-title{
  width:100%!important;
  max-width:760px!important;

  margin:0 0 36px!important;
}

.neel-product-page .neel-product-related-title .elementor-heading-title{
  margin:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:clamp(42px,4.7vw,62px)!important;
  font-weight:500!important;
  line-height:1.03!important;
}

.neel-product-page .neel-product-related,
.neel-product-page .neel-product-related > .elementor-widget-container,
.neel-product-page .neel-product-related .related.products{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  float:none!important;
  clear:both!important;
}

.neel-product-page .neel-product-related .related.products > h2,
.neel-product-page .neel-product-related > .elementor-widget-container > h2{
  display:none!important;
}

.neel-product-page .neel-product-related ul.products,
.neel-product-page .neel-product-related .products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;

  gap:24px!important;
}

.neel-product-page .neel-product-related ul.products::before,
.neel-product-page .neel-product-related ul.products::after{
  display:none!important;
  content:none!important;
}

.neel-product-page .neel-product-related ul.products li.product{
  position:relative!important;

  display:flex!important;
  flex-direction:column!important;
  float:none!important;

  width:auto!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0 0 18px!important;

  overflow:hidden!important;

  border:1px solid rgba(107,34,50,.13)!important;
  border-radius:0!important;

  background:var(--white)!important;

  box-shadow:none!important;

  transition:
    transform .25s ease,
    box-shadow .25s ease!important;
}

.neel-product-page .neel-product-related ul.products li.product:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 18px 38px rgba(75,52,38,.11)!important;
}

.neel-product-page .neel-product-related ul.products li.product a img{
  display:block!important;

  width:100%!important;
  height:260px!important;

  margin:0 0 18px!important;

  object-fit:cover!important;

  transition:transform .7s ease!important;
}

.neel-product-page .neel-product-related ul.products li.product:hover a img{
  transform:scale(1.04)!important;
}

.neel-product-page .neel-product-related ul.products li.product .woocommerce-loop-product__title{
  margin:0 20px 9px!important;
  padding:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:24px!important;
  font-weight:500!important;
  line-height:1.15!important;
}

.neel-product-page .neel-product-related ul.products li.product .price{
  margin:auto 20px 12px!important;
  padding-top:14px!important;

  border-top:1px solid rgba(107,34,50,.12)!important;

  color:var(--wood)!important;

  font-family:var(--serif)!important;
  font-size:18px!important;
  font-weight:600!important;
}

.neel-product-page .neel-product-related ul.products li.product .button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:calc(100% - 40px)!important;
  min-height:42px!important;

  margin:0 20px!important;
  padding:11px 12px!important;

  border:1px solid var(--gold)!important;
  border-radius:0!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;

  font-family:var(--sans)!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;

  text-align:center!important;
  text-transform:uppercase!important;
}

.neel-product-page .neel-product-related ul.products li.product .button:hover{
  background:var(--gold)!important;
  color:var(--bordeaux)!important;
}

.neel-product-page .neel-product-related ul.products li.product .onsale{
  position:absolute!important;
  z-index:5!important;

  top:14px!important;
  left:14px!important;
  right:auto!important;

  min-width:0!important;
  min-height:0!important;

  margin:0!important;
  padding:7px 10px!important;

  border:1px solid var(--gold)!important;
  border-radius:0!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;

  font-family:var(--sans)!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}


/* ======================================================================
   9. WOOCOMMERCE NOTICES
   ====================================================================== */
.neel-product-page .woocommerce-message,
.neel-product-page .woocommerce-info,
.neel-product-page .woocommerce-error{
  width:calc(100% - 48px)!important;
  max-width:1240px!important;

  margin:24px auto!important;
  padding:16px 20px 16px 48px!important;

  border:1px solid rgba(107,34,50,.16)!important;
  border-top:0!important;
  border-radius:0!important;

  background:#eaded4!important;
  color:var(--wood)!important;

  font-family:var(--sans)!important;
  font-size:13px!important;
}

.neel-product-page .woocommerce-message::before,
.neel-product-page .woocommerce-info::before{
  color:var(--olive)!important;
}

.neel-product-page .woocommerce-error::before{
  color:var(--bordeaux)!important;
}

.neel-product-page .woocommerce-message .button,
.neel-product-page .woocommerce-info .button{
  border:0!important;
  background:none!important;

  color:var(--bordeaux)!important;

  font-size:11px!important;
  font-weight:600!important;
  text-transform:uppercase!important;
}


/* ======================================================================
   10. TABLET
   ====================================================================== */
@media(max-width:1050px){

  body.single-product .site-header{
    padding:14px 16px!important;
  }

  .neel-product-page .neel-product-masthead-inner,
  .neel-product-page .neel-product-main-inner,
  .neel-product-page .neel-product-details-inner,
  .neel-product-page .neel-product-related-inner{
    max-width:900px!important;
  }

  .neel-product-page .neel-product-main-inner{
    grid-template-columns:minmax(0,44%) minmax(0,56%)!important;
    gap:42px!important;
  }

  .neel-product-page .neel-product-media,
  .neel-product-page .neel-product-summary{
    max-width:none!important;
  }

  .neel-product-page .neel-product-note{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  .neel-product-page .neel-product-related ul.products,
  .neel-product-page .neel-product-related .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* ======================================================================
   11. MOBIEL
   ====================================================================== */
@media(max-width:760px){

  :root{
    --neel-commerce-hero-height:auto;
  }

  body.single-product .site-header{
    padding:11px!important;
  }

  body.single-product .site-header .nav{
    min-height:68px!important;
    padding:8px 9px 8px 13px!important;
  }

  /* producthero mag mobiel meegroeien */
  .neel-shop-page .neel-shop-hero,
  .neel-product-page .neel-product-masthead{
    height:auto!important;
    min-height:0!important;
  }

  .neel-product-page .neel-product-masthead{
    padding:0 18px!important;
  }

  .neel-product-page .neel-product-masthead-inner{
    display:flex!important;
    flex-direction:column!important;

    height:auto!important;
    min-height:360px!important;

    padding:28px 0 72px!important;
    gap:38px!important;
  }

  .neel-product-page .neel-product-masthead-nav{
    align-items:flex-start!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;

    gap:10px!important;
  }

  .neel-product-page .neel-product-back{
    width:100%!important;
  }

  .neel-product-page .neel-product-back .elementor-button{
    width:100%!important;
  }

  .neel-product-page .neel-product-masthead-copy{
    margin-top:auto!important;
  }

  .neel-product-page .neel-product-title .product_title,
  .neel-product-page .neel-product-title .elementor-heading-title,
  .neel-product-page .neel-product-title .elementor-widget-container{
    font-size:clamp(52px,16vw,72px)!important;
  }

  /* detail */
  .neel-product-page .neel-product-main{
    padding:52px 18px 70px!important;
  }

  .neel-product-page .neel-product-main-inner{
    grid-template-columns:1fr!important;

    max-width:620px!important;

    gap:38px!important;
  }

  .neel-product-page .neel-product-media{
    max-width:none!important;
  }

  .neel-product-page .neel-product-summary{
    padding-top:0!important;
  }

  .neel-product-page .neel-product-gallery{
    padding:12px!important;
  }

  .neel-product-page .neel-product-gallery::after{
    inset:7px!important;
  }

  .neel-product-page .neel-product-gallery .woocommerce-product-gallery__trigger{
    top:20px!important;
    right:20px!important;
  }

  .neel-product-page .neel-product-gallery .onsale,
  .neel-product-page .neel-product-media .onsale,
  .neel-product-page .onsale{
    top:20px!important;
    left:20px!important;
  }

  .neel-product-page .neel-product-gallery .flex-control-thumbs img{
    height:70px!important;
  }

  /* add-to-cart */
  .neel-product-page .neel-product-cart form.cart,
  .neel-product-page .neel-product-cart .woocommerce-variation-add-to-cart{
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:10px!important;
  }

  .neel-product-page .neel-product-cart form.cart .single_add_to_cart_button{
    padding:12px 14px!important;
    font-size:9px!important;
  }

  .neel-product-page .neel-product-cart table.variations tr{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }

  /* note */
  .neel-product-page .neel-product-note{
    grid-template-columns:1fr!important;
    padding:18px!important;
    gap:8px!important;
  }

  /* details */
  .neel-product-page .neel-product-details-section{
    padding:0 18px 62px!important;
  }

  .neel-product-page .neel-product-details-inner{
    max-width:620px!important;
    padding:26px 20px!important;
  }

  .neel-product-page .neel-product-details-heading .elementor-heading-title{
    font-size:40px!important;
  }

  .neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs{
    flex-direction:column!important;
  }

  .neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li,
  .neel-product-page .neel-product-tabs .woocommerce-tabs ul.tabs li a{
    width:100%!important;
  }

  .neel-product-page .neel-product-tabs .woocommerce-Tabs-panel{
    padding:24px 20px!important;
  }

  .neel-product-page .neel-product-tabs table th,
  .neel-product-page .neel-product-tabs table td{
    display:block!important;
    width:100%!important;
  }

  /* related */
  .neel-product-page .neel-product-related-section{
    padding:0 18px 78px!important;
  }

  .neel-product-page .neel-product-related-inner{
    max-width:620px!important;
    padding-top:38px!important;
  }

  .neel-product-page .neel-product-related-title .elementor-heading-title{
    font-size:40px!important;
  }

  .neel-product-page .neel-product-related ul.products,
  .neel-product-page .neel-product-related .products{
    grid-template-columns:1fr!important;
  }

  .neel-product-page .neel-product-related ul.products li.product a img{
    height:auto!important;
    aspect-ratio:1.15 / 1!important;
  }

  .neel-product-page .woocommerce-message,
  .neel-product-page .woocommerce-info,
  .neel-product-page .woocommerce-error{
    width:calc(100% - 36px)!important;
  }
}


/* ======================================================================
   12. KLEINE MOBIEL
   ====================================================================== */
@media(max-width:420px){

  .neel-product-page .neel-product-masthead-inner{
    min-height:340px!important;
  }

  .neel-product-page .neel-product-cart form.cart,
  .neel-product-page .neel-product-cart .woocommerce-variation-add-to-cart{
    grid-template-columns:58px minmax(0,1fr)!important;
  }

  .neel-product-page .neel-product-cart form.cart .quantity,
  .neel-product-page .neel-product-cart form.cart .quantity .qty{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
  }

  .neel-product-page .neel-product-cart form.cart .single_add_to_cart_button{
    letter-spacing:.06em!important;
  }
}


/* ======================================================================
   13. TOEGANKELIJKHEID / REDUCED MOTION
   ====================================================================== */
@media(prefers-reduced-motion:reduce){

  .neel-product-page *,
  .neel-product-page *::before,
  .neel-product-page *::after{
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important;
  }
}

/* ======================================================================
   NEEL – V9 COMMERCE HERO SPACING FIX
   ----------------------------------------------------------------------
   Deze V9-correctie vervangt de geforceerde 410px herohoogte uit V8.
   Resultaat:
   - minder lege ruimte tussen header en hero-inhoud;
   - geen overlap meer met het grillige scheidingsvlak;
   - winkelpagina en productpagina krijgen dezelfde verticale ritmiek;
   - desktop, tablet en mobiel blijven consistent.
   ====================================================================== */

:root{
  --neel-commerce-top-space:56px;
  --neel-commerce-bottom-space:112px;
}


/* ----------------------------------------------------------------------
   1. GEEN VASTE 410PX HOOGTE MEER
   ---------------------------------------------------------------------- */
.neel-shop-page .neel-shop-hero,
.neel-product-page .neel-product-masthead{
  height:auto!important;
  min-height:0!important;
}


/* ======================================================================
   2. WINKELPAGINA HERO
   ====================================================================== */
.neel-shop-page .neel-shop-hero{
  position:relative!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;

  padding:
    var(--neel-commerce-top-space)
    24px
    var(--neel-commerce-bottom-space)!important;

  overflow:hidden!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}


/*
 * Hero-inhoud blijft maximaal 1240px en wordt veilig boven
 * de grillige overgang gehouden.
 */
.neel-shop-page .neel-shop-hero-inner{
  position:relative!important;
  z-index:2!important;

  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.72fr)!important;

  align-items:end!important;

  width:100%!important;
  max-width:1240px!important;

  margin:0 auto!important;
  padding:0!important;

  gap:70px!important;
}


/*
 * Linker tekstblok mag niet in het scheidingsvlak terechtkomen.
 */
.neel-shop-page .neel-shop-hero-copy,
.neel-shop-page .neel-shop-hero-inner > :first-child{
  position:relative!important;
  z-index:3!important;

  margin:0!important;
  padding:0!important;
}


/*
 * Rechter informatieblok idem.
 */
.neel-shop-page .neel-shop-hero-note{
  position:relative!important;
  z-index:3!important;

  margin:0!important;
}


/* ======================================================================
   3. PRODUCTPAGINA HERO
   ====================================================================== */
.neel-product-page .neel-product-masthead{
  position:relative!important;

  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0 24px!important;

  overflow:hidden!important;

  background:var(--bordeaux)!important;
  color:var(--cream)!important;
}


/*
 * De producthero bevat breadcrumbs + terugknop én de producttitel.
 * Daarom wordt de ruimte intern verdeeld zonder vaste herohoogte.
 */
.neel-product-page .neel-product-masthead-inner{
  position:relative!important;
  z-index:2!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;

  width:100%!important;
  max-width:1240px!important;
  min-width:0!important;

  height:auto!important;
  min-height:0!important;

  margin:0 auto!important;

  padding:
    26px
    0
    var(--neel-commerce-bottom-space)!important;

  gap:28px!important;
}


/* breadcrumbs + terugknop */
.neel-product-page .neel-product-masthead-nav{
  flex:0 0 auto!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;
}


/*
 * Producttitel staat nu natuurlijk onder de navigatierij,
 * zonder naar de bodem van een vaste hero te worden gedrukt.
 */
.neel-product-page .neel-product-masthead-copy{
  align-self:flex-start!important;

  width:100%!important;
  max-width:760px!important;

  margin:0!important;
  padding:0!important;
}


/* ======================================================================
   4. EXACT HETZELFDE SCHEIDINGSVLAK
   ====================================================================== */
.neel-shop-page .neel-shop-hero::after,
.neel-product-page .neel-product-masthead::after{
  content:"";

  position:absolute!important;
  z-index:1!important;

  left:0!important;
  right:0!important;
  bottom:-1px!important;

  width:100%!important;
  height:82px!important;

  background:var(--cream)!important;

  clip-path:polygon(
    0 75%,
    10% 45%,
    22% 72%,
    35% 36%,
    50% 70%,
    65% 39%,
    80% 75%,
    92% 48%,
    100% 70%,
    100% 100%,
    0 100%
  )!important;

  pointer-events:none!important;
}


/* ======================================================================
   5. EXTRA VEILIGE AFSTAND ONDER SHOPTEKST
   ====================================================================== */
.neel-shop-page .neel-shop-hero-title{
  margin-bottom:18px!important;
}

.neel-shop-page .neel-shop-hero-text,
.neel-shop-page .neel-shop-hero-text p{
  margin-bottom:0!important;
}


/* ======================================================================
   6. TABLET
   ====================================================================== */
@media(max-width:1050px){

  :root{
    --neel-commerce-top-space:48px;
    --neel-commerce-bottom-space:105px;
  }

  .neel-shop-page .neel-shop-hero-inner{
    gap:42px!important;
  }

  .neel-product-page .neel-product-masthead-inner{
    padding:
      24px
      0
      var(--neel-commerce-bottom-space)!important;

    gap:25px!important;
  }
}


/* ======================================================================
   7. MOBIEL
   ====================================================================== */
@media(max-width:760px){

  :root{
    --neel-commerce-top-space:38px;
    --neel-commerce-bottom-space:82px;
  }

  .neel-shop-page .neel-shop-hero{
    padding:
      var(--neel-commerce-top-space)
      18px
      var(--neel-commerce-bottom-space)!important;
  }

  .neel-shop-page .neel-shop-hero-inner{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .neel-product-page .neel-product-masthead{
    padding:0 18px!important;
  }

  .neel-product-page .neel-product-masthead-inner{
    padding:
      20px
      0
      var(--neel-commerce-bottom-space)!important;

    gap:22px!important;
  }

  .neel-shop-page .neel-shop-hero::after,
  .neel-product-page .neel-product-masthead::after{
    height:64px!important;
  }
}

/* =========================================================
   EXPERIENCE – ELEMENTOR ICON LIST
   ========================================================= */

.neel-page .experience-list{
  width:100%!important;
  margin:28px 0 30px!important;
  padding:0!important;
}

.neel-page .experience-list .elementor-icon-list-items{
  display:flex!important;
  flex-direction:column!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;

  gap:0!important;
}


/* afzonderlijke rij */
.neel-page .experience-list .elementor-icon-list-item{
  display:flex!important;
  align-items:center!important;

  width:100%!important;

  margin:0!important;
  padding:17px 0!important;

  border-bottom:1px solid rgba(107,34,50,.14)!important;
}

/* Elementor link/container */
.neel-page .experience-list .elementor-icon-list-item > a,
.neel-page .experience-list .elementor-icon-list-item{
  gap:16px!important;
}


/* icoon-container */
.neel-page .experience-list .elementor-icon-list-icon{
  display:grid!important;
  place-items:center!important;

  flex:0 0 42px!important;

  width:42px!important;
  height:42px!important;

  margin:0!important;
  padding:0!important;

  border:1px solid rgba(199,161,90,.75)!important;
  border-radius:50%!important;

  background:var(--bordeaux)!important;
}


/* SVG / font icon */
.neel-page .experience-list .elementor-icon-list-icon svg{
  width:15px!important;
  height:15px!important;

  margin:0!important;

  fill:var(--cream)!important;
}

.neel-page .experience-list .elementor-icon-list-icon i{
  color:var(--cream)!important;
  font-size:14px!important;
}


/* tekst */
.neel-page .experience-list .elementor-icon-list-text{
  padding:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:20px!important;
  font-weight:500!important;
  line-height:1.25!important;
}


/* hover */
.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon{
  background:var(--gold)!important;
}

.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon svg{
  fill:var(--bordeaux)!important;
}

.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon i{
  color:var(--bordeaux)!important;
}


/* mobiel */
@media(max-width:760px){

  .neel-page .experience-list{
    margin:22px 0 26px!important;
  }

  .neel-page .experience-list .elementor-icon-list-item{
    padding:14px 0!important;
  }

  .neel-page .experience-list .elementor-icon-list-icon{
    flex-basis:38px!important;
    width:38px!important;
    height:38px!important;
  }

  .neel-page .experience-list .elementor-icon-list-text{
    font-size:18px!important;
  }
}

.footer-ylnet-link{
  color:var(--gold)!important;
  text-decoration:none!important;
  transition:color .2s ease!important;
}

.footer-ylnet-link:hover{
  color:var(--cream)!important;
}

/* ======================================================================
   V13 – GIFTS / OLIVE DEFINITIEVE KLEURFIX
   ----------------------------------------------------------------------
   Doel:
   - Gifts-sectie exact #8D8A56
   - td-rose-olive eindigt exact in dezelfde #8D8A56
   - td-olive-wood begint exact met dezelfde #8D8A56
   - geen overlay, gradient of decoratie die de kleur beïnvloedt
   - geen donkere card shadow onder de gift-cards
   ====================================================================== */

.neel-page .gifts{
  position:relative!important;
  background:#8D8A56!important;
  background-color:#8D8A56!important;
  background-image:none!important;
  color:var(--cream)!important;
}

/* Geen halve cirkels, overlays of kleurfilters */
.neel-page .gifts::before,
.neel-page .gifts::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  background:none!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Cards mogen het groen eronder niet donkerder maken */
.neel-page .gift-card{
  box-shadow:none!important;
}

/* Rose/cream -> olive: groene vlak exact gelijk aan gifts */
.neel-page .td-rose-olive .transition-next{
  background:#8D8A56!important;
  background-color:#8D8A56!important;
  background-image:none!important;
  opacity:1!important;
  filter:none!important;
}

/* Olive -> wood: achtergrond achter de bruine punten exact gelijk aan gifts */
.neel-page .td-olive-wood{
  background:#8D8A56!important;
  background-color:#8D8A56!important;
  background-image:none!important;
  opacity:1!important;
  filter:none!important;
}

/* Alleen het onderste overgangsvlak is wood */
.neel-page .td-olive-wood .transition-next{
  background:var(--wood)!important;
  background-color:var(--wood)!important;
  background-image:none!important;
  opacity:1!important;
  filter:none!important;
}

/* Zorg dat de overgangscontainer zelf geen schaduw/tint toevoegt */
.neel-page .td-rose-olive,
.neel-page .td-olive-wood{
  box-shadow:none!important;
  filter:none!important;
}

/* Elementor-childs mogen geen transparante/gekleurde achtergrond erboven leggen */
.neel-page .gifts > .e-con,
.neel-page .gifts > .elementor-element,
.neel-page .gifts .neel-container{
  background-color:transparent!important;
  background-image:none!important;
}

/* ======================================================================
   V14 – UNIFORME SECTIE-AFSTAND
   ----------------------------------------------------------------------
   Pas HIER de globale afstand van alle normale homepage-secties aan.

   Desktop:
   --neel-section-space-y: boven + onder
   --neel-section-space-x: links + rechts

   Tablet en mobiel hebben eigen verticale waarden.

   Niet meegenomen:
   - Hero
   - transition-divider / grafische scheidingen
   - footer-transition
   - shop/product specifieke secties
   ====================================================================== */

:root{
  /* ===== HIER AANPASSEN ALS JE MEER/MINDER RUIMTE WILT ===== */
  --neel-section-space-y:96px;
  --neel-section-space-x:24px;

  --neel-section-space-y-tablet:80px;
  --neel-section-space-x-tablet:24px;

  --neel-section-space-y-mobile:64px;
  --neel-section-space-x-mobile:18px;
}


/* Alle normale hoofdsecties dezelfde spacing */
.neel-page .categories,
.neel-page .story,
.neel-page .experience,
.neel-page .gifts,
.neel-page .testimonial,
.neel-page .contact{
  padding-top:var(--neel-section-space-y)!important;
  padding-right:var(--neel-section-space-x)!important;
  padding-bottom:var(--neel-section-space-y)!important;
  padding-left:var(--neel-section-space-x)!important;

  margin-top:0!important;
  margin-bottom:0!important;
}


/* Algemene section-basis gelijk trekken */
.neel-page .section{
  padding-top:var(--neel-section-space-y)!important;
  padding-right:var(--neel-section-space-x)!important;
  padding-bottom:var(--neel-section-space-y)!important;
  padding-left:var(--neel-section-space-x)!important;
}


/* Tablet */
@media(max-width:980px){

  .neel-page .categories,
  .neel-page .story,
  .neel-page .experience,
  .neel-page .gifts,
  .neel-page .testimonial,
  .neel-page .contact,
  .neel-page .section{
    padding-top:var(--neel-section-space-y-tablet)!important;
    padding-right:var(--neel-section-space-x-tablet)!important;
    padding-bottom:var(--neel-section-space-y-tablet)!important;
    padding-left:var(--neel-section-space-x-tablet)!important;
  }
}


/* Mobiel */
@media(max-width:700px){

  .neel-page .categories,
  .neel-page .story,
  .neel-page .experience,
  .neel-page .gifts,
  .neel-page .testimonial,
  .neel-page .contact,
  .neel-page .section{
    padding-top:var(--neel-section-space-y-mobile)!important;
    padding-right:var(--neel-section-space-x-mobile)!important;
    padding-bottom:var(--neel-section-space-y-mobile)!important;
    padding-left:var(--neel-section-space-x-mobile)!important;
  }
}


/* Grafische overgangen behouden hun eigen vaste vorm */
.neel-page .transition-divider,
.footer-transition{
  padding:0!important;
}

/* ======================================================================
   V15 – EXPERIENCE LIST + CATEGORY CARD FIX
   ----------------------------------------------------------------------
   1. Native Elementor Icoon lijst in de Experience-sectie.
      Widget class: experience-list

      Gebruik per item bijvoorbeeld:
      Dagelijks iets lekkers<br><span class="experience-list-sub">Van verse salades en patisserie tot fijne producten voor thuis.</span>

   2. Category cards:
      De Flexbox met kicker/titel/tekst MOET class category-content hebben.
      Widgets binnenin:
      - category-kicker
      - category-title
      - category-text
   ====================================================================== */


/* ======================================================================
   EXPERIENCE LIST — ELEMENTOR ICON LIST
   ====================================================================== */

.neel-page .experience-list{
  width:100%!important;
  max-width:none!important;

  margin:30px 0 34px!important;
  padding:0!important;
}


/* volledige lijst */
.neel-page .experience-list .elementor-icon-list-items{
  display:flex!important;
  flex-direction:column!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0!important;

  gap:22px!important;

  list-style:none!important;
}


/* afzonderlijk item */
.neel-page .experience-list .elementor-icon-list-item{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;

  width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  gap:16px!important;

  border:0!important;
  background:transparent!important;
}


/* Elementor kan optioneel een <a> om de inhoud zetten */
.neel-page .experience-list .elementor-icon-list-item > a{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;

  width:100%!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  gap:16px!important;

  color:inherit!important;
  text-decoration:none!important;
}


/* ----------------------------------------------------------------------
   EXPERIENCE ICON
   ---------------------------------------------------------------------- */

.neel-page .experience-list .elementor-icon-list-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  flex:0 0 46px!important;

  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;

  margin:0!important;
  padding:0!important;

  border:1px solid var(--gold)!important;
  border-radius:50%!important;

  background:transparent!important;

  color:var(--gold)!important;

  transition:
    background .22s ease,
    color .22s ease,
    border-color .22s ease!important;
}


/* Font Awesome / icon font */
.neel-page .experience-list .elementor-icon-list-icon i{
  display:block!important;

  margin:0!important;

  color:var(--gold)!important;
  font-size:17px!important;
  line-height:1!important;
}


/* SVG */
.neel-page .experience-list .elementor-icon-list-icon svg{
  display:block!important;

  width:17px!important;
  height:17px!important;

  margin:0!important;

  fill:var(--gold)!important;
  color:var(--gold)!important;
}


/* ----------------------------------------------------------------------
   EXPERIENCE TITEL
   ---------------------------------------------------------------------- */

.neel-page .experience-list .elementor-icon-list-text{
  display:block!important;

  flex:1 1 auto!important;

  min-width:0!important;

  margin:0!important;
  padding:0!important;

  color:var(--bordeaux)!important;

  font-family:var(--serif)!important;
  font-size:21px!important;
  font-weight:600!important;
  line-height:1.18!important;

  white-space:normal!important;
}


/* ----------------------------------------------------------------------
   EXPERIENCE ONDERSCHRIFT
   Gebruik:
   <span class="experience-list-sub">...</span>
   ---------------------------------------------------------------------- */

.neel-page .experience-list .experience-list-sub{
  display:block!important;

  margin-top:4px!important;

  color:var(--wood)!important;

  font-family:var(--sans)!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.55!important;

  letter-spacing:0!important;
  text-transform:none!important;
}


/* <br> zelf zo compact mogelijk houden */
.neel-page .experience-list .elementor-icon-list-text br{
  display:block!important;

  content:""!important;

  margin:0!important;
  padding:0!important;

  line-height:0!important;
}


/* Hover */
.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
}

.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon i{
  color:var(--bordeaux)!important;
}

.neel-page .experience-list .elementor-icon-list-item:hover
.elementor-icon-list-icon svg{
  fill:var(--bordeaux)!important;
  color:var(--bordeaux)!important;
}


/* Geen horizontale lijnen zoals in de oude list-opmaak */
.neel-page .experience-list .elementor-icon-list-item::before,
.neel-page .experience-list .elementor-icon-list-item::after{
  content:none!important;
  display:none!important;
}


/* ======================================================================
   CATEGORY CARD CONTENT — STRUCTUUR + KLEURFIX
   ====================================================================== */

/*
 * Per categoriekaart:
 *
 * category-card + card-1
 * ├── category-image
 * └── category-content
 *     ├── category-kicker
 *     ├── category-title
 *     └── category-text
 */


/* Tekstcontainer */
.neel-page .category-card .category-content{
  position:absolute!important;
  z-index:4!important;

  left:26px!important;
  right:26px!important;
  bottom:23px!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;

  width:auto!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  gap:0!important;

  background:transparent!important;
  color:var(--cream)!important;
}


/* Widgets zelf ook transparant */
.neel-page .category-card .category-content > *,
.neel-page .category-card .category-content .elementor-widget-container{
  max-width:100%!important;

  background:transparent!important;
}


/* Kicker */
.neel-page .category-card .category-kicker{
  margin:0 0 9px!important;
}

.neel-page .category-card .category-kicker,
.neel-page .category-card .category-kicker .elementor-heading-title,
.neel-page .category-card .category-kicker .elementor-widget-container{
  color:#e5c78f!important;

  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.3!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}


/* Titel */
.neel-page .category-card .category-title{
  margin:0 0 9px!important;
}

.neel-page .category-card .category-title,
.neel-page .category-card .category-title .elementor-heading-title,
.neel-page .category-card .category-title .elementor-widget-container{
  color:var(--cream)!important;

  font-family:var(--serif)!important;
  font-size:36px!important;
  font-weight:500!important;
  line-height:1.08!important;
}


/* Beschrijving */
.neel-page .category-card .category-text,
.neel-page .category-card .category-text p,
.neel-page .category-card .category-text .elementor-widget-container{
  margin:0!important;

  color:var(--cream)!important;

  font-family:var(--sans)!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.6!important;
}


/* Eventuele links in de content */
.neel-page .category-card .category-content a{
  color:inherit!important;
}


/*
 * Pointer events alleen op echte links weer aan indien je later
 * klikbare content in category-content toevoegt.
 */
.neel-page .category-card .category-content a,
.neel-page .category-card .category-content button{
  pointer-events:auto;
}


/* Kleine kaarten 3 en 4 */
.neel-page .category-card.card-3 .category-title,
.neel-page .category-card.card-3 .category-title .elementor-heading-title,
.neel-page .category-card.card-4 .category-title,
.neel-page .category-card.card-4 .category-title .elementor-heading-title{
  font-size:27px!important;
}

.neel-page .category-card.card-3 .category-text,
.neel-page .category-card.card-3 .category-text p,
.neel-page .category-card.card-4 .category-text,
.neel-page .category-card.card-4 .category-text p{
  font-size:12px!important;
}


/* Zorg dat de donkere overlay altijd ONDER de tekst ligt */
.neel-page .category-card::after{
  z-index:1!important;

  background:
    linear-gradient(
      180deg,
      rgba(43,26,21,0) 25%,
      rgba(43,26,21,.18) 48%,
      rgba(43,26,21,.90) 100%
    )!important;

  pointer-events:none!important;
}


/* Afbeelding blijft onder overlay + tekst */
.neel-page .category-card .category-image{
  z-index:0!important;
}


/* Binnenrand boven alles behalve tekst niet laten blokkeren */
.neel-page .category-card::before{
  z-index:3!important;
  pointer-events:none!important;
}


/* ======================================================================
   RESPONSIVE EXPERIENCE LIST
   ====================================================================== */

@media(max-width:980px){

  .neel-page .experience-list{
    margin-top:26px!important;
  }
}


@media(max-width:700px){

  .neel-page .experience-list{
    margin:22px 0 28px!important;
  }

  .neel-page .experience-list .elementor-icon-list-items{
    gap:18px!important;
  }

  .neel-page .experience-list .elementor-icon-list-item,
  .neel-page .experience-list .elementor-icon-list-item > a{
    gap:13px!important;
  }

  .neel-page .experience-list .elementor-icon-list-icon{
    flex-basis:42px!important;

    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }

  .neel-page .experience-list .elementor-icon-list-icon i{
    font-size:15px!important;
  }

  .neel-page .experience-list .elementor-icon-list-icon svg{
    width:15px!important;
    height:15px!important;
  }

  .neel-page .experience-list .elementor-icon-list-text{
    font-size:19px!important;
  }

  .neel-page .experience-list .experience-list-sub{
    font-size:12px!important;
    line-height:1.5!important;
  }
}

/* ======================================================================
   V16 – ELEMENTOR CATEGORY CONTENT EDITOR FIX
   ----------------------------------------------------------------------
   category-content blijft visueel absoluut gepositioneerd, maar blokkeert
   geen pointer-events meer. Hierdoor kan Elementor deze Flexbox en de
   widgets erin weer normaal selecteren en bewerken.
   ====================================================================== */

.neel-page .category-card .category-content{
  pointer-events:auto!important;
}

.neel-page .category-card .category-content > *,
.neel-page .category-card .category-content a,
.neel-page .category-card .category-content button{
  pointer-events:auto!important;
}

/* ======================================================================
   V17 – CATEGORY CARD INNER BORDER FIX
   ----------------------------------------------------------------------
   De binnenrand van iedere category-card blijft nu volledig binnen
   de kaart. Hierdoor verdwijnen de rechter- en onderrand niet meer
   door overflow:hidden.
   ====================================================================== */

.neel-page .category-card{
  position:relative!important;
  overflow:hidden!important;
}


/*
 * Binnenrand:
 * Gebruik top/left/right/bottom in plaats van width/height.
 * Zo blijft de border altijd exact binnen de kaart.
 */
.neel-page .category-card::before{
  content:"";

  position:absolute!important;
  z-index:3!important;

  top:14px!important;
  left:14px!important;
  right:14px!important;
  bottom:14px!important;

  width:auto!important;
  height:auto!important;

  margin:0!important;
  padding:0!important;

  border:1px solid rgba(255,255,255,.38)!important;
  box-sizing:border-box!important;

  background:transparent!important;

  pointer-events:none!important;
}


/* Afbeelding onderaan de stack */
.neel-page .category-card .category-image{
  position:absolute!important;
  z-index:0!important;
}


/* Donkere overlay boven de afbeelding */
.neel-page .category-card::after{
  z-index:1!important;
  pointer-events:none!important;
}


/* Tekst altijd boven overlay + rand */
.neel-page .category-card .category-content{
  z-index:4!important;
}


/* Extra veiligheid voor Elementor wrappers */
.neel-page .category-card > .e-con,
.neel-page .category-card > .elementor-element{
  min-width:0!important;
}


/* Mobiel: rand iets dichter bij de buitenkant */
@media(max-width:700px){

  .neel-page .category-card::before{
    top:10px!important;
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
  }
}

/* ======================================================================
   V18 – MOBILE FULLSCREEN MENU
   ----------------------------------------------------------------------
   Doel:
   - Bordeaux menu vult de volledige mobiele viewport.
   - Menu loopt visueel achter de header door.
   - Crème headerpaneel blijft zichtbaar boven het menu.
   - Logo links + sluit/menu-knop rechts blijven aanklikbaar.
   - Menu-items horizontaal én verticaal gecentreerd.
   - Geen Elementor dropdown-witte vlakken/randen.
   ====================================================================== */

@media(max-width:980px){

  /* --------------------------------------------------------------
     HEADER BOVEN FULLSCREEN MENU
     -------------------------------------------------------------- */

  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;

    z-index:10000!important;

    width:100%!important;

    margin:0!important;

    pointer-events:none!important;
  }

  .site-header .nav{
    position:relative!important;

    z-index:10001!important;

    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;

    width:100%!important;

    overflow:visible!important;

    isolation:isolate;
  }


  /*
   * De dropdown zelf ligt ook in .nav.
   * Daarom maken we het crème headerpaneel als pseudo-element,
   * zodat het boven de bordeaux fullscreen dropdown blijft liggen.
   */
  .site-header .nav::before{
    content:"";

    position:absolute!important;
    z-index:10004!important;

    inset:0!important;

    border:1px solid rgba(199,161,90,.65)!important;

    background:rgba(242,236,229,.98)!important;

    box-shadow:0 12px 35px rgba(75,52,38,.11)!important;

    pointer-events:none!important;
  }


  /* Logo / merk altijd boven headerpaneel + menu */
  .site-header .brand{
    position:relative!important;
    z-index:10006!important;

    pointer-events:auto!important;
  }


  .site-header .nav-links{
    position:relative!important;
    z-index:10006!important;

    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;

    width:auto!important;

    margin-left:auto!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu{
    position:relative!important;
    z-index:10007!important;

    width:auto!important;

    pointer-events:auto!important;
  }


  /* Desktop CTA niet tonen */
  .site-header .nav-button{
    display:none!important;
  }


  /* --------------------------------------------------------------
     HAMBURGER / SLUITKNOP
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-menu-toggle{
    position:relative!important;
    z-index:10008!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;

    margin:0!important;
    padding:0!important;

    border:1px solid var(--gold)!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;
    color:var(--cream)!important;

    box-shadow:none!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu .elementor-menu-toggle i,
  .site-header .nav-menu .elementor-menu-toggle svg{
    position:relative!important;
    z-index:2!important;

    color:var(--cream)!important;
    fill:var(--cream)!important;
  }


  .site-header .nav-menu .elementor-menu-toggle:hover,
  .site-header .nav-menu .elementor-menu-toggle:focus{
    background:var(--gold)!important;
    color:var(--bordeaux)!important;
  }

  .site-header .nav-menu .elementor-menu-toggle:hover i,
  .site-header .nav-menu .elementor-menu-toggle:focus i{
    color:var(--bordeaux)!important;
  }

  .site-header .nav-menu .elementor-menu-toggle:hover svg,
  .site-header .nav-menu .elementor-menu-toggle:focus svg{
    fill:var(--bordeaux)!important;
  }


  /* --------------------------------------------------------------
     FULLSCREEN BORDEAUX DROPDOWN
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-nav-menu--dropdown{
    position:fixed!important;

    z-index:10002!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    display:block;

    width:100vw!important;
    max-width:none!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;

    margin:0!important;

    /*
     * Bovenin blijft ruimte voor het visuele headerpaneel.
     * De bordeaux achtergrond loopt WEL achter die header door.
     */
    padding:112px 28px 32px!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;

    border:0!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;

    box-shadow:none!important;

    pointer-events:auto!important;

    -webkit-overflow-scrolling:touch;
  }


  /* Elementor wrappers volledig transparant */
  .site-header .nav-menu .elementor-nav-menu--dropdown,
  .site-header .nav-menu .elementor-nav-menu--dropdown > div,
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu{
    border:0!important;
    background-color:transparent!important;
    box-shadow:none!important;
  }


  /* --------------------------------------------------------------
     MENU ZELF PRECIES IN HET MIDDEN
     -------------------------------------------------------------- */

  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:center!important;

    width:100%!important;
    max-width:760px!important;

    /*
     * Beschikbare hoogte onder het headergedeelte.
     * Hierdoor komt de gehele menugroep verticaal gecentreerd.
     */
    min-height:calc(100dvh - 144px)!important;

    margin:0 auto!important;
    padding:0!important;

    gap:18px!important;

    list-style:none!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:100%!important;

    margin:0!important;
    padding:0!important;

    border:0!important;
    background:transparent!important;
  }


  /* --------------------------------------------------------------
     MENU ITEMS
     -------------------------------------------------------------- */

  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:auto!important;
    max-width:100%!important;

    margin:0!important;
    padding:10px 14px!important;

    border:0!important;

    background:transparent!important;
    color:var(--cream)!important;

    font-family:var(--serif)!important;
    font-size:clamp(38px,8vw,52px)!important;
    font-weight:500!important;
    line-height:1.08!important;
    letter-spacing:0!important;

    text-align:center!important;
    text-transform:none!important;

    white-space:normal!important;

    transition:
      color .22s ease,
      transform .22s ease!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:hover,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:focus,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item.elementor-item-active{
    background:transparent!important;
    color:var(--gold)!important;

    transform:translateY(-1px);
  }


  /* Alle Elementor hover/active pseudo-lijnen uit */
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item::before,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item::after{
    content:none!important;
    display:none!important;
  }


  /* Submenu-indicators niet relevant voor dit eenvoudige menu */
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .sub-arrow{
    display:none!important;
  }
}


/* ======================================================================
   V18 – KLEINE MOBIELE SCHERMEN
   ====================================================================== */

@media(max-width:640px){

  .site-header{
    padding:11px!important;
  }


  .site-header .nav{
    min-height:68px!important;

    padding:8px 9px 8px 13px!important;
  }


  .site-header .brand{
    gap:12px!important;
  }


  .site-header .brand-symbol{
    flex:0 0 43px!important;

    width:43px!important;
    height:43px!important;
    min-width:43px!important;
    min-height:43px!important;
  }


  .site-header .brand-name .elementor-heading-title{
    font-size:22px!important;
  }


  .site-header .brand-sub{
    display:none!important;
  }


  .site-header .nav-menu .elementor-menu-toggle{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }


  .site-header .nav-menu .elementor-nav-menu--dropdown{
    padding:
      96px
      18px
      max(24px,env(safe-area-inset-bottom))!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    min-height:calc(100dvh - 120px)!important;

    gap:15px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    padding:10px 8px!important;

    font-size:clamp(38px,11vw,48px)!important;
  }
}


/* ======================================================================
   V18 – ZEER SMALLE TELEFOONS
   ====================================================================== */

@media(max-width:420px){

  .site-header .nav{
    padding-left:10px!important;
    padding-right:8px!important;
  }


  .site-header .brand{
    gap:9px!important;
  }


  .site-header .brand-symbol{
    flex-basis:40px!important;

    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
  }


  .site-header .brand-name .elementor-heading-title{
    font-size:20px!important;
  }


  .site-header .nav-menu .elementor-menu-toggle{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    font-size:clamp(34px,10.5vw,44px)!important;
  }
}

/* ======================================================================
   V19 – MOBILE MENU BORDEAUX BACKGROUND FIX
   ----------------------------------------------------------------------
   Forceert de volledige Elementor mobiele dropdown op bordeaux.
   Dit voorkomt dat een transparante/witte Elementor wrapper zichtbaar
   wordt tijdens het uitklappen.
   ====================================================================== */

@media(max-width:980px){

  /* Hoofd dropdownlaag */
  .site-header .nav-menu .elementor-nav-menu--dropdown{
    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
    background-image:none!important;
  }

  /* Elementor kan extra wrappers rondom/ín de dropdown genereren */
  .site-header .nav-menu .elementor-nav-menu--dropdown-container,
  .site-header .nav-menu .elementor-nav-menu--dropdown > div,
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu,
  .site-header .nav-menu .elementor-nav-menu--dropdown ul,
  .site-header .nav-menu .elementor-nav-menu--dropdown li{
    background-color:transparent!important;
    background-image:none!important;
  }

  /*
   * De fullscreen dropdown zelf blijft altijd bordeaux.
   * Onderliggende menu-items/wrappers zijn transparant zodat ze de
   * bordeaux basis laten zien.
   */
  .site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
    background-image:none!important;
  }

  /* Sommige Elementor versies plaatsen de mobiele menu-wrapper hier */
  .site-header .elementor-widget-nav-menu,
  .site-header .elementor-widget-nav-menu .elementor-widget-container{
    background-color:transparent!important;
    background-image:none!important;
  }

  /* Open menu expliciet bordeaux houden */
  .site-header .elementor-menu-toggle.elementor-active
  + .elementor-nav-menu--dropdown,
  .site-header .elementor-menu-toggle[aria-expanded="true"]
  + .elementor-nav-menu--dropdown{
    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
  }

  /* Menu-items nooit een witte/lichte achtergrond geven */
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:hover,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:focus,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item.elementor-item-active{
    background-color:transparent!important;
    background-image:none!important;
  }
}

/* ======================================================================
   V20 – MOBILE MENU FULL VIEWPORT BACKGROUND
   ----------------------------------------------------------------------
   Doel:
   - Bordeaux vult bij geopend menu ALTIJD de volledige viewport.
   - Ook het gebied achter de header is bordeaux.
   - De crème header blijft als paneel vóór de bordeaux achtergrond staan.
   - Geen smalle stroken van de onderliggende pagina langs links/rechts.
   - Menu-items blijven gecentreerd.
   ====================================================================== */

@media(max-width:980px){

  /* --------------------------------------------------------------
     PAGINA VERGRENDELEN BIJ OPEN MENU
     -------------------------------------------------------------- */

  html:has(.site-header .elementor-menu-toggle.elementor-active),
  body:has(.site-header .elementor-menu-toggle.elementor-active),
  html:has(.site-header .elementor-menu-toggle[aria-expanded="true"]),
  body:has(.site-header .elementor-menu-toggle[aria-expanded="true"]){
    overflow:hidden!important;
    background:var(--bordeaux)!important;
  }


  /*
   * Extra fullscreen bordeaux laag.
   * Deze staat LOS van Elementor en vult dus gegarandeerd
   * de volledige browserviewport, óók achter de header.
   */
  body:has(.site-header .elementor-menu-toggle.elementor-active)::before,
  body:has(.site-header .elementor-menu-toggle[aria-expanded="true"])::before{
    content:"";

    position:fixed!important;
    z-index:9997!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;

    margin:0!important;
    padding:0!important;

    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
    background-image:none!important;

    pointer-events:none!important;
  }


  /* --------------------------------------------------------------
     HEADER BLIJFT BOVEN DE BORDEAUX LAAG
     -------------------------------------------------------------- */

  .site-header{
    position:fixed!important;

    z-index:10000!important;

    top:0!important;
    right:0!important;
    left:0!important;

    width:100%!important;
    max-width:none!important;

    background:transparent!important;

    overflow:visible!important;
    pointer-events:none!important;
  }


  .site-header .nav{
    position:relative!important;
    z-index:10001!important;

    width:100%!important;

    overflow:visible!important;

    background:transparent!important;

    pointer-events:auto!important;
  }


  /*
   * Crème headerpaneel vóór het bordeaux vlak.
   * Het bordeaux loopt dus achter deze header volledig door.
   */
  .site-header .nav::before{
    content:"";

    position:absolute!important;
    z-index:10004!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    border:1px solid rgba(199,161,90,.65)!important;

    background:rgba(242,236,229,.98)!important;
    background-color:rgba(242,236,229,.98)!important;

    box-shadow:0 12px 35px rgba(75,52,38,.11)!important;

    pointer-events:none!important;
  }


  /* Logo / brand zichtbaar boven het crème paneel */
  .site-header .brand{
    position:relative!important;
    z-index:10006!important;

    pointer-events:auto!important;
  }


  .site-header .nav-links,
  .site-header .nav-menu{
    position:relative!important;
    z-index:10006!important;

    overflow:visible!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu .elementor-widget-container{
    overflow:visible!important;
    background:transparent!important;
  }


  /* --------------------------------------------------------------
     DROPDOWN ZELF — VOLLEDIGE VIEWPORT
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-nav-menu--dropdown,
  .site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    position:fixed!important;

    z-index:10002!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    width:100vw!important;
    max-width:none!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;

    margin:0!important;

    /*
     * Alleen inhoud krijgt ruimte voor de zichtbare crème header.
     * De bordeaux achtergrond zelf begint nog steeds op top:0.
     */
    padding:112px 28px 32px!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;

    border:0!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
    background-image:none!important;

    box-shadow:none!important;

    pointer-events:auto!important;

    -webkit-overflow-scrolling:touch;
  }


  /* Alle interne Elementor wrappers transparant */
  .site-header .nav-menu .elementor-nav-menu--dropdown > div,
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu,
  .site-header .nav-menu .elementor-nav-menu--dropdown ul,
  .site-header .nav-menu .elementor-nav-menu--dropdown li{
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;

    border:0!important;
    box-shadow:none!important;
  }


  /* --------------------------------------------------------------
     MENU ITEMS GECENTREERD
     -------------------------------------------------------------- */

  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:center!important;

    width:100%!important;
    max-width:760px!important;

    min-height:calc(100dvh - 144px)!important;

    margin:0 auto!important;
    padding:0!important;

    gap:18px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:100%!important;

    margin:0!important;
    padding:0!important;

    background:transparent!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:auto!important;
    max-width:100%!important;

    margin:0!important;
    padding:10px 14px!important;

    background:transparent!important;
    color:var(--cream)!important;

    font-family:var(--serif)!important;
    font-size:clamp(38px,8vw,52px)!important;
    font-weight:500!important;
    line-height:1.08!important;

    text-align:center!important;
    white-space:normal!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:hover,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:focus,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item.elementor-item-active{
    background:transparent!important;
    color:var(--gold)!important;
  }


  /* --------------------------------------------------------------
     MENU / SLUITKNOP
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-menu-toggle{
    position:relative!important;
    z-index:10008!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;

    margin:0!important;
    padding:0!important;

    border:1px solid var(--gold)!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;
    color:var(--cream)!important;

    box-shadow:none!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu .elementor-menu-toggle i,
  .site-header .nav-menu .elementor-menu-toggle svg{
    color:var(--cream)!important;
    fill:var(--cream)!important;
  }


  .site-header .nav-menu .elementor-menu-toggle:hover,
  .site-header .nav-menu .elementor-menu-toggle:focus{
    background:var(--gold)!important;
    color:var(--bordeaux)!important;
  }


  .site-header .nav-menu .elementor-menu-toggle:hover i,
  .site-header .nav-menu .elementor-menu-toggle:focus i{
    color:var(--bordeaux)!important;
  }

  .site-header .nav-menu .elementor-menu-toggle:hover svg,
  .site-header .nav-menu .elementor-menu-toggle:focus svg{
    fill:var(--bordeaux)!important;
  }
}


/* ======================================================================
   V20 – MOBIEL
   ====================================================================== */

@media(max-width:640px){

  .site-header .nav-menu .elementor-nav-menu--dropdown,
  .site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    padding:
      96px
      18px
      max(24px,env(safe-area-inset-bottom))!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    min-height:calc(100dvh - 120px)!important;

    gap:15px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    font-size:clamp(38px,11vw,48px)!important;
  }
}

/* ======================================================================
   V21 – MOBILE MENU HEADER STACKING FIX
   ----------------------------------------------------------------------
   Probleem V20:
   nav-links/nav-menu vormden zelf een hoge stacking context. Daardoor
   kon de fullscreen bordeaux dropdown vóór het crème headerpaneel komen.

   V21:
   - dropdown blijft full viewport bordeaux;
   - bordeaux loopt achter de header door;
   - crème headerpaneel blijft zichtbaar;
   - logo blijft zichtbaar;
   - menu/sluitknop blijft zichtbaar en klikbaar;
   - menu-items blijven gecentreerd.
   ====================================================================== */

@media(max-width:980px){

  /* --------------------------------------------------------------
     BASIS STACKING
     -------------------------------------------------------------- */

  .site-header{
    position:fixed!important;
    z-index:10000!important;

    top:0!important;
    right:0!important;
    left:0!important;

    width:100%!important;
    max-width:none!important;

    background:transparent!important;

    overflow:visible!important;
    pointer-events:none!important;
  }


  .site-header .nav{
    position:relative!important;
    z-index:auto!important;

    width:100%!important;

    overflow:visible!important;

    background:transparent!important;

    isolation:isolate!important;

    pointer-events:auto!important;
  }


  /* --------------------------------------------------------------
     CRÈME HEADERPANEEL
     -------------------------------------------------------------- */

  .site-header .nav::before{
    content:"";

    position:absolute!important;
    z-index:40!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    border:1px solid rgba(199,161,90,.65)!important;

    background:rgba(242,236,229,.98)!important;
    background-color:rgba(242,236,229,.98)!important;
    background-image:none!important;

    box-shadow:0 12px 35px rgba(75,52,38,.11)!important;

    pointer-events:none!important;
  }


  /* --------------------------------------------------------------
     LOGO BOVEN HEADERPANEEL
     -------------------------------------------------------------- */

  .site-header .brand{
    position:relative!important;
    z-index:60!important;

    background:transparent!important;

    pointer-events:auto!important;
  }


  .site-header .brand-symbol,
  .site-header .brand-copy,
  .site-header .brand-name,
  .site-header .brand-sub{
    position:relative!important;
    z-index:61!important;
  }


  /* --------------------------------------------------------------
     BELANGRIJK:
     NAV-LINKS EN NAV-MENU MOGEN GEEN HOGE STACKING CONTEXT MAKEN
     -------------------------------------------------------------- */

  .site-header .nav-links{
    position:static!important;
    z-index:auto!important;

    overflow:visible!important;

    background:transparent!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu,
  .site-header .elementor-widget-nav-menu{
    position:static!important;
    z-index:auto!important;

    overflow:visible!important;

    background:transparent!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu .elementor-widget-container,
  .site-header .elementor-widget-nav-menu .elementor-widget-container{
    position:static!important;
    z-index:auto!important;

    overflow:visible!important;

    background:transparent!important;

    pointer-events:auto!important;
  }


  /* --------------------------------------------------------------
     FULLSCREEN DROPDOWN ACHTER HET CRÈME HEADERPANEEL
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-nav-menu--dropdown,
  .site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    position:fixed!important;

    z-index:20!important;

    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;

    inset:0!important;

    width:100vw!important;
    max-width:none!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;

    margin:0!important;

    /* alleen de INHOUD start onder de header */
    padding:112px 28px 32px!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;

    border:0!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;
    background-color:var(--bordeaux)!important;
    background-image:none!important;

    box-shadow:none!important;

    pointer-events:auto!important;

    -webkit-overflow-scrolling:touch;
  }


  /* Interne Elementor wrappers transparant */
  .site-header .nav-menu .elementor-nav-menu--dropdown > div,
  .site-header .nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu,
  .site-header .nav-menu .elementor-nav-menu--dropdown ul,
  .site-header .nav-menu .elementor-nav-menu--dropdown li{
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;

    border:0!important;
    box-shadow:none!important;
  }


  /* --------------------------------------------------------------
     MENU/SLUITKNOP BOVEN ALLES
     -------------------------------------------------------------- */

  .site-header .nav-menu .elementor-menu-toggle,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle{
    position:relative!important;
    z-index:70!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;

    margin:0!important;
    padding:0!important;

    border:1px solid var(--gold)!important;
    border-radius:0!important;

    background:var(--bordeaux)!important;
    color:var(--cream)!important;

    box-shadow:none!important;

    pointer-events:auto!important;
  }


  .site-header .nav-menu .elementor-menu-toggle i,
  .site-header .nav-menu .elementor-menu-toggle svg,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle i,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle svg{
    position:relative!important;
    z-index:71!important;

    color:var(--cream)!important;
    fill:var(--cream)!important;
  }


  /* Open/hover state goud */
  .site-header .nav-menu .elementor-menu-toggle.elementor-active,
  .site-header .nav-menu .elementor-menu-toggle:hover,
  .site-header .nav-menu .elementor-menu-toggle:focus,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle.elementor-active,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle:hover,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle:focus{
    border-color:var(--gold)!important;

    background:var(--gold)!important;
    color:var(--bordeaux)!important;
  }


  .site-header .nav-menu .elementor-menu-toggle.elementor-active i,
  .site-header .nav-menu .elementor-menu-toggle.elementor-active svg,
  .site-header .nav-menu .elementor-menu-toggle:hover i,
  .site-header .nav-menu .elementor-menu-toggle:hover svg,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle.elementor-active i,
  .site-header .elementor-widget-nav-menu .elementor-menu-toggle.elementor-active svg{
    color:var(--bordeaux)!important;
    fill:var(--bordeaux)!important;
  }


  /* --------------------------------------------------------------
     MENU ITEMS BLIJVEN GECENTREERD
     -------------------------------------------------------------- */

  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:center!important;

    width:100%!important;
    max-width:760px!important;

    min-height:calc(100dvh - 144px)!important;

    margin:0 auto!important;
    padding:0!important;

    gap:18px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:100%!important;

    margin:0!important;
    padding:0!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:auto!important;
    max-width:100%!important;

    margin:0!important;
    padding:10px 14px!important;

    background:transparent!important;
    color:var(--cream)!important;

    font-family:var(--serif)!important;
    font-size:clamp(38px,8vw,52px)!important;
    font-weight:500!important;
    line-height:1.08!important;

    text-align:center!important;
    white-space:normal!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:hover,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item:focus,
  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item.elementor-item-active{
    background:transparent!important;
    color:var(--gold)!important;
  }
}


/* ======================================================================
   V21 – MOBIEL
   ====================================================================== */

@media(max-width:640px){

  .site-header .nav-menu .elementor-nav-menu--dropdown,
  .site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    padding:
      96px
      18px
      max(24px,env(safe-area-inset-bottom))!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-nav-menu{
    min-height:calc(100dvh - 120px)!important;
    gap:15px!important;
  }


  .site-header
  .nav-menu
  .elementor-nav-menu--dropdown
  .elementor-item{
    font-size:clamp(38px,11vw,48px)!important;
  }
}

/* ======================================================================
   V22 – MOBILE ANCHOR MENU CLOSE SUPPORT
   ----------------------------------------------------------------------
   Het daadwerkelijke sluiten van Elementor na een klik op #over,
   #contact, enz. gebeurt via neel-v22-menu.js.

   Deze CSS zorgt alleen voor een nette overgang tijdens het sluiten.
   ====================================================================== */

@media(max-width:980px){

  .site-header .nav-menu .elementor-nav-menu--dropdown{
    transition:
      opacity .18s ease,
      visibility .18s ease!important;
  }

  body.neel-menu-anchor-closing
  .site-header .nav-menu .elementor-nav-menu--dropdown{
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* =========================================================
   APART DESKTOP / MOBIEL MENU
   ========================================================= */

/* desktop */
.neel-menu-desktop{
  display:block!important;
}

.neel-menu-mobile{
  display:none!important;
}


/* mobiel/tablet */
@media(max-width:980px){

  .neel-menu-desktop{
    display:none!important;
  }

  .neel-menu-mobile{
    display:block!important;
  }

}/* End custom CSS */