/* ========================================================================
   ABCXYZ Full-Site Visual Polish v1.36.2
   Final design layer: one visual language across Home, content, articles,
   shop, cart, checkout, empty/result states, mobile menu and app dock.
   Loaded last. Presentation only; no commerce/business logic changes.
   ======================================================================== */

html.abcxyz-shell-v2,
body.abcxyz-shell-v2{
  --abc-v135-gutter:clamp(20px,2vw,34px);
  --abc-v135-radius-xl:28px;
  --abc-v135-radius-lg:22px;
  --abc-v135-radius-md:16px;
  --abc-v135-surface:#fff;
  --abc-v135-soft:#f7fafc;
  --abc-v135-line:rgba(18,67,96,.11);
  --abc-v135-ink:#143d57;
  --abc-v135-muted:#667f8f;
  --abc-v135-accent:#117fa8;
  --abc-v135-accent-deep:#154f78;
  --abc-v135-shadow:0 16px 46px rgba(17,63,91,.075);
  --abc-v135-shadow-soft:0 8px 24px rgba(17,63,91,.045);
}

body.abcxyz-v135-polish{
  background:
    radial-gradient(circle at 12% 0%,rgba(70,165,203,.06),transparent 30rem),
    linear-gradient(180deg,#f7fafc 0,#f2f7fa 48%,#f4f8fa 100%)!important;
}

/* One predictable page rhythm. */
body.abcxyz-v135-polish .abcxyz-shell-root{padding-bottom:clamp(24px,3vw,46px)!important}
body.abcxyz-v135-polish .section-ptb{padding-block:clamp(16px,2vw,28px)!important}
body.abcxyz-v135-polish :where(.abcxyz-shell-surface,.abcxyz-cart-portal){scroll-margin-top:94px}

/* Desktop header: compact but premium. */
@media (min-width:901px){
  body.abcxyz-v135-polish :where(.header-bottom-area,#mainHeader){
    min-height:96px!important;background:rgba(255,255,255,.96)!important;
    border-bottom:1px solid rgba(18,67,96,.07)!important;
    box-shadow:0 4px 18px rgba(17,63,91,.025)!important;
  }
  body.abcxyz-v135-polish :where(.header-bottom-area,#mainHeader) a{font-weight:700!important}
  body.abcxyz-v135-polish .breadcrumb-area{padding-block:28px 24px!important}
  body.abcxyz-v135-polish .breadcrumb-area h1,
  body.abcxyz-v135-polish .breadcrumb-area h2{font-size:clamp(2rem,2.4vw,2.65rem)!important;line-height:1.35!important}
}

/* ---------------------------------------------------------------------
   HOME — true app canvas, no nested white frame.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish.abcxyz-appmode-home :where(.abcxyz-home-shell-host,.abcxyz-home-hero-host,.abcxyz-home-canvas,.abcxyz-home-structural-host){
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-home :where(.abcxyz-home-shell-host,.abcxyz-home-hero-host,.abcxyz-home-canvas) > :where(.container,.container-fluid,.row,[class*="col-"]){
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-home #english11000-home-hero{
  margin-block:10px 22px!important;border:1px solid rgba(18,67,96,.11)!important;
  box-shadow:0 18px 50px rgba(17,63,91,.07)!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-home #english11000-home-hero .e11-grid{
  max-width:none!important;width:100%!important;
}

/* ---------------------------------------------------------------------
   ARTICLE INDEX — consistent cards, compact list, polished pagination.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish.abcxyz-article-index .category-list,
body.abcxyz-v135-polish.abcxyz-article-index .content-category{
  background:transparent!important;border:0!important;box-shadow:none!important;
  padding:0!important;
}
body.abcxyz-v135-polish.abcxyz-article-index .category-list > h1,
body.abcxyz-v135-polish.abcxyz-article-index .category-list > h2,
body.abcxyz-v135-polish.abcxyz-article-index .content-category > h1,
body.abcxyz-v135-polish.abcxyz-article-index .content-category > h2{
  margin:0 0 14px!important;padding-inline:4px!important;color:var(--abc-v135-ink)!important;
}
body.abcxyz-v135-polish .abcxyz-content-card{
  margin:0 0 11px!important;background:transparent!important;border:0!important;
}
body.abcxyz-v135-polish .abcxyz-content-card__cell{padding:0!important;border:0!important}
body.abcxyz-v135-polish .abcxyz-content-card__link{
  min-height:104px!important;padding:15px 16px!important;border:1px solid var(--abc-v135-line)!important;
  border-radius:20px!important;background:rgba(255,255,255,.97)!important;box-shadow:var(--abc-v135-shadow-soft)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.abcxyz-v135-polish .abcxyz-content-card__link:hover{
  transform:translateY(-2px);border-color:rgba(17,127,168,.22)!important;box-shadow:0 12px 32px rgba(17,63,91,.075)!important;
}
body.abcxyz-v135-polish .abcxyz-content-card__title{font-weight:850!important;line-height:1.7!important;color:#173d55!important}
body.abcxyz-v135-polish .abcxyz-content-card__kicker{font-size:12px!important;color:#718795!important}
body.abcxyz-v135-polish .abcxyz-content-card__icon{border-radius:15px!important;background:#edf8fb!important}
body.abcxyz-v135-polish .abcxyz-pagination,
body.abcxyz-v135-polish .abcxyz-app-pagination{margin:18px auto 4px!important}

/* ---------------------------------------------------------------------
   ARTICLE READING — modern reading screen, not a huge document card.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface{
  width:min(920px,var(--abc-surface-width))!important;max-width:920px!important;
  border:1px solid var(--abc-v135-line)!important;background:rgba(255,255,255,.985)!important;
  box-shadow:0 14px 42px rgba(17,63,91,.05)!important;
}
body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface :where(p,li){
  color:#263f50!important;font-weight:480!important;letter-spacing:0!important;
}
body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface :where(h1,h2,h3){color:#143d57!important}

/* ---------------------------------------------------------------------
   SHOP ROOT — deterministic product grid; no floats/orphaned product cards.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product){
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) > :where(.grid,.row),
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.product_list,.products){
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;
  width:100%!important;margin:0!important;padding:0!important;align-items:stretch!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.block_product,[class*="col-"]){
  float:none!important;clear:none!important;position:relative!important;inset:auto!important;transform:none!important;
  width:auto!important;max-width:none!important;min-width:0!important;height:100%!important;margin:0!important;padding:0!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.product,.ee-card){
  width:100%!important;height:100%!important;min-height:100%!important;margin:0!important;padding:18px!important;
  display:flex!important;flex-direction:column!important;border:1px solid var(--abc-v135-line)!important;
  border-radius:22px!important;background:#fff!important;box-shadow:var(--abc-v135-shadow-soft)!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.name,.name a,.product_name,.product_name a){
  color:#173d55!important;font-weight:900!important;line-height:1.65!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) img{
  display:block!important;margin-inline:auto!important;border-radius:15px!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.buttons,.button_buy,.buy_link,.product-buttons){
  margin-top:auto!important;
}

/* ---------------------------------------------------------------------
   CART — keep showcase layout, remove duplicate legacy/trust fragments.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish:not(.abcxyz-appmode-cart) .abc-cart-mobile-dock{display:none!important}
body.abcxyz-v135-polish.abcxyz-appmode-cart .abcxyz-cart-legacy-trust-hidden,
body.abcxyz-v135-polish.abcxyz-appmode-cart .abcxyz-desktop-cart-trust,
body.abcxyz-v135-polish.abcxyz-appmode-cart .abcxyz-payment-trust-duplicate{display:none!important}
body.abcxyz-v135-polish.abcxyz-appmode-cart .abc-cart-showcase__layout{gap:18px!important}
body.abcxyz-v135-polish.abcxyz-appmode-cart .abc-cart-product,
body.abcxyz-v135-polish.abcxyz-appmode-cart .abc-cart-summary{border-color:var(--abc-v135-line)!important;box-shadow:var(--abc-v135-shadow-soft)!important}

/* Empty cart: one intentional state, desktop and mobile. */
body.abcxyz-v135-polish.abcxyz-empty-cart-page :where(.abcxyz-desktop-cart-hero,.abcxyz-desktop-cart-trust,.abcxyz-current-total-v3,.abcxyz-current-total-desktop){display:none!important}
body.abcxyz-v135-polish.abcxyz-empty-cart-page .abcxyz-empty-cart{
  width:min(760px,100%)!important;margin:clamp(18px,3vw,42px) auto!important;padding:clamp(24px,4vw,42px)!important;
  border:1px solid var(--abc-v135-line)!important;border-radius:28px!important;background:#fff!important;box-shadow:var(--abc-v135-shadow)!important;
  text-align:center!important;
}
body.abcxyz-v135-polish.abcxyz-empty-cart-page .abcxyz-empty-cart__message{
  display:flex!important;flex-direction:column!important;align-items:center!important;gap:12px!important;
  margin:0!important;color:#31566a!important;font-size:1.05rem!important;line-height:1.9!important;
}
body.abcxyz-v135-polish.abcxyz-empty-cart-page .abcxyz-empty-cart__icon{
  width:70px!important;height:70px!important;display:grid!important;place-items:center!important;border-radius:22px!important;
  background:#edf8fb!important;color:#14799f!important;
}
body.abcxyz-v135-polish.abcxyz-empty-cart-page .abcxyz-empty-cart__icon svg{width:32px!important;height:32px!important;fill:none;stroke:currentColor;stroke-width:1.7}
body.abcxyz-v135-polish.abcxyz-empty-cart-page .abcxyz-empty-cart__back{
  min-height:50px!important;margin-top:14px!important;padding:11px 22px!important;border-radius:14px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(135deg,#117ea7,#154f78)!important;color:#fff!important;text-decoration:none!important;font-weight:850!important;
}

/* ---------------------------------------------------------------------
   CHECKOUT — same app shell across buyer/payment/confirm.
   --------------------------------------------------------------------- */
body.abcxyz-v135-polish.abcxyz-appmode-checkout .breadcrumb-area{padding-bottom:18px!important}
body.abcxyz-v135-polish.abcxyz-appmode-checkout #comjshop.abcxyz-checkout-host{
  width:min(1320px,100%)!important;max-width:1320px!important;margin-inline:auto!important;padding-inline:0!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-checkout #jshop_menu_order.abcxyz-checkout-steps{
  margin:0 0 16px!important;border:1px solid var(--abc-v135-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--abc-v135-shadow-soft)!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-checkout .abcxyz-checkout-surface,
body.abcxyz-v135-polish.abcxyz-appmode-checkout :where(.checkout_shipping_block,.checkout_payment_block,.checkout_pfinish_block,.address_block){
  border:1px solid var(--abc-v135-line)!important;border-radius:24px!important;box-shadow:var(--abc-v135-shadow-soft)!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-checkout .abcxyz-checkout-address :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  border-color:rgba(18,67,96,.14)!important;background:#fff!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-checkout .abcxyz-checkout-address :where(input,select,textarea):focus{
  border-color:rgba(17,127,168,.48)!important;box-shadow:0 0 0 4px rgba(17,127,168,.09)!important;
}
body.abcxyz-v135-polish.abcxyz-appmode-checkout table.abcxyz-checkout-summary-table{border-radius:18px!important;overflow:hidden!important}
body.abcxyz-v135-polish.abcxyz-appmode-checkout .checkout_pfinish_block .abcxyz-review-card{min-height:98px!important}

/* Payment result is the final checkout step, not a raw text document. */
body.abcxyz-v135-polish.abcxyz-payment-result .abcxyz-payment-result-host{
  width:min(1040px,var(--abc-surface-width))!important;max-width:1040px!important;margin-inline:auto!important;
}
body.abcxyz-v135-polish .abcxyz-payment-result-card{max-width:900px!important}

/* ---------------------------------------------------------------------
   MOBILE MENU + BOTTOM UI — app-like, safe and consistent.
   --------------------------------------------------------------------- */
@media (max-width:900px){
  html.abcxyz-shell-v2,body.abcxyz-shell-v2{
    --abc-v135-gutter:clamp(7px,2vw,10px);
    --abc-shell-gutter:clamp(7px,2vw,10px);
  }
  body.abcxyz-v135-polish .abcxyz-shell-root{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}

  /* Header controls align to the same mobile canvas. */
  body.abcxyz-v135-polish :where(.header-bottom-area,#mainHeader){
    background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(18,67,96,.08)!important;
  }

  /* Home uses almost all viewport width; internal padding belongs to hero itself. */
  body.abcxyz-v135-polish.abcxyz-appmode-home #english11000-home-hero{
    width:calc(100dvw - 14px)!important;max-width:none!important;margin-block:8px 14px!important;border-radius:22px!important;
  }
  body.abcxyz-v135-polish.abcxyz-appmode-home #english11000-home-hero .e11-grid{padding-inline:14px!important}

  /* Article index/list. */
  body.abcxyz-v135-polish.abcxyz-article-index .abcxyz-shell-surface{padding:10px!important}
  body.abcxyz-v135-polish .abcxyz-content-card__link{min-height:96px!important;padding:13px 12px!important;border-radius:18px!important}
  body.abcxyz-v135-polish .abcxyz-content-card__title{font-size:15.5px!important;line-height:1.72!important}
  body.abcxyz-v135-polish .abcxyz-content-card__icon{width:48px!important;height:48px!important;flex:0 0 48px!important}

  /* Reading page: wide canvas, restrained title, comfortable body. */
  body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface{
    width:calc(100dvw - 16px)!important;max-width:none!important;margin:8px 0 16px!important;padding:20px 15px 26px!important;border-radius:20px!important;
  }
  body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface .abcxyz-article-heading-zone :where(h1,h2),
  body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface > :where(h1,h2){
    font-size:clamp(1.45rem,5.8vw,1.78rem)!important;line-height:1.62!important;margin-bottom:14px!important;
  }
  body.abcxyz-v135-polish.abcxyz-article-reading .abcxyz-article-surface :where(p,li){font-size:16.5px!important;line-height:2.02!important}

  /* Shop is one-column card feed on phones; no inherited column drift. */
  body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) > :where(.grid,.row),
  body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.product_list,.products){
    grid-template-columns:1fr!important;gap:12px!important;
  }
  body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.product,.ee-card){padding:15px!important;border-radius:20px!important}

  /* Checkout uses almost full width and a single-step app rhythm. */
  body.abcxyz-v135-polish.abcxyz-appmode-checkout #comjshop.abcxyz-checkout-host{width:100%!important;max-width:none!important;padding-inline:0!important}
  body.abcxyz-v135-polish.abcxyz-appmode-checkout #jshop_menu_order.abcxyz-checkout-steps{border-radius:16px!important;margin-bottom:10px!important}
  body.abcxyz-v135-polish.abcxyz-appmode-checkout .abcxyz-checkout-surface,
  body.abcxyz-v135-polish.abcxyz-appmode-checkout :where(.checkout_shipping_block,.checkout_payment_block,.checkout_pfinish_block,.address_block){
    padding:15px 12px!important;border-radius:19px!important;margin-bottom:10px!important;
  }
  body.abcxyz-v135-polish.abcxyz-appmode-checkout .abcxyz-checkout-address label{font-size:12.5px!important}

  /* Mobile menu is an app sheet, not a desktop dropdown enlarged. */
  body.abcxyz-v135-polish :where(.mean-nav,.mobile-menu).abcxyz-mobile-menu-v135{
    margin:8px!important;padding:8px!important;border:1px solid var(--abc-v135-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--abc-v135-shadow)!important;
  }
  body.abcxyz-v135-polish :where(.mean-nav,.mobile-menu).abcxyz-mobile-menu-v135 li{margin:0!important;border:0!important}
  body.abcxyz-v135-polish :where(.mean-nav,.mobile-menu).abcxyz-mobile-menu-v135 a{
    min-height:52px!important;padding:12px 14px!important;border-radius:12px!important;border-bottom:1px solid rgba(18,67,96,.055)!important;
    display:flex!important;align-items:center!important;line-height:1.55!important;
  }

  /* App dock and checkout dock reserve safe space and never fight each other. */
  body.abcxyz-v135-polish .abcxyz-appdock{z-index:9998!important}
  body.abcxyz-v135-polish.abcxyz-appmode-cart .abc-cart-mobile-dock{z-index:9997!important;bottom:calc(74px + env(safe-area-inset-bottom,0px))!important}
  body.abcxyz-v135-polish.abcxyz-appmode-cart .abcxyz-cart-portal{padding-bottom:138px!important}

  /* Result screen. */
  body.abcxyz-v135-polish .abcxyz-payment-result-card{margin:8px 0 14px!important;padding:20px 15px!important;border-radius:20px!important}
}

