/* Centrale Elementor-stijlen */
body {
  --iag-font-name: var(--e-global-typography-iagsite-font-family, "Montserrat Alternates");
  --iag-font-family: var(--iag-font-name), sans-serif;
  --iag-text-size: max(16px, var(--e-global-typography-iagsite-font-size, 16px));
  --iag-primary: var(--e-global-color-primary, #0071bb);
  --iag-white: var(--e-global-color-880fb8c, #ffffff);
  --iag-dark: var(--e-global-color-iagdark, #001b3d);
  --iag-muted: var(--e-global-color-iagmuted, #526579);
}

body[class*="elementor-kit-"] {
  --e-global-typography-primary-font-family: var(--iag-font-name);
  --e-global-typography-secondary-font-family: var(--iag-font-name);
  --e-global-typography-text-font-family: var(--iag-font-name);
  --e-global-typography-accent-font-family: var(--iag-font-name);
  --e-global-typography-f8d7211-font-family: var(--iag-font-name);
  --e-global-typography-f67088d-font-family: var(--iag-font-name);
  font-family: var(--iag-font-family) !important;
  font-size: var(--iag-text-size);
}

body :is(h1, h2, h3, h4, h5, h6, p, a, button, label, input, select, textarea, table):not(#wpadminbar *) {
  font-family: var(--iag-font-family) !important;
}

.rpress-menu-v2,
#rpress_checkout_wrap.rpress-checkout-v2,
#rpressModal,
#rpressDateTime {
  --rpc-primary: var(--iag-primary) !important;
  --rpc-addbtn-bg: var(--iag-primary) !important;
  --rpc-addbtn-border: var(--iag-primary) !important;
  --rpc-addbtn-color: var(--iag-white) !important;
  --rpc-font-head: var(--iag-font-family) !important;
  --rpc-font-body: var(--iag-font-family) !important;
}

/* Inline componentstijlen */
body #rpress_purchase_form #iag-checkout-more-items,
body .iag-clear-cart-dialog p,
body .iag-clear-cart-actions button,
body > .tata .tata-text,
#rpressModal .iag-product-popup :is(.item-description, .special-instructions-link, .special-instructions) {
  font-size: var(--iag-text-size) !important;
}

body .iag-clear-cart-dialog,
#rpressModal .iag-product-popup .modal__footer {
  background: var(--iag-white) !important;
}

body .iag-clear-cart-cancel {
  background: var(--iag-white);
}

body .iag-clear-cart-confirm {
  color: var(--iag-white);
}

body #rpressModal .rpress-popup-actions .submit-fooditem-button {
  background: var(--iag-primary);
  border-color: var(--iag-primary);
  color: var(--iag-white) !important;
}

/* Mobiele knoptekst en prijs */
@media (max-width: 600px) {
  #rpressModal .iag-product-popup .submit-fooditem-button {
    height: auto !important;
    line-height: 1.4 !important;
  }

  #rpressModal .iag-product-popup :is(.cart-action-text, .cart-item-price) {
    min-width: 0;
    line-height: 1.4 !important;
  }

  #rpressModal .iag-product-popup .cart-item-price {
    position: static !important;
  }
}

@media (max-width: 360px) {
  #rpressModal .iag-product-popup .submit-fooditem-button {
    flex-direction: column;
    gap: 4px !important;
  }
}

/* Keep order cards within the available page width. */
.rp-track-v1 .rp-track-grid > .rp-track-card {
  min-width: 0;
}

.rp-track-v1 .rp-track-order-head {
  flex-wrap: wrap;
}

.rp-track-v1 .rp-track-receipt-to {
  overflow-wrap: anywhere;
}

/* Receipt toggle: consistent interaction at every screen size. */
@media screen {
  .rp-track-v1 .rp-track-order {
    padding: 0;
  }

  .rp-track-v1 #rp-track-receipt-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 56px;
    margin: 0;
    padding: 18px 20px;
    background: var(--iag-white);
    color: var(--iag-dark);
    border: 0;
    border-radius: 15px;
    box-shadow: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .rp-track-v1 #rp-track-receipt-toggle:hover,
  .rp-track-v1 #rp-track-receipt-toggle:active {
    background: #ebf4fa;
    color: var(--iag-dark);
  }

  .rp-track-v1 #rp-track-receipt-toggle:focus {
    background: var(--iag-white);
    color: var(--iag-dark);
    outline: none;
  }

  .rp-track-v1 #rp-track-receipt-toggle:focus-visible {
    outline: 2px solid var(--iag-primary);
    outline-offset: -4px;
    background: #ebf4fa;
  }

  .rp-track-v1 #rp-track-receipt-toggle .rp-track-card-title {
    flex: 1 1 auto;
    color: var(--iag-dark);
  }

  .rp-track-v1 #rp-track-receipt-toggle .rp-track-muted {
    color: var(--iag-muted);
  }

  .rp-track-v1 #rp-track-receipt-toggle .rp-track-order-total {
    display: inline;
    color: var(--iag-dark);
    font-weight: 700;
    white-space: nowrap;
  }

  .rp-track-v1 #rp-track-receipt-toggle .rp-track-chev {
    display: inline-block;
    flex: 0 0 18px;
    color: var(--iag-primary);
    transform: rotate(0deg);
  }

  .rp-track-v1 #rp-track-receipt-toggle[aria-expanded="true"] .rp-track-chev {
    transform: rotate(180deg);
  }

  .rp-track-v1 .rp-track-receipt-to--head {
    display: none;
  }

  .rp-track-v1 .rp-track-receipt-to--foot {
    display: block;
    margin: 12px 0 0;
    color: var(--iag-muted);
  }

  .rp-track-v1 #rp-track-receipt-toggle + .rp-track-order-body {
    padding: 4px 20px 20px;
    border-top: 1px solid #e5eaf0;
  }

  .rp-track-v1 #rp-track-receipt-toggle[aria-expanded="true"] + .rp-track-order-body {
    display: block;
  }

  .rp-track-v1 #rp-track-receipt-toggle[aria-expanded="false"] + .rp-track-order-body {
    display: none;
  }
}


