/* Native WooCommerce account and order-payment surfaces. */
@layer hg-readable-type {
  body.hg-customer-pages-premium-active {
    --hg-customer-canvas: #fffdf8;
    --hg-customer-surface: #ffffff;
    --hg-customer-soft: #f4f8f4;
    --hg-customer-sand: #f7f1e6;
    --hg-customer-ink: #203d32;
    --hg-customer-muted: #617268;
    --hg-customer-green: #285644;
    --hg-customer-green-dark: #173f34;
    --hg-customer-coral: #b7472c;
    --hg-customer-line: #dce6df;
    --hg-customer-shadow: 0 12px 30px rgba(31, 66, 53, 0.07);
    font-family: "Baloo 2", sans-serif !important;
    font-size: 16px !important;
    color: var(--hg-customer-ink) !important;
    background: var(--hg-customer-canvas) !important;
    background-image: none !important;
  }

  /* The shared shell resets the browser's admin-bar offset for storefront flows. */
  body.admin-bar.hg-customer-pages-premium-active.higuppy-site-shell {
    padding-top: var(--wp-admin--admin-bar--height, 32px) !important;
  }

  @media (max-width: 600px) {
    body.admin-bar.hg-customer-pages-premium-active.higuppy-site-shell nav#hgSiteNav.hg-nav {
      top: 0 !important;
    }
  }

  body.hg-customer-pages-premium-active .woocommerce {
    font-family: "Baloo 2", sans-serif !important;
    color: var(--hg-customer-ink) !important;
  }

  body.hg-customer-pages-premium-active :is(h1, h2, h3, h4, h5, h6) {
    color: var(--hg-customer-green-dark) !important;
    -webkit-text-fill-color: currentColor !important;
    font-family: "Baloo 2", sans-serif !important;
  }

  body.hg-customer-pages-premium-active .hg-page-heading-guard {
    border-bottom: 1px solid var(--hg-customer-line) !important;
    background: linear-gradient(135deg, var(--hg-customer-sand), var(--hg-customer-canvas) 74%) !important;
    color: var(--hg-customer-ink) !important;
  }

  body.hg-customer-pages-premium-active .hg-page-heading-guard__eyebrow {
    color: var(--hg-customer-muted) !important;
    letter-spacing: 0.04em !important;
    text-transform: none !important;
  }

  body.hg-customer-pages-premium-active .hg-page-heading-guard h1 {
    color: var(--hg-customer-green-dark) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content,
  body.hg-customer-pages-premium-active.hg-order-pay-premium-active .entry-content {
    width: 100% !important;
    max-width: none !important;
    color: var(--hg-customer-ink) !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce {
    box-sizing: border-box !important;
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: none !important;
    margin: 32px auto 64px !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: grid !important;
    grid-template-columns: minmax(210px, 260px) minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 24px !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation)::before,
  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation)::after {
    display: none !important;
    content: none !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation,
  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content {
    box-sizing: border-box !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 1px solid var(--hg-customer-line) !important;
    border-radius: 18px !important;
    background: var(--hg-customer-surface) !important;
    box-shadow: var(--hg-customer-shadow) !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation {
    align-self: start !important;
    overflow: hidden !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation ul {
    margin: 0 !important;
    padding: 8px !important;
    list-style: none !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li a {
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    min-height: 48px !important;
    padding: 10px 14px !important;
    border: 0 !important;
    border-radius: 11px !important;
    background: transparent !important;
    color: var(--hg-customer-ink) !important;
    -webkit-text-fill-color: currentColor !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    overflow-wrap: anywhere !important;
    transition: background-color 160ms ease, color 160ms ease !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a:is(:hover, :focus-visible) {
    background: var(--hg-customer-green-dark) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:is(:hover, :focus-visible) {
    background: var(--hg-customer-soft) !important;
    color: var(--hg-customer-green-dark) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content {
    padding: clamp(20px, 3vw, 32px) !important;
    overflow-wrap: anywhere !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content h2,
  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content h3 {
    margin-top: 0 !important;
    color: var(--hg-customer-green-dark) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
    color: var(--hg-customer-green) !important;
    -webkit-text-fill-color: currentColor !important;
    text-underline-offset: 3px !important;
    overflow-wrap: anywhere !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover {
    color: var(--hg-customer-coral) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active .woocommerce a:focus-visible {
    outline: 3px solid rgba(40, 86, 68, 0.24) !important;
    outline-offset: 3px !important;
  }

  body.hg-customer-pages-premium-active #customer_login {
    gap: clamp(16px, 2.4vw, 28px) !important;
  }

  body.hg-customer-pages-premium-active #customer_login > .u-column1,
  body.hg-customer-pages-premium-active #customer_login > .u-column2 {
    box-sizing: border-box !important;
    min-width: 0 !important;
    padding: clamp(20px, 3vw, 32px) !important;
    border: 1px solid var(--hg-customer-line) !important;
    border-radius: 18px !important;
    background: var(--hg-customer-surface) !important;
    box-shadow: var(--hg-customer-shadow) !important;
  }

  body.hg-customer-pages-premium-active #customer_login h2 {
    margin: 0 0 18px !important;
    color: var(--hg-customer-green-dark) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    .woocommerce-ResetPassword,
    .lost_reset_password,
    .woocommerce-EditAccountForm,
    .woocommerce-address-fields__field-wrapper
  ) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form .form-row {
    margin-bottom: 16px !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form .form-row label {
    display: block !important;
    margin-bottom: 6px !important;
    color: var(--hg-customer-ink) !important;
    -webkit-text-fill-color: currentColor !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form .required {
    color: var(--hg-customer-coral) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(
    input.input-text,
    input[type="email"],
    input[type="password"],
    input[type="text"],
    input[type="tel"],
    select,
    textarea
  ) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 52px !important;
    padding: 12px 14px !important;
    border: 1px solid #cbd9cf !important;
    border-radius: 11px !important;
    background: var(--hg-customer-surface) !important;
    color: var(--hg-customer-ink) !important;
    -webkit-text-fill-color: currentColor !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    box-shadow: none !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(
    input.input-text,
    input[type="email"],
    input[type="password"],
    input[type="text"],
    input[type="tel"],
    select,
    textarea
  ):focus-visible {
    border-color: var(--hg-customer-green) !important;
    outline: 3px solid rgba(40, 86, 68, 0.2) !important;
    outline-offset: 2px !important;
    box-shadow: none !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(input[type="checkbox"], input[type="radio"]) {
    accent-color: var(--hg-customer-green) !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(
    .woocommerce-Button.button,
    button.button,
    input.button,
    a.button,
    #place_order
  ) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 52px !important;
    padding: 12px 22px !important;
    border: 1px solid var(--hg-customer-green) !important;
    border-radius: 12px !important;
    background: var(--hg-customer-green) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: "Baloo 2", sans-serif !important;
    font-size: 16px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    text-transform: none !important;
    box-shadow: 0 7px 16px rgba(31, 66, 53, 0.12) !important;
    transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account #customer_login .woocommerce-form-register :is(.woocommerce-Button.button, button.button, input.button) {
    border-color: var(--hg-customer-coral) !important;
    background: var(--hg-customer-coral) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(
    .woocommerce-Button.button,
    button.button,
    input.button,
    a.button,
    #place_order
  ):is(:hover, :focus-visible, :active) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    filter: brightness(0.94) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 20px rgba(31, 66, 53, 0.16) !important;
  }

  body.hg-customer-pages-premium-active.woocommerce-account #customer_login .woocommerce-form-register :is(.woocommerce-Button.button, button.button, input.button):is(:hover, :focus-visible, :active) {
    border-color: #98381f !important;
    background: #98381f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  body.hg-customer-pages-premium-active .woocommerce form :is(
    .woocommerce-Button.button,
    button.button,
    input.button,
    a.button,
    #place_order
  ):focus-visible {
    outline: 3px solid rgba(40, 86, 68, 0.24) !important;
    outline-offset: 3px !important;
  }

  body.hg-customer-pages-premium-active .woocommerce .lost_password a,
  body.hg-customer-pages-premium-active .woocommerce .woocommerce-LostPassword a {
    color: var(--hg-customer-green) !important;
    -webkit-text-fill-color: currentColor !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }

  body.hg-customer-pages-premium-active .woocommerce .lost_password a:hover,
  body.hg-customer-pages-premium-active .woocommerce .woocommerce-LostPassword a:hover {
    color: var(--hg-customer-coral) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.hg-customer-pages-premium-active .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
    border: 1px solid var(--hg-customer-line) !important;
    border-left-width: 4px !important;
    border-radius: 12px !important;
    padding: 16px 18px 16px 48px !important;
    color: var(--hg-customer-ink) !important;
    -webkit-text-fill-color: currentColor !important;
    box-shadow: none !important;
  }

  body.hg-customer-pages-premium-active .woocommerce .woocommerce-message {
    border-left-color: var(--hg-customer-green) !important;
    background: var(--hg-customer-soft) !important;
  }

  body.hg-customer-pages-premium-active .woocommerce .woocommerce-info {
    border-left-color: #b77923 !important;
    background: #fbf6e9 !important;
  }

  body.hg-customer-pages-premium-active .woocommerce .woocommerce-error {
    border-left-color: var(--hg-customer-coral) !important;
    background: #fff4ef !important;
  }

  body.hg-customer-pages-premium-active .woocommerce table.shop_table {
    width: 100% !important;
    border-color: var(--hg-customer-line) !important;
    border-radius: 12px !important;
    background: var(--hg-customer-surface) !important;
    color: var(--hg-customer-ink) !important;
  }

  body.hg-customer-pages-premium-active .woocommerce table.shop_table :is(th, td) {
    padding: 12px !important;
    border-color: var(--hg-customer-line) !important;
    color: var(--hg-customer-ink) !important;
    -webkit-text-fill-color: currentColor !important;
    vertical-align: middle !important;
  }

  body.hg-customer-pages-premium-active .woocommerce table.shop_table thead th {
    background: var(--hg-customer-soft) !important;
    color: var(--hg-customer-green-dark) !important;
  }

  body.hg-order-pay-premium-active .woocommerce {
    box-sizing: border-box !important;
    width: min(960px, calc(100% - 40px)) !important;
    max-width: none !important;
    margin: 32px auto 64px !important;
  }

  body.hg-order-pay-premium-active form#order_review {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: clamp(18px, 3vw, 30px) !important;
    border: 1px solid var(--hg-customer-line) !important;
    border-radius: 18px !important;
    background: var(--hg-customer-surface) !important;
    box-shadow: var(--hg-customer-shadow) !important;
  }

  body.hg-order-pay-premium-active form#order_review #payment,
  body.hg-order-pay-premium-active form#order_review .payment_box {
    border-color: var(--hg-customer-line) !important;
    border-radius: 12px !important;
    background: var(--hg-customer-soft) !important;
    color: var(--hg-customer-ink) !important;
  }

  body.hg-order-pay-premium-active form#order_review #payment ul.payment_methods {
    padding: 16px !important;
    border-color: var(--hg-customer-line) !important;
  }

  body.hg-order-pay-premium-active form#order_review #payment .payment_box::before {
    border-bottom-color: var(--hg-customer-soft) !important;
  }

  body.hg-order-pay-premium-active form#order_review #place_order {
    width: 100% !important;
    min-height: 54px !important;
    background: var(--hg-customer-green-dark) !important;
    border-color: var(--hg-customer-green-dark) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  @media (max-width: 820px) {
    body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce {
      width: calc(100% - 32px) !important;
      margin-block: 24px 40px !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) {
      grid-template-columns: minmax(0, 1fr) !important;
      gap: 14px !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation-wrapper {
      grid-column: 1 !important;
      grid-row: 1 !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
      grid-column: 1 !important;
      grid-row: 2 !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation ul {
      display: flex !important;
      flex-flow: row wrap !important;
      gap: 6px !important;
      padding: 8px !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li {
      flex: 1 1 150px !important;
      min-width: 0 !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-navigation li a {
      min-height: 44px !important;
      height: 100% !important;
      padding: 9px 11px !important;
    }

    body.hg-customer-pages-premium-active #customer_login {
      grid-template-columns: minmax(0, 1fr) !important;
    }
  }

  @media (max-width: 520px) {
    body.hg-customer-pages-premium-active.woocommerce-account .entry-content > .woocommerce,
    body.hg-order-pay-premium-active .woocommerce {
      width: calc(100% - 24px) !important;
    }

    body.hg-customer-pages-premium-active #customer_login > .u-column1,
    body.hg-customer-pages-premium-active #customer_login > .u-column2,
    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce-MyAccount-content {
      padding: 18px !important;
    }
  }

  @media (max-width: 600px) {
    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .form-row-first,
    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .form-row-last {
      box-sizing: border-box !important;
      clear: both !important;
      float: none !important;
      width: 100% !important;
      max-width: 100% !important;
      margin-right: 0 !important;
      margin-left: 0 !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .select2-container {
      width: 100% !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .select2-selection--single {
      display: flex !important;
      align-items: center !important;
      box-sizing: border-box !important;
      width: 100% !important;
      height: auto !important;
      min-height: 52px !important;
      padding: 10px 38px 10px 14px !important;
      border: 1px solid #cbd9cf !important;
      border-radius: 11px !important;
      background: var(--hg-customer-surface) !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .select2-selection__rendered {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      padding: 0 !important;
      line-height: 1.35 !important;
      overflow-wrap: anywhere !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .select2-selection__arrow {
      top: 0 !important;
      right: 10px !important;
      height: 100% !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
    }

    body.hg-customer-pages-premium-active.woocommerce-account .woocommerce :is(.woocommerce-address-fields, .woocommerce-EditAccountForm) .select2-selection__arrow b {
      position: static !important;
      margin: 0 !important;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    body.hg-customer-pages-premium-active .woocommerce :is(
      .woocommerce-Button.button, button.button, input.button, a.button,
      .woocommerce-MyAccount-navigation li a
    ) {
      transition-duration: 0.01ms !important;
    }
  }
}
