/* VANTA V42 — store + product redesign based on approved dark storefront mockup */
:root{--store-radius:18px;--store-fast:180ms ease;--store-ease:cubic-bezier(.2,.8,.2,1)}
body[data-page="resources"],body.product-page{overflow-x:hidden}
body[data-page="resources"] #main-content,body.product-page #main-content{padding-bottom:70px}

/* Shared V42 palette. It respects the global theme while keeping the approved layout. */
html[data-theme="dark"] body[data-page="resources"],html[data-theme="dark"] body.product-page{--store-bg:#0d0f10;--store-panel:#121516;--store-panel-2:#171a1c;--store-line:#2a2e30;--store-line-soft:#202426;--store-text:#f3f2ed;--store-muted:#9a9c9d;--store-soft:#76797a;--store-button:#f1f0eb;--store-button-text:#111314;background:var(--store-bg);color:var(--store-text)}
html:not([data-theme="dark"]) body[data-page="resources"],html:not([data-theme="dark"]) body.product-page{--store-bg:#f1f0eb;--store-panel:#e9e8e2;--store-panel-2:#fff;--store-line:#cfcfc7;--store-line-soft:#deddd6;--store-text:#101212;--store-muted:#6f706d;--store-soft:#858681;--store-button:#111314;--store-button-text:#f4f3ee;background:var(--store-bg);color:var(--store-text)}
body[data-page="resources"] .site-footer,body.product-page .site-footer{border-top-color:var(--store-line)}
body[data-page="resources"] .topbar,body.product-page .topbar{z-index:30}

/* Resources hero */
.store-hero{padding-top:170px;padding-bottom:52px;text-align:center;position:relative}
.store-hero:before{content:"";position:absolute;pointer-events:none;inset:84px -20vw auto;height:410px;background:radial-gradient(ellipse at 50% 15%,color-mix(in srgb,var(--store-text) 6%,transparent),transparent 62%);opacity:.55}
.store-eyebrow{margin:0 0 24px;color:var(--store-soft);font-size:10px;letter-spacing:.18em;text-transform:uppercase;position:relative}
.store-hero h1{position:relative;max-width:1050px;margin:0 auto;font-family:'Inter Tight','DM Sans',sans-serif;font-size:clamp(56px,6.45vw,102px);font-weight:500;line-height:.89;letter-spacing:-.067em;text-wrap:balance;color:var(--store-text)}
.store-hero h1 span{display:inline-block;color:color-mix(in srgb,var(--store-text) 45%,var(--store-bg));}
.store-lede{position:relative;margin:28px auto 0;color:var(--store-muted);font-size:15px;line-height:1.55;letter-spacing:-.016em}

/* Store browser */
.store-browser{padding-top:22px;border-top:1px solid var(--store-line)}
.store-browser-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;margin-bottom:20px;text-align:left}
.store-browser-copy h2{margin:0;font-family:'Inter Tight','DM Sans',sans-serif;font-weight:500;font-size:42px;line-height:1;letter-spacing:-.05em;color:var(--store-text)}
.store-browser-copy p{margin:10px 0 0;color:var(--store-muted);font-size:13px}
.store-tools{display:flex;gap:12px;align-items:center}
.store-search,.store-sort{height:46px;border:1px solid var(--store-line);border-radius:999px;background:color-mix(in srgb,var(--store-panel) 84%,transparent);display:flex;align-items:center;color:var(--store-muted);transition:border-color var(--store-fast),background var(--store-fast),transform var(--store-fast)}
.store-search{width:min(300px,26vw);padding:0 17px;gap:10px}
.store-search:focus-within,.store-sort:focus-within{border-color:color-mix(in srgb,var(--store-text) 38%,var(--store-line));background:var(--store-panel)}
.store-search span{font-size:24px;line-height:1;transform:rotate(-20deg);font-family:Arial,sans-serif;opacity:.85}
.store-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--store-text);font:500 12px/1 'DM Sans',sans-serif}
.store-search input::placeholder{color:var(--store-soft)}
.store-sort{min-width:194px;padding:0 8px 0 16px}
.store-sort select{width:100%;border:0;outline:0;background:transparent;color:var(--store-text);font:500 11px/1 'DM Sans',sans-serif;appearance:auto;cursor:pointer}
.store-sort option{background:var(--store-panel);color:var(--store-text)}
.store-filters{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 22px;text-align:left}
.store-filter{border:1px solid var(--store-line);border-radius:999px;background:transparent;color:var(--store-muted);height:36px;padding:0 16px;font:500 11px/1 'DM Sans',sans-serif;cursor:pointer;transition:all var(--store-fast)}
.store-filter:hover{border-color:color-mix(in srgb,var(--store-text) 30%,var(--store-line));color:var(--store-text)}
.store-filter.is-active{background:var(--store-button);border-color:var(--store-button);color:var(--store-button-text)}
.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.store-card{min-width:0;border:1px solid var(--store-line);border-radius:16px;overflow:hidden;background:color-mix(in srgb,var(--store-panel) 91%,transparent);text-align:left;transition:transform .28s var(--store-ease),border-color .28s ease,box-shadow .28s ease;display:flex;flex-direction:column}
.store-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--store-text) 28%,var(--store-line));box-shadow:0 18px 46px rgba(0,0,0,.16)}
.store-card[hidden]{display:none!important}
.store-card-media{height:0;padding-bottom:51.6%;display:block;position:relative;overflow:hidden;background:#16191b;border-bottom:1px solid var(--store-line-soft)}
.store-card-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s var(--store-ease),filter .4s ease}
.store-card:hover .store-card-media>img{transform:scale(1.025)}
.tascar-card-media{background:linear-gradient(155deg,#171b1f,#22272a)}
.tascar-card-media>img{object-fit:contain!important;padding:7px 15px 0;filter:drop-shadow(0 15px 24px rgba(0,0,0,.38))}
.vehicle-card-media>img,.dispatch-card-media>img{object-position:center 58%;filter:saturate(.9) contrast(1.06) brightness(.78)}
.dispatch-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,13,.5),transparent 60%)}
.store-card-category,.store-card-featured{position:absolute;z-index:4;top:12px;height:26px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;font:500 10px/1 'DM Sans',sans-serif;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.store-card-category{left:12px;background:rgba(10,12,13,.67);border:1px solid rgba(255,255,255,.2);color:#fff}
.store-card-featured{right:12px;background:#2f7454;color:#eefaf4;border:1px solid rgba(255,255,255,.14)}
.store-card-body{padding:14px 14px 12px;display:flex;flex-direction:column;flex:1}
.store-card-body h3{font-family:'Inter Tight','DM Sans',sans-serif;font-size:19px;line-height:1.05;letter-spacing:-.035em;font-weight:600;margin:0;color:var(--store-text)}
.store-card-body>p{margin:7px 0 14px;color:var(--store-muted);font-size:11.5px;line-height:1.42;min-height:32px}
.store-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.store-card-foot>strong{font-size:15px;font-weight:600;color:var(--store-text);white-space:nowrap}
.store-card-foot>a{height:38px;padding:0 15px;border:1px solid var(--store-line);border-radius:999px;display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--store-text);font-size:10.5px;font-weight:600;white-space:nowrap;transition:all var(--store-fast)}
.store-card-foot>a:hover{background:var(--store-button);border-color:var(--store-button);color:var(--store-button-text)}
.store-card-foot>a span{font-size:16px;font-weight:400;line-height:1}
.store-empty{border:1px dashed var(--store-line);border-radius:18px;text-align:center;padding:70px 24px;color:var(--store-muted)}
.store-empty h3{margin:0 0 8px;color:var(--store-text);font:500 30px/1 'Inter Tight',sans-serif;letter-spacing:-.04em}
.store-empty p{margin:0}

/* Generated UI previews inside store cards */
.store-ui-preview{position:absolute;inset:0;background:radial-gradient(circle at 76% 25%,#1e3751 0,transparent 34%),linear-gradient(145deg,#11161c,#161b22);padding:22px 18px 16px;color:#eaf2f8}
.store-ui-top{height:24%;border:1px solid rgba(255,255,255,.11);border-radius:9px 9px 0 0;background:#10151a;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:8px;letter-spacing:.06em}
.store-ui-top span{color:#70d3a2}
.store-ui-body{height:70%;display:grid;grid-template-columns:48px 1fr;border:1px solid rgba(255,255,255,.11);border-top:0;border-radius:0 0 9px 9px;background:#0c1116;overflow:hidden}
.store-ui-body aside{border-right:1px solid rgba(255,255,255,.08);padding:10px;display:flex;flex-direction:column;gap:7px}
.store-ui-body aside i{display:block;height:6px;border-radius:5px;background:#263342}
.store-ui-body main{padding:10px!important;display:flex;flex-direction:column;gap:7px}
.store-ui-body main small{font-size:6px;color:#74889a;letter-spacing:.12em}
.store-ui-body main b{font-size:6.5px;font-weight:500;background:#15202a;border:1px solid #22313e;border-radius:5px;padding:7px}
.business-card-media{background:radial-gradient(circle at 75% 30%,#203040,transparent 45%),#111416}
.business-card-ui{position:absolute;inset:18px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:20px;background:rgba(12,15,17,.72);color:#fff}
.business-card-ui small{font-size:7px;letter-spacing:.14em;color:#8f9aa4}.business-card-ui strong{font:500 30px/1 'Inter Tight',sans-serif;margin:8px 0 3px}.business-card-ui span{font-size:8px;color:#8f9aa4}.business-card-ui>div{height:48px;display:flex;gap:5px;align-items:end;margin-top:8px}.business-card-ui i{flex:1;background:#607d91;border-radius:2px 2px 0 0}.business-card-ui i:nth-child(1){height:24%}.business-card-ui i:nth-child(2){height:52%}.business-card-ui i:nth-child(3){height:36%}.business-card-ui i:nth-child(4){height:78%}.business-card-ui i:nth-child(5){height:66%}.business-card-ui i:nth-child(6){height:92%}
.dispatch-overlay{position:absolute;left:18px;bottom:17px;z-index:3;color:#fff;width:48%;padding:12px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(8,12,15,.7);backdrop-filter:blur(7px)}
.dispatch-overlay span{font-size:6px;letter-spacing:.13em;color:#a9b9c5;display:block}.dispatch-overlay b{font:500 16px/1.1 'Inter Tight',sans-serif;display:block;margin:5px 0 8px}.dispatch-overlay i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e24f5a;margin-right:5px}.dispatch-overlay i:nth-of-type(2){background:#e4a94b}.dispatch-overlay i:nth-of-type(3){background:#4aa874}
.housing-card-media{background:linear-gradient(180deg,#34414b 0,#1a1d1d 56%,#0f1112 100%)}
.housing-scene{position:absolute;inset:0;overflow:hidden}.housing-building{position:absolute;width:55%;height:72%;left:26%;bottom:0;background:linear-gradient(90deg,#343536,#545252 45%,#292b2b);clip-path:polygon(8% 18%,50% 0,93% 18%,93% 100%,8% 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.housing-building:after{content:"";position:absolute;left:24%;right:24%;bottom:0;height:48%;background:repeating-linear-gradient(90deg,#101314 0 14px,#b28e5f 14px 19px)}
.housing-panel{position:absolute;right:16px;bottom:14px;width:43%;padding:12px;background:rgba(10,12,13,.76);border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;backdrop-filter:blur(8px)}.housing-panel small{display:block;color:#90999d;font-size:6px;letter-spacing:.12em}.housing-panel b{display:block;font:500 15px/1.1 'Inter Tight',sans-serif;margin:5px 0}.housing-panel span{font-size:7px;color:#6bc090}
.identity-card-media{background:radial-gradient(circle at 20% 30%,#2b3c4a,transparent 44%),linear-gradient(140deg,#121619,#22292d)}
.identity-card-ui{position:absolute;left:14%;right:14%;top:15%;bottom:15%;border-radius:13px;background:linear-gradient(135deg,#d9d6c9,#bcb9ab);color:#111315;padding:20px;box-shadow:0 17px 45px rgba(0,0,0,.35);transform:rotate(-2deg)}.identity-card-ui:before{content:"";position:absolute;right:18px;top:18px;width:44px;height:44px;border-radius:50%;background:#3b4650;box-shadow:inset 0 0 0 5px #aeb2b1}.identity-card-ui small{font-size:6px;letter-spacing:.12em}.identity-card-ui strong{display:block;font:600 22px/1 'Inter Tight',sans-serif;margin-top:28px}.identity-card-ui span{display:block;font-size:7px;letter-spacing:.13em;margin-top:8px}.identity-card-ui em{position:absolute;right:17px;bottom:14px;font-size:6px;font-style:normal;letter-spacing:.13em}

/* Product detail */
.product-v42{padding-top:132px;text-align:left!important}
.product-v42 *{box-sizing:border-box}
.product-breadcrumb{display:flex;align-items:center;gap:8px;color:var(--store-muted);font-size:10px;margin-bottom:26px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-breadcrumb a{color:inherit;text-decoration:none}.product-breadcrumb strong{font-weight:500;color:var(--store-text)}
.product-v42-top{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:34px;align-items:start}
.product-gallery{min-width:0}
.product-main-media{position:relative;height:0;padding-bottom:72%;border:1px solid var(--store-line);border-radius:18px;overflow:hidden;background:radial-gradient(circle at 48% 35%,#2d353b 0,transparent 48%),#131718}
.product-main-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12px;transition:opacity .18s ease,transform .4s var(--store-ease);filter:drop-shadow(0 18px 25px rgba(0,0,0,.28))}
.product-main-media:hover>img{transform:scale(1.012)}
.gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:36px;height:36px;border:1px solid rgba(255,255,255,.23);border-radius:50%;background:rgba(12,14,15,.66);color:#fff;font-size:25px;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(8px)}
.gallery-arrow.prev{left:14px}.gallery-arrow.next{right:14px}.gallery-arrow:hover{background:rgba(12,14,15,.9)}
.product-thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}
.product-thumb{height:74px;border:1px solid var(--store-line);border-radius:10px;overflow:hidden;padding:0;background:var(--store-panel);cursor:pointer;transition:border-color var(--store-fast),transform var(--store-fast)}
.product-thumb:hover{transform:translateY(-1px)}.product-thumb.is-active{border-color:var(--store-text)}
.product-thumb img{width:100%;height:100%;object-fit:contain;padding:4px;display:block;background:#171b1d}
.product-summary{padding:4px 0 0;text-align:left!important;position:sticky;top:110px}
.product-summary-badges{display:flex;gap:8px;align-items:center;margin-bottom:14px}.product-summary-badges span,.product-summary-badges b{height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--store-line);display:inline-flex;align-items:center;font-size:10px;font-weight:500}.product-summary-badges b{background:#2f7454;border-color:#2f7454;color:#effbf4}
.product-summary h1{font-family:'Inter Tight','DM Sans',sans-serif;font-size:clamp(42px,4vw,66px);font-weight:500;letter-spacing:-.055em;line-height:.93;margin:0;color:var(--store-text);text-align:left!important;max-width:620px}
.product-summary>p{font-size:13px;line-height:1.58;color:var(--store-muted);margin:18px 0 24px;max-width:590px;text-align:left!important}
.product-price-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.product-price-row>strong{font:600 27px/1 'Inter Tight',sans-serif;color:var(--store-text)}.product-rating{font-size:12px;color:#e2ab37;white-space:nowrap}.product-rating small{color:var(--store-muted);font-size:10px}
.product-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-actions a,.product-actions button{height:50px;border-radius:999px;text-decoration:none;display:flex;align-items:center;justify-content:center;border:1px solid var(--store-line);font:600 11px/1 'DM Sans',sans-serif;cursor:pointer;transition:transform var(--store-fast),background var(--store-fast)}.product-actions a:hover,.product-actions button:hover{transform:translateY(-1px)}.product-primary-action{background:var(--store-button)!important;border-color:var(--store-button)!important;color:var(--store-button-text)!important}.product-secondary-action{background:transparent!important;color:var(--store-text)!important}
.product-promises{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:13px;color:var(--store-muted);font-size:11px}.product-promises li{display:flex;align-items:center;gap:11px}.product-promises li span{width:17px;text-align:center;color:var(--store-text)}
.product-tabs{margin-top:58px;border-bottom:1px solid var(--store-line);display:flex;gap:38px;overflow:auto;scrollbar-width:none;padding:0 2px}.product-tabs::-webkit-scrollbar{display:none}.product-tabs a{position:relative;padding:0 0 14px;color:var(--store-muted);text-decoration:none;font-size:10.5px;white-space:nowrap;transition:color var(--store-fast)}.product-tabs a:hover,.product-tabs a.is-active{color:var(--store-text)}.product-tabs a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--store-text)}
.product-v42-detail{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:54px;padding-top:34px;align-items:start}.product-v42-copy{min-width:0}.product-v42-copy section{scroll-margin-top:120px;border-bottom:1px solid var(--store-line-soft);padding:0 0 36px;margin-bottom:36px;text-align:left!important}.product-v42-copy section:last-child{border-bottom:0}.product-v42-copy h2{font-family:'Inter Tight','DM Sans',sans-serif;font-size:24px;line-height:1;letter-spacing:-.035em;font-weight:600;margin:0 0 18px;color:var(--store-text);text-align:left!important}.product-v42-copy p{max-width:800px;color:var(--store-muted);font-size:12.5px;line-height:1.65;margin:0 0 14px;text-align:left!important}
.product-check-list{list-style:none;padding:0;margin:0;display:grid;gap:12px;color:var(--store-muted);font-size:12px}.product-check-list li{position:relative;padding-left:30px}.product-check-list li:before{content:"✓";position:absolute;left:0;top:-2px;width:18px;height:18px;border-radius:50%;background:var(--store-button);color:var(--store-button-text);display:grid;place-items:center;font-size:10px}
.product-screenshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-screenshot-grid figure{margin:0;border:1px solid var(--store-line);border-radius:13px;overflow:hidden;background:var(--store-panel);min-height:160px}.product-screenshot-grid img{width:100%;height:100%;max-height:320px;object-fit:contain;display:block;padding:8px}.product-faq{display:grid;gap:8px}.product-faq details{border:1px solid var(--store-line);border-radius:12px;padding:14px 16px;background:color-mix(in srgb,var(--store-panel) 74%,transparent)}.product-faq summary{cursor:pointer;color:var(--store-text);font-size:12px;font-weight:600}.product-faq p{margin:10px 0 0!important}
.product-spec-card{border:1px solid var(--store-line);border-radius:16px;background:color-mix(in srgb,var(--store-panel) 85%,transparent);padding:8px 16px;position:sticky;top:110px;text-align:left!important}.product-spec-card>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--store-line-soft);font-size:10.5px}.product-spec-card>div:last-child{border-bottom:0}.product-spec-card span{color:var(--store-muted)}.product-spec-card b{font-weight:500;color:var(--store-text);text-align:right}
.product-v42 .cart-toast{text-align:left}

/* Prevent V41 global-centering rules from overriding approved store/product composition */
body[data-page="resources"] .store-browser-head,body[data-page="resources"] .store-card,body.product-page .product-v42,body.product-page .product-summary,body.product-page .product-v42-copy,body.product-page .product-spec-card{text-align:left!important}
body.product-page .product-summary h1,body.product-page .product-v42-copy h2,body.product-page .product-v42-copy p{margin-left:0!important;margin-right:0!important}

@media(max-width:980px){
  .store-hero{padding-top:140px}.store-browser-head{grid-template-columns:1fr;align-items:start}.store-tools{width:100%}.store-search{width:100%;flex:1}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-v42-top{grid-template-columns:1fr}.product-summary{position:static}.product-main-media{padding-bottom:62%}.product-v42-detail{grid-template-columns:1fr}.product-spec-card{position:static;grid-row:1}.product-tabs{gap:26px}
}
@media(max-width:680px){
  .store-hero{padding-top:118px;padding-bottom:38px}.store-hero h1{font-size:clamp(49px,15vw,72px)}.store-lede br{display:none}.store-browser{padding-top:18px}.store-browser-copy h2{font-size:36px}.store-tools{flex-direction:column;align-items:stretch}.store-search,.store-sort{width:100%;min-width:0}.store-grid{grid-template-columns:1fr;gap:13px}.store-card-media{padding-bottom:53%}.store-card-body h3{font-size:21px}.store-card-body>p{min-height:0}.store-filters{overflow:auto;flex-wrap:nowrap;padding-bottom:4px;margin-right:-18px;scrollbar-width:none}.store-filters::-webkit-scrollbar{display:none}.store-filter{flex:0 0 auto}
  .product-v42{padding-top:112px}.product-breadcrumb{font-size:9px;margin-bottom:17px}.product-main-media{padding-bottom:83%}.product-thumbnails{gap:6px}.product-thumb{height:62px}.product-summary{padding-top:14px}.product-summary h1{font-size:45px}.product-price-row{align-items:flex-start;flex-direction:column}.product-actions{grid-template-columns:1fr}.product-tabs{margin-top:42px;gap:24px;margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.product-v42-detail{gap:26px}.product-screenshot-grid{grid-template-columns:1fr}.product-spec-card{padding:7px 14px}
}
@media(prefers-reduced-motion:reduce){.store-card,.store-card-media>img,.product-main-media>img,.store-card-foot>a{transition:none!important}}


/* ================================================================
   VANTA V43 — alignment pass
   Major page headings are centred. Component copy uses one deliberate
   alignment per component so icons, labels and text share the same lane.
   ================================================================ */

/* Store browser: centre the section itself, not only individual text nodes. */
.store-browser-head{
  grid-template-columns:1fr!important;
  justify-items:center!important;
  align-items:center!important;
  gap:22px!important;
  text-align:center!important;
  margin-bottom:18px!important;
}
.store-browser-copy{
  width:min(100%,760px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin-inline:auto;
  text-align:center!important;
}
.store-browser-copy h2,
.store-browser-copy p{
  width:100%;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.store-tools{
  width:min(100%,570px);
  margin-inline:auto;
  justify-content:center!important;
}
.store-search{width:min(360px,100%)}
.store-filters{
  justify-content:center!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.store-filter{text-align:center!important}

/* Card internals intentionally share a clean left edge. */
.store-card,
.store-card-body,
.store-card-body h3,
.store-card-body>p,
.store-card-foot,
.store-card-foot>strong{
  text-align:left!important;
}
.store-card-body h3,.store-card-body>p{margin-left:0!important;margin-right:0!important}
.store-card-foot>a{justify-content:center!important;text-align:center!important}
.store-card-category,.store-card-featured{text-align:center!important;justify-content:center!important}

/* Product top follows the approved mockup: media left, product info aligned as one column. */
.product-v42{width:min(100%,1320px);margin-inline:auto}
.product-v42-top{width:100%;align-items:start}
.product-summary,
.product-summary h1,
.product-summary>p,
.product-price-row,
.product-promises,
.product-promises li{
  text-align:left!important;
}
.product-summary h1,.product-summary>p{margin-left:0!important;margin-right:0!important}
.product-summary-badges,.product-actions{justify-content:flex-start}
.product-promises li{justify-content:flex-start}

/* Navigation and content headings sit on the true page centre line. */
.product-tabs{justify-content:center!important;padding-left:0!important;padding-right:0!important}
.product-v42-detail{
  width:100%;
  grid-template-columns:minmax(0,1fr) minmax(245px,280px)!important;
  gap:36px!important;
}
.product-v42-copy{min-width:0;width:100%}
.product-v42-copy section{
  width:100%;
  text-align:center!important;
}
.product-v42-copy h2{
  width:100%;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.product-v42-copy p{
  width:min(100%,820px);
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Feature rows: centre the group, but keep every checkmark directly beside its text. */
.product-check-list{
  width:min(100%,650px);
  margin-left:auto!important;
  margin-right:auto!important;
  justify-items:stretch;
}
.product-check-list li{
  position:static!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:12px!important;
  padding-left:0!important;
  text-align:left!important;
  width:100%;
}
.product-check-list li:before{
  position:static!important;
  flex:0 0 18px;
  margin-top:0;
}

/* FAQ is centred as a block; question and answer share the same internal left edge. */
.product-faq{
  width:min(100%,820px);
  margin-left:auto!important;
  margin-right:auto!important;
}
.product-faq details{text-align:left!important}
.product-faq summary,.product-faq details p{
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Keep the specifications card entirely inside the grid and align label/value pairs. */
.product-spec-card{width:100%;min-width:0!important;text-align:left!important}
.product-spec-card>div{width:100%;text-align:left!important}
.product-spec-card span{text-align:left!important}
.product-spec-card b{text-align:right!important;margin-left:auto}

.product-screenshot-grid{width:100%;margin-inline:auto}

@media(max-width:980px){
  .store-tools{width:min(100%,620px)}
  .product-v42-detail{grid-template-columns:1fr!important;gap:28px!important}
  .product-spec-card{width:min(100%,720px);margin-inline:auto}
  .product-tabs{justify-content:flex-start!important}
}
@media(max-width:680px){
  .store-browser-copy{width:100%}
  .store-tools{width:100%}
  .store-filters{justify-content:flex-start!important}
  .product-tabs{justify-content:flex-start!important}
  .product-v42-copy p{width:100%}
  .product-check-list{width:100%}
  .product-faq{width:100%}
}

/* V44 pre-launch purchase state */
.product-actions button:disabled{cursor:not-allowed;opacity:.56;transform:none!important;filter:saturate(.55)}
.product-actions button:disabled:hover{transform:none!important}