/*
 * ==========================================================
 * BEGIN TOEVOEGING: opmaak van het RestroPress-inlogformulier
 *
 * Alleen body form:is(#rpress_login_form, #rpress_register_form) wordt aangepast.
 * De bestaande Griekse pagina-achtergrond blijft zichtbaar.
 * ==========================================================
 */

/* TOEGEVOEGD: wit inlogvlak met afgeronde hoeken. */
body form:is(#rpress_login_form, #rpress_register_form) {
  box-sizing: border-box;
  width: 100%;
  max-width: 480px;
  margin: 24px auto;
  padding: 36px;
  background: var(--iag-white);
  border: 1px solid #e2eaf0;
  border-radius: 22px;
  box-shadow: 0 12px 36px rgba(0, 27, 61, 0.08);
  color: var(--iag-dark);
  font-family: inherit;
}

/* TOEGEVOEGD: voorspelbare afmetingen binnen het formulier. */
body form:is(#rpress_login_form, #rpress_register_form) *,
body form:is(#rpress_login_form, #rpress_register_form) *::before,
body form:is(#rpress_login_form, #rpress_register_form) *::after {
  box-sizing: border-box;
}

/* TOEGEVOEGD: titel en welkomsttekst. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-hd {
  margin: 0 0 8px;
  color: var(--iag-dark);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
  text-align: left;
}

body form:is(#rpress_login_form, #rpress_register_form) .welcome-text-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 28px;
  color: var(--iag-muted);
  font-size: var(--iag-text-size);
  line-height: 1.5;
}

/* TOEGEVOEGD: vaste afstand tussen de invoervelden. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-username,
body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-password {
  margin: 0 0 20px;
  padding: 0;
}

/* TOEGEVOEGD: duidelijke veldlabels. */
body form:is(#rpress_login_form, #rpress_register_form) label[for="rpress_user_login"],
body form:is(#rpress_login_form, #rpress_register_form) label[for="rpress_user_pass"] {
  display: block;
  margin: 0 0 8px;
  color: var(--iag-dark);
  font-size: var(--iag-text-size);
  font-weight: 600;
  line-height: 1.5;
}

/*
 * TOEGEVOEGD: opmaak op basis van de veldnaam.
 * Het wachtwoordveld behoudt deze opmaak wanneer het zichtbaar is.
 */
body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_login"],
body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_pass"] {
  display: block;
  width: 100%;
  max-width: none;
  min-height: 52px;
  margin: 0;
  padding: 13px 15px;
  border: 1px solid #c6d5e2;
  border-radius: 10px;
  background: var(--iag-white);
  color: var(--iag-dark);
  box-shadow: none;
  font-family: inherit;
  font-size: var(--iag-text-size);
  line-height: 1.5;
}

body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_login"]::placeholder,
body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_pass"]::placeholder {
  color: #647587;
  opacity: 1;
}

/* TOEGEVOEGD: zichtbaar maken welk veld actief is. */
body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_login"]:focus,
body form:is(#rpress_login_form, #rpress_register_form) input[name="rpress_user_pass"]:focus {
  border-color: var(--iag-primary);
  outline: 2px solid var(--iag-primary);
  outline-offset: 2px;
}

/* TOEGEVOEGD: onthouden en wachtwoord vergeten netjes uitlijnen. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-remember {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 16px;
  margin: 4px 0 24px;
  padding: 0;
  font-size: var(--iag-text-size);
  line-height: 1.5;
}

body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-remember > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body form:is(#rpress_login_form, #rpress_register_form) #rememberme {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--iag-primary);
}

body form:is(#rpress_login_form, #rpress_register_form) label[for="rememberme"] {
  margin: 0;
  color: var(--iag-muted);
  font-size: inherit;
  cursor: pointer;
}

body form:is(#rpress_login_form, #rpress_register_form) .rpress-lost-password {
  float: none;
  margin: 0;
}

/* TOEGEVOEGD: herkenbare blauwe links. */
body form:is(#rpress_login_form, #rpress_register_form) a {
  color: #0068ad;
  text-underline-offset: 3px;
}

body form:is(#rpress_login_form, #rpress_register_form) a:hover {
  color: #004d80;
  text-decoration: underline;
}

body form:is(#rpress_login_form, #rpress_register_form) a:focus-visible {
  outline: 2px solid var(--iag-primary);
  outline-offset: 3px;
}

/* TOEGEVOEGD: duidelijke inlogknop over de volle breedte. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-submit {
  margin: 0;
  padding: 0;
}

body form:is(#rpress_login_form, #rpress_register_form) :is(#rpress_login_submit, #rpress-purchase-button) {
  display: block;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 14px 20px;
  border: 1px solid var(--iag-primary);
  border-radius: 999px;
  background: var(--iag-primary);
  color: var(--iag-white);
  box-shadow: none;
  font-family: inherit;
  font-size: var(--iag-text-size);
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  cursor: pointer;
}

body form:is(#rpress_login_form, #rpress_register_form) :is(#rpress_login_submit, #rpress-purchase-button):hover {
  border-color: #005d9b;
  background: #005d9b;
}

body form:is(#rpress_login_form, #rpress_register_form) :is(#rpress_login_submit, #rpress-purchase-button):focus-visible {
  outline: 2px solid var(--iag-dark);
  outline-offset: 3px;
}

/* TOEGEVOEGD: account aanmaken onder een rustige scheidingslijn. */
body form:is(#rpress_login_form, #rpress_register_form) .register-link-wrap {
  margin: 24px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid #e2eaf0;
  color: var(--iag-muted);
  font-size: var(--iag-text-size);
  line-height: 1.7;
  text-align: center;
}

body form:is(#rpress_login_form, #rpress_register_form) .register-link-wrap .reglink {
  display: inline-block;
  font-weight: 600;
}

/*
 * TOEGEVOEGD: opmaak voor het oogje.
 * De knop zelf wordt in de volgende stap via JavaScript toegevoegd.
 */
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-password-wrap {
  position: relative;
  display: block;
}

body form:is(#rpress_login_form, #rpress_register_form) .iag-login-password-wrap input[name="rpress_user_pass"] {
  padding-right: 56px;
}

body form:is(#rpress_login_form, #rpress_register_form) .iag-login-eye-button {
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #0068ad;
  box-shadow: none;
  line-height: 1;
  cursor: pointer;
}

body form:is(#rpress_login_form, #rpress_register_form) .iag-login-eye-button:hover {
  background: #edf5fa;
  color: #004d80;
}

body form:is(#rpress_login_form, #rpress_register_form) .iag-login-eye-button:focus-visible {
  outline: 2px solid var(--iag-primary);
  outline-offset: -3px;
}

body form:is(#rpress_login_form, #rpress_register_form) .iag-login-eye-button svg {
  display: block;
  width: 22px;
  height: 22px;
  pointer-events: none;
}

/* TOEGEVOEGD: compacter wit vlak op kleine schermen. */
@media screen and (max-width: 480px) {
  body form:is(#rpress_login_form, #rpress_register_form) {
    margin: 16px auto;
    padding: 24px 20px;
    border-radius: 16px;
  }

  body form:is(#rpress_login_form, #rpress_register_form) .rpress-login-hd {
    font-size: 28px;
  }
}

/* EINDE TOEVOEGING: opmaak van het RestroPress-inlogformulier. */

/* BEGIN TOEVOEGING: melding en logo binnen de bestaande witte loginkaart. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress_errors.iag-login-message {
  box-sizing: border-box; float: none; position: static;
  width: 100%; max-width: none; margin: 0 0 24px; padding: 14px 16px;
  border: 1px solid #e7c6c6; border-radius: 10px;
  background: #fff5f5; color: #8a2929; box-shadow: none;
  font-family: inherit; font-size: var(--iag-text-size); line-height: 1.6;
  text-align: left; overflow-wrap: anywhere;
}
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-message .rpress_error,
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-message p {
  margin: 0; padding: 0; color: inherit; font: inherit;
  background: transparent; border: 0; box-shadow: none;
}
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-message p + p { margin-top: 8px; }
/* TOEGEVOEGD: logo gecentreerd en zonder vervorming op mobiel, tablet en desktop. */
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-brand {
  display: flex; justify-content: center; margin: 0 0 20px;
}
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-brand img {
  display: block; width: clamp(130px, 35vw, 180px);
  max-width: 100%; height: auto; object-fit: contain;
}
/* EINDE TOEVOEGING: melding en logo binnen de witte loginkaart. */

/* TOEGEVOEGD: herstel vaste mobiele RestroPress-breedtes en padding, alleen voor deze twee formulieren. */
body form:is(#rpress_login_form, #rpress_register_form) {
  width: calc(100% - 24px) !important; max-width: 480px !important;
  margin: 24px auto; padding: 32px;
}
/* TOEGEVOEGD: dezelfde velden en tussenruimte op de registratiepagina. */
body form#rpress_register_form > div > p:not(.register-link-wrap) { margin: 0 0 20px; padding: 0; }
body form#rpress_register_form label {
  display: block; margin: 0 0 8px; color: var(--iag-dark);
  font-size: var(--iag-text-size); font-weight: 600; line-height: 1.5;
}
body form#rpress_register_form input[name="rpress_user_email"],
body form#rpress_register_form input[name="rpress_user_pass2"] {
  display: block; width: 100%; max-width: none; min-height: 52px;
  margin: 0; padding: 13px 15px; border: 1px solid #c6d5e2;
  border-radius: 10px; background: var(--iag-white); color: var(--iag-dark);
  box-shadow: none; font-family: inherit; font-size: var(--iag-text-size); line-height: 1.5;
}
body form#rpress_register_form input[name="rpress_user_pass2"] { padding-right: 56px; }
body form#rpress_register_form input[name="rpress_user_email"]:focus,
body form#rpress_register_form input[name="rpress_user_pass2"]:focus {
  border-color: var(--iag-primary); outline: 2px solid var(--iag-primary); outline-offset: 2px;
}
/* TOEGEVOEGD: bestaande !important-foutstijlen van RestroPress gericht corrigeren. */
body form:is(#rpress_login_form, #rpress_register_form) .rpress_errors.iag-login-message {
  position: static !important; margin: 0 0 24px !important;
  border: 1px solid #e7c6c6 !important; background: #fff5f5 !important;
  color: #8a2929 !important; box-shadow: none !important;
  font-family: inherit !important; line-height: 1.6 !important;
}
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-message p,
body form:is(#rpress_login_form, #rpress_register_form) .iag-login-message .rpress_error { color: inherit !important; margin: 0 !important; }
@media screen and (max-width: 768px) {
  body form:is(#rpress_login_form, #rpress_register_form) { margin: 16px auto; padding: 24px 20px; }
}
/* EINDE TOEVOEGING: gedeelde registratie- en mobiele opmaak. */


/* AANGEPAST: logo alleen op desktop tonen; verbergen in login- en registratiekaart op tablet en mobiel. */
@media screen and (max-width: 1024px) {
  body form:is(#rpress_login_form, #rpress_register_form) .iag-login-brand {
    display: none;
  }
}

/*
 * BEGIN: Mijn gegevens - Its All Greek huisstijl.
 * Alleen het RestroPress-profielformulier.
 */

/* Witte kaart binnen de bestaande paginabreedte. */
body form#rpress_profile_editor_form {
  box-sizing: border-box;
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
  margin: 24px 0 40px;
  padding: 32px;
  background: var(--iag-white);
  border: 1px solid #e2eaf0;
  border-radius: 22px;
  box-shadow: 0 12px 36px rgba(0, 27, 61, 0.08);
  color: var(--iag-dark);
  font-family: inherit;
}

body form#rpress_profile_editor_form *,
body form#rpress_profile_editor_form *::before,
body form#rpress_profile_editor_form *::after {
  box-sizing: border-box;
}

