:root {
  --e2usa-navy: #0a3161;
  --e2usa-deep: #07264c;
  --e2usa-red: #b2191a;
  --e2usa-red-dark: #8f1415;
  --e2usa-sand: #c8b59a;
  --e2usa-gold: #b58438;
  --e2usa-warm: #f7f4ef;
  --e2usa-soft: #fbf9f6;
  --e2usa-line: #e5ded4;
  --e2usa-text: #30343b;
  --e2usa-muted: #626a73;
}

body.e2usa-commerce-page,
body.e2usa-commerce-page button,
body.e2usa-commerce-page input,
body.e2usa-commerce-page select,
body.e2usa-commerce-page textarea {
  font-family: Quicksand, Arial, sans-serif;
}

body.e2usa-commerce-page {
  background: var(--e2usa-soft);
  color: var(--e2usa-text);
}

body.e2usa-commerce-page .entry-header,
body.e2usa-commerce-page .page-header,
body.e2usa-commerce-page main > header {
  display: none !important;
}

body.e2usa-commerce-page .site-main,
body.e2usa-commerce-page .entry-content,
body.e2usa-commerce-page .wp-site-blocks main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.e2usa-commerce-page .entry-content > :not(.alignfull),
body.e2usa-commerce-page .wp-site-blocks main > :not(.alignfull) {
  width: min(1160px, calc(100% - 48px));
  max-width: 1160px;
  margin-right: auto;
  margin-left: auto;
}

.e2usa-commerce-intro {
  display: grid;
  width: min(1160px, calc(100% - 48px));
  margin: 42px auto 34px;
  padding: 38px 42px;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  border: 1px solid rgba(181, 132, 56, 0.22);
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 12%, rgba(181, 132, 56, 0.2), transparent 25%),
    linear-gradient(135deg, #fbf8f2, var(--e2usa-warm));
  box-shadow: 0 18px 46px rgba(10, 49, 97, 0.08);
}

.e2usa-commerce-intro__icon {
  display: grid;
  width: 68px;
  height: 68px;
  place-items: center;
  border-radius: 50%;
  background: var(--e2usa-navy);
  color: #fff;
  box-shadow: 0 10px 22px rgba(10, 49, 97, 0.2);
}

.e2usa-commerce-intro__icon svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

