:root {
  --uaash-red: #a50f0f;
  --uaash-red-dark: #a50f0f;
  --uaash-gold: #ffde00;
  --uaash-surface: #ffffff;
  --uaash-text: #a50f0f;
  --uaash-muted: #a50f0f;
  --uaash-line: color-mix(in srgb, var(--uaash-red) 18%, #ffffff);
  --uaash-shadow: 0 20px 60px rgba(61, 20, 14, .13);
  --uaash-radius: 22px;
  --uaash-header-height: 74px;
}

html { scroll-behavior: smooth; }
body.uaash-red-theme { margin: 0; color: var(--uaash-text); background: var(--uaash-surface); font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; overflow-x: hidden; }
body.uaash-lock { overflow: hidden; }
body.uaash-red-theme a { color: var(--uaash-red-dark); text-decoration: none; }
body.uaash-red-theme a:hover { color: var(--uaash-red); }
body.uaash-red-theme h1, body.uaash-red-theme h2, body.uaash-red-theme h3, body.uaash-red-theme h4 { color: var(--uaash-text); font-family: "Songti SC", SimSun, "Noto Serif CJK SC", Georgia, serif; letter-spacing: -.025em; }
body.uaash-red-theme img { max-width: 100%; }

.uaash-header { position: sticky; top: 0; z-index: 1020; height: var(--uaash-header-height); color: #fff; background: var(--uaash-red); border-bottom: 3px solid var(--uaash-gold); box-shadow: 0 8px 30px rgba(165,15,15,.18); }
.uaash-header__inner { width: min(1480px, calc(100% - 48px)); height: 100%; margin: auto; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.uaash-brand { color: #fff !important; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: 180px; font-family: "Songti SC", SimSun, serif; font-size: 1.15rem; font-weight: 700; letter-spacing: .2em; }
.uaash-brand img { width: auto; height: 36px; object-fit: contain; }
.uaash-nav { display: flex; align-items: center; gap: clamp(14px, 2vw, 30px); min-width: 0; }
.uaash-nav a { position: relative; color: rgba(255,255,255,.78) !important; font-size: .9rem; white-space: nowrap; transition: color .2s ease; }
.uaash-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: var(--uaash-gold); transition: right .25s ease; }
.uaash-nav a:hover, .uaash-nav a.is-active { color: #fff !important; }
.uaash-nav a:hover::after, .uaash-nav a.is-active::after { right: 0; }
.uaash-nav-group { position: relative; }
.uaash-nav-group__toggle { padding: 0; display: flex; align-items: center; gap: 7px; color: rgba(255,255,255,.78); background: transparent; border: 0; font: inherit; font-size: .9rem; white-space: nowrap; cursor: pointer; transition: color .2s ease; }
.uaash-nav-group__toggle:hover, .uaash-nav-group.is-open > .uaash-nav-group__toggle { color: #fff; }
.uaash-nav-group__toggle i { font-size: .65rem; transition: transform .2s ease; }
.uaash-nav-group.is-open > .uaash-nav-group__toggle i { transform: rotate(180deg); }
.uaash-nav-submenu { position: absolute; z-index: 1120; top: calc(100% + 20px); left: -18px; min-width: 220px; padding: 9px; visibility: hidden; opacity: 0; background: #fff; border: 1px solid var(--uaash-line); border-top: 3px solid var(--uaash-gold); border-radius: 0 0 14px 14px; box-shadow: 0 18px 46px rgba(61,10,10,.2); transform: translateY(-7px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
.uaash-nav-group:hover > .uaash-nav-submenu, .uaash-nav-group:focus-within > .uaash-nav-submenu, .uaash-nav-group.is-open > .uaash-nav-submenu { visibility: visible; opacity: 1; transform: translateY(0); }
.uaash-nav .uaash-nav-submenu a { padding: 11px 13px; display: block; color: var(--uaash-red) !important; border-radius: 9px; font-weight: 650; }
.uaash-nav .uaash-nav-submenu a::after { display: none; }
.uaash-nav .uaash-nav-submenu a:hover, .uaash-nav .uaash-nav-submenu a.is-active { color: var(--uaash-red) !important; background: #fff5d0; }
.uaash-actions { display: flex; justify-content: flex-end; align-items: center; gap: 5px; }
.uaash-language-host { position: relative; }
.uaash-language-host form { margin: 0; }
.uaash-language-host .dropdown > a { min-height: 40px; padding: 8px 11px; display: flex; align-items: center; gap: 7px; color: #fff !important; border-radius: 999px; font-size: .8rem; font-weight: 650; transition: background .2s ease; }
.uaash-language-host .dropdown > a:hover, .uaash-language-host .dropdown > a[aria-expanded="true"] { background: rgba(255,255,255,.13); }
.uaash-language-host .dropdown > a::after { display: none; }
.uaash-language-host .dropdown > a img { width: 21px; height: 15px; object-fit: cover; border-radius: 2px; box-shadow: 0 0 0 1px rgba(255,255,255,.28); }
.uaash-language-host .dropdown-menu { min-width: 175px; margin-top: 13px !important; padding: 8px; border: 1px solid var(--uaash-line); border-top: 3px solid var(--uaash-gold); border-radius: 0 0 13px 13px; box-shadow: 0 18px 46px rgba(61,10,10,.2); }
.uaash-language-host .dropdown-item { padding: 10px 11px; display: flex; align-items: center; gap: 9px; color: var(--uaash-red) !important; border-radius: 8px; font-size: .84rem; font-weight: 650; }
.uaash-language-host .dropdown-item:hover { background: #fff5d0; }
.uaash-language-host .dropdown-item img { width: 22px; height: 16px; object-fit: cover; border-radius: 2px; }
.uaash-icon-button { width: 42px; height: 42px; padding: 0; display: inline-grid; place-items: center; border: 0; border-radius: 999px; color: #fff !important; background: transparent; transition: background .2s ease, transform .2s ease; }
.uaash-icon-button:hover { color: #fff; background: rgba(255,255,255,.13); transform: translateY(-1px); }
.uaash-menu-toggle { display: none; }
.uaash-search-panel { position: absolute; top: calc(100% + 10px); right: max(24px, calc((100vw - 1480px) / 2)); width: min(480px, calc(100vw - 32px)); padding: 18px; background: #fff; border: 1px solid var(--uaash-line); border-radius: 16px; box-shadow: var(--uaash-shadow); }
.uaash-search-panel form, .uaash-search-panel .input-group { margin: 0; }

#uaash-main { min-height: calc(100vh - var(--uaash-header-height)); outline: none; }
#uaash-page { position: relative; min-height: 40vh; }
.uaash-loading { display: none !important; }

.uaash-hero { isolation: isolate; position: relative; min-height: clamp(560px, 76vh, 820px); display: grid; place-items: center; overflow: hidden; color: #fff; background: radial-gradient(circle at 50% 40%, rgba(255,222,0,.22), transparent 25%), var(--uaash-red); }
.uaash-hero.has-image { background-image: linear-gradient(90deg, rgba(42,4,6,.78), rgba(68,8,9,.2)), var(--uaash-hero-image); background-position: center; background-size: cover; }
.uaash-hero::before, .uaash-hero::after { content: ""; position: absolute; z-index: -1; width: 470px; height: 470px; border: 1px solid rgba(255,222,0,.28); border-radius: 50%; }
.uaash-hero::before { left: -170px; top: -160px; box-shadow: 0 0 0 40px rgba(255,222,0,.05), 0 0 0 90px rgba(255,222,0,.03); }
.uaash-hero::after { right: -220px; bottom: -230px; box-shadow: 0 0 0 35px rgba(255,222,0,.05), 0 0 0 80px rgba(255,222,0,.03); }
.uaash-hero__pattern { position: absolute; inset: 0; z-index: -1; opacity: .15; background-image: linear-gradient(30deg, transparent 40%, var(--uaash-gold) 40%, var(--uaash-gold) 42%, transparent 42%, transparent 58%, var(--uaash-gold) 58%, var(--uaash-gold) 60%, transparent 60%); background-size: 80px 138px; mask-image: linear-gradient(to right, #000, transparent 70%); }
.uaash-hero__content { width: min(1180px, calc(100% - 48px)); margin: auto; text-align: center; }
.uaash-kicker { display: inline-flex; padding: 7px 14px; color: var(--uaash-gold); border: 1px solid var(--uaash-gold); border-radius: 999px; font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.uaash-hero h1 { max-width: 920px; margin: 25px auto 18px; color: #fff !important; font-size: clamp(3rem, 7vw, 6.8rem); line-height: 1.08; text-wrap: balance; text-shadow: 0 8px 28px rgba(55,0,0,.3); }
.uaash-hero p { max-width: 720px; margin: 0 auto 34px; color: rgba(255,255,255,.82); font-size: clamp(1rem, 1.6vw, 1.25rem); line-height: 1.9; }
.uaash-button { min-height: 48px; padding: 12px 26px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; color: #fff !important; background: var(--uaash-red); border: 1px solid var(--uaash-red); border-radius: 999px; font-weight: 600; box-shadow: 0 12px 28px rgba(165,15,15,.2); transition: transform .2s ease, box-shadow .2s ease; }
.uaash-button:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(165,15,15,.27); }
.uaash-button--gold { color: var(--uaash-red) !important; background: var(--uaash-gold); border-color: var(--uaash-gold); box-shadow: 0 14px 32px rgba(165,15,15,.18); }
.uaash-button--outline { color: var(--uaash-red-dark) !important; background: transparent; border-color: var(--uaash-line); box-shadow: none; }

.uaash-story-grid { margin-top: -62px; position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.uaash-story-card { min-height: 360px; padding: clamp(26px, 4vw, 50px); position: relative; overflow: hidden; display: flex; align-items: flex-end; gap: 24px; color: #fff !important; background: var(--uaash-red); border: 1px solid var(--uaash-gold); border-radius: var(--uaash-radius); box-shadow: var(--uaash-shadow); }
.uaash-story-card.has-image { background-image: linear-gradient(180deg, rgba(40,7,7,.1), rgba(39,6,7,.9)), var(--uaash-card-image); background-position: center; background-size: cover; }
.uaash-story-card::after { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(255,222,0,.35); border-radius: calc(var(--uaash-radius) - 8px); pointer-events: none; }
.uaash-story-card__number { align-self: flex-start; font-family: "Songti SC", SimSun, serif; font-size: 3.2rem; color: var(--uaash-gold); opacity: .72; }
.uaash-story-card h2 { color: #fff !important; font-size: clamp(1.8rem, 3vw, 3.2rem); }
.uaash-story-card p { max-width: 540px; color: rgba(255,255,255,.75); line-height: 1.8; }
.uaash-text-link { color: var(--uaash-gold); font-weight: 600; }
.uaash-home-modules { padding-top: 80px; padding-bottom: 80px; }

/* OpenCart content */
body.uaash-red-theme #uaash-page > .container:not(.uaash-story-grid), body.uaash-red-theme #uaash-page > [id] > .container { padding-top: 34px; padding-bottom: 56px; }
body.uaash-red-theme .breadcrumb { margin: 0 0 28px; padding: 0; background: transparent; }
body.uaash-red-theme .breadcrumb-item, body.uaash-red-theme .breadcrumb-item a { color: var(--uaash-muted); font-size: .82rem; }
body.uaash-red-theme .btn-primary { --bs-btn-bg: var(--uaash-red); --bs-btn-border-color: var(--uaash-red); --bs-btn-hover-bg: var(--uaash-red-dark); --bs-btn-hover-border-color: var(--uaash-red-dark); --bs-btn-active-bg: var(--uaash-red-dark); --bs-btn-active-border-color: var(--uaash-red-dark); border-radius: 999px; }
body.uaash-red-theme .btn-dark { background: var(--uaash-red-dark); border-color: var(--uaash-red-dark); }
body.uaash-red-theme .form-control, body.uaash-red-theme .form-select { min-height: 46px; border-color: var(--uaash-line); border-radius: 12px; }
body.uaash-red-theme .form-control:focus, body.uaash-red-theme .form-select:focus { border-color: var(--uaash-red); box-shadow: 0 0 0 .22rem color-mix(in srgb, var(--uaash-red) 14%, transparent); }
body.uaash-red-theme .card, body.uaash-red-theme .accordion-item { border-color: var(--uaash-line); border-radius: 18px; box-shadow: 0 10px 32px rgba(65,25,18,.06); }

.product-thumb.uaash-product-card { height: 100%; overflow: hidden; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--uaash-line); border-radius: 18px; box-shadow: 0 9px 26px rgba(64,25,18,.06); transition: transform .25s ease, box-shadow .25s ease; }
.product-thumb.uaash-product-card:hover { transform: translateY(-5px); box-shadow: var(--uaash-shadow); }
.uaash-product-card__image { aspect-ratio: 1 / 1; overflow: hidden; background: #fff; }
.uaash-product-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.uaash-product-card:hover .uaash-product-card__image img { transform: scale(1.035); }
.uaash-product-card__body { padding: 18px; display: grid; gap: 12px; flex: 1; }
.uaash-product-card h3 { margin: 0; font-family: inherit; font-size: 1rem; line-height: 1.5; }
.uaash-product-card .price-new { color: var(--uaash-red-dark); font-weight: 700; }
.uaash-product-card .price-old { margin-left: 8px; color: #a8948e; text-decoration: line-through; }
.uaash-quick-add { width: 42px; height: 42px; float: right; display: inline-grid; place-items: center; color: #fff; background: var(--uaash-red); border: 0; border-radius: 50%; }
.uaash-quick-add span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

body.uaash-red-theme #product-info > .row > #content > .row { align-items: flex-start; gap: clamp(24px, 4vw, 64px); }
body.uaash-red-theme #product-info .image > a > img { width: 100%; border: 0 !important; border-radius: 18px; box-shadow: var(--uaash-shadow); }
body.uaash-red-theme #product-info h1 { font-size: clamp(2rem, 4vw, 4.8rem); line-height: 1.1; }
body.uaash-red-theme #product-info #button-cart { min-width: 180px; }
body.uaash-red-theme #tab-description { padding: 34px 4px; font-size: 1rem; line-height: 1.9; }
body.uaash-red-theme .nav-tabs { border-color: var(--uaash-line); }
body.uaash-red-theme .nav-tabs .nav-link.active { color: var(--uaash-red-dark); border-color: var(--uaash-line) var(--uaash-line) var(--uaash-surface); }

/* Drawer cart */
.uaash-cart-host { position: static; }
.uaash-cart-toggle { position: relative; }
.uaash-cart-count { position: absolute; top: 1px; right: 0; min-width: 17px; height: 17px; padding: 0 4px; display: grid; place-items: center; color: var(--uaash-red-dark); background: var(--uaash-gold); border-radius: 999px; font-size: .65rem; font-weight: 700; }
.uaash-cart-panel { position: fixed; z-index: 1101; top: 0; right: 0; width: min(500px, 100vw); height: 100dvh; display: grid; grid-template-rows: auto 1fr; color: var(--uaash-text); background: #fff; box-shadow: -20px 0 70px rgba(40,6,7,.24); transform: translateX(105%); transition: transform .32s cubic-bezier(.2,.8,.2,1); }
.uaash-cart-panel.is-open { transform: translateX(0); }
.uaash-cart-panel__header { height: 76px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--uaash-line); }
.uaash-cart-panel__header h2 { margin: 0; font-size: 1.45rem; }
.uaash-cart-close, .uaash-remove { padding: 8px; color: var(--uaash-red-dark); background: transparent; border: 0; }
.uaash-cart-panel__body { padding: 22px; overflow: auto; }
.uaash-cart-item { padding: 16px 0; display: grid; grid-template-columns: 78px 1fr auto; gap: 14px; border-bottom: 1px solid var(--uaash-line); }
.uaash-cart-item img { width: 78px; height: 92px; object-fit: cover; border-radius: 10px; }
.uaash-cart-item__name { display: block; color: var(--uaash-text) !important; font-weight: 600; line-height: 1.4; }
.uaash-cart-item small { display: block; color: var(--uaash-muted); }
.uaash-cart-item__meta { margin-top: 10px; display: flex; justify-content: space-between; }
.uaash-cart-totals { margin: 24px 0; display: grid; gap: 10px; }
.uaash-cart-totals > div { display: flex; justify-content: space-between; }
.uaash-cart-actions { display: grid; grid-template-columns: 1fr 1.25fr; gap: 10px; }
.uaash-empty-cart { min-height: 50vh; display: grid; place-content: center; text-align: center; color: var(--uaash-muted); }
.uaash-empty-cart i { color: var(--uaash-gold); font-size: 3rem; }
.uaash-backdrop { position: fixed; z-index: 1010; inset: 0; background: rgba(165,15,15,.32); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }

/* Checkout and Stripe */
body.uaash-red-theme #checkout-checkout .accordion, body.uaash-red-theme #checkout-checkout #content { max-width: 1120px; margin-inline: auto; }
body.uaash-red-theme #stripe-payment-panel { padding: clamp(12px, 2vw, 24px); background: #fff; border: 1px solid var(--uaash-line); border-radius: 20px; box-shadow: var(--uaash-shadow); }
body.uaash-red-theme #stripe-payment-panel .alert-light { color: var(--uaash-red); background: #fff; border-color: var(--uaash-gold) !important; border-radius: 12px; }
body.uaash-red-theme #stripe-embedded-checkout { min-height: 420px; }

.uaash-footer { position: relative; inset: auto; clear: both; margin-top: 80px; padding: 56px 0 24px; color: rgba(255,255,255,.82); background: var(--uaash-red); border: 0; border-top: 4px solid var(--uaash-gold); }
.uaash-footer a { display: block; margin: 0 0 12px; color: rgba(255,255,255,.72) !important; }
.uaash-footer a:hover { color: #fff !important; }
.uaash-footer__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; }
.uaash-footer__bottom { margin-top: 36px; padding-top: 22px; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; border-top: 1px solid rgba(255,255,255,.12); }
.uaash-footer__bottom strong { color: #fff; font-family: "Songti SC", SimSun, serif; letter-spacing: .12em; }
.uaash-footer__bottom small { margin-left: auto; }

@media (max-width: 991.98px) {
  :root { --uaash-header-height: 66px; }
  .uaash-header__inner { width: calc(100% - 24px); grid-template-columns: auto 1fr auto; gap: 10px; }
  .uaash-menu-toggle { display: inline-grid; }
  .uaash-brand { min-width: 0; font-size: 1rem; letter-spacing: .12em; }
  .uaash-brand img { max-width: 120px; height: 30px; }
  .uaash-nav { position: fixed; z-index: 1102; top: 0; left: 0; width: min(340px, 88vw); height: 100dvh; padding: 90px 28px 30px; display: flex; align-items: stretch; flex-direction: column; gap: 6px; background: var(--uaash-red-dark); box-shadow: 20px 0 60px rgba(30,3,4,.25); transform: translateX(-105%); transition: transform .3s ease; }
  .uaash-nav.is-open { transform: translateX(0); }
  .uaash-nav a { padding: 13px 5px; color: #fff !important; font-size: 1rem; border-bottom: 1px solid rgba(255,255,255,.1); }
  .uaash-nav-group { width: 100%; }
  .uaash-nav-group__toggle { width: 100%; padding: 13px 5px; justify-content: space-between; color: #fff; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 1rem; }
  .uaash-nav-submenu { position: static; min-width: 0; margin: 0; padding: 0 0 0 14px; display: none; visibility: visible; opacity: 1; background: rgba(70,0,0,.18); border: 0; border-radius: 0; box-shadow: none; transform: none; transition: none; }
  .uaash-nav-group.is-open > .uaash-nav-submenu { display: block; }
  .uaash-nav .uaash-nav-submenu a { padding: 12px 10px; color: #fff !important; border-bottom: 1px solid rgba(255,255,255,.08); border-radius: 0; font-size: .92rem; }
  .uaash-nav .uaash-nav-submenu a:hover, .uaash-nav .uaash-nav-submenu a.is-active { color: var(--uaash-gold) !important; background: transparent; }
  .uaash-story-grid { grid-template-columns: 1fr; margin-top: -30px; }
  .uaash-story-card { min-height: 320px; }
}

@media (max-width: 767.98px) {
  .uaash-actions { gap: 0; }
  .uaash-actions > a.uaash-icon-button { display: none; }
  .uaash-language-host .dropdown > a { width: 40px; padding: 0; justify-content: center; font-size: 0; }
  .uaash-language-host .dropdown > a .fa-caret-down { display: none; }
  .uaash-language-host .dropdown-menu { right: 0 !important; left: auto !important; }
  .uaash-hero { min-height: 620px; align-items: end; padding-bottom: 110px; }
  .uaash-hero__content { width: calc(100% - 32px); text-align: left; }
  .uaash-hero h1 { margin-left: 0; font-size: clamp(2.75rem, 15vw, 4.7rem); }
  .uaash-hero p { margin-left: 0; font-size: .98rem; }
  .uaash-story-grid { width: calc(100% - 24px); padding: 0; gap: 14px; }
  .uaash-story-card { min-height: 300px; padding: 28px; border-radius: 18px; }
  .uaash-story-card__number { position: absolute; right: 24px; top: 18px; }
  body.uaash-red-theme #uaash-page > .container:not(.uaash-story-grid) { padding-inline: 16px; }
  body.uaash-red-theme #product-info > .row > #content > .row { display: block; }
  body.uaash-red-theme #product-info > .row > #content > .row > .col-sm { width: 100%; margin-bottom: 24px; }
  body.uaash-red-theme #product-info h1 { margin-top: 16px; font-size: 2.1rem; }
  body.uaash-red-theme #product-info .input-group { flex-wrap: wrap; gap: 8px; }
  body.uaash-red-theme #product-info #button-cart { width: 100%; }
  .uaash-cart-actions { grid-template-columns: 1fr; }
  .uaash-footer__grid { grid-template-columns: 1fr 1fr; }
  .uaash-footer__bottom small { width: 100%; margin-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

@supports not (color: color-mix(in srgb, red, blue)) {
  :root { --uaash-line: #f3b7b7; }
  body.uaash-red-theme .form-control:focus, body.uaash-red-theme .form-select:focus { box-shadow: 0 0 0 .22rem rgba(165,15,15,.14); }
}