/* Secties met rustige scheidingslijnen. */
body form#rpress_profile_editor_form fieldset {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 24px;
  min-width: 0;
  width: 100%;
  margin: 0 0 28px;
  padding: 0 0 28px;
  border: 0;
  border-bottom: 1px solid #e2eaf0;
  background: transparent;
}

body form#rpress_profile_editor_form legend {
  grid-column: 1 / -1;
  float: none;
  width: 100%;
  max-width: 100%;
  margin: 0 0 20px;
  padding: 0;
  color: var(--iag-dark);
  font-family: inherit;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.35;
}

body form#rpress_profile_editor_form fieldset p {
  float: none;
  min-width: 0;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Naamkeuze en e-mailadres krijgen de volle breedte. */
body form#rpress_profile_editor_form
  #rpress_profile_display_name_wrap,
body form#rpress_profile_editor_form
  #rpress_profile_primary_email_wrap,
body form#rpress_profile_editor_form
  #rpress_profile_emails_wrap,
body form#rpress_profile_editor_form
  .rpress-profile-emails {
  grid-column: 1 / -1;
}

/* Duidelijke veldlabels. */
body form#rpress_profile_editor_form label {
  display: block;
  margin: 0 0 8px;
  color: var(--iag-dark);
  font-family: inherit;
  font-size: var(--iag-text-size);
  font-weight: 600;
  line-height: 1.5;
}