@media (min-width:901px) and (max-width:1199px){
  body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) > :where(.grid,.row),
  body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.product_list,.products){grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (min-width:1200px){
  body.abcxyz-v135-polish.abcxyz-appmode-cart .abc-cart-showcase__layout{grid-template-columns:minmax(0,1fr) 320px!important}
}

@media (prefers-reduced-motion:reduce){
  body.abcxyz-v135-polish .abcxyz-content-card__link{transition:none!important}
}

/* Final cascade corrections for legacy mobile shop transforms and result hero. */
body.abcxyz-v135-polish.abcxyz-appmode-shoproot :where(#comjshop_list_product,.jshop_list_product) :where(.block_product > .product,.ee-card){
  position:relative!important;left:auto!important;right:auto!important;transform:none!important;
  max-width:none!important;box-sizing:border-box!important;
}
body.abcxyz-v135-polish.abcxyz-payment-result .breadcrumb-area{display:none!important}

/* ======================================================================
   ABCXYZ v1.39.0 — DESKTOP COMMERCE SHELL REBUILD
   One authoritative desktop geometry for Cart + Checkout.
   Replaces the v1.37/v1.38 override stack instead of adding another patch.
   Mobile remains governed by the established responsive rules above.
   ====================================================================== */
@media (min-width:1024px){
  :root{
    --abc-commerce-page-max:1180px;
    --abc-commerce-shell-max:1240px;
    --abc-commerce-step-max:1080px;
    --abc-commerce-form-max:960px;
    --abc-commerce-confirm-max:1100px;
    --abc-commerce-edge:32px;
    --abc-commerce-gap-1:12px;
    --abc-commerce-gap-2:18px;
    --abc-commerce-gap-3:24px;
  }

  /* Home-only modules are never allowed to reserve space on commerce routes. */
  body.abcxyz-commerce-shell-v139 :where(#english11000-home-hero,.abcxyz-commerce-stray-home-hero-v137){
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }
  body.abcxyz-commerce-shell-v139 :where(.abcxyz-commerce-stray-home-wrap-v137,.abcxyz-commerce-home-wrap-v139){
    min-height:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  /* Kill legacy Bootstrap/template offsets once, at the shell level. */
  body.abcxyz-commerce-shell-v139 :where(.abcxyz-commerce-ancestor-v139,.abcxyz-checkout-layout-ancestor){
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    float:none!important;
  }
  body.abcxyz-commerce-shell-v139 :where(.section-ptb,.page-content,#sp-main-body,.main-wrapper,.component-wrapper,.main-body){
    margin-top:0!important;
    padding-top:0!important;
  }

  /* One compact, centered page head for Cart and all Checkout stages. */
  body.abcxyz-commerce-shell-v139 .breadcrumb-area.abcxyz-commerce-pagehead-v139{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:18px 0 15px!important;
    background:linear-gradient(180deg,#fbfdff 0%,#f5f9fc 100%)!important;
    border-bottom:1px solid rgba(18,67,96,.075)!important;
  }
  body.abcxyz-commerce-shell-v139 .breadcrumb-area.abcxyz-commerce-pagehead-v139 > .container{
    width:min(var(--abc-commerce-page-max),calc(100vw - var(--abc-commerce-edge) - var(--abc-commerce-edge)))!important;
    max-width:var(--abc-commerce-page-max)!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }
  body.abcxyz-commerce-shell-v139 .breadcrumb-area.abcxyz-commerce-pagehead-v139 :where(.in-breadcrumb,.row,[class*="col-"]){
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139 .breadcrumb-area.abcxyz-commerce-pagehead-v139 :where(h1,h2,h3,.page-title){
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
    font-size:clamp(2rem,2.15vw,2.45rem)!important;
    line-height:1.22!important;
    color:#123f60!important;
    letter-spacing:-.015em!important;
  }
  body.abcxyz-commerce-shell-v139 .breadcrumb-area.abcxyz-commerce-pagehead-v139 :where(.breadcrumb-list,.breadcrumb,.mod-breadcrumbs,nav,ol,ul){
    width:auto!important;
    max-width:100%!important;
    margin:7px auto 0!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
  }

  /* The component root is the only horizontal source of truth below the page head. */
  body.abcxyz-commerce-shell-v139 #comjshop.abcxyz-commerce-root-v139{
    width:min(var(--abc-commerce-shell-max),calc(100vw - var(--abc-commerce-edge) - var(--abc-commerce-edge)))!important;
    max-width:var(--abc-commerce-shell-max)!important;
    margin:var(--abc-commerce-gap-3) auto 32px!important;
    padding:0!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }

  /* CART — no second geometry system, no inherited page/module air. */
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abcxyz-cart-portal{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abc-cart-showcase{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abc-cart-showcase__header{
    width:100%!important;
    max-width:900px!important;
    margin:0 auto var(--abc-commerce-gap-2)!important;
    padding:0!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abc-cart-showcase__heading-copy,
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abc-cart-showcase__heading-copy :where(h1,h2,h3,p){
    width:100%!important;
    max-width:900px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart .abc-cart-showcase__meta{
    justify-content:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-cart :where(.abcxyz-cart-external-trust-v137,.abcxyz-payment-trust-duplicate,.abcxyz-cart-legacy-trust-hidden){
    display:none!important;
  }

  /* CHECKOUT — intro, stepper, forms and confirm all share one axis. */
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout .abcxyz-checkout-intro-v137{
    width:min(1000px,100%)!important;
    max-width:1000px!important;
    margin:0 auto var(--abc-commerce-gap-1)!important;
    padding:18px 24px!important;
    border-radius:20px!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout .abcxyz-checkout-intro-v137 > *,
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout .abcxyz-checkout-intro-v137 :where(h1,h2,h3,p){
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout .abcxyz-checkout-intro-v137 :where(h1,h2,h3){
    margin-top:0!important;
    margin-bottom:6px!important;
    font-size:clamp(1.4rem,1.65vw,1.75rem)!important;
    line-height:1.45!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout .abcxyz-checkout-intro-v137 p{
    max-width:760px!important;
    margin-top:0!important;
    margin-bottom:0!important;
    line-height:1.8!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout #jshop_menu_order.abcxyz-checkout-steps{
    width:min(var(--abc-commerce-step-max),100%)!important;
    max-width:var(--abc-commerce-step-max)!important;
    min-height:58px!important;
    margin:0 auto 14px!important;
    border-radius:18px!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout #jshop_menu_order .jshop_order_step{
    min-height:56px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout :where(.address_block,.checkout_payment_block,.checkout_shipping_block){
    width:min(var(--abc-commerce-form-max),100%)!important;
    max-width:var(--abc-commerce-form-max)!important;
    margin:0 auto 18px!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm :where(.abcxyz-checkout-order-summary,table.abcxyz-checkout-summary-table,.jshop_subtotal.abcxyz-checkout-totals,.checkout_pfinish_block){
    width:min(var(--abc-commerce-confirm-max),100%)!important;
    max-width:var(--abc-commerce-confirm-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm .checkout_pfinish_block{
    padding:18px!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm table.abcxyz-checkout-summary-table tr.jshop_prod_cart > td{
    padding-top:12px!important;
    padding-bottom:12px!important;
  }

  /* Actions: one centered secondary next action, one unmistakable final CTA. */
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout:not(.abcxyz-checkout-confirm) :where(.abcxyz-checkout-address,.checkout_payment_block,.checkout_shipping_block) .box_button{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:14px auto 0!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout:not(.abcxyz-checkout-confirm) :where(.abcxyz-checkout-address,.checkout_payment_block,.checkout_shipping_block) .box_button :where(input[type="submit"],button,.btn,.button){
    width:auto!important;
    min-width:220px!important;
    max-width:340px!important;
    min-height:50px!important;
    margin:0 auto!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm :where(.checkout_pfinish_block .box_button,.pfinish_comment_block .box_button){
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
    margin:14px auto 0!important;
    text-align:center!important;
  }
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm #previewfinish_btn,
  body.abcxyz-commerce-shell-v139.abcxyz-appmode-checkout.abcxyz-checkout-confirm .checkout_pfinish_block .box_button :where(input[type="submit"],button,.btn,.button){
    width:auto!important;
    min-width:260px!important;
    max-width:360px!important;
    min-height:54px!important;
    padding:12px 32px!important;
    margin:0 auto!important;
    border:0!important;
    border-radius:16px!important;
    background:linear-gradient(135deg,#1388b2 0%,#14577f 100%)!important;
    color:#fff!important;
    font-size:15.5px!important;
    font-weight:900!important;
    line-height:1.2!important;
    text-align:center!important;
    box-shadow:0 12px 28px rgba(18,88,128,.20)!important;
    cursor:pointer!important;
  }
}
