.storefront,.store-product,.store-dynamic {
    --store-ink:#eef2f8; --store-muted:#b8c5d6; --store-line:#ffffff24; --store-accent:#fb923c; --store-panel:#0d192b;
    color:var(--store-ink); margin-inline:auto; max-width:1240px; padding:clamp(20px,3vw,40px) 0; font:16px/1.7 system-ui,sans-serif; color-scheme:dark;
}
.published-main:has(.storefront),.published-main:has(.store-product) { max-width:1320px; }
.storefront *,.store-product *,.store-dynamic * { box-sizing:border-box; }
.published-main .storefront h1,.published-main .store-product h1,.store-dynamic h1 { color:var(--store-ink); font:500 clamp(38px,4.8vw,66px)/1.12 "Oswald",system-ui,sans-serif; max-width:18ch; margin:16px 0 24px; letter-spacing:-.025em; text-transform:none; }
.storefront h2,.store-product h2,.store-dynamic h2 { color:var(--store-ink); font:500 clamp(28px,3.3vw,44px)/1.18 "Oswald",system-ui,sans-serif; letter-spacing:-.02em; text-transform:none; }
.storefront h3,.store-product h3,.store-dynamic h3 { color:var(--store-ink); font:650 21px/1.3 system-ui,sans-serif; text-transform:none; }
.storefront p,.store-product p,.store-dynamic p { line-height:1.7; }
.storefront-eyebrow { color:var(--store-accent); font:700 11px/1.7 system-ui,sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.storefront-hero { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); align-items:center; gap:32px; padding:clamp(24px,4vw,56px); background:radial-gradient(ellipse at 100% 0,#f973161c,transparent 60%),linear-gradient(135deg,#132238,#0a1525); border:1px solid var(--store-line); border-radius:24px; }
.storefront-hero__copy { min-width:0; }
.storefront-hero__copy>p:not(.storefront-eyebrow) { color:var(--store-muted); max-width:55ch; }
.storefront-hero__copy .storefront-hero__lead { color:var(--store-accent); font-size:clamp(19px,2vw,25px); }
.storefront-hero__actions,.store-card__actions { align-items:center; display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.storefront .storefront-hero__actions a,.storefront-button,.storefront .storefront-button,.store-product .storefront-button,.store-dynamic .storefront-button { align-items:center; background:#f97316; border:1px solid #fb923c; border-radius:8px; color:#07111f; display:inline-flex; font:700 14px/1.45 system-ui,sans-serif; justify-content:center; min-height:46px; padding:12px 18px; text-decoration:none; cursor:pointer; }
.storefront .storefront-hero__actions a:nth-child(n+2),.storefront .storefront-button--quiet,.store-product .storefront-button--quiet,.store-dynamic .storefront-button--quiet { background:#ffffff06; border-color:#ffffff38; color:var(--store-ink); }
.storefront-button:hover,.storefront .storefront-hero__actions a:hover { background:#fdba74; border-color:#fdba74; color:#07111f; }
.storefront-button:disabled { cursor:not-allowed; opacity:.55; }
.storefront-scene { position:relative; min-width:0; height:360px; perspective:1000px; isolation:isolate; }
.storefront-scene__orbit { position:absolute; top:95px; left:0; width:100%; height:170px; border:1px solid #fb923c60; border-radius:50%; transform:rotate(-32deg); }
.storefront-scene__window { position:absolute; border:1px solid #ffffff38; border-radius:16px; box-shadow:0 24px 40px #0007; }
.storefront-scene__window--front { top:65px; left:7%; width:72%; padding:22px; background:linear-gradient(140deg,#24364d,#0e1929); transform:rotateY(-12deg) rotate(-8deg); animation:storefront-float 9s ease-in-out infinite; }
.storefront-scene__bar { display:flex; gap:5px; padding-bottom:18px; }
.storefront-scene__bar i { width:6px; height:6px; background:#fb923c; border-radius:50%; }
.storefront-scene__window span { font:700 9px/1.5 system-ui,sans-serif; letter-spacing:.12em; color:#c0ccdc; }
.storefront-scene__window strong { display:block; font:500 37px/1.15 "Oswald",sans-serif; color:#fff; margin:15px 0; }
.storefront-scene__blocks { display:flex; gap:8px; }
.storefront-scene__blocks i { height:25px; flex:1; border:1px solid #fb923c44; border-radius:4px; background:#f973161c; }
.storefront-scene__window--back { right:0; top:20px; width:55%; padding:24px; background:linear-gradient(145deg,#39475b,#182235); transform:rotate(12deg); z-index:-1; }
.storefront-scene__window b { display:block; color:#fb923c; font:650 48px/1.8 system-ui,sans-serif; }
.storefront-scene__window--back>i { display:block; height:4px; background:#ffffff25; margin-top:10px; }
.storefront-scene__chip { position:absolute; bottom:12px; right:0; display:grid; place-items:center; width:92px; height:92px; border-radius:22px; background:linear-gradient(135deg,#ffcc8a,#f97316 60%,#a23a0b); box-shadow:0 18px 40px #0007,inset 2px 3px 4px #ffe2ae66; color:#29170e; font:600 48px/1 "Oswald",sans-serif; transform:rotate(12deg); }
.storefront-section-heading { margin-bottom:24px; }
.storefront-section-heading h2 { margin:8px 0; }
.storefront-categories,.storefront-catalog,.storefront-recommended,.storefront-how,.storefront-faq { margin-top:clamp(48px,6vw,80px); }
.storefront-category-list { display:grid; gap:12px; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); }
.storefront-category-list button { align-items:center; background:var(--store-panel); border:1px solid var(--store-line); border-radius:12px; color:var(--store-ink); cursor:pointer; display:flex; font:600 14px/1.5 system-ui,sans-serif; justify-content:space-between; gap:12px; min-height:60px; padding:16px; text-align:left; }
.storefront-category-list button:hover,.storefront-category-list button[aria-pressed=true] { background:#f9731618; border-color:var(--store-accent); }
.storefront-category-list small { background:#ffffff0d; border-radius:30px; color:var(--store-accent); padding:4px 10px; }
.storefront-filters { align-items:end; background:var(--store-panel); border:1px solid var(--store-line); border-radius:16px; display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr)); padding:24px; }
.storefront-filters label,.store-checkout-form>label { color:var(--store-ink); display:grid; font:650 13px/1.5 system-ui,sans-serif; gap:8px; min-width:0; }
.storefront-filters input,.storefront-filters select,.store-checkout-form input,.store-checkout-form textarea { background:#07111f; border:1px solid #ffffff32; border-radius:8px; color:var(--store-ink); font:400 14px/1.5 system-ui,sans-serif; min-height:46px; padding:10px 12px; width:100%; min-width:0; }
.storefront-filters input::placeholder,.store-checkout-form input::placeholder { color:#95a6bd; opacity:1; }
.storefront-checkbox { align-items:center; display:flex!important; gap:10px!important; }
.storefront-checkbox input { accent-color:var(--store-accent); height:18px; min-height:18px; width:18px; }
.storefront-results { color:var(--store-muted); min-height:24px; margin:20px 0; }
.storefront-grid { display:grid; gap:24px; grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr)); align-items:stretch; }
.store-card { background:linear-gradient(160deg,#16253c,#0b1626 70%); border:1px solid var(--store-line); border-radius:18px; box-shadow:0 1px 0 #ffffff0d inset,0 18px 40px -28px #000; display:flex; flex-direction:column; min-width:0; overflow:hidden; transition:border-color .2s,transform .2s,box-shadow .2s; }
.store-card:hover,.store-card:focus-within { border-color:#fb923c99; box-shadow:0 1px 0 #ffffff14 inset,0 26px 50px -26px #f9731640; transform:translateY(-4px); }
.store-card[hidden] { display:none; }
.store-card__visual { align-items:center; background:radial-gradient(ellipse at 80% 10%,#f9731626,transparent 70%),#101e31; color:var(--store-accent); display:flex; justify-content:center; aspect-ratio:4/3; overflow:hidden; position:relative; text-decoration:none; border-bottom:1px solid var(--store-line); }
.store-card__visual picture { display:contents; }
.store-card__visual img { display:block; height:100%; width:100%; object-fit:cover; object-position:top center; transition:transform .5s ease; }
.store-card:hover .store-card__visual img { transform:scale(1.04); }
.store-card__visual::after { content:""; position:absolute; inset:auto 0 0; height:38%; background:linear-gradient(transparent,#0b1626d9); pointer-events:none; }
.store-card__visual>span:not(.store-card__badge) { font:500 26px/1.2 "Oswald",sans-serif; letter-spacing:.12em; }
.store-card__visual .store-card__badge { background:#f97316; border:1px solid #fdba74; border-radius:30px; color:#07111f; font:700 11px/1.5 system-ui,sans-serif; letter-spacing:.02em; padding:6px 11px; position:absolute; right:14px; top:14px; z-index:1; }
.store-card__body { display:flex; flex:1; flex-direction:column; padding:22px 24px 24px; }
.store-card__meta { color:var(--store-accent); font:700 11px/1.6 system-ui,sans-serif; letter-spacing:.1em; margin:0; text-transform:uppercase; }
.store-card h3 { margin:10px 0 10px; font-size:21px; line-height:1.3; }
.store-card h3 a { color:inherit; text-decoration:none; }
.store-card h3 a:hover { color:#fdba74; }
.store-card__description { color:var(--store-muted); display:-webkit-box; font-size:14px; line-height:1.65; margin:0; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; margin-bottom:20px; }
.store-card__buy { border-top:1px solid var(--store-line); margin-top:auto; padding-top:18px; }
.store-card__price { align-items:baseline; color:var(--store-ink); display:flex; flex-wrap:wrap; gap:4px 12px; justify-content:space-between; margin:0 0 14px; }
.store-card__price small { color:var(--store-muted); font:600 12px/1.4 system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.store-card__price span { color:#fff; font:600 28px/1.15 "Oswald",system-ui,sans-serif; letter-spacing:.01em; }
.store-card__price--request span { color:#fdba74; font-size:21px; }
.store-card__actions { display:grid; gap:8px; grid-template-columns:1fr 1fr; margin-top:0; }
.store-card__actions .storefront-button { font-size:14px; min-height:48px; padding:10px 14px; }
.store-card__actions .storefront-demo { grid-column:1/-1; }
.store-card__actions>:only-child { grid-column:1/-1; }
.storefront-demo { color:var(--store-accent); font-size:13px; font-weight:650; padding:10px; text-decoration:none; }
.storefront-empty { background:var(--store-panel); border:1px dashed #ffffff38; border-radius:16px; padding:32px; text-align:center; }
.storefront-empty p,.storefront-how li p,.storefront-faq details p { color:var(--store-muted); }
.storefront-pagination { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin:24px; }
.storefront-pagination button { background:var(--store-panel); border:1px solid var(--store-line); border-radius:8px; color:var(--store-ink); cursor:pointer; min-height:44px; min-width:44px; }
.storefront-pagination button[aria-current=page] { background:#f97316; border-color:var(--store-accent); color:#07111f; font-weight:700; }
.storefront-how ol { display:grid; gap:24px; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); list-style:none; padding:0; counter-reset:store-step; }
.storefront-how li { background:var(--store-panel); border:1px solid var(--store-line); border-radius:16px; padding:28px; counter-increment:store-step; }
.storefront-how li::before { content:"0" counter(store-step); display:block; color:var(--store-accent); font:500 30px/1 "Oswald",sans-serif; margin-bottom:24px; }
.storefront-how h3 { margin:0 0 16px; }
.storefront-faq details { border-bottom:1px solid var(--store-line); padding:22px 0; }
.storefront-faq summary { color:var(--store-ink); cursor:pointer; font-size:18px; font-weight:650; }
.storefront-faq details[open] summary { color:var(--store-accent); margin-bottom:16px; }
.storefront-download-dialog { --store-ink:#eef2f8; --store-line:#ffffff32; background:#0d192b; border:1px solid var(--store-line); border-radius:16px; box-shadow:0 20px 80px #0009; color:var(--store-ink); max-width:min(576px,calc(100vw - 32px)); padding:28px; color-scheme:dark; }
.storefront-download-dialog::backdrop { background:#050e1dcc; }
.storefront-download-dialog>div { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.storefront-download-dialog button { background:#ffffff0d; border:1px solid var(--store-line); border-radius:8px; color:var(--store-ink); font:inherit; padding:12px 16px; cursor:pointer; }
.storefront-download-dialog a:not(.storefront-button) { color:#fdba74; }
.storefront-toast { background:#16273e; border:1px solid #fb923c66; border-radius:12px; bottom:16px; color:#fff; left:50%; max-width:min(90vw,560px); padding:14px 20px; position:fixed; transform:translateX(-50%); z-index:1000; box-shadow:0 10px 40px #0008; }
.store-product__hero { background:radial-gradient(ellipse at 100% 0,#f973161c,transparent 65%),#0d192b; border:1px solid var(--store-line); border-radius:24px; padding:clamp(24px,4vw,48px); }
.store-product__lead { color:var(--store-muted); font-size:18px; max-width:60ch; }
.store-product__cover { background:#0d192b; border:1px solid var(--store-line); border-radius:16px; margin:24px 0 32px; overflow:hidden; }
.store-product__cover img { display:block; height:auto; margin-inline:auto; max-height:640px; max-width:100%; object-fit:contain; }
.store-product__gallery { margin-top:48px; }
.store-product__gallery>h2 { margin:0 auto 12px; text-align:center; }
.store-product__gallery>p { color:var(--store-muted); margin:0 auto 32px; max-width:62ch; text-align:center; }
.store-product__cover figcaption { padding:16px 24px; border-top:1px solid var(--store-line); color:var(--store-muted); font-size:14px; }
.store-product__content,.store-product__facts,.store-product__list,.store-product__terms { margin:40px 0; max-width:85ch; }
.store-product__content { color:var(--store-muted); font-size:17px; }
.store-product__content a,.store-product__list a,.store-dynamic-panel a:not(.storefront-button) { color:var(--store-accent); }
.store-product__facts { display:grid; gap:20px; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); }
.store-product__facts>div,.store-product__terms { background:var(--store-panel); border:1px solid var(--store-line); border-radius:12px; padding:24px; }
.store-product__facts h2 { font:650 16px/1.4 system-ui,sans-serif; margin:0 0 12px; color:var(--store-accent); }
.store-product__facts p,.store-product__facts ul { margin:4px 0; }
.store-product__list li { margin:10px 0; color:var(--store-muted); }
.store-product__hero { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); align-items:center; gap:32px; }
.store-product__intro { min-width:0; }
.store-product__buy { margin:20px 0 4px; max-width:560px; padding:22px; border:1px solid #fb923c55; border-radius:16px; background:linear-gradient(140deg,#f973161f,#f9731608 60%),#0d192bcc; box-shadow:0 20px 50px -30px #f9731666; }
.store-product__buy .store-card__price { margin:0 0 16px; }
.store-product__buy .store-card__price span { font-size:clamp(30px,3.4vw,40px); }
.store-product__buy .store-card__actions { display:flex; flex-wrap:wrap; }
.store-product__buy .store-card__actions .storefront-button { flex:1 1 200px; font-size:15px; min-height:52px; }
.store-product__buy-notes { display:flex; flex-wrap:wrap; gap:6px 18px; list-style:none; margin:14px 0 0; padding:0; color:var(--store-muted); font-size:13px; }
.store-product__buy-notes li::before { content:"✓"; color:var(--store-accent); font-weight:700; margin-right:8px; }
.store-product a.store-product__overview-link { display:inline-flex; gap:16px; margin-top:24px; color:#c4d0df; font-size:14px; text-decoration:none; }
.store-product__overview-link span { color:var(--store-accent); }
.store-product__scene { position:relative; height:350px; min-width:0; perspective:900px; isolation:isolate; }
.store-product__orbit { position:absolute; width:100%; height:140px; top:100px; border:1px solid #fb923c66; border-radius:50%; transform:rotate(-25deg); }
.store-product__model { position:absolute; width:180px; height:180px; left:calc(50% - 90px); top:75px; transform-style:preserve-3d; transform:rotateX(-18deg) rotateY(-28deg); animation:store-product-float 9s ease-in-out infinite; }
.store-product__model-face { position:absolute; width:180px; height:180px; border:1px solid #ffbf7d80; backface-visibility:hidden; }
.store-product__model-face--front { padding:22px; background:linear-gradient(135deg,#ffb66a,#f97316 55%,#bc490c); transform:translateZ(90px); color:#291709; box-shadow:inset 0 0 25px #ffd9a833; }
.store-product__model-face--front span { display:block; font:750 9px/1.6 system-ui,sans-serif; letter-spacing:.14em; }
.store-product__model-face--front strong { display:block; font:600 48px/1.4 "Oswald",sans-serif; margin:10px 0; }
.store-product__model-face--front i { display:inline-block; width:32px; height:5px; background:#57270880; margin-right:5px; }
.store-product__model-face--right { transform:rotateY(90deg) translateZ(90px); background:repeating-linear-gradient(0deg,transparent 0 24px,#ffffff09 25px 26px),linear-gradient(135deg,#54331f,#251b16); }
.store-product__model-face--top { transform:rotateX(90deg) translateZ(90px); background:linear-gradient(135deg,#ffe0ad,#f59b47); }
.store-product__model-tag { position:absolute; bottom:20px; left:0; width:100%; text-align:center; color:#bbc7d6; font:650 10px/1.6 system-ui,sans-serif; letter-spacing:.14em; }
.store-product__model-shadow { position:absolute; left:20%; bottom:50px; width:60%; height:24px; background:#0008; border-radius:50%; filter:blur(12px); z-index:-1; }
.store-product__description { margin-top:48px; padding:clamp(24px,4vw,40px); border:1px solid var(--store-line); border-radius:18px; background:#0d192b; scroll-margin-top:32px; }
.store-product__description .store-product__content { margin:0; max-width:85ch; overflow-wrap:anywhere; }
.store-product__content h2,.store-product__content h3 { margin-top:32px; }
.store-product__content img { max-width:100%; height:auto; }
.store-product__content table { display:block; overflow-x:auto; max-width:100%; }
.store-product__content pre { white-space:pre-wrap; overflow-wrap:anywhere; }
.store-product__facts { max-width:none; }
.store-product__details-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; max-width:900px; margin-inline:auto; }
.store-product__details-grid>.store-product__list,.store-product__details-grid>.store-product__terms { max-width:none; margin:0; padding:28px; background:#0d192b; border:1px solid var(--store-line); border-radius:16px; min-width:0; overflow-wrap:anywhere; }
.store-product__details-grid h2 { font-size:28px; margin:0 0 20px; }
.store-product__details-grid ul { padding-left:22px; }
.store-product__preview-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; max-width:900px; margin-inline:auto; }
.store-product__preview-grid .store-product__cover { margin:0; }
.store-product__preview-grid img { width:100%; max-height:none; object-fit:contain; }
.store-product__description,.store-product__facts,.store-product__gallery { max-width:900px; margin-inline:auto; }
@keyframes store-product-float { 0%,100% { transform:translateY(0) rotateX(-18deg) rotateY(-28deg); } 50% { transform:translateY(-12px) rotateX(-14deg) rotateY(-20deg); } }
@media(max-width:900px) { .store-product__hero { grid-template-columns:minmax(0,1fr); } .store-product__scene { width:min(100%,400px); margin:auto; } }
@media(max-width:600px) { .store-product__details-grid,.store-product__preview-grid { grid-template-columns:minmax(0,1fr); } .store-product__preview-grid .store-product__cover:first-child { grid-column:auto; } .store-product__scene { height:300px; } .store-product__model { top:50px; } .store-product__details-grid>.store-product__list,.store-product__details-grid>.store-product__terms { padding:24px; } }
@media(prefers-reduced-motion:reduce) { .store-product__model { animation:none; } }
.store-dynamic-panel { background:radial-gradient(ellipse at 100% 0,#f9731617,transparent 65%),var(--store-panel); border:1px solid var(--store-line); border-radius:20px; margin:32px auto; max-width:880px; padding:clamp(24px,4vw,48px); }
.store-dynamic-panel h1 { font-size:clamp(32px,5vw,52px); }
.store-dynamic-footer { display:flex; flex-wrap:wrap; gap:24px; justify-content:center; padding:32px; border-top:1px solid #ffffff24; font:14px/1.6 system-ui,sans-serif; }
.store-dynamic-footer a { color:#fb923c; }
.store-dynamic-nav { display:flex; flex-wrap:wrap; gap:20px; }
.store-dynamic-nav a { color:#d9e3ef; }
.store-cart-line { align-items:center; border-bottom:1px solid var(--store-line); display:flex; flex-wrap:wrap; gap:16px; justify-content:space-between; padding:20px 0; }
.store-cart-line button { background:#ffffff08; border:1px solid var(--store-line); border-radius:8px; color:var(--store-ink); cursor:pointer; font:inherit; padding:10px 14px; min-height:44px; }
.store-cart-total { font-size:24px; font-weight:750; }
.store-checkout-form { display:grid; gap:20px; margin-top:24px; }
.store-checkout-form textarea { min-height:120px; resize:vertical; }
.store-checkout-form .store-optional { color:var(--store-muted); font-size:12px; font-weight:400; }
.store-checkout-terms { background:#ffffff08; border-radius:10px; padding:16px; }
.storefront-error { color:#fca5a5; }
.store-access-items { padding-left:22px; }
.store-access-items li { margin:12px 0; }
.store-access-items a { color:var(--store-accent); margin-left:10px; }
.storefront :focus-visible,.store-product :focus-visible,.store-dynamic :focus-visible,.store-dynamic-nav :focus-visible { outline:2px solid #fdba74; outline-offset:4px; }
 0%,100% { transform:translateY(0) rotateY(-12deg) rotate(-8deg); } 50% { transform:translateY(-10px) rotateY(-12deg) rotate(-8deg); } }
@media(max-width:900px) { .storefront-hero { grid-template-columns:minmax(0,1fr); } .storefront-scene { width:min(100%,420px); margin:0 auto; } }
@media(max-width:600px) {
    .storefront-hero,.store-product__hero { border-radius:16px; padding:24px; }
    .storefront-hero__actions a { flex:1 1 calc(50% - 10px); }
    .storefront-scene { height:320px; }
    .storefront-scene__window--front { padding:18px; }
    .storefront-scene__window strong { font-size:30px; }
    .storefront-scene__window--back { padding:18px; }
    .storefront-scene__chip { width:72px; height:72px; font-size:38px; }
    .storefront-filters { grid-template-columns:1fr 1fr; padding:20px; }
    .storefront-filters label:first-child { grid-column:1/-1; }
    .storefront-category-list { grid-template-columns:1fr; }
    .store-card__body { padding:20px; }
    .store-dynamic-panel { margin:16px 0; }
    .store-dynamic .store-cart-line { align-items:flex-start; flex-direction:column; }
    .store-dynamic-nav { font-size:12px; gap:12px; }
    .store-dynamic .storefront-button { width:100%; }
}
@media(max-width:390px) {
    .storefront-filters { grid-template-columns:1fr; }
    .storefront-filters label:first-child { grid-column:auto; }
    .storefront-hero__actions a { flex:1 1 100%; }
    .store-card__actions { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .storefront-scene__window--front { animation:none; } .store-card,.store-card__visual img { transition:none; } .store-card:hover,.store-card:focus-within { transform:none; } .store-card:hover .store-card__visual img { transform:none; } }

/* Product page: one centred column, consistent section rhythm */
.published-main:has(.store-product),.published-main:has(.storefront) { --store-column:960px; }
.store-product>section,.store-product>.store-product__details-grid { box-sizing:border-box; margin:clamp(48px,6vw,72px) auto 0; max-width:var(--store-column); width:100%; }
.store-product .storefront-section-heading,.store-product__gallery>h2,.store-product__gallery>p { text-align:center; }
.store-product .storefront-section-heading { margin:0 auto 28px; max-width:720px; }
.store-product .storefront-section-heading h2 { margin:6px 0 0; }
.store-product__description .store-product__content { margin:0 auto; max-width:72ch; }
.store-product__preview-grid { grid-template-columns:minmax(0,1fr) !important; gap:28px; max-width:none; }
.store-product__preview-grid .store-product__cover { box-shadow:0 30px 60px -40px #000; }
.store-product__cover figcaption { text-align:center; }
.store-product .store-product__facts { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); }
.store-product .store-product__facts>div { text-align:center; padding:22px; }
.store-product .store-product__facts h2 { color:var(--store-muted); font:700 12px/1.5 system-ui,sans-serif; font-size:12px !important; letter-spacing:.12em !important; line-height:1.5 !important; margin:0 0 8px; text-transform:uppercase; }
.store-product .store-product__facts p,.store-product .store-product__facts ul { color:var(--store-ink); font-size:17px; font-weight:600; list-style:none; margin:0; padding:0; }
.store-product .store-product__details-grid h2 { font:600 24px/1.3 system-ui,sans-serif; margin:0 0 16px; text-align:center; }
.store-product .store-product__details-grid ul { list-style:none; margin:0 auto; max-width:60ch; padding:0; }
.store-product .store-product__details-grid li { border-bottom:1px solid var(--store-line); margin:0; padding:12px 0 12px 30px; position:relative; }
.store-product .store-product__details-grid li:last-child { border-bottom:0; }
.store-product .store-product__details-grid li::before { color:var(--store-accent); content:"✓"; font-weight:700; left:4px; position:absolute; }
.store-product .store-product__terms p { margin:0 auto; max-width:65ch; text-align:center; }
.store-product .storefront-recommended .storefront-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),340px)); justify-content:center; }