/* Dezelfde invoervelden als bij login en registratie. */
body form#rpress_profile_editor_form input[type="text"],
body form#rpress_profile_editor_form input[type="email"],
body form#rpress_profile_editor_form input[type="password"],
body form#rpress_profile_editor_form select,
body form#rpress_profile_editor_form textarea {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 52px;
  height: auto;
  margin: 0;
  padding: 13px 15px;
  border: 1px solid #c6d5e2;
  border-radius: 10px;
  background-color: var(--iag-white);
  color: var(--iag-dark);
  box-shadow: none;
  font-family: inherit;
  font-size: var(--iag-text-size);
  font-weight: 400;
  line-height: 1.5;
}

body form#rpress_profile_editor_form select {
  padding-right: 36px;
}

/* Zichtbare focus bij toetsenbord- en muisgebruik. */
body form#rpress_profile_editor_form input[type="text"]:focus,
body form#rpress_profile_editor_form input[type="email"]:focus,
body form#rpress_profile_editor_form input[type="password"]:focus,
body form#rpress_profile_editor_form select:focus,
body form#rpress_profile_editor_form textarea:focus {
  border-color: var(--iag-primary);
  outline: 2px solid var(--iag-primary);
  outline-offset: 2px;
}

/* Opslaan zonder extra rand of lege ruimte. */
body form#rpress_profile_editor_form
  fieldset#rpress_profile_submit_fieldset {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
}