.e2usa-commerce-eyebrow {
  margin: 0 0 8px;
  color: var(--e2usa-red);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.e2usa-commerce-intro h1 {
  margin: 0 0 10px;
  color: var(--e2usa-navy);
  font-size: clamp(32px, 4vw, 50px);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.e2usa-commerce-intro p:last-child {
  max-width: 820px;
  margin: 0;
  color: var(--e2usa-muted);
  font-size: 17px;
  line-height: 1.65;
}

body.e2usa-commerce-page .wc-block-cart,
body.e2usa-commerce-page .wc-block-checkout,
body.e2usa-commerce-page .woocommerce,
body.e2usa-commerce-page .wp-block-woocommerce-cart,
body.e2usa-commerce-page .wp-block-woocommerce-checkout {
  width: min(1160px, calc(100% - 48px));
  max-width: 1160px;
  margin-right: auto;
  margin-left: auto;
}

body.e2usa-commerce-page .wc-block-cart {
  align-items: start;
}

body.e2usa-checkout-page .wp-block-woocommerce-checkout {
  display: block !important;
}

body.e2usa-checkout-page .wp-block-woocommerce-checkout::before {
  content: "Secure checkout  ·  Complete your details with confidence.";
  display: block;
  margin: 42px 0 34px;
  padding: 28px 34px;
  border: 1px solid rgba(181, 132, 56, 0.22);
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 12%, rgba(181, 132, 56, 0.2), transparent 25%),
    linear-gradient(135deg, #fbf8f2, var(--e2usa-warm));
  box-shadow: 0 18px 46px rgba(10, 49, 97, 0.08);
  color: var(--e2usa-navy);
  font-size: clamp(22px, 3vw, 34px);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.2;
}

body.e2usa-checkout-page .wp-block-woocommerce-checkout::after {
  content: "✓  Secure payment    ·    ✓  Clear next steps    ·    ✓  Personal support";
  display: block;
  margin: 28px 0 58px;
  padding: 22px 26px;
  border-radius: 14px;
  background: var(--e2usa-navy);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

body.e2usa-checkout-page .wc-block-checkout {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

body.e2usa-commerce-page .wc-block-cart__main,
body.e2usa-commerce-page .wc-block-cart__sidebar,
body.e2usa-commerce-page .wc-block-checkout__main,
body.e2usa-commerce-page .wc-block-checkout__sidebar,
body.e2usa-commerce-page .woocommerce-MyAccount-navigation,
body.e2usa-commerce-page .woocommerce-MyAccount-content {
  border-radius: 16px;
}

body.e2usa-commerce-page .wc-block-cart__main,
body.e2usa-commerce-page .wc-block-checkout__main,
body.e2usa-commerce-page .woocommerce-MyAccount-content {
  padding: 28px;
  border: 1px solid var(--e2usa-line);
  background: #fff;
  box-shadow: 0 12px 32px rgba(10, 49, 97, 0.06);
}

body.e2usa-commerce-page .wc-block-cart__sidebar,
body.e2usa-commerce-page .wc-block-checkout__sidebar,
body.e2usa-commerce-page .woocommerce-MyAccount-navigation {
  padding: 28px;
  border: 1px solid rgba(10, 49, 97, 0.14);
  background: var(--e2usa-warm);
  box-shadow: 0 12px 32px rgba(10, 49, 97, 0.06);
}

body.e2usa-commerce-page .wc-block-cart-items,
body.e2usa-commerce-page .wc-block-cart-items th,
body.e2usa-commerce-page .wc-block-cart-items td,
body.e2usa-commerce-page .wc-block-components-totals-wrapper,
body.e2usa-commerce-page .wc-block-components-order-summary,
body.e2usa-commerce-page .wc-block-checkout__terms,
body.e2usa-commerce-page .wc-block-checkout__actions {
  border-color: var(--e2usa-line) !important;
}

body.e2usa-commerce-page .wc-block-cart-items__header th,
body.e2usa-commerce-page .wc-block-components-checkout-step__heading,
body.e2usa-commerce-page .wc-block-components-totals-item__label,
body.e2usa-commerce-page .wc-block-components-order-summary__button-text,
body.e2usa-commerce-page .wc-block-components-title,
body.e2usa-commerce-page h2,
body.e2usa-commerce-page h3 {
  color: var(--e2usa-navy);
  font-weight: 700;
}

body.e2usa-commerce-page .wc-block-components-product-name,
body.e2usa-commerce-page .woocommerce a {
  color: var(--e2usa-navy);
  font-weight: 700;
}

body.e2usa-commerce-page .wc-block-cart-item__image,
body.e2usa-commerce-page .wc-block-components-order-summary-item__image {
  display: none !important;
}

body.e2usa-commerce-page table.wc-block-cart-items {
  display: block !important;
  width: 100% !important;
  table-layout: fixed !important;
}

body.e2usa-commerce-page table.wc-block-cart-items thead,
body.e2usa-commerce-page table.wc-block-cart-items tbody {
  display: block !important;
  width: 100% !important;
}

body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header tr {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  column-gap: 24px;
}

body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header-image {
  display: none !important;
}

body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header-product {
  grid-column: 1 !important;
  visibility: visible !important;
}

body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header-total {
  grid-column: 2 !important;
  width: 150px !important;
  text-align: right !important;
}

body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__row {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  column-gap: 24px;
}

body.e2usa-commerce-page .wc-block-cart-items__row .wc-block-cart-item__image {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
}

body.e2usa-commerce-page .wc-block-cart-items__row .wc-block-cart-item__product {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 26px 28px 26px 0 !important;
}

body.e2usa-commerce-page .wc-block-cart-items__row .wc-block-cart-item__total {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 150px !important;
  min-width: 150px !important;
  padding: 26px 0 !important;
  justify-self: stretch;
  text-align: right;
}

body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-cart-item__wrap {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}

body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-components-product-name {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8px !important;
  font-size: 18px;
  line-height: 1.35;
}

body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-components-product-price,
body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-cart-item__prices {
  display: none !important;
}

body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-components-product-details {
  width: 100%;
  max-width: none;
  margin: 0 0 12px;
  padding: 0;
  color: var(--e2usa-muted);
  font-size: 14px;
  line-height: 1.5;
  list-style: none;
}

body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-components-product-details li {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.35em;
  align-items: baseline;
  margin: 0;
}

body.e2usa-commerce-page .wc-block-components-product-metadata,
body.e2usa-commerce-page .wc-block-components-product-price,
body.e2usa-commerce-page .wc-block-components-totals-item__description,
body.e2usa-commerce-page .woocommerce .woocommerce-privacy-policy-text {
  color: var(--e2usa-muted);
}

body.e2usa-commerce-page .wc-block-cart__cross-sells,
body.e2usa-commerce-page .wp-block-woocommerce-cart-cross-sells-block {
  display: none !important;
}

body.e2usa-commerce-page .wc-block-cart__sidebar .wc-block-components-totals-coupon,
body.e2usa-commerce-page .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-coupon-form-block {
  display: none !important;
}

body.e2usa-commerce-page .wc-block-components-quantity-selector {
  border-color: var(--e2usa-line);
  border-radius: 7px;
}

body.e2usa-commerce-page .wc-block-components-button,
body.e2usa-commerce-page .wc-block-cart__submit-button,
body.e2usa-commerce-page .wc-block-components-checkout-place-order-button,
body.e2usa-commerce-page .woocommerce a.button,
body.e2usa-commerce-page .woocommerce button.button,
body.e2usa-commerce-page .woocommerce input.button {
  min-height: 52px;
  padding: 13px 22px !important;
  border: 2px solid var(--e2usa-red) !important;
  border-radius: 7px !important;
  background: var(--e2usa-red) !important;
  color: #fff !important;
  font-size: 14px;
  font-weight: 800 !important;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none !important;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

body.e2usa-commerce-page .wc-block-components-button:hover,
body.e2usa-commerce-page .wc-block-cart__submit-button:hover,
body.e2usa-commerce-page .wc-block-components-checkout-place-order-button:hover,
body.e2usa-commerce-page .woocommerce a.button:hover,
body.e2usa-commerce-page .woocommerce button.button:hover,
body.e2usa-commerce-page .woocommerce input.button:hover {
  border-color: var(--e2usa-red-dark) !important;
  background: var(--e2usa-red-dark) !important;
  transform: translateY(-1px);
}

body.e2usa-commerce-page .wc-block-components-text-input input,
body.e2usa-commerce-page .wc-block-components-combobox .wc-block-components-combobox-control input,
body.e2usa-commerce-page .woocommerce input.input-text,
body.e2usa-commerce-page .woocommerce select,
body.e2usa-commerce-page .woocommerce textarea {
  min-height: 50px;
  border: 1px solid #cfc8bf !important;
  border-radius: 7px !important;
  background: #fff !important;
  color: var(--e2usa-text) !important;
}

body.e2usa-commerce-page .wc-block-components-text-input input:focus,
body.e2usa-commerce-page .wc-block-components-combobox .wc-block-components-combobox-control input:focus,
body.e2usa-commerce-page .woocommerce input.input-text:focus,
body.e2usa-commerce-page .woocommerce select:focus,
body.e2usa-commerce-page .woocommerce textarea:focus {
  border-color: var(--e2usa-navy) !important;
  box-shadow: 0 0 0 3px rgba(10, 49, 97, 0.12) !important;
  outline: none !important;
}

body.e2usa-commerce-page .wc-block-components-notice-banner,
body.e2usa-commerce-page .woocommerce-message,
body.e2usa-commerce-page .woocommerce-info,
body.e2usa-commerce-page .woocommerce-error {
  border: 1px solid var(--e2usa-line);
  border-left: 4px solid var(--e2usa-gold);
  border-radius: 8px;
  background: #fff9ef;
  color: var(--e2usa-text);
}

.e2usa-commerce-trust {
  display: grid;
  width: min(1160px, calc(100% - 48px));
  margin: 28px auto 58px;
  padding: 24px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  border-radius: 14px;
  background: var(--e2usa-navy);
  color: #fff;
}

.e2usa-commerce-trust > div {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 10px;
  align-items: center;
}

.e2usa-commerce-trust span {
  display: grid;
  width: 28px;
  height: 28px;
  grid-row: 1 / span 2;
  place-items: center;
  border-radius: 50%;
  background: var(--e2usa-red);
  font-weight: 900;
}

.e2usa-commerce-trust strong {
  font-size: 14px;
}

.e2usa-commerce-trust small {
  color: #dbe5f0;
  font-size: 12px;
  line-height: 1.45;
}

body.e2usa-commerce-page .woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.e2usa-commerce-page .woocommerce-MyAccount-navigation li + li {
  border-top: 1px solid var(--e2usa-line);
}

body.e2usa-commerce-page .woocommerce-MyAccount-navigation a {
  display: block;
  padding: 13px 4px;
  color: var(--e2usa-navy);
  font-weight: 700;
}

body.e2usa-commerce-page .woocommerce-MyAccount-navigation .is-active a {
  color: var(--e2usa-red);
}

.e2usa-account-welcome {
  margin: 0 0 24px;
  padding: 24px;
  border-left: 4px solid var(--e2usa-gold);
  border-radius: 0 10px 10px 0;
  background: var(--e2usa-warm);
}

.e2usa-account-welcome h2 {
  margin: 0 0 8px;
  font-size: 28px;
}

.e2usa-account-welcome p:last-child {
  margin: 0;
}

body.e2usa-commerce-page .woocommerce-order,
body.e2usa-commerce-page .wc-block-order-confirmation-status,
body.e2usa-commerce-page .wc-block-order-confirmation-summary,
body.e2usa-commerce-page .wc-block-order-confirmation-totals,
body.e2usa-commerce-page .wc-block-order-confirmation-billing-address,
body.e2usa-commerce-page .wc-block-order-confirmation-shipping-address {
  border-radius: 12px;
}

@media (max-width: 900px) {
  body.e2usa-commerce-page .wc-block-cart,
  body.e2usa-commerce-page .wc-block-checkout {
    display: block;
  }

  body.e2usa-commerce-page .wc-block-cart__sidebar,
  body.e2usa-commerce-page .wc-block-checkout__sidebar {
    margin-top: 24px;
  }

  .e2usa-commerce-trust {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body.e2usa-commerce-page .entry-content > :not(.alignfull),
  body.e2usa-commerce-page .wp-site-blocks main > :not(.alignfull),
  body.e2usa-commerce-page .wc-block-cart,
  body.e2usa-commerce-page .wc-block-checkout,
  body.e2usa-commerce-page .woocommerce,
  body.e2usa-commerce-page .wp-block-woocommerce-cart,
  body.e2usa-commerce-page .wp-block-woocommerce-checkout,
  .e2usa-commerce-intro,
  .e2usa-commerce-trust {
    width: calc(100% - 28px);
  }

  .e2usa-commerce-intro {
    margin-top: 24px;
    padding: 28px 22px;
    grid-template-columns: 1fr;
  }

  body.e2usa-checkout-page .wp-block-woocommerce-checkout::before {
    margin-top: 24px;
    padding: 24px 22px;
    font-size: 26px;
  }

  body.e2usa-checkout-page .wp-block-woocommerce-checkout::after {
    content: "✓ Secure payment  ·  ✓ Clear next steps  ·  ✓ Personal support";
    margin-bottom: 40px;
    padding: 20px;
    font-size: 13px;
  }

  .e2usa-commerce-intro__icon {
    width: 56px;
    height: 56px;
  }

  .e2usa-commerce-intro__icon svg {
    width: 34px;
    height: 34px;
  }

  .e2usa-commerce-intro h1 {
    font-size: 36px;
  }

  .e2usa-commerce-intro p:last-child {
    font-size: 16px;
  }

  body.e2usa-commerce-page .wc-block-cart__main,
  body.e2usa-commerce-page .wc-block-cart__sidebar,
  body.e2usa-commerce-page .wc-block-checkout__main,
  body.e2usa-commerce-page .wc-block-checkout__sidebar,
  body.e2usa-commerce-page .woocommerce-MyAccount-navigation,
  body.e2usa-commerce-page .woocommerce-MyAccount-content {
    padding: 20px;
  }

  body.e2usa-commerce-page .wc-block-cart-items__row .wc-block-cart-item__product {
    padding: 22px 16px 22px 0 !important;
  }

  body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__row {
    grid-template-columns: minmax(0, 1fr) 94px !important;
    column-gap: 12px;
  }

  body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header tr {
    grid-template-columns: minmax(0, 1fr) 94px !important;
    column-gap: 12px;
  }

  body.e2usa-commerce-page table.wc-block-cart-items .wc-block-cart-items__header-total {
    width: 94px !important;
  }

  body.e2usa-commerce-page .wc-block-cart-items__row .wc-block-cart-item__total {
    width: 94px !important;
    min-width: 94px !important;
    padding: 22px 0 !important;
  }

  body.e2usa-commerce-page .wc-block-cart-item__product .wc-block-components-product-name {
    font-size: 16px;
  }

  .e2usa-commerce-trust {
    margin-bottom: 40px;
    padding: 20px;
  }
}
