/* VedaDigiMart theme 3.0.0: header account + cart, landing refresh, account pages.
   Loaded after store.css and uses its tokens (docs/DESIGN_SYSTEM.md). Every movement here is
   switched off for visitors who ask for reduced motion. */

/* ---------- Header: account and cart ---------- */
.header-tools { display: flex; align-items: center; gap: var(--s-2); margin-left: var(--s-3); }
.hdr-account, .hdr-cart { position: relative; display: inline-flex; align-items: center; gap: .45rem; min-height: 44px; color: var(--ink); text-decoration: none; font-weight: 500; font-size: .95rem; border-radius: 999px; transition: background-color .15s, color .15s; }
.hdr-account { padding: 0 .9rem 0 .65rem; border: 1px solid var(--line); background: var(--surface); }
.hdr-account.is-in { border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }
.hdr-account:hover, .hdr-cart:hover { color: var(--accent); background: var(--accent-soft); }
.hdr-account-label { max-width: 11rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hdr-cart { justify-content: center; width: 46px; height: 46px; border: 1px solid var(--line); background: var(--surface); }
.hdr-cart-count { position: absolute; top: -5px; right: -5px; min-width: 21px; height: 21px; padding: 0 5px; display: grid; place-items: center; border-radius: 999px; background: var(--gold); color: var(--ink); font: 700 .74rem/1 var(--font-body); box-shadow: 0 0 0 2px var(--paper); }
.hdr-cart-count[hidden] { display: none; }
.vdm-ui { flex: none; }
.site-nav .nav-account, .site-nav .nav-cart { display: none; }
.vdm-focus .header-tools { display: none; }
@media (max-width: 880px) {
	.header-tools { margin-left: auto; }
	.js .menu-toggle { margin-left: var(--s-2); }
	.hdr-account-label { display: none; }
	.hdr-account { width: 46px; height: 46px; padding: 0; justify-content: center; }
	.js .site-nav .nav-account, .js .site-nav .nav-cart { display: flex; align-items: center; gap: .6rem; padding: .8rem 0; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; font-size: 1.05rem; font-weight: 500; }
	.nav-cart-count { margin-left: auto; min-width: 26px; height: 26px; display: inline-grid; place-items: center; border-radius: 999px; background: var(--ink); color: #fff; font-size: .8rem; font-weight: 700; }
}
@media (max-width: 380px) { .menu-label { display: none; } .header-tools { gap: 6px; } }

/* ---------- Product hero ---------- */
.lp-price-once { font: 500 .95rem/1.3 var(--font-body) !important; color: var(--on-dark-2); letter-spacing: 0; }
.lp-start { display: flex; gap: .55rem; align-items: flex-start; margin: var(--s-4) 0 0; padding: .7rem .95rem; border-radius: var(--radius); background: rgba(227, 176, 75, .12); border: 1px solid rgba(227, 176, 75, .35); color: var(--ink); font-size: var(--step--1); line-height: 1.5; max-width: 34rem; }
.lp-start .vdm-icon { color: var(--gold-ink); margin-top: 1px; }
.lp-hero-dark .lp-start { color: var(--on-dark); background: rgba(227, 176, 75, .1); }
.lp-hero-dark .lp-start .vdm-icon { color: var(--gold); }
.lp-start-center { margin: var(--s-5) auto 0; justify-content: center; text-align: left; }
.lp-buy-actions { display: flex; flex-wrap: wrap; gap: var(--s-3); }
.btn-buy { min-height: 56px; padding-inline: 1.8rem; font-size: 1.08rem; font-weight: 700; }
.btn-sub { font-weight: 600; opacity: .8; padding-left: .55rem; margin-left: .2rem; border-left: 1px solid currentColor; }
.btn-cart { min-height: 56px; gap: .5rem; }
.btn-cart .vdm-ui, .btn .vdm-ui { width: 20px; height: 20px; }
.lp-inside-link { margin: var(--s-3) 0 0; font-size: var(--step--1); }
.lp-hero-dark .lp-inside-link a { color: var(--accent-on-dark); }
@media (max-width: 560px) {
	.lp-buy-actions .btn { flex: 1 1 100%; }
}

/* Hero video slot: a poster and a play button; the player loads only on press. */
.lp-video { position: relative; aspect-ratio: 16 / 10; border-radius: 16px; overflow: hidden; background: #0a1226; box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .1); }
.lp-video-poster { width: 100%; height: 100%; object-fit: cover; object-position: top left; opacity: .82; }
.lp-video-play { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--s-3); border: 0; background: linear-gradient(180deg, transparent 30%, rgba(13, 23, 48, .65)); color: #fff; font: 600 1rem/1.3 var(--font-body); cursor: pointer; }
.lp-video-icon { width: 76px; height: 76px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 10px rgba(227, 176, 75, .25); position: relative; }
.lp-video-icon::after { content: ""; position: absolute; left: 31px; top: 24px; border-left: 22px solid var(--ink); border-top: 14px solid transparent; border-bottom: 14px solid transparent; }
.lp-video-frame { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: #000; }

/* ---------- Proof strip: true facts, overlapping the hero's bottom edge ---------- */
.lp-proof { position: relative; z-index: 2; margin-top: calc(-1 * var(--s-7)); }
.lp-proof-list { list-style: none; margin: 0; padding: var(--s-2); display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: var(--s-2); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); box-shadow: 0 24px 50px -28px rgba(20, 33, 61, .45); }
.lp-proof-list li { display: flex; align-items: center; gap: .65rem; padding: .8rem 1rem; border-radius: var(--radius); font-size: .93rem; line-height: 1.35; color: var(--ink-2); }
.lp-proof-list li strong { color: var(--ink); }
.lp-proof-list .vdm-icon { flex: none; width: 34px; height: 34px; padding: 7px; border-radius: 50%; background: var(--pa-tint, var(--accent-soft)); color: var(--pa, var(--accent)); }
.lp-proof-list .is-new { background: #fff8e8; }
.lp-proof-list .is-new .vdm-icon { background: #fde9bf; color: var(--gold-ink); }
.lp-proof + .section { padding-top: var(--s-7); }
@media (max-width: 600px) {
	.lp-proof { margin-top: calc(-1 * var(--s-6)); }
	.lp-proof-list { grid-template-columns: 1fr 1fr; padding: 6px; gap: 4px; }
	.lp-proof-list li { flex-direction: column; align-items: flex-start; gap: .4rem; padding: .7rem; font-size: .82rem; }
	.lp-proof-list .vdm-icon { width: 30px; height: 30px; padding: 6px; }
}

/* ---------- Pricing cards ---------- */
.lp-option .btn-block + .lp-option-cart { margin-top: var(--s-2); }
.btn-link { background: transparent; color: var(--ink); border-color: var(--line); gap: .45rem; }
.btn-link:hover { border-color: var(--ink); background: var(--paper-2); color: var(--ink); }
.lp-option-more { display: block; text-align: center; margin-top: var(--s-3); font-size: var(--step--1); font-weight: 600; }
.lp-option.is-recommended { background: linear-gradient(180deg, var(--pa-tint, var(--accent-soft)) 0, var(--surface) 38%); }
.lp-option .price-large { font-family: var(--font-display); }

/* ---------- Final call to action and sticky bar ---------- */
.lp-final-actions { display: flex; flex-wrap: wrap; gap: var(--s-3); justify-content: center; }
.lp-final-actions .btn { margin-top: var(--s-4); }
.lp-final-start { margin-top: var(--s-4); font-size: var(--step--1); }
.btn-sticky-cart { min-height: 44px; gap: .45rem; color: #fff; border-color: rgba(255, 255, 255, .35); background: transparent; }
.btn-sticky-cart:hover { background: rgba(255, 255, 255, .1); color: #fff; }
@media (max-width: 600px) {
	.btn-sticky-cart { width: 48px; padding: 0; }
	.btn-sticky-cart .lbl { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.lp-sticky-inner { gap: var(--s-3); }
	.lp-sticky .btn-accent { flex: 1; }
	body.single-vdm_product .site-footer { padding-bottom: 88px; }
}

/* ---------- Product cards: one clear price, one clear action ---------- */
.product-foot .price { margin: 0; display: flex; align-items: baseline; gap: .35rem; }
.product-foot .price small { font: 500 .78rem/1 var(--font-body); color: var(--ink-2); }
.card-flag { display: inline-flex; align-self: flex-start; margin: 0 0 var(--s-3); padding: .25rem .7rem; border-radius: 999px; background: var(--gold); color: var(--ink); font: 700 .72rem/1.3 var(--font-body); letter-spacing: .06em; text-transform: uppercase; }
@media (min-width: 900px) {
	.product-grid .product-card.is-featured { grid-column: span 2; flex-direction: row; }
	.product-card.is-featured .product-cover { flex: 1.1; min-height: 100%; }
	.product-card.is-featured .product-cover img, .product-card.is-featured .shot-cover { height: 100%; }
	.product-card.is-featured .product-body { flex: 1; padding: var(--s-6); }
	.product-card.is-featured .product-title { font-size: var(--step-2); }
}
.product-card.is-featured { border: 2px solid var(--pa, var(--accent)); }

/* ---------- Home: featured product ---------- */
.home-featured { padding-block: var(--s-8) var(--s-6); }
.feat-card { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(1.5rem, 1rem + 3vw, 3.5rem); align-items: center; padding: clamp(1rem, .5rem + 2vw, 2rem); border-radius: 24px; background: var(--surface); border: 1px solid var(--line); box-shadow: 0 40px 80px -50px rgba(20, 33, 61, .55); position: relative; overflow: hidden; }
.feat-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 55%; background: radial-gradient(120% 90% at 0% 0%, var(--pa-tint, var(--accent-soft)), transparent 70%); pointer-events: none; }
.feat-media { position: relative; display: block; border-radius: 14px; overflow: hidden; box-shadow: 0 24px 50px -24px rgba(20, 33, 61, .5); background: #fff; }
.feat-media img { width: 100%; aspect-ratio: 16 / 11; object-fit: cover; object-position: top left; }
.feat-body { position: relative; }
.feat-body h2 { font-size: var(--step-3); margin-bottom: var(--s-3); }
.feat-body h2 a { color: inherit; text-decoration: none; }
.feat-lede { font-size: var(--step-1); color: var(--ink-2); line-height: 1.5; }
.feat-body .checks { margin-bottom: var(--s-5); }
.feat-foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-4) var(--s-5); }
.feat-foot .actions { display: flex; flex-wrap: wrap; gap: var(--s-3); margin: 0; }
@media (max-width: 860px) { .feat-card { grid-template-columns: 1fr; } .feat-card::before { width: 100%; } }

/* ---------- Cart page ---------- */
.vdm-commerce-cart .commerce-body .wc-block-cart__empty-cart__title, .commerce-body .wp-block-woocommerce-empty-cart-block h2 { font: 560 var(--step-3)/1.2 var(--font-display); }
.commerce-body .wp-block-woocommerce-empty-cart-block { text-align: center; padding: var(--s-6) var(--s-4); background: var(--surface); border: 1px dashed var(--line); border-radius: var(--radius-l); }
.commerce-body .wc-block-cart-items { border-color: var(--line) !important; }
.commerce-body .wc-block-cart-items__header { color: var(--ink-2); font-size: .78rem; letter-spacing: .06em; }
.commerce-body .wc-block-cart-item__remove-link { color: var(--ink-2) !important; font-size: var(--step--1) !important; }
.commerce-body .wc-block-components-product-metadata__description { display: none; }
.commerce-body .wc-block-cart .wc-block-components-quantity-selector { display: none; }

/* ---------- Thank-you: where to find the files later ---------- */
.vdm-keep p { display: flex; gap: .6rem; align-items: flex-start; margin: 0 0 var(--s-5); padding: var(--s-4) var(--s-5); border-radius: var(--radius); background: var(--accent-soft); color: var(--ink); }
.vdm-keep .vdm-ui { color: var(--accent); margin-top: 1px; }

/* ---------- My Account ---------- */
.vdm-acct-hello { font: 560 var(--step-2)/1.3 var(--font-display); margin-bottom: var(--s-5); }
.vdm-acct-hello span { display: block; margin-top: .3rem; font: 400 var(--step-0)/1.5 var(--font-body); color: var(--ink-2); }
.vdm-acct-tiles { list-style: none; margin: 0 0 var(--s-6); padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-3); }
.vdm-acct-tiles a { display: grid; gap: .15rem; padding: var(--s-4) var(--s-5); border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); color: var(--ink); text-decoration: none; transition: border-color .15s, box-shadow .15s, transform .15s; }
.vdm-acct-tiles a:hover { border-color: var(--accent); box-shadow: var(--shadow); }
.vdm-acct-tiles .vdm-ui { color: var(--accent); margin-bottom: .35rem; }
.vdm-acct-tiles strong { font: 600 1.1rem/1.2 var(--font-body); }
.vdm-acct-tiles span { font-size: var(--step--1); color: var(--ink-2); }
.vdm-acct-h { font: 560 var(--step-2)/1.2 var(--font-display); margin: var(--s-6) 0 var(--s-4); }
.vdm-acct-empty { padding: var(--s-5); border: 1px dashed var(--line); border-radius: var(--radius-l); text-align: center; }
.vdm-acct-empty .vdm-acct-h { margin-top: 0; }
.vdm-dl-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-3); }
.vdm-dl { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--s-4); align-items: center; padding: var(--s-4) var(--s-5); border-radius: var(--radius-l); background: linear-gradient(90deg, #fff8e8, var(--surface) 60%); border: 1px solid #f0d9a6; }
.vdm-dl-type { display: grid; place-items: center; width: 58px; height: 66px; border-radius: 10px; background: var(--ink); color: var(--gold); font: 700 .85rem/1 var(--font-body); letter-spacing: .04em; clip-path: polygon(0 0, 72% 0, 100% 22%, 100% 100%, 0 100%); }
.vdm-dl-info h3 { margin: 0 0 .15rem; font: 600 1.08rem/1.3 var(--font-body); }
.vdm-dl-file { margin: 0; font-size: var(--step--1); color: var(--ink); word-break: break-word; }
.vdm-dl-meta { margin: .2rem 0 0; font-size: .8rem; color: var(--ink-2); }
.commerce-body .vdm-dl-btn, .vdm-dl-btn { min-height: 56px; padding-inline: 1.6rem; font-weight: 700; font-size: 1.05rem; gap: .5rem; color: var(--ink) !important; background: var(--gold) !important; }
.vdm-acct-more { margin: var(--s-3) 0 0; font-weight: 600; }
.vdm-acct-tip { margin: var(--s-4) 0 0; font-size: var(--step--1); color: var(--ink-2); }
.vdm-acct-orders { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-2); }
.vdm-acct-orders a { display: grid; gap: .1rem; padding: var(--s-3) var(--s-4); border-radius: var(--radius); border: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.vdm-acct-orders a:hover { border-color: var(--accent); }
.vdm-acct-order-no { font-weight: 700; }
.vdm-acct-order-items { color: var(--ink); }
.vdm-acct-order-meta { font-size: var(--step--1); color: var(--ink-2); }
.vdm-status { padding: .1rem .5rem; border-radius: 999px; background: var(--paper-2); color: var(--ink); font-size: .78rem; font-weight: 600; }
.vdm-status-completed, .vdm-status-processing { background: var(--accent-soft); color: var(--accent-ink); }
.vdm-acct-help { display: flex; gap: .6rem; align-items: flex-start; margin: var(--s-6) 0 0; font-size: var(--step--1); color: var(--ink-2); }
.vdm-acct-help .vdm-ui { color: var(--accent); }
.vdm-acct-link { display: flex; gap: var(--s-4); align-items: flex-start; margin: 0 0 var(--s-5); padding: var(--s-5); border-radius: var(--radius-l); background: var(--ink); color: var(--on-dark); }
.vdm-acct-link > .vdm-ui { flex: none; width: 30px; height: 30px; color: var(--gold); }
.vdm-acct-link h3 { color: #fff; margin: 0 0 var(--s-2); font: 600 1.1rem/1.3 var(--font-body); }
.vdm-acct-link p { color: var(--on-dark-2); font-size: var(--step--1); }
.vdm-acct-link form { margin: 0; }
.commerce-body .vdm-acct-link .btn { background: var(--gold); color: var(--ink); min-height: 48px; }
/* Account navigation */
.commerce-body .woocommerce-MyAccount-navigation ul { display: grid; gap: 2px; }
.commerce-body .woocommerce-MyAccount-navigation a { font-weight: 500; }
.commerce-body .woocommerce-MyAccount-navigation a:hover { background: var(--accent-soft); }
.commerce-body .woocommerce-MyAccount-navigation-link--customer-logout { margin-top: var(--s-2); border-top: 1px solid var(--line); padding-top: var(--s-2); }
.commerce-body .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--ink-2); }
/* Orders table */
.commerce-body .woocommerce-orders-table { font-size: .95rem; }
.commerce-body .woocommerce-orders-table .button, .commerce-body .woocommerce-orders-table a.button { min-height: 40px; padding: .45rem 1rem; font-size: .9rem; }
.commerce-body .woocommerce-orders-table__cell-order-number a { font-weight: 700; }
/* Login and register */
.vdm-login-intro { max-width: 40rem; margin: 0 auto var(--s-6); text-align: center; }
.vdm-login-intro h2 { font-size: var(--step-3); }
.vdm-login-intro p { color: var(--ink-2); }
.commerce-body .u-columns.col2-set { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: var(--s-5); }
.commerce-body .u-columns .u-column1, .commerce-body .u-columns .u-column2 { float: none; width: auto; padding: clamp(1.25rem, 1rem + 1.5vw, 2rem); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); box-shadow: var(--shadow); }
.commerce-body .u-columns h2 { font: 560 var(--step-2)/1.2 var(--font-display); }
.commerce-body .woocommerce-form-login .button, .commerce-body .woocommerce-form-register .button, .commerce-body .woocommerce-ResetPassword .button, .commerce-body .woocommerce-EditAccountForm .button { width: 100%; background: var(--gold); color: var(--ink); font-weight: 700; }
.commerce-body .woocommerce-form-login__rememberme { display: inline-flex; gap: .4rem; align-items: center; margin-right: var(--s-3); }
.commerce-body .woocommerce-LostPassword { margin-top: var(--s-3); font-size: var(--step--1); }
.commerce-body .woocommerce-ResetPassword, .commerce-body .woocommerce-EditAccountForm { max-width: 560px; }
.commerce-body .woocommerce-privacy-policy-text { font-size: var(--step--1); color: var(--ink-2); }
.vdm-commerce-account:not(.logged-in) .commerce-body .woocommerce { display: block; }
@media (max-width: 860px) {
	.vdm-acct-tiles { grid-template-columns: 1fr 1fr 1fr; gap: var(--s-2); }
	.vdm-acct-tiles a { padding: var(--s-3); }
	.vdm-acct-tiles strong { font-size: .95rem; }
	.commerce-body .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; gap: 4px; padding: 4px; scrollbar-width: none; }
	.commerce-body .woocommerce-MyAccount-navigation li { flex: none; }
	.commerce-body .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; border: 0; padding: 0; }
	.commerce-body .woocommerce-MyAccount-navigation a { padding: .55rem .85rem; white-space: nowrap; border-radius: 999px; }
}
@media (max-width: 600px) {
	.vdm-dl { grid-template-columns: auto minmax(0, 1fr); padding: var(--s-4); }
	.vdm-dl-btn { grid-column: 1 / -1; width: 100%; }
	.vdm-acct-tiles .vdm-ui { display: none; }
	.vdm-acct-link { flex-direction: column; }
	.commerce-body .woocommerce-orders-table thead { display: none; }
	.commerce-body .woocommerce-orders-table tr { display: grid; grid-template-columns: 1fr 1fr; padding: var(--s-3) 0; border-bottom: 1px solid var(--line); }
	.commerce-body .woocommerce-orders-table td, .commerce-body .woocommerce-orders-table th { border: 0 !important; padding: .25rem .25rem !important; }
	.commerce-body .woocommerce-orders-table td::before { content: attr(data-title) ": "; color: var(--ink-2); font-size: .8rem; }
	.commerce-body .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions::before { content: none; }
}