body form#rpress_profile_editor_form
  #rpress_profile_editor_submit {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 14px 20px;
  border: 1px solid var(--iag-primary);
  border-radius: 999px;
  background: var(--iag-primary);
  color: var(--iag-white);
  box-shadow: none;
  font-family: inherit;
  font-size: var(--iag-text-size);
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  white-space: normal;
  cursor: pointer;
}

body form#rpress_profile_editor_form
  #rpress_profile_editor_submit:hover {
  border-color: #005d9b;
  background: #005d9b;
}

body form#rpress_profile_editor_form
  #rpress_profile_editor_submit:focus-visible {
  outline: 2px solid var(--iag-dark);
  outline-offset: 3px;
}

/* Links binnen het profiel. */
body form#rpress_profile_editor_form a {
  color: #0068ad;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}

body form#rpress_profile_editor_form a:hover {
  color: #004d80;
  text-decoration: underline;
}

body form#rpress_profile_editor_form a:focus-visible {
  outline: 2px solid var(--iag-primary);
  outline-offset: 3px;
}

/* Mobiel: alle velden onder elkaar. */
@media screen and (max-width: 767px) {
  body form#rpress_profile_editor_form {
    width: 100%;
    max-width: 100%;
    margin: 16px 0 28px;
    padding: 24px 20px;
    border-radius: 16px;
  }

  body form#rpress_profile_editor_form fieldset {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    margin-bottom: 24px;
    padding-bottom: 24px;
  }

  body form#rpress_profile_editor_form legend {
    font-size: 20px;
  }
}

/* Mijn gegevens - formulier van de eigen plugin */

body #rpress_profile_editor_form.iag-profile-form {
    box-sizing: border-box;
    width: 100%;
    margin: 24px 0 40px;
    padding: 32px;
    background: var(--iag-white);
    border: 1px solid #e2eaf0;
    border-radius: 22px;
    box-shadow: 0 12px 36px rgba(0, 27, 61, 0.08);
    color: var(--iag-dark);
}

body #rpress_profile_editor_form.iag-profile-form fieldset {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 24px;
    min-width: 0;
    margin: 0 0 28px;
    padding: 0 0 28px;
    border: 0;
    border-bottom: 1px solid #e2eaf0;
}

body #rpress_profile_editor_form.iag-profile-form legend {
    width: 100%;
    margin-bottom: 20px;
    padding: 0;
    color: var(--iag-dark);
    font-size: 22px;
    font-weight: 700;
}

body #rpress_profile_editor_form.iag-profile-form p {
    min-width: 0;
    margin: 0;
}

body #rpress_profile_editor_form.iag-profile-form label {
    display: block;
    margin-bottom: 8px;
    color: var(--iag-dark);
    font-size: var(--iag-text-size);
    font-weight: 600;
}

body #rpress_profile_editor_form.iag-profile-form label span {
    color: var(--iag-muted);
    font-size: var(--iag-text-size);
    font-weight: 400;
}

body #rpress_profile_editor_form.iag-profile-form input:not([type="hidden"]) {
    box-sizing: border-box;
    width: 100%;
    min-height: 52px;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid #c6d5e2;
    border-radius: 10px;
    background: var(--iag-white);
    color: var(--iag-dark);
    font: inherit;
    font-size: var(--iag-text-size);
}

body #rpress_profile_editor_form.iag-profile-form input[readonly] {
    background: #f3f7fa;
    color: var(--iag-muted);
}

body #rpress_profile_editor_form.iag-profile-form input:focus {
    outline: 3px solid rgba(0, 113, 187, 0.18);
    outline-offset: 2px;
    border-color: var(--iag-primary);
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-wide {
    grid-column: 1 / -1;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-address-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-help {
    color: var(--iag-muted);
    font-size: var(--iag-text-size);
    line-height: 1.6;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-help + .iag-profile-help {
    margin-top: 10px;
}

body #rpress_profile_editor_form.iag-profile-form .is-error {
    color: #b42318;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-actions {
    display: flex;
    justify-content: flex-end;
}

body #rpress_profile_editor_form.iag-profile-form button[type="submit"] {
    min-height: 52px;
    padding: 14px 28px;
    border: 0;
    border-radius: 999px;
    background: var(--iag-primary);
    color: var(--iag-white);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

body #rpress_profile_editor_form.iag-profile-form button[type="submit"]:hover {
    background: #005d9b;
}

body #rpress_profile_editor_form.iag-profile-form button[type="submit"]:focus-visible {
    outline: 3px solid var(--iag-dark);
    outline-offset: 3px;
}

.iag-profile-success {
    padding: 16px 20px;
    border: 1px solid #b7dfc5;
    border-radius: 12px;
    background: #effaf3;
    color: #17653a;
}

@media (max-width: 767px) {
    body #rpress_profile_editor_form.iag-profile-form {
        padding: 24px 20px;
        border-radius: 16px;
    }

    body #rpress_profile_editor_form.iag-profile-form fieldset,
    body #rpress_profile_editor_form.iag-profile-form .iag-profile-address-fields {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    body #rpress_profile_editor_form.iag-profile-form button[type="submit"] {
        width: 100%;
    }
}
/* Kaartje bij het adres op Mijn gegevens */
body #rpress_profile_editor_form.iag-profile-form .iag-profile-map {
    overflow: hidden;
    border: 1px solid #e2eaf0;
    border-radius: 12px;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-map[hidden] {
    display: none;
}

