.elementor-3943 .elementor-element.elementor-element-f61b564:not(.elementor-motion-effects-element-type-background), .elementor-3943 .elementor-element.elementor-element-f61b564 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://wijngaarddeplack.nl/wp-content/uploads/2022/03/Replace-image-5.png");background-size:cover;}.elementor-3943 .elementor-element.elementor-element-f61b564 > .elementor-background-overlay{background-color:#000000;opacity:0.65;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3943 .elementor-element.elementor-element-f61b564{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:140px 0px 20px 0px;}.elementor-3943 .elementor-element.elementor-element-e0e8bca.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-3943 .elementor-element.elementor-element-8bfdcd3{text-align:center;}.elementor-3943 .elementor-element.elementor-element-8bfdcd3 .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );color:var( --e-global-color-accent );}.elementor-3943 .elementor-element.elementor-element-8d2d1ab > .elementor-widget-container{margin:-12px 0px 0px -40px;padding:0px 0px 0px 0px;}.elementor-3943 .elementor-element.elementor-element-8d2d1ab .breadcrumb{text-align:center;font-size:14px;color:var( --e-global-color-accent );}.elementor-3943 .elementor-element.elementor-element-8d2d1ab .breadcrumb a{color:var( --e-global-color-primary );}.elementor-3943 .elementor-element.elementor-element-8d2d1ab .breadcrumb a:hover{color:var( --e-global-color-secondary );}.elementor-3943 .elementor-element.elementor-element-cd0e369{--spacer-size:0px;}.elementor-3943 .elementor-element.elementor-element-2b94a75{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:60px;--padding-bottom:200px;--padding-left:0px;--padding-right:0px;}.elementor-3943 .elementor-element.elementor-element-3601581{--display:flex;--justify-content:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:40px;--z-index:2;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3943 .elementor-element.elementor-element-9ca92cb{width:var( --container-widget-width, 500px );max-width:500px;--container-widget-width:500px;--container-widget-flex-grow:0;}.elementor-3943 .elementor-element.elementor-element-9ca92cb.elementor-element{--align-self:center;}@media(max-width:767px){.elementor-3943 .elementor-element.elementor-element-3601581{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}}@media(min-width:768px){.elementor-3943 .elementor-element.elementor-element-2b94a75{--content-width:800px;}}/* Start custom CSS for html, class: .elementor-element-0b876c3 */.gform_required_legend {
    display: none;
}

@media screen and (max-width: 600px) {
  .gravity-theme.ui-datepicker {
   max-width: 90%;
  }
}
.gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default {
    background: #59a939 !important;
    border-color: #3bc473;
}/* End custom CSS */
/* Start custom CSS *//* ============================================================
   WIJNGAARD DE PLACK — GP Bookings Form (UNIVERSEEL v2)
   Zet CSS class "plack-booking-form" op de Elementor container.
   Plak in: Customizer > Extra CSS
   ============================================================ */

/* --- ACHTERGROND: crème op de container zelf --- */
.plack-booking-form {
  background-color: #f8f5ef !important;
}
/* Elementor inner container ook */
.plack-booking-form > .e-con-inner,
.plack-booking-form .e-con-inner {
  background-color: #f8f5ef !important;
}

/* --- HEADINGS --- */
.plack-booking-form .elementor-heading-title {
  color: #2a2a2a !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-size: 2.2em !important;
}

/* --- TEKST --- */
.plack-booking-form .elementor-widget-text-editor .elementor-widget-container,
.plack-booking-form .elementor-widget-text-editor p {
  color: #3a3a3a !important;
}
.plack-booking-form .elementor-widget-text-editor a {
  color: #7a7b2e !important;
}
.plack-booking-form .elementor-widget-text-editor a:hover {
  color: #9a9b45 !important;
}

/* --- FORM WRAPPER: witte kaart --- */
.plack-booking-form [id^="gform_wrapper_"] {
  background: #fff !important;
  border: 1px solid #e0ddd4 !important;
  border-radius: 12px !important;
  padding: 32px 36px !important;
  max-width: 680px !important;
  margin: 0 auto !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.06) !important;
}

/* --- LABELS --- */
.plack-booking-form .gfield_label,
.plack-booking-form .gform-field-label,
.plack-booking-form legend.gfield_label {
  color: #2a2a2a !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 1.05em !important;
}
.plack-booking-form .gform-field-label--type-sub {
  color: #6b6560 !important;
  font-family: 'Lato', -apple-system, sans-serif !important;
  font-size: 0.85em !important;
}