/* ---------- Micro-animations (only when motion is welcome) ---------- */
@media (prefers-reduced-motion: no-preference) {
	.lp-hero-visual > * { animation: vdm-float 7s ease-in-out infinite; }
	@keyframes vdm-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
	.lp-hero-copy > * { animation: vdm-rise .6s cubic-bezier(.2, .7, .2, 1) both; }
	.lp-hero-copy > :nth-child(2) { animation-delay: .06s; } .lp-hero-copy > :nth-child(3) { animation-delay: .12s; } .lp-hero-copy > :nth-child(4) { animation-delay: .18s; } .lp-hero-copy > :nth-child(5) { animation-delay: .24s; }
	@keyframes vdm-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
	.lp-proof-list li { animation: vdm-rise .5s .3s cubic-bezier(.2, .7, .2, 1) both; }
	.lp-proof-list li:nth-child(2) { animation-delay: .38s; } .lp-proof-list li:nth-child(3) { animation-delay: .46s; } .lp-proof-list li:nth-child(4) { animation-delay: .54s; }
	.btn-gold, .lp-hero-dark .btn-accent, .lp-sticky .btn-accent, .btn-buy { position: relative; overflow: hidden; }
	.btn-gold::after, .lp-hero-dark .btn-accent::after, .btn-buy::after { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .55), transparent); transform: skewX(-20deg); animation: vdm-shine 5.5s 1.5s ease-in-out infinite; pointer-events: none; }
	@keyframes vdm-shine { 0%, 70% { left: -60%; } 85%, 100% { left: 130%; } }
	.hdr-cart-count { animation: vdm-pop .4s cubic-bezier(.3, 1.6, .5, 1) both; }
	@keyframes vdm-pop { from { transform: scale(.4); } to { transform: none; } }
	.lp-option { transition: transform .2s, box-shadow .2s; }
	.lp-option:hover { transform: translateY(-4px); box-shadow: 0 30px 60px -30px rgba(20, 33, 61, .45); }
	@media (min-width: 900px) { .lp-options-3 .lp-option.is-recommended:hover, .lp-options-2 .lp-option.is-recommended:hover { transform: translateY(-16px); } }
	.vdm-dl-btn:hover { transform: translateY(-2px); }
	.feat-media img { transition: transform .5s; }
	.feat-card:hover .feat-media img { transform: scale(1.02); }
	.lp-video-icon { animation: vdm-ring 2.4s ease-out infinite; }
	@keyframes vdm-ring { 0% { box-shadow: 0 0 0 0 rgba(227, 176, 75, .5); } 100% { box-shadow: 0 0 0 22px rgba(227, 176, 75, 0); } }
}
@media (prefers-reduced-motion: reduce) {
	.lp-hero-visual > *, .lp-hero-copy > *, .lp-proof-list li, .hdr-cart-count, .lp-video-icon { animation: none !important; }
	.btn-gold::after, .lp-hero-dark .btn-accent::after, .btn-buy::after { display: none; }
}