body #rpress_profile_editor_form.iag-profile-form .iag-profile-map iframe {
    display: block;
    width: 100%;
    height: 240px;
    border: 0;
}

@media (max-width: 767px) {
    body #rpress_profile_editor_form.iag-profile-form .iag-profile-map iframe {
        height: 180px;
    }
}
/* EINDE: Mijn gegevens - Its All Greek huisstijl. */

/* Bestel- en accountaanpassingen */
/* Alleen ingelogd */
.alleen-ingelogd,
.bestelgeschiedenis {
  display: none !important;
}

.logged-in .alleen-ingelogd,
.logged-in .bestelgeschiedenis {
  display: block !important;
}

/* Opnieuw bestellen */
#rpressModal:has(.rp-detils-content-view > a.btn) .modal__container {
  background: var(--iag-white) !important;
}

#rpressModal:has(.rp-detils-content-view > a.btn) .modal-body {
  margin: 0 !important;
}

#rpressModal:has(.rp-detils-content-view > a.btn) .modal-footer:empty {
  display: none !important;
}

/* Vervolgknoppen */
#rpressModal .rp-detils-content-view > a.btn {
  display: inline-block !important;
  padding: 12px 20px !important;
  margin: 8px 8px 0 0 !important;
  background: var(--iag-primary) !important;
  color: var(--iag-white) !important;
  border-radius: 25px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

#rpressModal .rp-detils-content-view > a.btn:hover,
#rpressModal .rp-detils-content-view > a.btn:focus-visible {
  background: #005892 !important;
}

/* Popup sluiten */
:where(#rpressModal, #rpressDateTime) .modal__close {
  width: 36px !important;
  height: 36px !important;
  right: 12px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  background: var(--iag-primary) url("/wp-content/themes/hello-theme-child-master/images/popup-close-white.svg") center center / 18px 18px no-repeat !important;
}

:where(#rpressModal, #rpressDateTime) .modal__close:hover,
:where(#rpressModal, #rpressDateTime) .modal__close:focus-visible {
  background: var(--iag-white) url("/wp-content/themes/hello-theme-child-master/images/popup-close-blue.svg") center center / 18px 18px no-repeat !important;
}

/* Betaalmelding */
.rpress-checkout-encrypted-note {
  padding: 20px !important;
}

body.rpress-checkout :is(.rpress-checkout-encrypted-note, .rpress-sbar-note) {
  color: var(--iag-dark) !important;
}

/* Lege winkelwagen */
li.cart_item.empty::before {
  content: "" !important;
  display: block !important;
  width: 160px !important;
  height: 160px !important;
  margin: 15px auto 20px !important;
  background: url("/wp-content/uploads/2026/09/Chefkok.png") center center / contain no-repeat !important;
}

.hr-lines {
  display: none !important;
}

/* Inloggen bij bestellingen */
.iag-account-prompt {
  box-sizing: border-box;
  max-width: 640px;
  margin: 24px auto;
  padding: 24px;
  border-radius: 16px;
  background: var(--iag-white);
  color: var(--iag-dark);
}
.iag-account-prompt p {
  margin: 0 0 16px;
  line-height: 1.5;
}
.iag-account-prompt a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  border-radius: 28px;
  background: var(--iag-primary);
  color: var(--iag-white) !important;
  text-decoration: none;
  font-weight: 600;
}
.iag-account-prompt a:focus-visible {
  outline: 2px solid var(--iag-dark);
  outline-offset: 3px;
}