/* --- INPUTS --- */
.plack-booking-form .gform_wrapper input[type="text"],
.plack-booking-form .gform_wrapper input[type="email"],
.plack-booking-form .gform_wrapper input[type="tel"],
.plack-booking-form .gform_wrapper input[type="number"],
.plack-booking-form .gform_wrapper textarea,
.plack-booking-form .gform_wrapper select {
  background-color: #faf9f6 !important;
  border: 1px solid #d5d0c7 !important;
  border-radius: 8px !important;
  color: #2a2a2a !important;
  font-family: 'Lato', -apple-system, sans-serif !important;
  padding: 10px 14px !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
}
.plack-booking-form .gform_wrapper input:focus,
.plack-booking-form .gform_wrapper textarea:focus,
.plack-booking-form .gform_wrapper select:focus {
  border-color: #9a9b45 !important;
  box-shadow: 0 0 0 3px rgba(154,155,69,0.15) !important;
  outline: none !important;
}

/* --- TOTAAL --- */
.plack-booking-form .ginput_total {
  background: transparent !important;
  border: none !important;
  color: #7a7b2e !important;
  font-size: 1.3em !important;
  font-weight: 700 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}

/* ==========================================================
   KALENDER
   ========================================================== */
.plack-booking-form .gpb-booking-time-picker {
  background: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 16px !important;
}

/* Nav pijlen (< >) */
.plack-booking-form .gpb-booking-time-picker button[class*="nav"],
.plack-booking-form .gpb-booking-time-picker [class*="nav"] button,
.plack-booking-form .gpb-booking-time-picker [class*="Nav"] button,
.plack-booking-form .gpb-booking-time-picker [class*="caption"] button,
.plack-booking-form .gpb-booking-time-picker > div > div > button,
.plack-booking-form .gpb-booking-time-picker > div > button {
  background: #f4f3ee !important;
  border: 1px solid #d5d0c7 !important;
  border-radius: 8px !important;
  color: #9a9b45 !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  padding: 0 !important;
}
.plack-booking-form .gpb-booking-time-picker button[class*="nav"]:hover,
.plack-booking-form .gpb-booking-time-picker [class*="nav"] button:hover,
.plack-booking-form .gpb-booking-time-picker [class*="Nav"] button:hover,
.plack-booking-form .gpb-booking-time-picker [class*="caption"] button:hover,
.plack-booking-form .gpb-booking-time-picker > div > div > button:hover,
.plack-booking-form .gpb-booking-time-picker > div > button:hover {
  background: #9a9b45 !important;
  color: #fff !important;
  border-color: #9a9b45 !important;
}

/* Nav SVGs */
.plack-booking-form .gpb-booking-time-picker button svg {
  fill: #9a9b45 !important;
  stroke: #9a9b45 !important;
  width: 16px !important;
  height: 16px !important;
}
.plack-booking-form .gpb-booking-time-picker button:hover svg {
  fill: #fff !important;
  stroke: #fff !important;
}

/* Maand/jaar */
.plack-booking-form .gpb-booking-time-picker .rdp-caption_label {
  color: #2a2a2a !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1.2em !important;
  font-weight: 700 !important;
}

/* Kalender dropdowns */
.plack-booking-form .gpb-booking-time-picker select {
  background: #faf9f6 !important;
  color: #2a2a2a !important;
  border: 1px solid #d5d0c7 !important;
  border-radius: 6px !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 600 !important;
}

/* Weekdagen */
.plack-booking-form .gpb-booking-time-picker th {
  color: #7a7b2e !important;
  font-weight: 700 !important;
  font-size: 0.75em !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  padding: 6px 4px !important;
  background: transparent !important;
  border: none !important;
}
.plack-booking-form .gpb-booking-time-picker th span,
.plack-booking-form .gpb-booking-time-picker th abbr {
  display: inline-block !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 4px 6px !important;
  color: #9a9b45 !important;
  font-weight: 700 !important;
  font-size: 0.85em !important;
  text-decoration: none !important;
  min-width: 32px !important;
  text-align: center !important;
}

