/* Generated by scripts/build_product_base.py from styles.css; do not edit by hand. */
* { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --bg:#1F2024; --bg2:#191A1D;
  --surface:linear-gradient(155deg,#2B2C30,#27282C);
  --inset:linear-gradient(155deg,#33343A,#2B2C30);
  --tile:#33343A; --cover:linear-gradient(145deg,#33343A,rgba(254,219,153,.10));
  --glass:blur(26px) saturate(1.2); --glass-hi:inset 0 1px 0 rgba(255,255,255,.09);
  --blob1:rgba(254,219,153,.14); --blob2:rgba(254,219,153,.07);
  --ink:#FFFFFF; --text:#F7F7F8; --body:#D5D5D8; --muted:#B1B2B7; --faint:#97989E; --dim:#7D7E84; --dimmer:#696A70;
  --line:rgba(255,255,255,.09); --line2:rgba(255,255,255,.14); --line3:rgba(255,255,255,.21);
  --accent:#FEDB99; --accent-hover:#F4CA78; --accent-ink:#FEDB99;
  --accent-soft:rgba(254,219,153,.12); --accent-medium:rgba(254,219,153,.22); --accent-line:rgba(254,219,153,.25); --accent-line2:rgba(254,219,153,.52);
  --action-bg:#FEDB99; --action-hover:#F4CA78; --action-text:#1F2024;
  --header:rgba(31,32,36,.94); --grid:rgba(255,255,255,.014); --glow:rgba(254,219,153,.07); --glow2:rgba(254,219,153,.05);
  --shadow:0 30px 80px rgba(0,0,0,.38);
  --ok:#7BD88F; --ok-soft:rgba(123,216,143,.1); --ok-line:rgba(123,216,143,.26);
  --wait:#F4C47C; --wait-soft:rgba(244,196,124,.12); --wait-line:rgba(244,196,124,.28);
  --danger:#EF9A9A; --danger-soft:rgba(239,154,154,.1); --danger-line:rgba(239,154,154,.26);
  --ink-on-accent:#1F2024;
}
body[data-theme="light"] {
  --bg:#FFFFFF; --bg2:#F7F7F8;
  --surface:linear-gradient(155deg,#FFFFFF,#FCFCFD);
  --inset:#FAFAFB; --tile:#F6F6F7; --cover:linear-gradient(145deg,#F7F7F8,rgba(254,219,153,.24));
  --glass:blur(28px) saturate(1.02); --glass-hi:inset 0 1px 0 #FFFFFF;
  --blob1:rgba(31,32,36,.06); --blob2:rgba(254,219,153,.14);
  --ink:#1F2024; --text:#2B2C30; --body:#48494F; --muted:#66676E; --faint:#7F8087; --dim:#A0A1A7; --dimmer:#B6B7BC;
  --line:rgba(31,32,36,.09); --line2:rgba(31,32,36,.13); --line3:rgba(31,32,36,.21);
  --accent-ink:#7B5410; --accent-soft:rgba(254,219,153,.24); --accent-medium:rgba(254,219,153,.48); --accent-line:rgba(137,92,12,.22); --accent-line2:rgba(137,92,12,.46);
  --action-bg:#1F2024; --action-hover:#2B2C30; --action-text:#FFFFFF;
  --header:rgba(255,255,255,.94); --grid:rgba(31,32,36,.022); --glow:rgba(31,32,36,.035); --glow2:rgba(254,219,153,.08);
  --shadow:0 24px 60px rgba(31,32,36,.09);
  --ok:#1F8A5B; --ok-soft:rgba(31,138,91,.08); --ok-line:rgba(31,138,91,.2);
  --wait:#B57A16; --wait-soft:rgba(181,122,22,.08); --wait-line:rgba(181,122,22,.22);
  --danger:#C0392B; --danger-soft:rgba(192,57,43,.08); --danger-line:rgba(192,57,43,.2);
}
body {
  font-family:'Vazirmatn',system-ui,sans-serif; direction:rtl;
  background:var(--bg); color:var(--text); min-height:100vh; overflow-x:hidden;
}
a { color:var(--accent-ink); text-decoration:none; }
a:hover { color:var(--accent-ink); }
::selection { background:var(--accent); color:var(--ink-on-accent); }
::-webkit-scrollbar { width:11px; height:11px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:rgba(128,128,128,.35); border-radius:8px; border:2px solid var(--bg); }
.ic { display:grid; place-items:center; }
img { max-width:100%; display:block; }
.bg-blobs { position:fixed; inset:0; pointer-events:none; z-index:0; }
.blob-a { top:-180px; right:-160px; width:600px; height:600px; background:radial-gradient(circle,var(--blob1),transparent 65%); }
.blob-b { top:26%; left:-220px; width:680px; height:680px; background:radial-gradient(circle,var(--blob2),transparent 65%); }
.blob-c { top:58%; right:8%; width:520px; height:520px; background:radial-gradient(circle,var(--blob1),transparent 65%); }
.blob-d { bottom:-260px; left:24%; width:720px; height:720px; background:radial-gradient(circle,var(--blob2),transparent 65%); }
.page { background:var(--bg); color:var(--text); min-height:100vh; overflow-x:hidden; }
.public-premium-bg { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; background:radial-gradient(ellipse at bottom,#1b2735 0%,#090a0f 100%); opacity:.72; }
.public-premium-bg-stars { position:absolute; top:0; left:0; width:2px; height:2px; background:transparent; box-shadow:120px 180px #fff,360px 420px #fff,640px 120px #fff,900px 520px #fff,1180px 240px #fff,1420px 700px #fff,1660px 340px #fff,1880px 820px #fff,220px 980px #fff,760px 1120px #fff,1260px 960px #fff,1740px 1260px #fff; animation:homeAnimStar 50s linear infinite; opacity:.34; }
.public-premium-bg-stars-2 { width:1px; height:1px; box-shadow:80px 260px #fff,420px 80px #fff,820px 360px #fff,1120px 640px #fff,1540px 180px #fff,1860px 560px #fff,300px 1360px #fff,980px 1480px #fff,1460px 1180px #fff; animation-duration:100s; opacity:.24; }
.public-premium-bg-stars-3 { width:3px; height:3px; box-shadow:260px 540px #fff,600px 860px #fff,1040px 220px #fff,1380px 520px #fff,1780px 980px #fff,520px 1540px #fff,1200px 1740px #fff; animation-duration:150s; opacity:.18; }
@keyframes homeAnimStar { from { transform:translateY(0); } to { transform:translateY(-1200px); } }
@media (prefers-reduced-motion:reduce) {
.public-premium-bg-stars { animation:none; }
}
.wrap { max-width:1200px; margin:0 auto; padding-left:32px; padding-right:32px; }
.announce { background:var(--bg2); border-bottom:1px solid var(--line); font-size:12px; font-weight:500; text-align:center; padding:9px 16px; color:var(--muted); }
.announce b { color:var(--accent-ink); font-weight:700; letter-spacing:.5px; }
.hdr { position:sticky; top:0; z-index:50; background:var(--header); backdrop-filter:blur(20px); border-bottom:1px solid var(--line); }
.hdr-inner { max-width:1200px; margin:0 auto; padding:0 32px; height:76px; display:flex; align-items:center; gap:28px; }
.logo { display:flex; align-items:center; gap:12px; text-decoration:none; flex:none; }
.logo-mark { width:40px; height:40px; border-radius:11px; background:var(--accent); color:var(--ink-on-accent); display:grid; place-items:center; }
.logo-txt { display:flex; flex-direction:column; line-height:1.15; }
.logo-name { font-size:17.5px; font-weight:800; color:var(--ink); letter-spacing:-.2px; }
.logo-tag { font-size:10px; color:var(--faint); font-weight:500; letter-spacing:.3px; }
.nav { display:flex; align-items:center; gap:4px; flex:none; }
.nav a { padding:9px 14px; color:var(--muted); font-size:13.5px; font-weight:500; text-decoration:none; border-radius:9px; }
.nav a:hover, .nav a.active { color:var(--ink); background:var(--accent-soft); }
.hdr-search { flex:1; position:relative; max-width:320px; min-width:170px; margin-right:auto; }
.hdr-search input { width:100%; background:var(--tile); border:1px solid var(--line2); border-radius:11px; padding:10.5px 40px 10.5px 14px; color:var(--text); font-family:inherit; font-size:13px; outline:none; }
.hdr-search input:focus { border-color:var(--accent-line2); }
.hdr-search svg { position:absolute; right:14px; top:50%; transform:translateY(-50%); opacity:.45; color:var(--text); }
.hdr-actions { display:flex; align-items:center; gap:10px; flex:none; }
.theme-btn { width:41px; height:41px; border-radius:11px; background:transparent; border:1px solid var(--line3); cursor:pointer; display:grid; place-items:center; color:var(--muted); }
.theme-btn:hover { border-color:var(--accent-line2); color:var(--accent-ink); }
.mobile-menu-btn { display:none; width:41px; height:41px; padding:10px; border:1px solid var(--line3); border-radius:11px; background:transparent; cursor:pointer; flex-direction:column; justify-content:center; gap:4px; }
.mobile-menu-btn span { display:block; width:100%; height:2px; border-radius:2px; background:var(--text); }
.mobile-menu { display:none; border-top:1px solid var(--line); padding:14px 18px 18px; background:var(--header); }
.mobile-menu nav { display:grid; gap:3px; }
.mobile-menu nav a { padding:11px 12px; border-radius:9px; color:var(--body); font-size:13.5px; }
.mobile-menu nav a:hover { background:var(--accent-soft); color:var(--ink); }
#publicNav>a.is-nav-overflow { display:none; }
@media (min-width:1201px) {
.hdr.nav-overflow .mobile-menu-btn { display:flex; }
.hdr.nav-overflow .mobile-menu:not([hidden]) { display:block; position:absolute; inset-inline:0; top:100%; max-height:min(70vh,520px); overflow-y:auto; box-shadow:0 18px 40px rgba(0,0,0,.28); }
}
.mobile-auth { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:12px; margin-top:8px; border-top:1px solid var(--line); }
.mobile-auth .btn { justify-content:center; }
.btn { display:inline-flex; align-items:center; gap:9px; border-radius:11px; font-family:inherit; font-weight:700; cursor:pointer; text-decoration:none; border:none; font-size:13px; padding:10px 18px; transition:background .18s, border-color .18s, transform .18s; }
.btn-primary { background:var(--action-bg); color:var(--action-text); }
.btn-primary:hover { background:var(--action-hover); color:var(--action-text); }
.btn-outline { background:transparent; border:1px solid var(--line3); color:var(--text); font-weight:600; }
.btn-outline:hover { border-color:var(--accent-line2); }
.btn-lg { font-size:14.5px; padding:15px 32px; border-radius:12px; }
.btn-dark { background:var(--action-bg); color:var(--action-text); }
.btn-dark:hover { background:var(--action-hover); color:var(--action-text); }
.btn-block { width:100%; justify-content:center; }
.glass { background:var(--surface); backdrop-filter:var(--glass); -webkit-backdrop-filter:var(--glass); box-shadow:var(--glass-hi); border:1px solid var(--line); border-radius:18px; }
.sec { position:relative; z-index:1; max-width:1200px; margin:0 auto; padding:88px 32px 0; }
.sec-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:36px; gap:18px; flex-wrap:wrap; }
.link-more { font-size:13px; color:var(--muted); text-decoration:none; display:flex; align-items:center; gap:7px; font-weight:500; padding-bottom:4px; }
.link-more:hover { color:var(--accent-ink); }
.pill { display:inline-flex; align-items:center; gap:6px; font-size:10.5px; font-weight:700; padding:4px 11px; border-radius:100px; }
.pill.ok { background:var(--ok-soft); border:1px solid var(--ok-line); color:var(--ok); }
.pill.wait { background:var(--wait-soft); border:1px solid var(--wait-line); color:var(--wait); }
.pill.accent { background:var(--accent-soft); border:1px solid var(--accent-line); color:var(--accent-ink); }
.prod-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.prod { background:var(--surface); backdrop-filter:var(--glass); -webkit-backdrop-filter:var(--glass); box-shadow:var(--glass-hi); border:1px solid var(--line); border-radius:18px; overflow:hidden; display:flex; flex-direction:column; transition:transform .2s, border-color .2s; }
.prod:hover { border-color:var(--accent-line2); transform:translateY(-3px); }
.prod-img { position:relative; height:150px; background:var(--cover); border-bottom:1px solid var(--line); display:grid; place-items:center; overflow:hidden; }
.prod-img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.prod-img .ph { color:var(--dim); }
.prod-badge { position:absolute; top:12px; right:12px; background:var(--surface); color:var(--accent-ink); font-size:10.5px; font-weight:700; padding:4px 11px; border-radius:100px; border:1px solid var(--accent-line); }
.prod-body { padding:18px; display:flex; flex-direction:column; flex:1; }
.prod-name { font-size:14.5px; color:var(--ink); margin-bottom:4px; font-weight:700; text-decoration:none; }
.prod-name:hover { color:var(--accent-ink); }
.prod-sub { font-size:12px; color:var(--faint); margin-bottom:18px; }
.prod-foot { margin-top:auto; display:flex; align-items:flex-end; justify-content:space-between; }
.prod-old { font-size:11px; color:var(--dim); text-decoration:line-through; display:block; margin-bottom:1px; }
.prod-price { font-size:16px; color:var(--ink); font-weight:800; }
.prod-price .u { font-size:10.5px; font-weight:400; color:var(--faint); }
.prod-buy { width:38px; height:38px; border-radius:11px; background:transparent; border:1px solid var(--accent-line2); cursor:pointer; display:grid; place-items:center; color:var(--accent-ink); }
.prod-buy:hover { background:var(--accent-soft); }
.prod-buy:disabled { opacity:.45; cursor:not-allowed; }
.public-commerce-page {
  --public-container:1200px;
  --public-radius-lg:24px;
  --public-radius-md:18px;
  --public-surface-primary:rgba(255,255,255,.072);
  --public-surface-secondary:rgba(255,255,255,.046);
  --public-surface-subtle:rgba(255,255,255,.026);
  --public-surface-border:rgba(255,255,255,.105);
  --public-elevation:0 20px 54px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.055);
}
body[data-theme="light"].public-commerce-page {
  --public-surface-primary:rgba(255,255,255,.82);
  --public-surface-secondary:rgba(255,255,255,.68);
  --public-surface-subtle:rgba(255,255,255,.5);
  --public-surface-border:rgba(31,32,36,.1);
  --public-elevation:0 18px 48px rgba(31,32,36,.085),inset 0 1px #fff;
}
.public-commerce-page .page { position:relative; background:linear-gradient(180deg,var(--bg),var(--bg2) 54%,var(--bg)); }
.public-commerce-page .public-premium-bg { display:none; }
body[data-theme="dark"].public-commerce-page .page { background:transparent; }
body[data-theme="dark"].public-commerce-page .public-premium-bg { display:block; position:absolute; }
body[data-theme="dark"].public-commerce-page .public-premium-bg::after { content:""; position:absolute; inset:0; background:repeating-linear-gradient(90deg,var(--grid) 0 1px,transparent 1px 120px); }
body[data-theme="dark"].public-commerce-page .bg-blobs { opacity:.25; }
.public-commerce-page .bg-blobs { opacity:.55; }
.public-commerce-page .hdr-inner { max-width:1380px; gap:18px; }
.public-commerce-page .nav { gap:0; }
.public-commerce-page .nav a { padding-inline:8px; font-size:12px; }
.public-commerce-page .hdr-search { min-width:145px; max-width:210px; }
.public-commerce-page .hdr-actions>#authLink { display:none; }
.public-container { position:relative; z-index:1; width:100%; max-width:var(--public-container); margin-inline:auto; padding-inline:32px; }
.public-breadcrumb { padding:0 0 21px; }
.public-breadcrumb-current { color:var(--accent-ink); font-weight:650; }
.public-commerce-page .glass { background:var(--public-surface-primary); border-color:var(--public-surface-border); backdrop-filter:blur(18px) saturate(120%); -webkit-backdrop-filter:blur(18px) saturate(120%); box-shadow:var(--public-elevation); }
.public-commerce-page .prod { background:var(--public-surface-secondary); border-color:var(--public-surface-border); border-radius:var(--public-radius-md); box-shadow:0 14px 38px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.04); }
body[data-theme="light"].public-commerce-page .prod { box-shadow:0 14px 38px rgba(31,32,36,.07),inset 0 1px #fff; }
.public-commerce-page .prod:hover { border-color:var(--accent-line); box-shadow:0 20px 46px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.05); }
.public-commerce-page .prod-img { height:178px; background:linear-gradient(145deg,var(--public-surface-subtle),var(--accent-soft)); }
.public-commerce-page .prod-body { padding:20px; }
.public-commerce-page .prod-name { font-size:15px; line-height:1.75; }
.public-commerce-page .prod-sub { min-height:42px; line-height:1.8; }
.public-commerce-page .prod-foot { padding-top:14px; border-top:1px solid var(--line); }
@media (max-width:1200px) {
.public-commerce-page .nav, .public-commerce-page .hdr-search, .public-commerce-page .hdr-account { display:none; }
.public-commerce-page .hdr-actions { flex:1; margin-inline-start:0; }
.public-commerce-page .hdr-actions .mobile-menu-btn { order:-1; }
.public-commerce-page .hdr-actions .theme-btn { margin-inline-start:auto; }
.public-commerce-page .mobile-menu-btn { display:flex; }
.public-commerce-page .mobile-menu:not([hidden]) { display:block; }
}
.product-description h2, .product-display-benefits h2, .product-specifications h2 { color:var(--ink); font-size:21px; font-weight:800; margin-bottom:10px; }
.product-description>p { color:var(--muted); font-size:13.5px; line-height:2.15; white-space:pre-line; }
.product-detail-shell { position:relative; z-index:1; max-width:1200px; margin:0 auto; padding:28px 32px 88px; }
.product-detail-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:40px; align-items:start; }
.product-breadcrumb-shell { padding-top:27px; }
.public-commerce-page .product-detail-shell { padding-top:18px; }
.public-commerce-page .product-detail-hero { direction:ltr; grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr); gap:52px; }
.public-commerce-page .product-detail-media, .public-commerce-page .product-detail-copy { direction:rtl; }
.product-detail-media { min-width:0; border-color:var(--line2); border-radius:24px; overflow:hidden; box-shadow:var(--shadow),var(--glass-hi); }
.public-commerce-page .product-detail-media { border-color:var(--public-surface-border); box-shadow:var(--public-elevation); }
.product-detail-image { position:relative; height:420px; padding:24px; background:var(--cover); display:grid; place-items:center; color:var(--dim); overflow:hidden; }
.public-commerce-page .product-detail-image { height:400px; background:linear-gradient(145deg,var(--public-surface-subtle),var(--accent-soft)); }
.product-detail-image img { width:100%; height:100%; object-fit:contain; border-radius:15px; }
.product-image-empty { display:grid; justify-items:center; gap:12px; color:var(--dim); }
.product-image-empty small { color:var(--faint); font-size:11.5px; }
.product-media-badge { position:absolute; top:16px; right:16px; padding:5px 13px; border:1px solid var(--accent-line); border-radius:100px; background:var(--surface); color:var(--accent-ink); font-size:11px; font-weight:700; }
.product-trust-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); }
.product-trust-row span { min-width:0; padding:16px 12px; text-align:center; border-left:1px solid var(--line); }
.product-trust-row span:last-child { border-left:0; }
.product-trust-row b { display:block; color:var(--ink); font-size:12.5px; font-weight:700; }
.product-trust-row small { display:block; margin-top:3px; color:var(--faint); font-size:10.5px; line-height:1.65; }
.product-detail-copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; padding:4px 0 0; }
.public-commerce-page .product-detail-copy { align-items:stretch; padding-top:10px; text-align:right; }
.product-category-pill { display:inline-flex; padding:6px 13px; margin-bottom:16px; text-decoration:none; }
.public-commerce-page .product-category-pill { width:max-content; margin-bottom:13px; padding:0; border:0; border-radius:0; background:transparent; }
.product-detail-copy h1 { margin:0 0 8px; color:var(--ink); font-size:clamp(28px,3.2vw,34px); font-weight:800; line-height:1.5; letter-spacing:-.6px; }
.public-commerce-page .product-detail-copy h1 { max-width:590px; font-size:clamp(30px,3.2vw,40px); font-weight:780; line-height:1.42; }
.product-detail-subtitle { color:var(--muted); line-height:2; font-size:14px; font-weight:300; }
.product-rating { display:flex; align-items:center; gap:9px; margin:15px 0 28px; }
.product-rating span { color:var(--accent-ink); font-size:13px; letter-spacing:2px; direction:ltr; }
.product-rating small { color:var(--faint); font-size:12px; }
.product-purchase-facts { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:-7px 0 25px; padding-block:14px; border-block:1px solid var(--line); }
.product-purchase-facts>span { min-width:0; padding-inline:16px; border-inline-start:1px solid var(--line); }
.product-purchase-facts>span:first-child { padding-inline-start:0; border-inline-start:0; }
.product-purchase-facts small, .product-purchase-facts b, .product-purchase-facts em { display:block; }
.product-purchase-facts small { margin-bottom:4px; color:var(--faint); font-size:10.5px; }
.product-purchase-facts b { color:var(--ink); font-size:12.5px; font-weight:700; }
.product-purchase-facts em { margin-top:2px; color:var(--muted); font-size:10.5px; font-style:normal; line-height:1.7; }
.product-plan-slot { width:100%; min-width:0; margin:0 0 28px; padding:0; border:0; }
.product-plan-slot legend { display:block; margin-bottom:12px; color:var(--faint); font-size:12.5px; font-weight:600; }
.product-plan-slot>div { display:flex; flex-wrap:wrap; gap:10px; }
.product-plan { min-width:132px; padding:12px 20px; text-align:right; border:1px solid var(--line3); background:transparent; color:var(--muted); border-radius:12px; font-family:inherit; cursor:pointer; display:flex; flex-direction:column; align-items:flex-start; gap:3px; }
.product-plan.active { border:1.5px solid var(--accent-line2); background:var(--accent-soft); color:var(--ink); }
.product-plan:disabled { cursor:not-allowed; opacity:.58; }
.product-plan b { font-size:13px; font-weight:600; }
.product-plan>span { color:var(--faint); font-size:10.5px; }
.product-plan.active b { font-weight:700; }
.product-plan small { color:var(--faint); font-size:11px; }
.product-plan.active small { color:var(--accent-ink); font-weight:600; }
.product-plan-placeholder { width:100%; display:flex; justify-content:space-between; gap:12px; padding:13px 15px; border:1px solid var(--line); background:var(--inset); border-radius:12px; margin-bottom:28px; }
.product-plan-placeholder span { color:var(--ink); font-weight:700; font-size:12.5px; }
.product-plan-placeholder small { color:var(--faint); font-size:10.5px; }
.product-price-card { width:100%; padding:24px; border-color:var(--line2); border-radius:17px; }
.public-commerce-page .product-price-card { padding:25px; border-color:var(--public-surface-border); border-radius:var(--public-radius-md); background:linear-gradient(135deg,var(--public-surface-primary),var(--public-surface-subtle)); }
.product-price-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:18px; }
.product-price-card del { display:block; color:var(--dim); font-size:12.5px; margin-bottom:2px; }
.product-price-card b { color:var(--ink); font-size:28px; font-weight:800; letter-spacing:-.4px; }
.product-price-card b small { color:var(--faint); font-size:13px; font-weight:400; }
.product-discount { padding:7px 13px; border:1px solid var(--accent-line); border-radius:11px; background:var(--accent-soft); color:var(--accent-ink); font-size:12.5px; font-weight:800; }
.product-buy-button { width:100%; min-height:52px; justify-content:center; gap:8px; border-radius:13px; font-size:15px; font-weight:800; }
.product-price-card>p { margin-top:12px; text-align:center; color:var(--faint); font-size:11.5px; font-weight:300; }
.product-content-stack { display:flex; flex-direction:column; gap:14px; padding-top:52px; }
.public-commerce-page .product-content-stack { gap:12px; padding-top:58px; }
.public-commerce-page .product-description, .public-commerce-page .product-specifications { background:var(--public-surface-subtle); box-shadow:none; }
.product-description, .product-display-benefits, .product-specifications { padding:32px; border-radius:20px; }
.product-description h2, .product-display-benefits h2, .product-specifications h2 { margin-bottom:16px; color:var(--ink); font-size:18px; font-weight:800; }
.product-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.product-benefit-grid article { display:flex; align-items:flex-start; gap:12px; min-width:0; padding:17px; border:1px solid var(--line); border-radius:15px; background:var(--inset); }
.product-benefit-grid article>svg { flex:none; color:var(--accent); }
.product-benefit-grid b { display:block; color:var(--ink); font-size:13px; margin-bottom:4px; }
.product-benefit-grid p { color:var(--faint); font-size:11.5px; line-height:1.8; }
.product-description>p { margin-top:0; color:var(--body); font-size:13.5px; font-weight:300; line-height:2.3; white-space:pre-line; }
.product-description>p+p { margin-top:18px; }
.product-spec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 40px; }
.product-spec-grid article { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid var(--line); }
.product-spec-grid article>span { color:var(--faint); font-size:12.5px; }
.product-spec-grid article>b { color:var(--ink); font-size:12.5px; font-weight:600; text-align:left; }
.related-products-section { padding-top:64px; }
.public-commerce-page .related-products-section { padding-top:62px; }
.related-products-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:24px; }
.related-products-heading h2 { color:var(--ink); font-size:20px; font-weight:800; }
.related-products-heading .link-more { color:var(--accent-ink); text-decoration:none; font-size:12px; font-weight:600; }
.related-products-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.related-product-card .prod-buy { width:auto; height:auto; min-height:34px; padding:7px 12px; color:var(--accent-ink); text-decoration:none; font-size:10.5px; }
.ftr { position:relative; z-index:1; border-top:1px solid var(--line); background:var(--bg2); }
.ftr-top { max-width:1200px; margin:0 auto; padding:56px 32px 28px; display:grid; grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr 1fr; gap:40px; }
.ftr-about p { font-size:12.5px; line-height:2.1; color:var(--faint); max-width:300px; font-weight:300; }
.ftr-logo { display:flex; align-items:center; gap:11px; text-decoration:none; margin-bottom:18px; }
.ftr-logo .logo-mark { width:36px; height:36px; border-radius:10px; }
.ftr-logo b { font-size:16px; color:var(--ink); font-weight:800; }
.ftr-socials { display:flex; gap:8px; margin-top:22px; }
.ftr-socials a { width:38px; height:38px; border-radius:10px; background:var(--tile); border:1px solid var(--line); display:grid; place-items:center; color:var(--muted); text-decoration:none; }
.ftr-socials a:hover { border-color:var(--accent-line2); color:var(--accent-ink); }
.ftr-col b { font-size:13.5px; color:var(--ink); display:block; margin-bottom:18px; font-weight:700; }
.ftr-col .links { display:flex; flex-direction:column; gap:12px; }
.ftr-col a { font-size:12.5px; color:var(--faint); text-decoration:none; font-weight:400; }
.ftr-col a:hover { color:var(--accent-ink); }
.ftr-bot { border-top:1px solid var(--line); }
.ftr-bot-inner { max-width:1200px; margin:0 auto; padding:20px 32px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.ftr-copy { font-size:12px; color:var(--dimmer); }
.ftr-badges { display:flex; align-items:center; gap:8px; }
.ftr-badge { display:flex; align-items:center; gap:8px; background:var(--tile); border:1px solid var(--line); padding:8px 14px; border-radius:10px; font-size:11px; color:var(--muted); font-weight:500; }
.ftr-badge svg { color:var(--accent-ink); }
[hidden] { display:none !important; }
.crumb { display:flex; align-items:center; gap:8px; font-size:12.5px; color:var(--faint); padding:22px 0; flex-wrap:wrap; }
.crumb a { color:var(--faint); text-decoration:none; }
.crumb a:hover { color:var(--accent-ink); }
.crumb .sep { opacity:.5; }
@media (max-width:1000px) {
.nav, .hdr-search, .hdr-actions > #authLink, .hdr-account { display:none; }
.hdr-inner { gap:14px; }
.hdr-actions { flex:1; margin-inline-start:0; }
.hdr-actions .mobile-menu-btn { order:-1; }
.hdr-actions .theme-btn { margin-inline-start:auto; }
.mobile-menu-btn { display:flex; }
.mobile-menu:not([hidden]) { display:block; }
.prod-grid { grid-template-columns:repeat(2,1fr); }
.ftr-top { grid-template-columns:1fr 1fr; }
.product-detail-hero { grid-template-columns:1fr; }
.public-commerce-page .product-detail-hero { grid-template-columns:1fr; gap:34px; }
.product-detail-image { height:380px; }
.public-commerce-page .product-detail-image { height:350px; }
.product-spec-grid, .product-benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
.ftr-top { grid-template-columns:1fr; }
.wrap, .sec, .hdr-inner { padding-left:18px; padding-right:18px; }
.announce { font-size:10.5px; line-height:1.7; }
.logo-tag { display:none; }
.sec { padding:58px 18px 0; }
.product-detail-shell { padding-left:18px; padding-right:18px; }
.public-container { padding-inline:18px; }
.public-breadcrumb { padding-bottom:16px; }
.product-detail-shell { padding-top:18px; }
.product-breadcrumb-shell { padding-top:20px; }
.product-detail-hero { gap:28px; }
.public-commerce-page .product-detail-hero { gap:26px; }
.product-detail-image { height:320px; padding:18px; }
.public-commerce-page .product-detail-image { height:286px; }
.public-commerce-page .product-detail-copy { padding-top:0; }
.public-commerce-page .product-detail-copy h1 { font-size:29px; }
.product-purchase-facts { margin-bottom:22px; }
.product-content-stack { padding-top:36px; }
.product-description, .product-display-benefits, .product-specifications { padding:24px 20px; }
.product-spec-grid, .product-benefit-grid { grid-template-columns:1fr; }
.related-products-section { padding-top:44px; }
.related-products-heading { align-items:flex-start; flex-direction:column; gap:8px; }
}
@media (max-width:480px) {
.hdr-inner { height:66px; }
.logo-mark { width:36px; height:36px; }
.theme-btn, .mobile-menu-btn { width:38px; height:38px; }
.prod-grid { grid-template-columns:1fr; }
.ftr-bot-inner { padding-left:18px; padding-right:18px; }
.product-plan-slot>div { display:grid; grid-template-columns:1fr; }
.product-plan { width:100%; }
.product-trust-row b { font-size:11px; }
.product-trust-row small { font-size:9px; }
.product-price-head { align-items:flex-start; flex-direction:column; }
.public-commerce-page .product-detail-image { height:230px; }
.product-purchase-facts { grid-template-columns:1fr; padding-block:0; }
.product-purchase-facts>span { padding:11px 0; border-inline-start:0; border-bottom:1px solid var(--line); }
.product-purchase-facts>span:last-child { border-bottom:0; }
.public-commerce-page .product-price-card { padding:21px 18px; }
}
@media (max-width:720px) {
.ftr-top { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 14px; justify-items:center; }
.ftr-about, .ftr-col:not(:has(> iframe)):not(:has(> a)) { grid-column:1 / -1; justify-self:stretch; }
.ftr-top > .ftr-col:last-child { grid-column:1 / -1; }
.ftr-top > .ftr-col:has(> iframe), .ftr-top > .ftr-col:has(> a) { display:flex; align-items:center; justify-content:center; min-width:0; }
.ftr-top .ftr-col > iframe { max-width:100%; flex:none; }
.ftr-top .ftr-col > a { display:flex; justify-content:center; max-width:100%; }
.ftr-top .ftr-col > a > img { max-width:100%; max-height:130px; height:auto; object-fit:contain; }
.ftr-badges { flex-wrap:wrap; justify-content:center; gap:8px; }
.ftr-badge { max-width:100%; min-width:0; white-space:normal; text-align:center; }
}