/* Tekstopmaak */
@media screen {
  body .rpress-alert-error:not(:empty),
  body .iag-account-prompt :is(p, a),
  .cd-dropdown-content li,
  .cd-dropdown-content a,
  .cd-dropdown-content a span,
  .pn-ProductNav_Link,
  .rpress-category-link,
  #rpress-food-search,
  #rpress-food-search::placeholder,
  #rpressdeliveryTab #nav-delivery-tab,
  #rpressdeliveryTab #nav-pickup-tab,
  .rpress_order-address-wrap,
  .rpress_order-address-wrap span,
  .rpress_order-address-wrap a,
  .rpress-menu-v2 .rpress_fooditem_inner .rpress-title-holder .rpress_fooditem_title,
  .rpress-menu-v2 .rpress_fooditem_inner .rpress-title-holder .rpress_fooditem_title .food-title,
  .rpress-price-holder .price,
  .rpress_fooditem_excerpt,
  .rpress_fooditem_excerpt p,
  .rpress-dietary-label,
  .rpress-menu-v2 .menu-category-wrap span,
  .rpress-menu-v2 .rp-soldout-badge,
  .rpress-menu-v2 .rpress_fooditem_tags .fooditem_tag,
  .rpress-menu-v2 span.fooditem_tag,
  .rpress-menu-v2 .pn-ProductNav_Count,
  .rpress-menu-v2 .rpress-qty-stepper .rp-qty-val,
  .rpress-menu-v2 .rpress-cart-addons .addon-item-price,
  .rpress-menu-v2 .rpress_purchase_submit_wrapper a.rpress-not-available,
  .rpress-mobile-cart-icons .rp-mb-quantity,
  .rpress-mobile-cart-icons .rpress-cart-total-item-list span,
  .rpress-mobile-cart-icons .rp-cart-mb-txt,
  .rpress-cart-item-list .rpress-cart-item-title,
  .rpress-cart-item-list .rpress-cart-item-qty,
  .rpress-cart-item-list .rpress-cart-item-price,
  .rpress-cart-item-list .separator,
  .rpress-sidebar-cart-wrap .cart-action-wrap a,
  .rpress-sidebar-cart-wrap .cart-action-wrap span,
  #rpress_login_form .rpress-login-remember,
  #rpress_login_form .rpress-login-remember label,
  #rpress_login_form .rpress-lost-password,
  #rpress_login_form .register-link-wrap,
  #rpress_login_form .reglink,
  #rpress_login_form .iag-login-message,
  #rpress_login_form .rpress_error,
  #rpress_register_form .rpress_error,
  #rpress_profile_editor_form.iag-profile-form label,
  #rpress_profile_editor_form.iag-profile-form label span,
  #rpress_profile_editor_form.iag-profile-form .iag-profile-help,
  #rpress_register_form .register-link-wrap,
  #rpress_register_form .reglink,
  body #rpressDateTime.iag-compact-schedule .rpress-popup-subtext,
  body #rpressDateTime.iag-compact-schedule .delivery-time-text,
  body #rpressDateTime.iag-compact-schedule .iag-schedule-summary-address,
  body #rpressDateTime.iag-compact-schedule summary,
  body #rpressDateTime.iag-compact-schedule .iag-postcode-area-note,
  body #rpressDateTime.iag-compact-schedule label,
  body #rpressDateTime.iag-compact-schedule input,
  body #rpressDateTime.iag-compact-schedule select,
  body #rpressDateTime.iag-compact-schedule .iag-schedule-result,
  body #rpressDateTime.iag-compact-schedule .rpress-editaddress-cancel-btn,
  body #rpressDateTime.iag-compact-schedule .rp-ajax-toggle-text,
  .addon-popup-wrap :is(.rp-min-addon, .rp-max-addon, .rp-addon-required, .rd-option-name),
  #rpressModal :is(.cart-item-price, .cat_price, .addon_qty, .special-instructions-link, textarea.special-instructions),
  .rpress-edit-address-popup :is(label, .rpress-popup-subtext, .rpress-service-closed-message),
  .rpress-edit-address-popup .bg-gray.rpress-edit-address-wrap :is(p, span),
  .rpress-edit-address-popup .modal-footer button:not([aria-label]),
  .addon-popup-wrap#rpressModal .rpress-popup-actions .submit-fooditem-button,
  .ui-timepicker-standard a,
  #rpress_user_history.rpress-order-history :is(.rpress-order-history-eyebrow, .rpress-order-history-count, .rpress-history-card-label, .rpress-status-badge, .rp-infi-load),
  #rpress_user_history.rpress-order-history :is(.rpress-history-meta-item, .rpress-history-total) :is(span, strong),
  #rpress_user_history.rpress-order-history .rpress-history-items :is(span, p),
  #rpress_user_history.rpress-order-history .rpress-history-actions a,
  .user-dashboard-wrapper .rp-detail-label,
  .iag-clear-cart-dialog p,
  .iag-clear-cart-actions button,
  .rp-track-v1 :is(
    .rp-track-print, .rp-track-eyebrow, .rp-track-msg, .rp-track-eta-label, .rp-track-alerts,
    .rp-track-dot, .rp-track-step-label, .rp-track-btn, .rp-track-receipt-to,
    .rp-track-item-line, .rp-track-item-mods, .rp-track-item-note, .rp-track-total-row,
    .rp-track-dp-label, .rp-track-dp-detail, .rp-track-pay-badge
  ),
  .rp-track-v1 .rp-track-cancel > span,
  .rp-track-v1 .rp-track-grand > span:first-child,
  .rp-track-v1 .rp-track-dp-links a,
  body.rpress-checkout #rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap.rpress-checkout-v2 :is(
    label, input.rpress-input, textarea.rpress-input, select, input[type="submit"],
    input[type="number"], input[type="button"], #rpress-discount, #rpress_secure_site_wrapper,
    #rpress_terms_agreement, #rpress-discount-error-wrap, #iag-checkout-more-items,
    #iag-checkout-more-items span, .iag-checkout-tax-label, .iag-checkout-tax-amount,
    #rpress_payment_icons > legend, .rpress-remove-text, .rpress-checkout-header-sub,
    .rpress-checkout-header-secure, .rpress-label, .delivery-time-text, .pickup-time-text,
    .rpress-checkout-login-link, .rpress-login-submit, .rpress-login-lost,
    .rpress-continue-guest, .rpress-contact-logout, .rpress-contact-signed-in,
    .rpress-create-account-label, .rpress-service-tab-label, .rpress-service-tab-sub, .tips-text,
    .tips-subtext, .tip-wrapper a, .rpress-gw-title, .rpress-gw-sub, .rpress-gw-badge,
    .rpress-checkout-encrypted-note, .rpress_errors, .rpress_errors p, .rpress_errors li,
    .rpress-errors-wrap, .rpress-alert-error, .rpress_error, .rpress-field-error,
    .rpress-checkout-error-banner, .rpress-checkout-item-mainline, .rpress-cart-item-title,
    .rpress_checkout_cart_item_title, .rpress_checkout_cart_item_price,
    .rpress_checkout_cart_item_qty, .rpress-checkout-addon-row, .special-instruction-wrapper,
    .rpress_get_subtotal, .rpress_cart_subtotal_amount, .rpress-coupon-applied-text,
    .rpress-coupon-remove, .rpress-coupon-toggle, .rpress-apply-discount,
    .rpress_cart_footer_row th:not(.rpress_cart_total),
    .rpress_cart_footer_row th:not(.rpress_cart_total) .pull-right, .rpress_cart_fee th,
    .rpress_cart_fee th span, .rpress_cart_total, .rpress-mobile-summary-toggle,
    .rpress-msum-total, .rpress-sbar-total-label, .rpress-sbar-button, .rpress-sbar-note
  ),
  body.rpress-checkout #rpress_checkout_wrap.rpress-checkout-v2 legend::before,
  #rpressModal.rpress-order-details-context :is(.rp-detail-label, .rp-addons-ht-wrap, .rpress-status, .rpress-cart-item-qty, .rpress-cart-item-title, .rpress-cart-item-price, .cart-item-quantity-wrap) {
    font-size: var(--iag-text-size) !important;
  }

  #rpressModal.rpress-order-details-context .rp-detail-value {
    font-size: 18px !important;
  }
}

