/* Instituto DALC: cart and checkout identity */
body.shemitah-premium-commerce {
  --sh-petroleum: #211729;
  --sh-petroleum-deep: #17111d;
  --sh-teal: #a95022;
  --sh-gold: #df7b27;
  --sh-gold-light: #f1ad58;
  --sh-ivory: #fbf7ef;
  --sh-white: #ffffff;
  --sh-ink: #191515;
  --sh-muted: #6c6259;
  --sh-line: #ded3c4;
  background: var(--sh-ivory) !important;
  color: var(--sh-ink);
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

body.shemitah-premium-commerce,
body.shemitah-premium-commerce * {
  box-sizing: border-box;
}

body.shemitah-premium-commerce a {
  color: var(--sh-petroleum);
}

/* Elementor header used by the current Instituto website */
body.shemitah-premium-commerce header.elementor-location-header > .e-con,
body.shemitah-premium-commerce header.elementor-location-header .elementor-sticky,
body.shemitah-premium-commerce header.elementor-location-header .elementor-sticky__spacer {
  background: var(--sh-petroleum) !important;
  border-bottom: 1px solid rgba(210, 163, 68, 0.45) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .e-con.e-parent {
  min-height: 82px;
  padding-inline: clamp(22px, 4vw, 72px) !important;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container {
  position: relative;
  width: 190px;
  min-width: 190px;
  height: 60px;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] img {
  opacity: 0 !important;
  width: 190px !important;
  height: 60px !important;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::before,
body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::after {
  position: absolute;
  left: 0;
  width: 190px;
  color: var(--sh-gold-light);
  text-align: center;
  text-transform: uppercase;
  pointer-events: none;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::before {
  content: "INSTITUTO";
  top: 8px;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 5px;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::after {
  content: "DALC";
  top: 22px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  font-weight: 500;
  letter-spacing: 3px;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu a,
body.shemitah-premium-commerce header.elementor-location-header .elementor-icon-list-text,
body.shemitah-premium-commerce header.elementor-location-header .elementor-icon-list-icon,
body.shemitah-premium-commerce header.elementor-location-header .elementor-menu-cart__toggle_button,
body.shemitah-premium-commerce header.elementor-location-header .elementor-button-text,
body.shemitah-premium-commerce header.elementor-location-header .elementor-button-icon {
  color: var(--sh-white) !important;
  fill: var(--sh-white) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu a {
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu a:hover,
body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu .elementor-item-active {
  color: var(--sh-gold-light) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-menu-cart__toggle_button {
  min-height: 48px;
  padding: 10px 16px !important;
  border: 1px solid var(--sh-gold) !important;
  border-radius: 3px !important;
  background: rgba(255, 255, 255, 0.04) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon-qty {
  background: var(--sh-gold) !important;
  color: var(--sh-petroleum-deep) !important;
}

/* Page frame */
body.shemitah-premium-commerce .tpc-site-content-inner.edubin-page-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(46px, 6vw, 82px) clamp(22px, 5vw, 76px) 88px !important;
  background: var(--sh-ivory) !important;
}

body.shemitah-premium-commerce #main.site-main {
  width: min(1180px, 100%) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.shemitah-premium-commerce .entry-header,
body.shemitah-premium-commerce .page-header,
body.shemitah-premium-commerce .edubin-page-title-area,
body.shemitah-premium-commerce .edubin-breadcrumb-wrapper {
  display: none !important;
}

body.shemitah-premium-commerce .entry-content,
body.shemitah-premium-commerce .woocommerce {
  width: 100%;
  max-width: none;
}

/* WooCommerce block checkout */
body.shemitah-premium-commerce .wp-block-woocommerce-checkout,
body.shemitah-premium-commerce .wc-block-checkout {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.shemitah-premium-commerce .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 410px) !important;
  gap: clamp(34px, 5vw, 72px) !important;
  align-items: start;
}

body.shemitah-premium-commerce .wc-block-components-main {
  width: 100% !important;
  padding: 0 !important;
}

body.shemitah-premium-commerce .wc-block-components-sidebar {
  position: sticky;
  top: 112px;
  width: 100% !important;
  padding: 26px !important;
  border: 1px solid rgba(12, 44, 54, 0.18) !important;
  border-top: 3px solid var(--sh-gold) !important;
  border-radius: 4px !important;
  background: var(--sh-white) !important;
  box-shadow: 0 18px 45px rgba(7, 31, 38, 0.09);
}

body.shemitah-premium-commerce .wc-block-components-title,
body.shemitah-premium-commerce .wc-block-components-checkout-step__title,
body.shemitah-premium-commerce .wc-block-components-order-summary__title-text,
body.shemitah-premium-commerce .wc-block-components-totals-wrapper h2 {
  color: var(--sh-petroleum) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body.shemitah-premium-commerce .wc-block-components-checkout-step__title {
  margin-bottom: 14px !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
}

body.shemitah-premium-commerce .wc-block-components-checkout-step {
  margin: 0 0 34px !important;
  padding: 0 0 32px !important;
  border-bottom: 1px solid var(--sh-line);
}

body.shemitah-premium-commerce .wc-block-components-checkout-step:last-child {
  border-bottom: 0;
}

body.shemitah-premium-commerce .wc-block-components-checkout-step__container,
body.shemitah-premium-commerce .wc-block-components-checkout-step__content {
  padding-left: 0 !important;
}

body.shemitah-premium-commerce .wc-block-components-text-input input,
body.shemitah-premium-commerce .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
body.shemitah-premium-commerce .wc-block-components-address-form select,
body.shemitah-premium-commerce .input-text,
body.shemitah-premium-commerce select,
body.shemitah-premium-commerce textarea {
  min-height: 54px !important;
  border: 1px solid #aab6b6 !important;
  border-radius: 3px !important;
  background: var(--sh-white) !important;
  color: var(--sh-ink) !important;
  box-shadow: none !important;
}

body.shemitah-premium-commerce .wc-block-components-text-input input:focus,
body.shemitah-premium-commerce .wc-block-components-combobox input:focus,
body.shemitah-premium-commerce .input-text:focus,
body.shemitah-premium-commerce select:focus,
body.shemitah-premium-commerce textarea:focus {
  border-color: var(--sh-gold) !important;
  outline: 2px solid rgba(210, 163, 68, 0.2) !important;
  outline-offset: 0;
}

body.shemitah-premium-commerce .wc-block-components-text-input label,
body.shemitah-premium-commerce .wc-block-components-checkbox__label,
body.shemitah-premium-commerce .wc-block-components-radio-control__label,
body.shemitah-premium-commerce .wc-block-components-address-form label {
  color: var(--sh-ink) !important;
  font-weight: 650 !important;
}

body.shemitah-premium-commerce .wc-block-components-checkbox .wc-block-components-checkbox__input,
body.shemitah-premium-commerce .wc-block-components-radio-control__input {
  accent-color: var(--sh-petroleum);
}

body.shemitah-premium-commerce .wc-block-components-radio-control-accordion-option,
body.shemitah-premium-commerce .wc-block-components-payment-method-accordion {
  overflow: hidden;
  border: 1px solid var(--sh-line) !important;
  border-radius: 4px !important;
  background: var(--sh-white) !important;
}

body.shemitah-premium-commerce .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  box-shadow: inset 3px 0 0 var(--sh-gold) !important;
}

body.shemitah-premium-commerce .wc-block-components-order-summary-item,
body.shemitah-premium-commerce .wc-block-components-totals-wrapper {
  border-color: var(--sh-line) !important;
}

body.shemitah-premium-commerce .wc-block-components-order-summary-item__description {
  color: var(--sh-ink) !important;
}

body.shemitah-premium-commerce .wc-block-components-order-summary-item__image img {
  border-radius: 3px !important;
}

body.shemitah-premium-commerce .wc-block-components-product-price,
body.shemitah-premium-commerce .wc-block-components-totals-item__value {
  color: var(--sh-petroleum) !important;
  font-weight: 750 !important;
}

body.shemitah-premium-commerce .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.shemitah-premium-commerce .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px !important;
  font-weight: 500 !important;
}

body.shemitah-premium-commerce .wc-block-components-button,
body.shemitah-premium-commerce .wp-element-button,
body.shemitah-premium-commerce .button,
body.shemitah-premium-commerce button[type="submit"] {
  min-height: 52px !important;
  padding: 14px 22px !important;
  border: 1px solid var(--sh-gold) !important;
  border-radius: 3px !important;
  background: var(--sh-gold) !important;
  color: var(--sh-petroleum-deep) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

body.shemitah-premium-commerce .wc-block-components-button:hover,
body.shemitah-premium-commerce .wp-element-button:hover,
body.shemitah-premium-commerce .button:hover,
body.shemitah-premium-commerce button[type="submit"]:hover {
  border-color: var(--sh-petroleum) !important;
  background: var(--sh-petroleum) !important;
  color: var(--sh-white) !important;
}

body.shemitah-premium-commerce .wc-block-components-notice-banner,
body.shemitah-premium-commerce .woocommerce-message,
body.shemitah-premium-commerce .woocommerce-info {
  border: 1px solid rgba(47, 106, 104, 0.3) !important;
  border-left: 4px solid var(--sh-teal) !important;
  border-radius: 3px !important;
  background: #edf4f2 !important;
  color: var(--sh-ink) !important;
}

/* Classic and block cart */
body.shemitah-premium-commerce .wp-block-woocommerce-cart,
body.shemitah-premium-commerce .wc-block-cart {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

body.shemitah-premium-commerce table.shop_table {
  overflow: hidden;
  border: 1px solid var(--sh-line) !important;
  border-radius: 4px !important;
  background: var(--sh-white);
}

body.shemitah-premium-commerce table.shop_table th {
  padding: 18px !important;
  background: var(--sh-petroleum) !important;
  color: var(--sh-white) !important;
}

body.shemitah-premium-commerce table.shop_table td {
  padding: 18px !important;
  border-color: var(--sh-line) !important;
}

body.shemitah-premium-commerce .cart_totals {
  padding: 26px !important;
  border: 1px solid var(--sh-line);
  border-top: 3px solid var(--sh-gold);
  border-radius: 4px;
  background: var(--sh-white);
}

body.shemitah-premium-commerce .cart_totals h2 {
  color: var(--sh-petroleum);
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: 0;
}

/* Elementor side cart */
body.shemitah-premium-commerce .elementor-menu-cart__container .elementor-menu-cart__main {
  border-left: 3px solid var(--sh-gold) !important;
  background: var(--sh-white) !important;
}

body.shemitah-premium-commerce .elementor-menu-cart__product-name a,
body.shemitah-premium-commerce .elementor-menu-cart__subtotal {
  color: var(--sh-petroleum) !important;
}

body.shemitah-premium-commerce .elementor-menu-cart__footer-buttons a {
  border-radius: 3px !important;
  background: var(--sh-petroleum) !important;
  color: var(--sh-white) !important;
}

body.shemitah-premium-commerce .elementor-menu-cart__footer-buttons a:last-child {
  background: var(--sh-gold) !important;
  color: var(--sh-petroleum-deep) !important;
}

/* Footer */
body.shemitah-premium-commerce footer.elementor-location-footer {
  border-top: 3px solid var(--sh-gold) !important;
  background: var(--sh-petroleum-deep) !important;
}

body.shemitah-premium-commerce footer.elementor-location-footer .e-con,
body.shemitah-premium-commerce footer.elementor-location-footer .elementor-element {
  background-color: transparent !important;
}

body.shemitah-premium-commerce footer.elementor-location-footer,
body.shemitah-premium-commerce footer.elementor-location-footer a,
body.shemitah-premium-commerce footer.elementor-location-footer p,
body.shemitah-premium-commerce footer.elementor-location-footer span,
body.shemitah-premium-commerce footer.elementor-location-footer h1,
body.shemitah-premium-commerce footer.elementor-location-footer h2,
body.shemitah-premium-commerce footer.elementor-location-footer h3,
body.shemitah-premium-commerce footer.elementor-location-footer h4 {
  color: var(--sh-white) !important;
}

@media (max-width: 1024px) {
  body.shemitah-premium-commerce header.elementor-location-header .e-con.e-parent {
    min-height: 72px;
    padding-inline: 20px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-sidebar-layout {
    grid-template-columns: minmax(0, 1fr) minmax(310px, 360px) !important;
    gap: 30px !important;
  }

  body.shemitah-premium-commerce .tpc-site-content-inner.edubin-page-container {
    padding-inline: 28px !important;
  }
}

@media (max-width: 782px) {
  body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container,
  body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] img {
    width: 150px !important;
    min-width: 150px;
  }

  body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::before,
  body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::after {
    width: 150px;
  }

  body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::after {
    font-size: 21px;
  }

  body.shemitah-premium-commerce .tpc-site-content-inner.edubin-page-container {
    padding: 34px 18px 60px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-sidebar-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 30px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-sidebar {
    position: static;
    width: 100% !important;
    padding: 20px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-checkout-step__title {
    font-size: 21px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-checkout-step {
    margin-bottom: 26px !important;
    padding-bottom: 26px !important;
  }

  body.shemitah-premium-commerce .wc-block-components-address-form__address_1,
  body.shemitah-premium-commerce .wc-block-components-address-form__city,
  body.shemitah-premium-commerce .wc-block-components-address-form__state,
  body.shemitah-premium-commerce .wc-block-components-address-form__postcode,
  body.shemitah-premium-commerce .wc-block-components-address-form__phone {
    grid-column: 1 / -1 !important;
  }

  body.shemitah-premium-commerce .wc-block-components-button,
  body.shemitah-premium-commerce .wp-element-button,
  body.shemitah-premium-commerce .button,
  body.shemitah-premium-commerce button[type="submit"] {
    width: 100% !important;
  }
}

/* Keep the real WooCommerce flow visually aligned with the storefront. */
body.shemitah-premium-commerce header.elementor-location-header > .e-con,
body.shemitah-premium-commerce header.elementor-location-header .elementor-sticky,
body.shemitah-premium-commerce header.elementor-location-header .elementor-sticky__spacer {
  border-bottom: 1px solid var(--sh-line) !important;
  background: #fff !important;
  box-shadow: 0 4px 18px rgba(42, 25, 20, 0.05);
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::before {
  color: #a95022;
}

body.shemitah-premium-commerce header.elementor-location-header [data-id="61c18d59"] .elementor-widget-container::after {
  color: var(--sh-petroleum);
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu {
  padding: 0 8px !important;
  border-radius: 5px;
  background: var(--sh-petroleum) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-nav-menu--main .elementor-item {
  color: #fff !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-icon-list-text,
body.shemitah-premium-commerce header.elementor-location-header .elementor-icon-list-icon {
  color: var(--sh-petroleum) !important;
  fill: var(--sh-petroleum) !important;
}

body.shemitah-premium-commerce header.elementor-location-header .elementor-menu-cart__toggle_button {
  border-color: var(--sh-line) !important;
  background: #fff !important;
  color: var(--sh-petroleum) !important;
  fill: var(--sh-petroleum) !important;
}
