/* Shop-only styles. The existing home page styles and JavaScript are independent. */
@font-face { font-family:"Fullblack Display"; src:url("assets/fonts/InterVariable.woff2") format("woff2"); font-weight:100 900; font-style:normal; font-display:swap; }
.awshop { background:#fff; }
.awshop #shop-main, .awshop .gallery-dialog { --ink:#171719; --muted:#656569; --line:#dedee1; --soft:#f5f5f7; --amber:#f2bc35; color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif; font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; }
.awshop :is(#shop-main, .gallery-dialog) *, .awshop :is(#shop-main, .gallery-dialog) *::before, .awshop :is(#shop-main, .gallery-dialog) *::after { box-sizing:border-box; }

.awshop :is(#shop-main, .gallery-dialog) h1, .awshop :is(#shop-main, .gallery-dialog) h2, .awshop :is(#shop-main, .gallery-dialog) h3, .awshop :is(#shop-main, .gallery-dialog) p, .awshop :is(#shop-main, .gallery-dialog) figure, .awshop :is(#shop-main, .gallery-dialog) dl { margin:0; }
.awshop :is(#shop-main, .gallery-dialog) h1, .awshop :is(#shop-main, .gallery-dialog) h2, .awshop :is(#shop-main, .gallery-dialog) h3 { line-height:1.08; letter-spacing:-.045em; font-weight:600; }
.awshop :is(#shop-main, .gallery-dialog) button, .awshop :is(#shop-main, .gallery-dialog) summary { font:inherit; }
.awshop :is(#shop-main, .gallery-dialog) button, .awshop :is(#shop-main, .gallery-dialog) a, .awshop :is(#shop-main, .gallery-dialog) summary { -webkit-tap-highlight-color:transparent; }
.awshop :is(#shop-main, .gallery-dialog) a { color:inherit; text-underline-offset:4px; }
.awshop :is(#shop-main, .gallery-dialog) img { display:block; max-width:100%; }
.awshop :is(#shop-main, .gallery-dialog) button { color:inherit; }
.awshop :is(#shop-main, .gallery-dialog) :focus-visible { outline:3px solid #ab7800; outline-offset:5px; }
.awshop :is(#shop-main, .gallery-dialog) .shell { width:min(1200px,calc(100% - 96px)); margin-inline:auto; }
.awshop :is(#shop-main, .gallery-dialog) .eyebrow { font-size:.875rem; line-height:1.4; letter-spacing:.1em; font-weight:600; color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) summary::-webkit-details-marker { display:none; }
.awshop :is(#shop-main, .gallery-dialog) .product-hero, .awshop :is(#shop-main, .gallery-dialog) .product-gallery { font-family:"Fullblack Display",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif; }
.awshop :is(#shop-main, .gallery-dialog) .product-hero { padding:48px 24px 24px; text-align:center; overflow:hidden; background:radial-gradient(ellipse 660px 390px at 50% 370px,#f3f4f6 0%,#f3f4f680 48%,#ffffff00 78%),#fff; }
.awshop :is(#shop-main, .gallery-dialog) .product-hero h1 { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px; margin:0; font-size:clamp(2.5rem,4.3vw,3.5rem); font-weight:540; letter-spacing:-.055em; }
.awshop :is(#shop-main, .gallery-dialog) .fullblack-name { display:inline-block; background:#171719; color:#fff; font-size:.84em; font-weight:590; padding:.18em .3em .21em; border-radius:6px; letter-spacing:-.055em; box-shadow:inset 0 0 0 1px #000; }
.awshop :is(#shop-main, .gallery-dialog) .product-name { display:inline-block; }
.awshop :is(#shop-main, .gallery-dialog) .product-area { font-size:.57em; letter-spacing:-.035em; font-weight:450; white-space:nowrap; }
.awshop :is(#shop-main, .gallery-dialog) .hero-price { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px; margin-top:28px; }
.awshop :is(#shop-main, .gallery-dialog) .hero-price strong { font-size:1.875rem; letter-spacing:-.045em; font-weight:600; }
.awshop :is(#shop-main, .gallery-dialog) .hero-price span { font-size:.875rem; color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .hero-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; margin:16px 0 0; }
.awshop :is(#shop-main, .gallery-dialog) .hero-actions .button { min-height:56px; min-width:208px; padding:15px 26px; font-size:1rem; line-height:1.4; font-weight:550; }
.awshop :is(#shop-main, .gallery-dialog) .hero-actions .button-shop-soon { background:var(--amber); color:var(--ink); border-color:var(--amber); box-shadow:0 5px 18px #f2bc3524; }
.awshop :is(#shop-main, .gallery-dialog) .hero-actions .button-restocking { background:var(--ink); color:#fff; border-color:var(--ink); }
.awshop :is(#shop-main, .gallery-dialog) .button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 23px; border:1px solid transparent; border-radius:999px; text-decoration:none; font-size:.9375rem; font-weight:500; }
.awshop :is(#shop-main, .gallery-dialog) .button-dark { color:#fff; background:var(--ink); }
.awshop :is(#shop-main, .gallery-dialog) .button-light { color:var(--ink); background:#fff; border-color:#cfcfd4; }
.awshop :is(#shop-main, .gallery-dialog) .button-light:hover { background:#f5f5f7; border-color:#96969c; }
.awshop :is(#shop-main, .gallery-dialog) .button[disabled] { opacity:1; cursor:default; }
.awshop :is(#shop-main, .gallery-dialog) .read-more { min-width:124px; }
/* Native disclosure: priority access works without scripts or a signup service. */
.awshop :is(#shop-main, .gallery-dialog) .priority-access { width:min(600px,100%); margin:12px auto 0; text-align:left; }
.awshop :is(#shop-main, .gallery-dialog) .priority-access>summary { display:flex; gap:14px; width:min(452px,100%); min-height:60px; margin:auto; padding:17px 24px; background:var(--amber); border-color:var(--amber); color:var(--ink); font-size:.875rem; font-weight:600; letter-spacing:.065em; line-height:1.4; list-style:none; cursor:pointer; box-shadow:0 6px 22px #f2bc3526; }
.awshop :is(#shop-main, .gallery-dialog) .priority-access>summary::marker { content:""; }
.awshop :is(#shop-main, .gallery-dialog) .priority-access>summary:hover, .awshop :is(#shop-main, .gallery-dialog) .priority-email-action:hover { background:#eab32a; border-color:#eab32a; }
.awshop :is(#shop-main, .gallery-dialog) .priority-access:not([open])>.priority-panel { display:none; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel { margin-top:20px; padding:36px 38px 30px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 16px 48px #17171908; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel h2 { font-size:2rem; font-weight:560; line-height:1.15; letter-spacing:-.04em; margin-bottom:22px; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel>p { color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel>p+p { margin-top:20px; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel ul { margin:12px 0 20px; padding-left:22px; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel li { padding-left:3px; margin-top:5px; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel .priority-email-action { width:100%; min-height:56px; margin-top:26px; padding:15px 18px; background:var(--amber); border-color:var(--amber); color:var(--ink); font-size:.8125rem; font-weight:600; letter-spacing:.04em; line-height:1.45; text-align:center; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel>.priority-email { margin-top:18px; text-align:center; }
.awshop :is(#shop-main, .gallery-dialog) .priority-email a { color:var(--ink); font-size:1.25rem; font-weight:500; letter-spacing:-.025em; overflow-wrap:anywhere; }
.awshop :is(#shop-main, .gallery-dialog) .priority-panel>.priority-fallback { margin-top:16px; font-size:.8125rem; line-height:1.6; text-align:center; }
.awshop :is(#shop-main, .gallery-dialog) .product-stage { position:relative; isolation:isolate; display:block; width:min(580px,100%); margin:32px auto 0; padding:0; border:0; background:none; cursor:zoom-in; }
/* Ambient light fades into the white page; the photograph itself stays original. */
.awshop :is(#shop-main, .gallery-dialog) .product-stage::before { content:""; position:absolute; inset:-40px -110px 54px; z-index:-1; background:radial-gradient(ellipse closest-side at 50% 50%,#cdd3dd70 0%,#e4e7ed80 42%,#f2f3f54a 68%,#ffffff00 100%); pointer-events:none; }
.awshop :is(#shop-main, .gallery-dialog) .product-stage::after { content:""; position:absolute; width:70%; max-width:380px; height:42px; left:50%; top:calc(100% - 68px); transform:translateX(-50%); z-index:-1; background:radial-gradient(ellipse,#171c252e 0%,#171c2514 32%,#171c2505 54%,transparent 72%); pointer-events:none; }
.awshop :is(#shop-main, .gallery-dialog) .hero-photo { position:relative; display:block; width:324px; max-width:86%; margin:auto; filter:drop-shadow(0 10px 9px #161b232b) drop-shadow(0 30px 24px #161b2329); transition:transform .4s ease,filter .4s ease; }
.awshop :is(#shop-main, .gallery-dialog) .hero-product { position:relative; width:100%; height:auto; object-fit:contain; clip-path:inset(.5% 0 .7% .4%); }
.awshop :is(#shop-main, .gallery-dialog) .product-stage:hover .hero-photo { transform:translateY(-3px); filter:drop-shadow(0 13px 10px #161b2330) drop-shadow(0 34px 26px #161b2330); }
.awshop :is(#shop-main, .gallery-dialog) .enlarge-hint { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:27px; font-size:.875rem; color:var(--muted); white-space:nowrap; }
.awshop :is(#shop-main, .gallery-dialog) .enlarge-hint svg { width:17px; height:17px; stroke:currentColor; stroke-width:1.4; fill:none; }
.awshop :is(#shop-main, .gallery-dialog) .product-gallery { padding:58px 0 64px; }
.awshop :is(#shop-main, .gallery-dialog) .product-gallery.shell { width:min(960px,calc(100% - 96px)); }
.awshop :is(#shop-main, .gallery-dialog) .gallery-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-card { --crop-scale:1; --crop-hover:1.035; position:relative; padding:0; border:0; background:#ececee; border-radius:16px; overflow:hidden; text-align:left; cursor:zoom-in; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-card:nth-child(1), .awshop :is(#shop-main, .gallery-dialog) .gallery-card:nth-child(4) { --crop-scale:1.07; --crop-hover:1.1; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-image { display:block; background:var(--soft); aspect-ratio:4 / 5; overflow:hidden; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-image img { width:100%; height:100%; object-fit:cover; object-position:50% 50%; transform:scale(var(--crop-scale)); transition:transform .4s ease; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-card:last-child .gallery-image img { object-position:50% 55%; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-card:hover img { transform:scale(var(--crop-hover)); }
.awshop :is(#shop-main, .gallery-dialog) .gallery-label { position:absolute; inset:auto 0 0; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:54px 16px 17px; font-size:1rem; font-weight:550; line-height:1.25; letter-spacing:-.025em; white-space:normal; overflow-wrap:anywhere; color:#fff; background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.72) 100%); text-shadow:0 1px 8px #0003; }
.awshop :is(#shop-main, .gallery-dialog) .gallery-label>span { display:grid; place-items:center; width:24px; height:24px; flex-shrink:0; border:1px solid #ffffff70; border-radius:50%; background:#ffffff14; font-size:1.125rem; font-weight:400; }
.awshop :is(#shop-main, .gallery-dialog) .product-overview { padding:86px 0; background:var(--soft); scroll-margin-top:10px; }
.awshop :is(#shop-main, .gallery-dialog) .overview-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:90px; }
.awshop :is(#shop-main, .gallery-dialog) .overview-grid h2 { font-size:clamp(2.1rem,3.8vw,3.35rem); margin:20px 0 24px; }
.awshop :is(#shop-main, .gallery-dialog) .origin-copy { color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .overview-copy>.large-copy { font-size:1.5rem; font-weight:500; line-height:1.35; letter-spacing:-.025em; margin-bottom:14px; }
.awshop :is(#shop-main, .gallery-dialog) .overview-copy>p:not(.large-copy) { color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .info-accordion { border-top:1px solid #d9d9dd; }
.awshop :is(#shop-main, .gallery-dialog) .info-accordion:first-of-type { margin-top:28px; }
.awshop :is(#shop-main, .gallery-dialog) .info-accordion:last-of-type { border-bottom:1px solid #d9d9dd; }
.awshop :is(#shop-main, .gallery-dialog) .info-accordion summary { padding:20px 0; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; list-style:none; font-size:1rem; font-weight:600; }
.awshop :is(#shop-main, .gallery-dialog) .accordion-icon { position:relative; flex:0 0 20px; height:20px; }
.awshop :is(#shop-main, .gallery-dialog) .accordion-icon::before, .awshop :is(#shop-main, .gallery-dialog) .accordion-icon::after { position:absolute; top:9px; left:3px; content:""; width:14px; height:1px; background:currentColor; }
.awshop :is(#shop-main, .gallery-dialog) .accordion-icon::after { transform:rotate(90deg); transition:transform .2s; }
.awshop :is(#shop-main, .gallery-dialog) details[open] .accordion-icon::after { transform:rotate(0); }
.awshop :is(#shop-main, .gallery-dialog) .accordion-content { color:var(--muted); padding:0 35px 22px 0; }
.awshop :is(#shop-main, .gallery-dialog) .accordion-content p+p { margin-top:12px; }
.awshop :is(#shop-main, .gallery-dialog) .accordion-content strong { color:var(--ink); font-weight:500; }
.awshop :is(#shop-main, .gallery-dialog) .small-copy { font-size:.875rem; }
.awshop :is(#shop-main, .gallery-dialog) .product-details { padding:88px 0 82px; }
.awshop :is(#shop-main, .gallery-dialog) .details-heading { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:70px; margin-bottom:42px; }
.awshop :is(#shop-main, .gallery-dialog) .details-heading h2 { font-size:clamp(2.4rem,4.6vw,3.75rem); margin-top:16px; }
.awshop :is(#shop-main, .gallery-dialog) .details-heading>p { color:var(--muted); padding-top:6px; }
.awshop :is(#shop-main, .gallery-dialog) .details-content { margin-top:42px; }
.awshop :is(#shop-main, .gallery-dialog) .construction-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:32px; align-items:start; }
.awshop :is(#shop-main, .gallery-dialog) .specification-panel { padding:8px 0 0; }
.awshop :is(#shop-main, .gallery-dialog) .specification-panel h3 { font-size:1.5rem; margin-bottom:14px; }
.awshop :is(#shop-main, .gallery-dialog) .specifications { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0 30px; }
.awshop :is(#shop-main, .gallery-dialog) .specifications>div { display:flex; flex-direction:column; gap:9px; padding:22px 0; border-top:1px solid #e6e6e9; font-size:.9375rem; }
.awshop :is(#shop-main, .gallery-dialog) .specifications .keep-together { display:inline-block; max-width:100%; white-space:nowrap; }
.awshop :is(#shop-main, .gallery-dialog) .specifications dt { color:var(--muted); font-size:.875rem; }
.awshop :is(#shop-main, .gallery-dialog) .specifications dd { font-weight:500; margin:0; font-size:1.125rem; line-height:1.45; letter-spacing:-.015em; }
.awshop :is(#shop-main, .gallery-dialog) .installation-note { margin-top:38px; padding:28px 32px; background:var(--soft); border-radius:16px; display:flex; align-items:center; gap:28px; }
.awshop :is(#shop-main, .gallery-dialog) .installation-number { font-size:3rem; line-height:1; letter-spacing:-.055em; font-weight:600; white-space:nowrap; }
.awshop :is(#shop-main, .gallery-dialog) .installation-number small { font-size:1rem; font-weight:400; letter-spacing:0; }
.awshop :is(#shop-main, .gallery-dialog) .installation-note p { color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .installation-note strong { color:var(--ink); font-weight:600; }
.awshop :is(#shop-main, .gallery-dialog) .suitability-note { max-width:960px; margin-top:22px; color:var(--muted); font-size:.875rem; line-height:1.7; }
/* Existing shop stories, restyled with the same typography and spacing. */
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths { background:#171719; color:#fff; padding:86px max(48px,calc((100% - 1200px)/2)); }
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths>header { display:grid; grid-template-columns:1fr 1fr; column-gap:70px; align-items:start; }
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths .eyebrow { grid-column:1/-1; color:#c6c6cb; margin-bottom:18px; }
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths h2 { font-size:clamp(2.4rem,4.4vw,3.8rem); }
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths>header>p:last-child { color:#bdbdc3; }
.awshop :is(#shop-main, .gallery-dialog) .shop-strengths strong { color:#fff; font-weight:500; }
.awshop :is(#shop-main, .gallery-dialog) .strengths-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:34px; margin-top:56px; }
.awshop :is(#shop-main, .gallery-dialog) .strengths-grid article { border-top:1px solid #49494e; padding-top:20px; }
.awshop :is(#shop-main, .gallery-dialog) .strengths-grid article>span { color:#a3a3ab; font-size:.875rem; }
.awshop :is(#shop-main, .gallery-dialog) .strengths-grid h3 { font-size:1.375rem; letter-spacing:-.02em; margin:17px 0 14px; }
.awshop :is(#shop-main, .gallery-dialog) .strengths-grid p { color:#bdbdc3; font-size:.9375rem; }
.awshop :is(#shop-main, .gallery-dialog) .founder-story { padding:86px max(48px,calc((100% - 1200px)/2)); display:grid; grid-template-columns:1fr 1fr; column-gap:70px; }
.awshop :is(#shop-main, .gallery-dialog) .founder-story .eyebrow { grid-column:1/-1; margin-bottom:18px; }
.awshop :is(#shop-main, .gallery-dialog) .nordic-map { margin-top:24px; }
.awshop :is(#shop-main, .gallery-dialog) .nordic-map img { width:128px; height:auto; }
.awshop :is(#shop-main, .gallery-dialog) .founder-story h2 { font-size:clamp(2.1rem,4vw,3.3rem); }
.awshop :is(#shop-main, .gallery-dialog) .founder-story>p:last-child { color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .shop-performance { padding:80px max(48px,calc((100% - 1200px)/2)); background:#171719; color:#fff; }
.awshop :is(#shop-main, .gallery-dialog) .shop-performance .eyebrow { color:#c6c6cb; }
.awshop :is(#shop-main, .gallery-dialog) .shop-performance h2 { font-size:clamp(2.4rem,4.4vw,3.7rem); margin:16px 0 40px; }
.awshop :is(#shop-main, .gallery-dialog) .performance-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; }
.awshop :is(#shop-main, .gallery-dialog) .performance-grid article { padding-top:20px; border-top:1px solid #49494e; }
.awshop :is(#shop-main, .gallery-dialog) .performance-grid strong { display:block; font-size:clamp(1.5rem,2.35vw,2rem); line-height:1.18; letter-spacing:-.04em; font-weight:600; margin-bottom:16px; }
.awshop :is(#shop-main, .gallery-dialog) .performance-grid p, .awshop :is(#shop-main, .gallery-dialog) .performance-note { color:#bdbdc3; font-size:.9375rem; }
.awshop :is(#shop-main, .gallery-dialog) .performance-note { margin-top:32px; font-size:.875rem; }
.awshop :is(#shop-main, .gallery-dialog) .shop-callout { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:80px max(48px,calc((100% - 1200px)/2)); }
.awshop :is(#shop-main, .gallery-dialog) .shop-callout h2 { font-size:clamp(2.3rem,4.3vw,3.5rem); margin-top:18px; }
.awshop :is(#shop-main, .gallery-dialog) .shop-callout-copy { align-self:center; color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .shop-callout .actions { margin-top:24px; }
.awshop :is(#shop-main, .gallery-dialog) .button-amber { background:var(--ink); color:#fff; }
.awshop :is(#shop-main, .gallery-dialog) .button-amber:hover { background:#36363a; }
.awshop .gallery-dialog { width:min(1000px,calc(100vw - 40px)); max-height:calc(100dvh - 40px); padding:20px 24px; border:0; border-radius:20px; background:#f7f7f8; color:var(--ink); box-shadow:0 20px 90px #0003; }
.awshop .gallery-dialog:not([open]) { display:none; }
.awshop .gallery-dialog::backdrop { background:#101014aa; backdrop-filter:blur(8px); }
.awshop :is(#shop-main, .gallery-dialog) .dialog-toolbar { display:flex; align-items:center; justify-content:space-between; }
.awshop :is(#shop-main, .gallery-dialog) .dialog-counter { font-size:.875rem; color:var(--muted); }
.awshop :is(#shop-main, .gallery-dialog) .dialog-close { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:#fff; font-size:1.65rem; line-height:1; cursor:pointer; }
.awshop .gallery-dialog figure { margin:10px auto; }
.awshop :is(#shop-main, .gallery-dialog) .expanded-image { width:100%; height:min(65dvh,650px); object-fit:contain; }
.awshop .gallery-dialog figcaption { text-align:center; font-size:.9375rem; margin-top:15px; }
.awshop :is(#shop-main, .gallery-dialog) .dialog-controls { display:flex; justify-content:center; gap:14px; margin-top:18px; }
.awshop :is(#shop-main, .gallery-dialog) .dialog-controls button { min-height:44px; border:1px solid var(--line); border-radius:999px; background:#fff; padding:8px 20px; cursor:pointer; font-size:.875rem; }
/* Two columns leave room for the complete localized adapter phrase. */
@media(min-width:761px) and (max-width:1280px) {
  .awshop #shop-main .specifications { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(min-width:1700px) { .awshop :is(#shop-main, .gallery-dialog) .hero-photo { width:360px; } .awshop :is(#shop-main, .gallery-dialog) .product-hero { padding-top:60px; } }
@media(max-width:1050px) {
  .awshop :is(#shop-main, .gallery-dialog) .shell { width:calc(100% - 64px); }
  .awshop :is(#shop-main, .gallery-dialog) .overview-grid { gap:48px; }
  .awshop :is(#shop-main, .gallery-dialog) .construction-grid { grid-template-columns:1fr; gap:22px; }
  .awshop :is(#shop-main, .gallery-dialog) .specifications { display:grid; grid-template-columns:1fr 1fr; gap:0 34px; }
  .awshop :is(#shop-main, .gallery-dialog) .specification-panel { padding-top:0; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-strengths, .awshop :is(#shop-main, .gallery-dialog) .founder-story, .awshop :is(#shop-main, .gallery-dialog) .shop-performance, .awshop :is(#shop-main, .gallery-dialog) .shop-callout { padding-left:32px; padding-right:32px; }
  .awshop :is(#shop-main, .gallery-dialog) .strengths-grid { gap:24px; }
  .awshop :is(#shop-main, .gallery-dialog) .performance-grid { grid-template-columns:1fr 1fr; gap:34px; }
}
@media(max-width:760px) {

  .awshop :is(#shop-main, .gallery-dialog) .shell { width:calc(100% - 40px); }
  .awshop :is(#shop-main, .gallery-dialog) .product-hero { padding:30px 20px 18px; background:radial-gradient(ellipse 270px 270px at 50% 310px,#f3f4f6 0%,#f3f4f680 48%,#ffffff00 78%),#fff; }
  .awshop :is(#shop-main, .gallery-dialog) .eyebrow { font-size:.8125rem; letter-spacing:.06em; }
  .awshop :is(#shop-main, .gallery-dialog) .product-hero h1 { gap:10px; font-size:2.2rem; line-height:1.12; }
  .awshop :is(#shop-main, .gallery-dialog) .product-name { flex-basis:100%; }
  .awshop :is(#shop-main, .gallery-dialog) .fullblack-name { font-size:1em; padding:.17em .3em .21em; }
  .awshop :is(#shop-main, .gallery-dialog) .hero-price { flex-direction:column; gap:2px; margin-top:22px; }
  .awshop :is(#shop-main, .gallery-dialog) .hero-price span { font-size:.8125rem; }
  .awshop :is(#shop-main, .gallery-dialog) .hero-actions { flex-direction:column; gap:10px; margin-top:16px; }
  .awshop :is(#shop-main, .gallery-dialog) .hero-actions .button { width:min(280px,100%); min-width:0; min-height:54px; padding:14px 22px; font-size:.9375rem; }
  .awshop :is(#shop-main, .gallery-dialog) .priority-access>summary { width:min(320px,100%); min-height:58px; padding:16px 18px; font-size:.8125rem; letter-spacing:.045em; }
  .awshop :is(#shop-main, .gallery-dialog) .priority-panel { padding:26px 22px 24px; border-radius:20px; }
  .awshop :is(#shop-main, .gallery-dialog) .priority-panel h2 { font-size:1.6rem; }
  .awshop :is(#shop-main, .gallery-dialog) .priority-panel .priority-email-action { padding:14px 12px; font-size:.75rem; }
  .awshop :is(#shop-main, .gallery-dialog) .button { font-size:.875rem; padding:12px 20px; }
  .awshop :is(#shop-main, .gallery-dialog) .read-more { min-width:108px; }
  .awshop :is(#shop-main, .gallery-dialog) .product-stage { width:min(350px,100%); margin-top:26px; }
  .awshop :is(#shop-main, .gallery-dialog) .product-stage::before { inset:-24px -48px 46px; }
  .awshop :is(#shop-main, .gallery-dialog) .product-stage::after { width:80%; height:32px; top:calc(100% - 59px); }
  .awshop :is(#shop-main, .gallery-dialog) .hero-photo { width:230px; }
  .awshop :is(#shop-main, .gallery-dialog) .enlarge-hint { margin-top:21px; font-size:.875rem; }
  .awshop :is(#shop-main, .gallery-dialog) .product-gallery { padding:44px 0 48px; }
  .awshop :is(#shop-main, .gallery-dialog) .product-gallery.shell { width:min(400px,calc(100% - 80px)); }
  .awshop :is(#shop-main, .gallery-dialog) .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .awshop :is(#shop-main, .gallery-dialog) .gallery-card:last-child { grid-column:1/-1; width:calc((100% - 12px)/2); justify-self:center; }
  .awshop :is(#shop-main, .gallery-dialog) .gallery-label { padding:42px 12px 13px; font-size:.875rem; }
  .awshop :is(#shop-main, .gallery-dialog) .gallery-label>span { width:22px; height:22px; font-size:1rem; }
  .awshop :is(#shop-main, .gallery-dialog) .product-overview { padding:54px 0; }
  .awshop :is(#shop-main, .gallery-dialog) .overview-grid, .awshop :is(#shop-main, .gallery-dialog) .details-heading { grid-template-columns:1fr; gap:30px; }
  .awshop :is(#shop-main, .gallery-dialog) .overview-grid h2 { margin:14px 0 18px; font-size:2.5rem; }
  .awshop :is(#shop-main, .gallery-dialog) .overview-copy>.large-copy { font-size:1.3rem; }
  .awshop :is(#shop-main, .gallery-dialog) .accordion-content { padding-right:5px; }
  .awshop :is(#shop-main, .gallery-dialog) .product-details { padding:54px 0; }
  .awshop :is(#shop-main, .gallery-dialog) .details-heading { gap:20px; margin-bottom:28px; }
  .awshop :is(#shop-main, .gallery-dialog) .details-heading h2 { font-size:2.6rem; }
  .awshop :is(#shop-main, .gallery-dialog) .details-heading>p { padding-top:0; }
  .awshop :is(#shop-main, .gallery-dialog) .details-content { margin-top:28px; }
  .awshop :is(#shop-main, .gallery-dialog) .construction-grid { gap:28px; }
  .awshop :is(#shop-main, .gallery-dialog) .specifications { display:block; }
  .awshop :is(#shop-main, .gallery-dialog) .specifications>div { display:grid; grid-template-columns:1fr 1.08fr; gap:15px; padding:17px 0; }
  .awshop :is(#shop-main, .gallery-dialog) .specifications>div.power-options { grid-template-columns:1fr; gap:8px; }
  .awshop :is(#shop-main, .gallery-dialog) .specifications dd { font-size:.9375rem; letter-spacing:0; }
  .awshop :is(#shop-main, .gallery-dialog) .installation-note { flex-wrap:wrap; padding:24px; gap:18px; margin-top:30px; }
  .awshop :is(#shop-main, .gallery-dialog) .installation-number { font-size:2.6rem; }
  .awshop :is(#shop-main, .gallery-dialog) .installation-note p { flex:1 1 175px; font-size:.9375rem; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-strengths, .awshop :is(#shop-main, .gallery-dialog) .founder-story, .awshop :is(#shop-main, .gallery-dialog) .shop-performance, .awshop :is(#shop-main, .gallery-dialog) .shop-callout { padding:54px 20px; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-strengths>header, .awshop :is(#shop-main, .gallery-dialog) .strengths-grid, .awshop :is(#shop-main, .gallery-dialog) .founder-story, .awshop :is(#shop-main, .gallery-dialog) .shop-callout { grid-template-columns:1fr; gap:24px; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-strengths .eyebrow, .awshop :is(#shop-main, .gallery-dialog) .founder-story .eyebrow { margin-bottom:0; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-strengths>header h2, .awshop :is(#shop-main, .gallery-dialog) .founder-story h2 { font-size:2.6rem; }
  .awshop :is(#shop-main, .gallery-dialog) .strengths-grid { margin-top:34px; gap:26px; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-performance h2 { font-size:2.6rem; margin-bottom:30px; }
  .awshop :is(#shop-main, .gallery-dialog) .performance-grid { gap:26px 20px; }
  .awshop :is(#shop-main, .gallery-dialog) .performance-grid strong { font-size:1.6rem; }
  .awshop :is(#shop-main, .gallery-dialog) .performance-grid p { font-size:.875rem; }
  .awshop :is(#shop-main, .gallery-dialog) .shop-callout h2 { font-size:2.6rem; margin-top:14px; }
  .awshop .gallery-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); border-radius:14px; padding:14px; }
  .awshop :is(#shop-main, .gallery-dialog) .expanded-image { height:60dvh; }
}
@media(prefers-reduced-motion:reduce) {  .awshop :is(#shop-main, .gallery-dialog) *, .awshop :is(#shop-main, .gallery-dialog) *::before, .awshop :is(#shop-main, .gallery-dialog) *::after { transition:none!important; } }
@media print { .awshop :is(#shop-main, .gallery-dialog) .product-hero { padding-top:20px; } .awshop :is(#shop-main, .gallery-dialog) .hero-photo { width:208px; } }

@media(max-width:360px) {
  .awshop :is(#shop-main, .gallery-dialog) .gallery-label { padding:42px 8px 13px; gap:6px; font-size:.75rem; }
  .awshop :is(#shop-main, .gallery-dialog) .gallery-label>span { width:20px; height:20px; }
}

/* Centered secret interlude. The generated cube is decorative concept artwork. */
.awshop :is(#shop-main, .gallery-dialog) .fullblack-secret { position:relative; padding:72px 24px 12px; text-align:center; background:#f3f4f6; font-family:"Fullblack Display",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif; }
.awshop :is(#shop-main, .gallery-dialog) .fullblack-secret::before { content:""; position:absolute; inset:0 0 auto; height:180px; background:linear-gradient(180deg,#fff,rgba(255,255,255,0)); pointer-events:none; }
.awshop :is(#shop-main, .gallery-dialog) .secret-content { position:relative; max-width:960px; margin-inline:auto; }
.awshop :is(#shop-main, .gallery-dialog) .secret-eyebrow { font-size:10px; font-weight:500; line-height:1.4; letter-spacing:3.6px; color:#858588; }
.awshop :is(#shop-main, .gallery-dialog) .secret-intro { max-width:760px; margin:20px auto 0; font-size:clamp(1.375rem,2.25vw,2rem); font-weight:450; line-height:1.38; letter-spacing:-.04em; color:#353539; text-wrap:balance; }
.awshop :is(#shop-main, .gallery-dialog) .secret-art { position:relative; width:min(600px,100%); margin:12px auto 0; }
.awshop :is(#shop-main, .gallery-dialog) .secret-cube-image { display:block; width:100%; height:auto; }
.awshop :is(#shop-main, .gallery-dialog) .secret-art::after { content:""; position:absolute; inset:-1px; pointer-events:none; background:linear-gradient(90deg,#f3f4f6 0%,rgba(243,244,246,0) 12%,rgba(243,244,246,0) 88%,#f3f4f6 100%),linear-gradient(180deg,#f3f4f6 0%,rgba(243,244,246,0) 14%,rgba(243,244,246,0) 87%,#f3f4f6 100%); }
.awshop :is(#shop-main, .gallery-dialog) .secret-face { position:absolute; z-index:1; left:47.2%; top:50.7%; width:52%; transform:translate(-50%,-50%); }
.awshop :is(#shop-main, .gallery-dialog) .secret-face h2 { color:#fff; font-size:clamp(1rem,4.8vw,2rem); font-weight:560; line-height:1.12; letter-spacing:-.045em; text-shadow:0 1px 8px #0003; }
@media(max-width:760px) {
  .awshop :is(#shop-main, .gallery-dialog) .fullblack-secret { padding:48px 20px 16px; }
  .awshop :is(#shop-main, .gallery-dialog) .secret-intro { margin-top:16px; }
  .awshop :is(#shop-main, .gallery-dialog) .secret-art { margin-top:10px; }
}

/* Reset retired shared Shop layout rules before the kit's editorial layout. */
.awshop #shop-main { padding-top:76px; overflow:visible; }

.awshop #shop-main .product-details { display:block; width:100%; overflow:visible; }
.awshop #shop-main .founder-story { width:100%; margin:0; }
.awshop #shop-main .founder-story > p:last-child { margin:0; }
.awshop #shop-main .shop-callout { background:#fff; color:var(--ink); }
.awshop #shop-main .shop-callout-copy p { color:var(--muted); }
.awshop #shop-main .strengths-grid, .awshop #shop-main .performance-grid { border:0; }
.awshop #shop-main .strengths-grid article, .awshop #shop-main .performance-grid article { min-height:0; padding:20px 0 0; border:0; border-top:1px solid #49494e; }
.awshop #shop-main .performance-grid strong { color:#fff; }
.awshop #shop-main .performance-grid p { margin:0; }
.awshop #shop-main .shop-strengths > header { gap:0 70px; }
.awshop #shop-main .shop-strengths h2 { margin:0; line-height:1.08; }
.awshop #shop-main .button { text-transform:none; letter-spacing:normal; }
.awshop #shop-main .eyebrow { text-transform:none; }
.awshop #shop-main :is(.overview-grid,.details-heading,.founder-story,.shop-callout,.strengths-grid,.performance-grid) > * { min-width:0; }
.awshop #shop-main :is(h2,h3,p,dd,dt) { overflow-wrap:anywhere; }
.awshop #shop-main :is(#overview,#details,#performance) { scroll-margin-top:96px; }
.awshop .gallery-dialog { height:auto; overflow:auto; font-family:"Fullblack Display",Arial,sans-serif; }
.awshop .gallery-dialog figure { display:block; width:auto; height:auto; }
.awshop .gallery-dialog img { padding:0; background:transparent; }
.awshop .gallery-dialog figcaption { padding:0; color:var(--ink); font-weight:400; letter-spacing:normal; text-transform:none; }
@media(max-width:760px) {
 .awshop #shop-main { padding-top:68px; }
 .awshop #shop-main .shop-strengths > header { gap:24px; }
 .awshop #shop-main .performance-grid { grid-template-columns:1fr; }
 .awshop #shop-main :is(#overview,#details,#performance) { scroll-margin-top:88px; }
 .awshop #shop-main .specifications .keep-together { white-space:normal; }
}