/* Bestelstatus op tablet */
@media screen and (max-width: 820px) {
  .rp-track-v1 :is(.rp-track-card-title, .rp-track-eta-time, .rp-track-order-total) {
    font-size: var(--iag-text-size) !important;
  }
}

/* Bestelstatus op telefoon */
@media screen and (max-width: 600px) {
  .rp-track-v1 .rp-track-steps {
    flex-direction: column;
    gap: 12px;
  }
  .rp-track-v1 .rp-track-step {
    flex: 0 0 auto;
    flex-direction: row;
    min-width: 0;
  }
  .rp-track-v1 .rp-track-step-label {
    text-align: left;
  }
  .rp-track-v1 :is(.rp-track-bar-left, .rp-track-bar-right) {
    display: none;
  }
}

/* Mobiele tekst en inloggen */
@media screen and (max-width: 768px) {
  .rp-track-v1 .rp-track-card-title,
  .addon-popup-wrap#rpressModal h6 {
    font-size: var(--iag-text-size) !important;
  }

  body.rpress-checkout #rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap.rpress-checkout-v2 .rpress-login-footer {
    flex-wrap: wrap !important;
  }

  body.rpress-checkout #rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap.rpress-checkout-v2 .rpress-login-lost {
    white-space: normal !important;
    max-width: 100%;
  }
}

/* Smalle telefoons */
@media screen and (max-width: 360px) {
  #rpressModal.rpress-order-details-context .modal__title {
    flex-wrap: wrap !important;
  }

  .rpress-mobile-cart-icons {
    height: auto !important;
    min-height: 116px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 8px 12px !important;
    box-sizing: border-box !important;
  }

  .rpress-mobile-cart-icons :is(.rp-cart-left-wrap, .rpress-cart-badge, .rpress-total-price-wrap, .rpress-cart-total-item-list, .rp-cart-right-wrap) {
    width: 100% !important;
  }

  .rpress-mobile-cart-icons :is(.rp-cart-left-wrap, .rp-cart-right-wrap) {
    min-width: 0 !important;
  }

  .rpress-mobile-cart-icons :is(.rpress-cart-badge, .rpress-total-price-wrap, .rpress-cart-total-item-list) {
    height: auto !important;
  }

  .rpress-mobile-cart-icons .rp-cart-left-wrap {
    flex: 0 0 auto !important;
    padding: 0 !important;
  }

  .rpress-mobile-cart-icons .rpress-total-price-wrap,
  .rpress-mobile-cart-icons .rpress-cart-total-item-list {
    line-height: 20px !important;
  }

  .rpress-mobile-cart-icons .rp-cart-right-wrap {
    height: 44px !important;
    flex: 0 0 44px !important;
    justify-content: center !important;
    padding: 0 12px !important;
    line-height: 44px !important;
    box-sizing: border-box !important;
  }

  .rpress-mobile-cart-icons .rp-cart-mb-txt {
    line-height: 44px !important;
  }

  .rpress-section .container-actionmenu.cart-has-items {
    bottom: 136px !important;
  }

  body.rpress-checkout #rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap#rpress_checkout_wrap.rpress-checkout-v2 .rpress-mobile-summary-toggle > span:first-child {
    min-width: 0 !important;
    white-space: normal !important;
  }

  body.rpress-checkout #rpress_checkout_wrap.rpress-checkout-v2 .rpress-msum-total,
  body.rpress-checkout #rpress_checkout_wrap.rpress-checkout-v2 .rpress-msum-chevron {
    flex-shrink: 0 !important;
  }
}