/* ---------- Phone: a shorter hero that reaches the buy buttons sooner ---------- */
@media (max-width: 880px) { .header-bar { flex-wrap: nowrap; } }
@media (max-width: 600px) {
	.brand-logo { height: 44px; width: auto; }
	.header-bar { min-height: 64px; gap: var(--s-2); }
	.lp-hero-dark { padding-top: var(--s-4); }
	.lp-hero .breadcrumbs { display: none; }
	.lp-label { margin-bottom: var(--s-3); }
	.lp-label .lp-label-sep, .lp-label span:last-child { display: none; }
	.lp-hero-dark h1 { font-size: 2.05rem; }
	.lp-hero .lede { font-size: 1rem; line-height: 1.55; }
	.lp-hero-buy { margin-top: var(--s-4); }
	.lp-hero .lp-specs { display: none; }
	.lp-hero .lp-licence { padding: .6rem .8rem; }
	.lp-hero-dark .lp-price { font-size: 2.3rem; }
}
.vdm-notices { margin-bottom: var(--s-5); }
.vdm-notices .woocommerce-info, .vdm-notices .woocommerce-message, .vdm-notices .woocommerce-error { list-style: none; margin: 0 0 var(--s-3); padding: var(--s-4) var(--s-5); border-radius: var(--radius); background: var(--surface); border: 1px solid var(--line); border-left: 4px solid var(--accent); }
.vdm-notices .woocommerce-error { border-left-color: #b42318; }
/* Thank-you and order pages on a phone: long file names wrap, tables stack. */
.commerce-body .woocommerce-table--order-downloads .download-file a, .commerce-body .woocommerce-MyAccount-downloads-file { max-width: 100%; white-space: normal; overflow-wrap: anywhere; text-align: left; }
@media (max-width: 600px) {
	.commerce-body .woocommerce-table--order-downloads thead { display: none; }
	.commerce-body .woocommerce-table--order-downloads, .commerce-body .woocommerce-table--order-downloads tbody, .commerce-body .woocommerce-table--order-downloads tr, .commerce-body .woocommerce-table--order-downloads td { display: block; width: 100%; }
	.commerce-body .woocommerce-table--order-downloads td { border: 0 !important; padding: .3rem 0 !important; }
	.commerce-body .woocommerce-table--order-downloads td.download-product { font-weight: 700; }
	.commerce-body .woocommerce-table--order-downloads td.download-file a { display: flex; width: 100%; justify-content: center; min-height: 52px; }
	.commerce-body .woocommerce-table--order-downloads td.download-remaining::before, .commerce-body .woocommerce-table--order-downloads td.download-expires::before { content: attr(data-title) ": "; color: var(--ink-2); }
	.commerce-body table.shop_table { table-layout: fixed; }
	.commerce-body table.shop_table td, .commerce-body table.shop_table th { overflow-wrap: anywhere; }
}
@media (min-width: 900px) { .product-card.is-featured .product-cover { min-height: 0; max-height: 420px; overflow: hidden; } .product-card.is-featured .product-included { margin-bottom: var(--s-5); } }

/* ---------- Launch offer (real end date and real places, from inc/offers.php) ---------- */
.lp-price-next { font: 600 .95rem/1.3 var(--font-body) !important; color: var(--gold) !important; }
.lp-hero-dark .lp-price-tag { vertical-align: middle; }
.lp-hero .lp-launch { position: relative; max-width: 34rem; padding: var(--s-4) var(--s-5) var(--s-5); border-radius: var(--radius-l); background: linear-gradient(135deg, rgba(227, 176, 75, .2), rgba(227, 176, 75, .04) 70%); border: 1px solid rgba(227, 176, 75, .55); box-shadow: 0 20px 40px -30px rgba(227, 176, 75, .8); }
.lp-countdown-label { margin: var(--s-3) 0 var(--s-1); font: 700 .7rem/1.2 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--gold); }
.lp-pricing-launch .lp-countdown-label { color: #7d540d; }
.lp-hero .lp-countdown { display: flex; gap: var(--s-2); margin: 0; }
.lp-hero .lp-countdown .u { display: grid; justify-items: center; min-width: 64px; margin: 0; padding: .55rem .5rem .45rem; border-radius: 10px; background: rgba(13, 23, 48, .55); border: 1px solid rgba(227, 176, 75, .35); color: #fff; font-size: 1.6rem; line-height: 1; }
.lp-hero .lp-countdown small { margin: .35rem 0 0; color: var(--on-dark-2); font-size: .62rem; }
.lp-hero .lp-places p { color: var(--on-dark); }
.lp-hero .lp-places p strong { color: var(--gold); }
.lp-places-bar { height: 10px; }
.lp-pricing-launch { max-width: 620px; margin: 0 auto var(--s-6); }
.lp-pricing-launch .lp-countdown { display: flex; gap: var(--s-2); }
.lp-pricing-launch .lp-countdown .u { display: grid; justify-items: center; min-width: 60px; padding: .5rem; border-radius: 10px; background: var(--surface); border: 1px solid #f0d9a6; }
.lp-option-launch { color: #7d540d !important; background: #fff8e8; border-radius: var(--radius-s); padding: .45rem .6rem; }
.lp-proof-list .is-launch { background: #fff8e8; }
.lp-proof-list .is-launch .vdm-icon { background: #fde9bf; color: var(--gold-ink); }
@media (max-width: 600px) { .lp-hero .lp-countdown .u { min-width: 0; flex: 1; font-size: 1.35rem; } }
@media (prefers-reduced-motion: no-preference) { .lp-places-bar span { animation: vdm-grow 1s .4s cubic-bezier(.2, .7, .2, 1) both; transform-origin: left; } @keyframes vdm-grow { from { transform: scaleX(0); } to { transform: none; } } }
.lp-price-once { white-space: nowrap; }
