.elementor-5064 .elementor-element.elementor-element-7905c7f5{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:22px 22px 22px 22px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-5064 .elementor-element.elementor-element-7905c7f5:not(.elementor-motion-effects-element-type-background), .elementor-5064 .elementor-element.elementor-element-7905c7f5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.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-5064 .elementor-element.elementor-element-9f9e537 .elementor-heading-title{font-family:"Anton", Sans-serif;font-size:26px;font-weight:600;text-transform:uppercase;color:#1B3A1E;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-type-html{padding-bottom:0px;font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-button[type="submit"]{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-message{font-family:"Archivo Black", Sans-serif;font-size:12px;font-weight:300;text-transform:uppercase;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6 .elementor-message.elementor-message-success{color:#FF4FA3;}.elementor-5064 .elementor-element.elementor-element-2ba2f9f6{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.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-5064 .elementor-element.elementor-element-6e118dd2{column-gap:0px;text-align:center;font-family:"Inter", Sans-serif;font-size:12.5px;font-weight:400;color:#565955;}/* Start custom CSS for form, class: .elementor-element-2ba2f9f6 *//* ============================================================
   ENQUIRY FORM CARD — Elementor Form  (matches original .enq-card)
   Classes to add in Elementor (Advanced tab → CSS Classes):
     - "enq-card-styled" → on the white CONTAINER that wraps the
       heading + form + "Or email…" text  (your a403455 container)
     - "form-styled"     → already on the Form widget ✔
   Paste in: Appearance → Customize → Additional CSS
   ============================================================ */

/* Optional: load the display fonts if your theme doesn't have them.
   Uncomment the next line (must be the FIRST line of Additional CSS):
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo+Black&family=Inter:wght@400;600;700&display=swap');
*/

.enq-card-styled {
  --enq-green: #1b3a1e;
  --enq-pink-hot: #ff4fa3;
  --enq-pink-mid: #ff77b7;
  --enq-cream: #fdfaf3;
  --enq-ink: #111311;
  --enq-ink-mid: #565955;
  --enq-white: #ffffff;
}

/* ============================================================
   1) THE WHITE CARD (container)
   ============================================================ */
.enq-card-styled {
  background: var(--enq-white) !important;
  border-radius: 22px !important;
  padding: 30px !important;
  box-shadow: 0 24px 60px rgba(15, 36, 18, 0.35) !important;
  color: var(--enq-ink) !important;
}

/* ============================================================
   2) HEADING — "Build Your Enquiry."
   ============================================================ */
.enq-card-styled .elementor-heading-title {
  font-family: 'Anton', sans-serif !important;
  font-size: 26px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  color: var(--enq-green) !important;
  margin: 0 0 6px !important;
}

.enq-card-styled .elementor-heading-title .hot-pink {
  color: var(--enq-pink-hot) !important;
}

/* ============================================================
   3) FIELD LABELS — tiny bold uppercase, letter-spaced
   ============================================================ */
.enq-card-styled .form-styled .elementor-field-label {
  font-family: 'Archivo Black', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--enq-green) !important;
  margin: 14px 0 7px !important;
  font-weight: 400 !important;
}


/* tighten Elementor's default field-group spacing */
.enq-card-styled .form-styled .elementor-field-group {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* ============================================================
   4) INPUTS & SELECTS — cream, rounded, thin green border
   ============================================================ */
.enq-card-styled .form-styled .elementor-field-textual,
.enq-card-styled .form-styled input[type="text"],
.enq-card-styled .form-styled input[type="email"],
.enq-card-styled .form-styled input[type="number"],
.enq-card-styled .form-styled input[type="tel"],
.enq-card-styled .form-styled select,
.enq-card-styled .form-styled textarea {
  width: 100% !important;
  border: 1.5px solid rgba(27, 58, 30, 0.2) !important;
  border-radius: 10px !important;
  padding: 11px 12px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: var(--enq-ink) !important;
  background: var(--enq-cream) !important;
  box-shadow: none !important;
}

.enq-card-styled .form-styled .elementor-field-textual::placeholder {
  color: var(--enq-ink-mid) !important;
  opacity: 0.75 !important;
}

/* focus: pink ring, like the original */
.enq-card-styled .form-styled .elementor-field-textual:focus,
.enq-card-styled .form-styled select:focus {
  outline: 2px solid var(--enq-pink-hot) !important;
  outline-offset: 0 !important;
  border-color: var(--enq-pink-hot) !important;
  box-shadow: none !important;
}

/* select caret icon → green to match */
.enq-card-styled .form-styled .select-caret-down-wrapper svg,
.enq-card-styled .form-styled .select-caret-down-wrapper svg path {
  fill: var(--enq-green) !important;
}

/* ============================================================
   5) SUBMIT BUTTON — pink pill "EMAIL MY ENQUIRY"
   ============================================================ */
.enq-card-styled .form-styled .e-form__buttons {
  margin-top: 20px !important;
}

.enq-card-styled .form-styled .elementor-button[type="submit"] {
  display: block !important;
  width: 100% !important;
  border: none !important;
  cursor: pointer !important;
  background: var(--enq-pink-hot) !important;
  color: var(--enq-white) !important;
  font-family: 'Archivo Black', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 16px !important;
  border-radius: 999px !important;
  text-align: center !important;
  transition: background 0.2s ease !important;
  box-shadow: none !important;
}

.enq-card-styled .form-styled .elementor-button[type="submit"]:hover {
  background: var(--enq-pink-mid) !important;
  transform: none !important;
}

/* ============================================================
   6) "Or email hello@… directly" line under the button
   ============================================================ */
.enq-card-styled .elementor-widget-text-editor p {
  text-align: center !important;
  font-size: 12.5px !important;
  color: var(--enq-ink-mid) !important;
  margin: 10px 0 0 !important;
}

.enq-card-styled .elementor-widget-text-editor a {
  color: var(--enq-pink-hot) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.enq-card-styled .elementor-widget-text-editor a:hover {
  text-decoration: underline !important;
}

/* ============================================================
   7) MOBILE — comfortable padding on small screens
   ============================================================ */
@media (max-width: 560px) {
  .enq-card-styled {
    padding: 22px 18px !important;
  }
}


/* ================================================
   CHIP / PILL SELECTORS — Elementor Radio & Checkbox
   Event Type (radio)    → selected chip = dark green
   Catering Style (checkbox) → selected chips = hot pink
   ================================================ */

/* lay the chips out in a wrapping row */
.enq-card-styled .form-styled .elementor-field-type-radio .elementor-field-subgroup,
.enq-card-styled .form-styled .elementor-field-type-checkbox .elementor-field-subgroup {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

.enq-card-styled .form-styled .elementor-field-option {
  padding: 0 !important;
  margin: 0 !important;
}

/* hide the actual radio/checkbox inputs */
.enq-card-styled .form-styled .elementor-field-type-radio input[type="radio"],
.enq-card-styled .form-styled .elementor-field-type-checkbox input[type="checkbox"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* the chip itself (the label) */
.enq-card-styled .form-styled .elementor-field-type-radio .elementor-field-option label,
.enq-card-styled .form-styled .elementor-field-type-checkbox .elementor-field-option label {
  display: inline-block !important;
  background: var(--enq-cream) !important;
  border: 1.5px solid rgba(27, 58, 30, 0.2) !important;
  color: var(--enq-green) !important;
  border-radius: 999px !important;
  padding: 8px 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin: 0 !important;
  cursor: pointer !important;
  transition: all 0.15s ease !important;
  user-select: none !important;
}

/* hover — slightly stronger border */
.enq-card-styled .form-styled .elementor-field-option label:hover {
  border-color: rgba(27, 58, 30, 0.45) !important;
}

/* SELECTED — Event Type (radio): dark green fill */
.enq-card-styled .form-styled .elementor-field-type-radio input:checked + label {
  background: var(--enq-green) !important;
  border-color: var(--enq-green) !important;
  color: var(--enq-white) !important;
}

/* SELECTED — Catering Style (checkbox): hot pink fill */
.enq-card-styled .form-styled .elementor-field-type-checkbox input:checked + label {
  background: var(--enq-pink-hot) !important;
  border-color: var(--enq-pink-hot) !important;
  color: var(--enq-white) !important;
}

/* keyboard focus ring for accessibility */
.enq-card-styled .form-styled .elementor-field-type-radio input:focus-visible + label,
.enq-card-styled .form-styled .elementor-field-type-checkbox input:focus-visible + label {
  outline: 2px solid var(--enq-pink-hot) !important;
  outline-offset: 2px !important;
}


.enq-card-styled .form-styled .elementor-message {
        margin-top: 1.5rem;
    padding: 14px;
    border: 2px dashed #dcdcdcab;
    border-radius: 22px;
}

/* ============================================================
   ACCEPTANCE / CONSENT CHECKBOX — premium version
   Replaces the previous acceptance block. Fields untouched.
   ============================================================ */

.form-styled .elementor-field-type-acceptance {
    margin-top: 6px !important;
    margin-bottom: 22px !important;
}

/* Reset the flex/gap inherited from the chip subgroups */
.form-styled .elementor-field-type-acceptance .elementor-field-subgroup {
    display: block !important;
    gap: 0 !important;
}

/* ---------- The row ---------- */
.form-styled .elementor-field-type-acceptance .elementor-field-option {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    background: linear-gradient(180deg, #fffdfa 0%, #fdfaf3 100%) !important;
    border: 1px solid rgba(27, 58, 30, 0.12) !important;
    border-radius: 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.form-styled .elementor-field-type-acceptance .elementor-field-option:hover {
    border-color: rgba(255, 79, 163, 0.35) !important;
    box-shadow: 0 4px 14px rgba(255, 79, 163, 0.07) !important;
}

/* Ticked: soft pink wash + accent edge */
.form-styled .elementor-field-type-acceptance
.elementor-field-option:has(.elementor-acceptance-field:checked) {
    background: linear-gradient(180deg, #fff6fa 0%, #ffeef5 100%) !important;
    border-color: rgba(255, 79, 163, 0.42) !important;
    box-shadow: 0 6px 18px rgba(255, 79, 163, 0.10) !important;
}

/* Thin pink bar down the left edge when ticked */
.form-styled .elementor-field-type-acceptance .elementor-field-option::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 3px !important;
    background: #ff4fa3 !important;
    transform: scaleY(0) !important;
    transform-origin: center !important;
    transition: transform .25s cubic-bezier(.4, 0, .2, 1) !important;
}

.form-styled .elementor-field-type-acceptance
.elementor-field-option:has(.elementor-acceptance-field:checked)::before {
    transform: scaleY(1) !important;
}

/* ---------- Hide native box, keep accessible ---------- */
.form-styled .elementor-acceptance-field {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    pointer-events: none !important;
}

/* ---------- Label = the clickable row ---------- */
.form-styled .elementor-field-type-acceptance label {
    position: relative !important;
    display: block !important;
    padding: 16px 18px 16px 50px !important;
    margin: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #6a6d68 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    user-select: none !important;
    transition: color .2s ease !important;
}

.form-styled .elementor-field-type-acceptance label:hover {
    background: none !important;
    border: none !important;
}

.form-styled .elementor-acceptance-field:checked + label {
    color: #1b3a1e !important;
}

/* ---------- The box ---------- */
.form-styled .elementor-field-type-acceptance label::before {
    content: '' !important;
    position: absolute !important;
    left: 18px !important;
    top: 17px !important;
    width: 20px !important;
    height: 20px !important;
    background: #ffffff !important;
    border: 1.5px solid rgba(27, 58, 30, 0.25) !important;
    border-radius: 7px !important;
    box-shadow: inset 0 1px 2px rgba(27, 58, 30, 0.06) !important;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

.form-styled .elementor-field-type-acceptance label:hover::before {
    border-color: rgba(255, 79, 163, 0.5) !important;
}

/* ---------- The tick ---------- */
.form-styled .elementor-field-type-acceptance label::after {
    content: '' !important;
    position: absolute !important;
    left: 25px !important;
    top: 21px !important;
    width: 5px !important;
    height: 10px !important;
    border: solid #ffffff !important;
    border-width: 0 2.5px 2.5px 0 !important;
    border-radius: 1px !important;
    transform: rotate(45deg) scale(.4) !important;
    opacity: 0 !important;
    transition: opacity .18s ease, transform .28s cubic-bezier(.34, 1.56, .64, 1) !important;
}

/* ---------- Checked ---------- */
.form-styled .elementor-acceptance-field:checked + label::before {
    background: #ff4fa3 !important;
    border-color: #ff4fa3 !important;
    box-shadow: 0 3px 8px rgba(255, 79, 163, 0.32) !important;
}

.form-styled .elementor-acceptance-field:checked + label::after {
    opacity: 1 !important;
    transform: rotate(45deg) scale(1) !important;
}

/* ---------- Keyboard focus ---------- */
.form-styled .elementor-acceptance-field:focus-visible + label::before {
    outline: 2px solid #ff4fa3 !important;
    outline-offset: 3px !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 600px) {
    .form-styled .elementor-field-type-acceptance label {
        padding: 14px 15px 14px 46px !important;
        font-size: 12.5px !important;
    }
    .form-styled .elementor-field-type-acceptance label::before {
        left: 15px !important;
        top: 15px !important;
    }
    .form-styled .elementor-field-type-acceptance label::after {
        left: 22px !important;
        top: 19px !important;
    }
}

/* ============================================================
   REQUIRED FIELD INDICATOR
   Elementor tags required groups with .elementor-field-required,
   so the optional Dietary field is excluded automatically.
   ============================================================ */

/* Pink asterisk after the label text */
.enq-card-styled .form-styled .elementor-field-required
> .elementor-field-label::after {
  content: '*' !important;
  margin-left: 4px !important;
  color: var(--enq-pink-hot) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  vertical-align: super !important;
}

/* Elementor sometimes renders its own required mark — hide the duplicate */
.enq-card-styled .form-styled .elementor-field-label .elementor-mark-required,
.enq-card-styled .form-styled .elementor-field-required
> .elementor-field-label > .required {
  display: none !important;
}/* End custom CSS */