/* Tabel */
.plack-booking-form .gpb-booking-time-picker table {
  border-collapse: separate !important;
  border-spacing: 4px !important;
  width: 100% !important;
}
.plack-booking-form .gpb-booking-time-picker td {
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* Dag-cellen: ronde cirkels, geen borders */
.plack-booking-form .gpb-booking-time-picker td > button,
.plack-booking-form .gpb-booking-time-picker td > span,
.plack-booking-form .gpb-booking-time-picker td > div {
  color: #9a9589 !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  line-height: 40px !important;
  text-align: center !important;
  font-size: 0.9em !important;
  font-weight: 400 !important;
  transition: all 0.15s !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.plack-booking-form .gpb-booking-time-picker td > button:not(:disabled) {
  font-weight: 700 !important;
  color: #2a2a2a !important;
}
.plack-booking-form .gpb-booking-time-picker td > button:not(:disabled):hover {
  background-color: rgba(154,155,69,0.15) !important;
  color: #7a7b2e !important;
  cursor: pointer !important;
}

/* Vandaag */
.plack-booking-form .gpb-booking-time-picker .rdp-day_today {
  font-weight: 800 !important;
  color: #9a9b45 !important;
}

/* Geselecteerd — breed targeten */
.plack-booking-form .gpb-booking-time-picker .rdp-day_selected,
.plack-booking-form .gpb-booking-time-picker td > button[aria-selected="true"],
.plack-booking-form .gpb-booking-time-picker td > button[aria-pressed="true"],
.plack-booking-form .gpb-booking-time-picker td > button.gpb-day--selected,
.plack-booking-form .gpb-booking-time-picker td > button.selected,
.plack-booking-form .gpb-booking-time-picker td > button.rdp-day_selected,
.plack-booking-form .gpb-booking-time-picker td > button.active,
.plack-booking-form .gpb-booking-time-picker td .gpb-day--selected,
.plack-booking-form .gpb-booking-time-picker .gpb-day--selected,
.plack-booking-form .gpb-booking-time-picker td > button:focus {
  background-color: #9a9b45 !important;
  color: #fff !important;
  font-weight: 700 !important;
  border-radius: 50% !important;
  box-shadow: 0 2px 8px rgba(154,155,69,0.35) !important;
  outline: none !important;
}

/* Uitgeschakeld */
.plack-booking-form .gpb-booking-time-picker td > button:disabled,
.plack-booking-form .gpb-booking-time-picker .rdp-day_disabled,
.plack-booking-form .gpb-booking-time-picker .rdp-day_outside {
  color: #c5c0b8 !important;
  opacity: 0.5 !important;
  cursor: default !important;
}

/* ==========================================================
   TIJDSELECTIE VIEW (na dag klikken)
   ========================================================== */

/* NUKE alle container/wrapper borders in tijdselectie */
.plack-booking-form .gpb-booking-time-picker div,
.plack-booking-form .gpb-booking-time-picker section,
.plack-booking-form .gpb-booking-time-picker fieldset,
.plack-booking-form .gpb-booking-time-picker ul,
.plack-booking-form .gpb-booking-time-picker ol,
.plack-booking-form .gpb-booking-time-picker li {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* "Back to Calendar" — simpele tekst-link */
.plack-booking-form .gpb-booking-time-picker button[class*="back"],
.plack-booking-form .gpb-booking-time-picker button[class*="Back"],
.plack-booking-form .gpb-booking-time-picker a[class*="back"],
.plack-booking-form .gpb-booking-time-picker [class*="back-to"] {
  background: transparent !important;
  border: none !important;
  color: #9a9b45 !important;
  padding: 4px 0 !important;
  font-family: 'Lato', -apple-system, sans-serif !important;
  font-size: 0.9em !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: color 0.2s !important;
}
.plack-booking-form .gpb-booking-time-picker button[class*="back"]:hover,
.plack-booking-form .gpb-booking-time-picker button[class*="Back"]:hover,
.plack-booking-form .gpb-booking-time-picker a[class*="back"]:hover {
  color: #7a7b2e !important;
  text-decoration: underline !important;
}

/* Datum header */
.plack-booking-form .gpb-booking-time-picker [class*="date"],
.plack-booking-form .gpb-booking-time-picker [class*="Date"] {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 700 !important;
  color: #2a2a2a !important;
}

/* "Available Times" heading */
.plack-booking-form .gpb-booking-time-picker h3,
.plack-booking-form .gpb-booking-time-picker h4,
.plack-booking-form .gpb-booking-time-picker [class*="times-header"],
.plack-booking-form .gpb-booking-time-picker [class*="available"] {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  color: #2a2a2a !important;
  font-weight: 700 !important;
}

/* Tijdslot buttons — pill-shape die past om "11:00 - 12:00" */
.plack-booking-form .gpb-booking-time-picker button[class*="time"],
.plack-booking-form .gpb-booking-time-picker [class*="Time"] button,
.plack-booking-form .gpb-booking-time-picker [class*="times"] button,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button,
.plack-booking-form .gpb-booking-time-picker .gpb-time-slot {
  background: transparent !important;
  border: 1.5px solid transparent !important;
  color: #1a1a1a !important;
  border-radius: 24px !important;
  width: auto !important;
  height: auto !important;
  padding: 10px 20px !important;
  font-family: 'Lato', -apple-system, sans-serif !important;
  font-size: 0.9em !important;
  font-weight: 700 !important;
  transition: all 0.15s ease !important;
  cursor: pointer !important;
  text-align: center !important;
  box-shadow: none !important;
  outline: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Hover — lichte groene cirkel */
.plack-booking-form .gpb-booking-time-picker button[class*="time"]:hover,
.plack-booking-form .gpb-booking-time-picker [class*="Time"] button:hover,
.plack-booking-form .gpb-booking-time-picker [class*="times"] button:hover,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button:hover,
.plack-booking-form .gpb-booking-time-picker .gpb-time-slot:hover {
  background: rgba(154,155,69,0.12) !important;
  border-color: transparent !important;
}

/* Geselecteerd / focus / active — volle groene cirkel */
.plack-booking-form .gpb-booking-time-picker button[class*="time"]:focus,
.plack-booking-form .gpb-booking-time-picker button[class*="time"].active,
.plack-booking-form .gpb-booking-time-picker button[class*="time"][aria-selected="true"],
.plack-booking-form .gpb-booking-time-picker button[class*="time"][aria-pressed="true"],
.plack-booking-form .gpb-booking-time-picker [class*="Time"] button:focus,
.plack-booking-form .gpb-booking-time-picker [class*="Time"] button.active,
.plack-booking-form .gpb-booking-time-picker [class*="Time"] button[aria-selected="true"],
.plack-booking-form .gpb-booking-time-picker [class*="times"] button:focus,
.plack-booking-form .gpb-booking-time-picker [class*="times"] button.active,
.plack-booking-form .gpb-booking-time-picker [class*="times"] button[aria-selected="true"],
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button:focus,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button.active,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button.selected,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button.gpb-selected,
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button[aria-selected="true"],
.plack-booking-form .gpb-booking-time-picker [class*="slot"] button[aria-pressed="true"],
.plack-booking-form .gpb-booking-time-picker .gpb-time-slot.gpb-selected {
  background: #9a9b45 !important;
  color: #fff !important;
  border-color: #9a9b45 !important;
  box-shadow: 0 2px 8px rgba(154,155,69,0.25) !important;
}

/* Spots left tekst */
.plack-booking-form .gpb-booking-time-picker [class*="spots"],
.plack-booking-form .gpb-booking-time-picker [class*="Spots"],
.plack-booking-form .gpb-booking-time-picker [class*="availability"] {
  color: #9a9b45 !important;
  font-size: 0.78em !important;
  font-style: italic !important;
  font-weight: 500 !important;
}

/* ==========================================================
   BUTTON & OVERIG
   ========================================================== */
.plack-booking-form .gfield_description {
  color: #8a857a !important;
  font-size: 0.88em !important;
  font-style: italic !important;
}

.plack-booking-form .gform_button,
.plack-booking-form .gform_footer input[type="submit"] {
  background-color: #9a9b45 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 25px !important;
  padding: 14px 44px !important;
  font-family: 'Lato', -apple-system, sans-serif !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s !important;
}
.plack-booking-form .gform_button:hover,
.plack-booking-form .gform_footer input[type="submit"]:hover {
  background-color: #888934 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 15px rgba(154,155,69,0.35) !important;
}

/* Validatie */
.plack-booking-form .gfield_error .gfield_label { color: #c0392b !important; }
.plack-booking-form .gfield_error input,
.plack-booking-form .gfield_error textarea { border-color: #e74c3c !important; }
.plack-booking-form .validation_message { color: #c0392b !important; font-size: 0.85em !important; }
.plack-booking-form .gform_validation_errors {
  background: #fdf2f2 !important;
  border: 1px solid #f5c6cb !important;
  border-radius: 8px !important;
  color: #721c24 !important;
}

/* Bevestiging */
.plack-booking-form .gform_confirmation_message {
  background: #f4f5e6 !important;
  border: 1px solid #d5d6a0 !important;
  border-radius: 10px !important;
  color: #3a3a3a !important;
  padding: 25px !important;
}

/* Gravity theme resets */
.plack-booking-form .gform_wrapper.gravity-theme .gform-body,
.plack-booking-form .gform_wrapper.gravity-theme .gform_fields,
.plack-booking-form .gform_wrapper.gravity-theme .gfield,
.plack-booking-form .gform_wrapper.gravity-theme .ginput_container {
  background: transparent !important;
}

/* Responsive */
@media (max-width: 768px) {
  .plack-booking-form [id^="gform_wrapper_"] {
    padding: 20px 16px !important;
  }
  .plack-booking-form .elementor-heading-title {
    font-size: 1.6em !important;
  }
  .plack-booking-form .gpb-booking-time-picker td > button,
  .plack-booking-form .gpb-booking-time-picker td > span,
  .plack-booking-form .gpb-booking-time-picker td > div {
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
    font-size: 0.82em !important;
  }
  .plack-booking-form .gpb-booking-time-picker table {
    border-spacing: 2px !important;
  }
  .plack-booking-form .gpb-booking-time-picker {
    padding: 10px !important;
  }
}/* End custom CSS */