.elementor-kit-4{--e-global-color-primary:#171715;--e-global-color-secondary:#B49A61;--e-global-color-text:#4A4945;--e-global-color-accent:#B49A61;--e-global-color-lampaper:#F4F0E7;--e-global-color-lampaperl:#FBF8F1;--e-global-color-laminksoft:#2A2926;--e-global-color-lamline:#DCD7CB;--e-global-color-lammuted:#6B6963;--e-global-color-lamwhite:#FFFFFF;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:700;background-color:#FBF8F1;color:#4A4945;font-family:"Inter", Sans-serif;font-size:16px;line-height:1.6em;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:#B49A61;font-family:"Inter", Sans-serif;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:#171715;border-style:solid;border-width:1px 1px 1px 1px;border-color:#B49A61;border-radius:0px 0px 0px 0px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#B49A61;color:#171715;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:#171715;}.elementor-kit-4 a:hover{color:#B49A61;}.elementor-kit-4 h1{color:#171715;font-family:"Playfair Display", Sans-serif;font-weight:400;line-height:0.98em;}.elementor-kit-4 h2{color:#171715;font-family:"Playfair Display", Sans-serif;font-weight:400;line-height:0.98em;}.elementor-kit-4 h3{color:#171715;font-family:"Playfair Display", Sans-serif;font-weight:400;}.elementor-kit-4 h4{color:#171715;font-family:"Playfair Display", Sans-serif;font-weight:400;}.elementor-kit-4 h5{color:#171715;font-family:"Inter", Sans-serif;font-weight:700;}.elementor-kit-4 h6{color:#B49A61;font-family:"Inter", Sans-serif;font-weight:700;}.elementor-kit-4 img{border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-4 label{color:#171715;font-family:"Inter", Sans-serif;font-size:13px;font-weight:700;}.elementor-kit-4 input:not([type="button"]):not([type="submit"]),.elementor-kit-4 textarea,.elementor-kit-4 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:15.5px;color:#171715;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#DCD7CB;border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1220px;}.e-con{--container-max-width:1220px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:rgba(23,23,21,0.94);--lightbox-ui-color:#FFFFFF;--lightbox-ui-color-hover:#B49A61;--lightbox-text-color:#FFFFFF;}.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 *//* Eetkamer Lamens - globale regels */
:root{--lam-pijl:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 10L10 2M3.6 2H10V8.4' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E")}
html{scroll-behavior:auto!important}
[id]{scroll-margin-top:110px}
h1 em,h2 em,h3 em,.lam-h-em em{font-style:italic;color:#B49A61}
.elementor-location-header h1 em{color:#B49A61}
.lam-hero h1 em,.elementor-widget-heading.lam-h-em em{color:#B49A61}
/* koppen op een telefoon een slag kleiner, zodat ze niet het halve scherm vullen */
@media(max-width:540px){.lam-hero h1{font-size:clamp(2.2rem,9.8vw,3.3rem)!important;line-height:1.02}}
@media(max-width:540px){.lam-ev .lam-ev__titel{font-size:26px!important}.elementor-widget-heading h3{font-size:1.55rem!important;line-height:1.12}}
/* de headerinhoud loopt op dezelfde 1220px-lijn als de blokken eronder;
   de hero zelf blijft full width. De hero is een e-con-full-container, die
   heeft geen .e-con-inner - de wrap moet dus op het directe kind. */
.lam-hero>.e-con{max-width:1220px;width:100%;margin-left:auto;margin-right:auto}
::selection{background:#B49A61;color:#171715}
/* de header staat vast over de hero heen en krijgt bij scrollen een donkere balk,
   zodat de witte menutekst ook op de lichte secties leesbaar blijft. Deze regels
   staan in de kit en niet als custom CSS op de container: daar verloren ze het van
   Elementors eigen containerregels.
   De donkere balk hangt aan onze eigen klasse .lam-scrolled (gezet door een paar
   regels script in de mu-plugin). Elementors eigen .elementor-sticky--effects is
   hier onbruikbaar: omdat de balk altijd position:fixed is, staat die klasse al op
   scrollpositie 0 en bleef de balk dus doorlopend zwart. */
.elementor-location-header .lam-headwrap{position:fixed;top:0;left:0;width:100%;z-index:999;background-color:transparent;transition:background-color .35s ease,box-shadow .35s ease}
.elementor-location-header .lam-headwrap.lam-scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px rgba(255,255,255,.10)}
/* de header staat vast over de hero heen */
.elementor-location-header{position:relative;z-index:999}
.elementor-location-header .e-con,.elementor-location-header .e-con-inner{overflow:visible}
.elementor-nav-menu--dropdown,.elementor-nav-menu .sub-menu{z-index:1000}
/* het mobiele uitklapmenu mag nooit buiten het scherm vallen */
.elementor-nav-menu--dropdown,.elementor-nav-menu__container{max-width:100vw;left:0;right:0}
.lam-maps a{color:inherit;display:inline-flex;align-items:center;gap:8px}
.lam-maps a:hover{opacity:.75}
/* iconen exact centreren */
.elementor-widget-icon .elementor-icon-wrapper{display:flex;align-items:center;justify-content:center;line-height:0}
.elementor-widget-icon .elementor-icon{display:flex;align-items:center;justify-content:center;line-height:0}
.elementor-widget-icon svg,.elementor-widget-icon i{display:block}
.elementor-button .elementor-button-content-wrapper{display:flex;align-items:center;justify-content:center;gap:10px}
.elementor-button .elementor-button-icon svg{display:block;height:1em;width:auto}
/* Elementor zet zijn eigen widget-defaults na deze CSS; herhaalde klasse wint */
.elementor.elementor .elementor-widget-button .elementor-button{transition:transform .25s,background .25s,color .25s,border-color .25s}
.elementor.elementor .elementor-widget-button .elementor-button:hover{transform:translateY(-2px)}
/* hover van de gouden knop: dezelfde kleur, alleen iets ingehouden - zo blijft er
   één goudtint op de site */
.elementor.elementor .elementor-widget-button .elementor-button:hover{filter:brightness(.93)}
/* onderstreepte tekstlink met pijl */
.lam-textlink .elementor-heading-title a{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding-bottom:8px;border-bottom:1px solid currentColor;color:inherit}
.lam-textlink .lam-pijl{transition:transform .25s}
/* Pijltje als mask op een leeg <span>. Het teken ↗ werd op iOS als emoji
   getekend (blauw blokje) en een inline <svg> haalt Elementor uit een
   heading-titel weg; een span blijft wel staan. De kleur volgt currentColor. */
.lam-pijl{display:inline-block;width:12px;height:12px;flex:none;vertical-align:-1px;background-color:currentColor;-webkit-mask:var(--lam-pijl) no-repeat center/contain;mask:var(--lam-pijl) no-repeat center/contain}
.lam-socials .lam-pijl,.lam-maps .lam-pijl{margin-left:4px}
.lam-textlink a:hover .lam-pijl{transform:translate(3px,-3px)}
/* Typografische schaal uit het ontwerp. Elementor zet per widget een vaste
   pixelmaat; die overrulen we hier zodat de koppen op elk scherm meeschalen
   zoals in het goedgekeurde ontwerp. */
.elementor h2{font-size:clamp(3rem,6vw,6rem)!important;letter-spacing:-.045em;line-height:.98}
@media(max-width:540px){.elementor h2{font-size:clamp(2.1rem,9.4vw,3.1rem)!important}}
/* tussenkoppen in lopende tekst (privacyverklaring) blijven bescheiden */
.lam-prose h2{font-size:clamp(1.7rem,2.6vw,2.3rem)!important;line-height:1.15;letter-spacing:-.02em;margin:54px 0 18px}
.lam-prose h2:first-child{margin-top:0}
.lam-prose p,.lam-prose li{line-height:1.75}
.lam-prose ul{padding-left:20px}
/* op het gouden blok is de gouden accentkleur onzichtbaar: daar crème */
.lam-h2-gold em{color:#FBF8F1!important}
.lam-eb-ink .elementor-heading-title,.lam-eb-ink{color:#171715!important;opacity:.7}
/* het openingsstatement: de laatste regel staat in goud en niet vet, en de
   tekstgrootte schaalt mee met het scherm zoals in het ontwerp */
.lam-statement,.lam-statement .elementor-widget-container{font-size:clamp(1.9rem,4vw,4.6rem);line-height:1.04;letter-spacing:-.035em}
.lam-statement strong{font-weight:400!important;color:#B49A61!important}
/* greep uit de kaart */
.lam-dishes,.lam-dishes p{margin:0}
.lam-dishes p{display:grid;grid-template-columns:1fr 1.6fr;gap:24px;padding:17px 0;border-bottom:1px solid rgba(23,23,21,0.16);font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;line-height:1.25;color:#171715}
.lam-dishes p em{font-style:normal;align-self:center;font-family:'Inter',Arial,sans-serif;font-size:.9rem;line-height:1.5;color:rgba(23,23,21,0.72)}
@media(max-width:540px){.lam-dishes p{grid-template-columns:1fr;gap:4px}}
/* knoppen: hoogte en binnenruimte zoals in het ontwerp, met het kleine PDF-label
   erachter (Elementor laat geen HTML in de knoptekst toe) */
.elementor.elementor .elementor-widget-button .elementor-button{min-height:54px;display:inline-flex;align-items:center}
.lam-btn-pdf .elementor-button-content-wrapper{gap:30px}
.lam-btn-pdf .elementor-button-text::after{content:'PDF';opacity:.6;font-size:.65rem;margin-left:30px;letter-spacing:.12em}
/* prijs- en productlijsten */
.lam-list,.lam-list p{margin:0}
.lam-list{border-top:1px solid rgba(23,23,21,0.16)}
.lam-list p{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:14px 0;border-bottom:1px solid rgba(23,23,21,0.16)}
.lam-list p strong{font-weight:400;white-space:nowrap;font-family:'Playfair Display',Georgia,serif;font-size:1.2rem;font-variant-numeric:tabular-nums}
.lam-list-gold{border-top-color:rgba(23,23,21,.3);margin-top:36px}
.lam-list-gold p{border-bottom-color:rgba(23,23,21,.3);padding:13px 0}
.lam-list-gold p strong{font-family:'Inter',Arial,sans-serif;font-size:1rem;font-weight:700}
/* openingstijden en adres */
.lam-open{margin:0}
.lam-open p{margin:0 0 12px;line-height:1.55}
.lam-open p:last-child{margin-bottom:0}
.lam-open p strong{font-weight:400}
.lam-addr p{margin:0;line-height:1.7}
.lam-clink a,.lam-maps a{color:inherit}
.lam-clink a:hover,.lam-maps a:hover{color:#B49A61}
/* galerij */
.lam-gallery{display:grid;grid-template-columns:1.3fr .7fr 1fr;grid-auto-rows:330px;gap:10px}
.lam-gal-item{background-size:cover;background-position:center;overflow:hidden;min-height:0}
.lam-gal-wide{grid-column:span 2}
.lam-gal-tall{grid-row:span 2}
@media(max-width:1024px){.lam-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:260px}}
@media(max-width:540px){.lam-gallery{grid-template-columns:1fr;grid-auto-rows:300px}.lam-gal-wide,.lam-gal-tall{grid-column:auto;grid-row:auto}}
/* blokken die vanzelf verdwijnen zodra het bijbehorende veld leeg is.
   Elementor laat een widget met een leeg dynamisch veld helemaal weg, dus
   de aanwezigheid van de titel/periode bepaalt of het blok er staat. */
.lam-vakantie:not(:has(.lam-vakswitch)){display:none!important}
.lam-vakswitch{display:none!important}
/* het vakantieblok is zo breed als zijn inhoud, met ruimte erboven */
.lam-vakantie{display:inline-flex!important;flex-direction:column;gap:5px;align-self:flex-start;width:auto!important;max-width:100%;margin-top:44px}
.lam-vaklabel{letter-spacing:.13em;text-transform:uppercase}
/* ---- evenementen: getekend door de mu-plugin uit de ACF-repeater ---- */
/* de balk op de homepage */
.lam-evbalk{background:#171715;border-top:1px solid rgba(255,255,255,.12);padding:26px 40px}
.lam-evbalk__wrap{max-width:1220px;margin:0 auto;display:flex;align-items:center;gap:28px}
.lam-evbalk__flag{flex:none;display:inline-block;padding:7px 12px;background:#B49A61;color:#171715;font-family:'Inter',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.lam-evbalk__tekst{flex:1 1 auto;min-width:0}
.lam-evbalk__titel{font-family:'Playfair Display',serif;font-size:30px;font-weight:400;line-height:1.15;color:#fff;margin-bottom:4px}
.lam-evbalk__periode{font-family:'Inter',sans-serif;font-size:12.2px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:#B49A61}
.lam-evbalk__link{flex:none;color:#fff!important;font-family:'Inter',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #B49A61;padding-bottom:6px;white-space:nowrap}
.lam-evbalk__link:hover{color:#B49A61!important}
@media(max-width:767px){.lam-evbalk{padding:26px 20px}.lam-evbalk__wrap{flex-direction:column;align-items:flex-start;gap:16px}.lam-evbalk__titel{font-size:26px}}
/* de lijst op de pagina Evenementen */
.lam-evlijst{display:flex;flex-direction:column;gap:10px;width:100%}
.lam-ev{display:grid;grid-template-columns:42% 58%;align-items:stretch;min-height:420px}
.lam-ev__beeld{overflow:hidden;background:#F4F0E7}
.lam-ev__beeld img{width:100%;height:100%;object-fit:cover;display:block}
.lam-ev__body{background:#F4F0E7;padding:52px;display:flex;flex-direction:column}
.lam-ev--omgekeerd .lam-ev__beeld{order:2}
.lam-ev--omgekeerd .lam-ev__body{order:1}
.lam-ev__periode{font-family:'Inter',sans-serif;font-size:12.2px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.4;color:#B49A61}
.lam-ev .lam-ev__titel{font-family:'Playfair Display',serif;font-size:44px!important;font-weight:400;line-height:1.02;letter-spacing:-.03em;color:#171715;margin:18px 0 20px}
.lam-ev__tekst{font-family:'Inter',sans-serif;font-size:17px;line-height:1.68;color:rgba(23,23,21,0.72)}
.lam-ev__tekst p{margin:0 0 14px}
.lam-ev__tekst p:last-child{margin-bottom:0}
.lam-ev__pdf{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:30px;min-height:54px;padding:18px 24px;background:#171715;color:#fff!important;border:1px solid #171715;font-family:'Inter',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s,background .25s,color .25s,border-color .25s}
.lam-ev__pdf em{font-style:normal;opacity:.6;font-size:.65rem;letter-spacing:.12em}
.lam-ev__pdf:hover{background:#B49A61;border-color:#B49A61;color:#171715!important;transform:translateY(-2px)}
/* geen foto ingevuld: de tekst mag dan de hele breedte hebben */
.lam-ev__beeld:empty{display:none}
.lam-ev:has(.lam-ev__beeld:empty){grid-template-columns:1fr;min-height:0}
@media(max-width:1024px){.lam-ev{grid-template-columns:1fr;min-height:0}.lam-ev__beeld{min-height:260px;order:1!important}.lam-ev__body{padding:34px 28px;order:2!important}.lam-ev .lam-ev__titel{font-size:30px!important}}
/* fotobijschrift */
.lam-caption,.lam-caption .elementor-widget-container{display:inline-block;padding:8px 12px;background-color:rgba(23,23,21,.88)!important;color:#fff;letter-spacing:.12em;text-transform:uppercase;align-self:flex-start}
.lam-caption .elementor-widget-container{padding:0;background-color:transparent!important}
/* footer */
.lam-copy,.lam-copy .elementor-shortcode{color:rgba(255,255,255,0.62);font-family:'Inter',sans-serif;font-size:12.6px;font-weight:400;line-height:1.5}
.lam-footnav a{color:#fff;margin-right:30px;display:inline-block;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:2}
.lam-footnav a:hover{color:#B49A61}
.lam-socials a{color:#fff;margin-right:24px}
.lam-socials a:hover{color:#B49A61}
/* citaten */
.lam-quote{margin:0;padding-left:26px;border-left:1px solid #B49A61;font-style:italic}
/* kolommen stapelen op mobiel (staat hier i.p.v. per element) */
@media(max-width:767px){.e-con.lam-col{flex:0 0 auto!important;width:100%!important;max-width:100%!important}}
/* mobiel: lange woorden netjes afbreken */
@media(max-width:767px){h1,h2,h3{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}}
p a,li a{overflow-wrap:anywhere}
.elementor-field-group{min-width:0}
.elementor-form .elementor-form-fields-wrapper{max-width:100%}
/* Elementor zet op een lijst-op-een-rij eigen marges; die neutraliseren we */
.elementor-widget-container>ul{margin:0}/* End custom CSS */