/* Isolated preview content; shared header, footer, typography and theme stay authoritative. */
.gas-scroll { --gs-accent:var(--brand,#b3003e); --gs-muted:#5c6068; --gs-line:#e3e5e8; --gs-header:80px; color:var(--ink,#232323); background:#fff; overflow:clip; }
.gas-scroll *, .gas-scroll *::before, .gas-scroll *::after { box-sizing:border-box; }
.gas-scroll [id] { scroll-margin-top:calc(var(--gs-header) + 24px); }
.gas-scroll h1,.gas-scroll h2,.gas-scroll h3,.gas-scroll h4 { font-family:inherit; letter-spacing:-.045em; font-weight:650; }
.gas-scroll h2 { font-size:clamp(36px,4.1vw,60px); line-height:1.13; margin:18px 0 25px; }
.gas-scroll h3 { font-size:30px; line-height:1.22; }
.gas-scroll p { color:var(--gs-muted); line-height:1.8; }
.gas-scroll em { color:var(--gs-accent); font-style:normal; }
.gas-scroll a:not(.btn) { color:var(--gs-accent); text-underline-offset:4px; }
.gas-scroll a:focus-visible,.gas-scroll summary:focus-visible { outline:3px solid var(--gs-accent); outline-offset:5px; }
.gas-scroll .btn { min-height:50px; display:inline-flex; align-items:center; justify-content:center; border-radius:8px; font-size:14px; padding:14px 23px; }
.gas-scroll .gs-eyebrow { font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; line-height:1.7; display:flex; align-items:center; gap:15px; }
.gas-scroll .gs-eyebrow>span { padding-right:15px; border-right:1px solid #bcc0c8; color:var(--gs-muted); }
.gas-scroll .gs-small { font-size:12px; line-height:1.7; }
.gs-preview-note { display:flex; align-items:center; gap:12px; padding:12px max(5%,calc((100% - 1340px)/2)); font-size:12px; border-bottom:1px solid var(--gs-line); background:#f7f8f9; }
.gs-preview-note>span { background:#fff; border:1px solid var(--gs-line); padding:2px 8px; border-radius:4px; font-weight:700; color:var(--gs-accent); }
.gs-preview-note>a { margin-left:auto; }
.gs-story { position:relative; background:radial-gradient(ellipse at 70% 40%,#f0f1f4 0%,#fafafa 45%,#fff 78%); }
.gs-stage { position:relative; max-width:1680px; margin:auto; padding:60px 7%; }
.gs-scene { position:relative; width:48%; height:540px; float:right; }
.gs-fallback { width:100%; height:100%; object-fit:cover; border-radius:16px; }
.gs-canvas { position:absolute; inset:0; }
.gs-canvas canvas { display:block; width:100%; height:100%; }
.gs-copy { position:relative; width:45%; }
.gs-chapter { padding-bottom:35px; }
.gas-scroll .gs-chapter h1 { font-size:clamp(50px,5.4vw,82px); line-height:1.07; margin:25px 0; }
.gas-scroll .gs-chapter h2 { font-size:clamp(46px,4.5vw,68px); line-height:1.1; margin:25px 0; }
.gs-chapter-body { font-size:17px; max-width:430px; margin:0 0 18px; }
.gs-detail { font-size:12px; margin:0; display:flex; align-items:center; gap:8px; }
.gs-detail::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--gs-accent); flex-shrink:0; }
.gs-hero-price { display:flex; align-items:center; gap:18px; margin-top:23px; }
.gs-hero-price strong { font-size:36px; letter-spacing:-.05em; line-height:1.3; white-space:nowrap; }
.gs-hero-price span { font-size:11px; line-height:1.6; color:var(--gs-muted); }
.gs-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:24px; }
.gs-actions>a:not(.btn) { font-size:13px; font-weight:700; }
.gs-model-note,.gs-chapter-nav,.gs-part,.gs-measurement { display:none; }
/* Only a successful WebGL initialization enables the pinned scroll sequence. */
.gs-enhanced .gs-story { height:480svh; }
.gs-enhanced .gs-stage { height:calc(100svh - var(--gs-header) - 50px); min-height:560px; position:sticky; top:var(--gs-header); padding:0; }
.gs-enhanced .gs-scene { position:absolute; width:55%; right:1%; top:0; height:86%; float:none; }
.gs-enhanced .gs-fallback { display:none; }
.gs-enhanced .gs-copy { position:absolute; left:6%; width:44%; top:44%; transform:translateY(-50%); }
.gs-enhanced .gs-chapter { position:absolute; width:100%; top:0; opacity:0; visibility:hidden; transform:translateY(calc(-50% + 15px)); transition:opacity .32s,transform .42s,visibility .32s; padding:0; }
.gs-enhanced .gs-chapter.is-active { position:relative; opacity:1; visibility:visible; transform:translateY(0); }
.gs-enhanced .gs-model-note { display:block; position:absolute; right:10%; bottom:17%; font-size:9px; color:#787d86; letter-spacing:.13em; text-transform:uppercase; }
.gs-enhanced .gs-chapter-nav { display:flex; position:absolute; bottom:24px; left:50%; transform:translateX(-50%); gap:4px; padding:6px; border:1px solid var(--gs-line); border-radius:14px; background:#fffffff2; box-shadow:0 9px 40px #23232308; }
.gas-scroll .gs-chapter-nav a { display:flex; align-items:center; gap:9px; padding:12px 17px; color:var(--gs-muted); border-radius:8px; text-decoration:none; font-size:12px; min-height:44px; }
.gs-chapter-nav a>span { font-size:10px; opacity:.7; }
.gas-scroll .gs-chapter-nav [aria-current] { color:var(--gs-accent); background:color-mix(in srgb,var(--gs-accent) 7%,white); font-weight:700; }
.gs-enhanced .gs-part { position:absolute; display:flex; align-items:center; gap:12px; right:7%; top:43%; font-size:11px; opacity:0; transition:opacity .3s; }
.gs-part i { width:35px; height:1px; background:var(--gs-accent); }
.gs-stage[data-chapter="1"] .gs-part,.gs-stage[data-chapter="2"] .gs-part { opacity:1; }
.gs-stage[data-chapter="3"] .gs-measurement { display:block; position:absolute; right:7%; bottom:23%; background:#fffffff2; padding:20px; border:1px solid var(--gs-line); border-radius:12px; box-shadow:0 15px 50px #23232308; }
.gs-measurement small { font-size:9px; letter-spacing:.1em; }
.gs-measurement>div { display:flex; gap:18px; align-items:center; margin-top:10px; }
.gs-measurement b { width:30px; color:var(--gs-accent); font-size:18px; }
.gs-measurement span,.gs-measurement p { font-size:10px; margin:10px 0 0; }
.gs-section { padding:90px 6%; max-width:1440px; margin:auto; }
.gs-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:45px; }
.gs-heading h2 { margin-bottom:0; }
.gs-heading>p { max-width:355px; font-size:16px; margin:0 0 6px; }
.gs-price-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:8%; }
.gs-price-card { padding:38px; border:1px solid var(--gs-line); border-radius:18px; background:#f7f8f9; }
.gs-price-card h3 { margin:24px 0; }
.gas-scroll .gs-price-card .price-card__amount { margin:20px 0; font-size:clamp(52px,6vw,82px); font-weight:650; line-height:1.2; letter-spacing:-.055em; color:var(--ink); }
.gas-scroll .gs-price-card .price-card__amount small { display:block; font-size:13px; letter-spacing:0; font-weight:400; line-height:1.7; color:var(--gs-muted); margin-top:15px; }
.gas-scroll .gs-price-card .price-card__amount--promotion .price-card__regular { font-size:22px; }
.gs-price-card .promotion-terms { font-size:12px; line-height:1.8; }
.gs-price-card .btn { width:100%; margin-bottom:17px; }
.gs-single { font-size:12px; margin:22px 0; }
.gs-scope { padding:15px 0; }
.gs-scope h3 { margin:18px 0; }
.gs-scope ul { list-style:none; margin:0; padding:0; }
.gs-scope li { position:relative; padding:20px 0 18px 36px; border-bottom:1px solid var(--gs-line); }
.gs-scope li::before { content:'✓'; position:absolute; left:0; top:22px; color:var(--gs-accent); font-size:15px; }
.gs-scope li strong { font-size:18px; }
.gs-scope li p { margin:5px 0 0; font-size:15px; }
.gs-scope>.gs-small { margin-top:23px; }
.gs-extras { display:grid; grid-template-columns:1fr 2fr; gap:45px; background:#f5f6f7; border-radius:16px; padding:35px; margin-top:45px; }
.gs-extras h3 { margin:14px 0; font-size:27px; }
.gs-extras p { margin:0; font-size:13px; }
.gs-extra-items { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.gs-extra-items article>span { color:var(--gs-accent); font-size:11px; }
.gs-extra-items h4 { font-size:17px; letter-spacing:-.025em; margin:16px 0 13px; }
.gs-craft { border-top:1px solid var(--gs-line); }
.gs-craft-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:7%; align-items:center; }
.gs-craft figure { margin:0; }
.gs-craft img { width:100%; height:470px; object-fit:cover; border-radius:14px; }
.gs-craft figcaption { display:flex; justify-content:space-between; gap:15px; font-size:10px; text-transform:uppercase; letter-spacing:.05em; margin-top:15px; color:var(--gs-muted); }
.gs-craft figcaption span { text-transform:none; letter-spacing:0; }
.gas-scroll details { border:0; border-bottom:1px solid var(--gs-line); border-radius:0; background:transparent; padding:0; margin:0; box-shadow:none; }
.gas-scroll summary { font-size:18px; font-weight:650; padding:23px 30px 23px 0; cursor:pointer; position:relative; list-style:none; }
.gas-scroll summary::-webkit-details-marker { display:none; }
.gas-scroll summary::after { content:'+'; position:absolute; right:2px; top:22px; color:var(--gs-accent); font-weight:400; font-size:22px; }
.gas-scroll details[open]>summary::after { content:'−'; }
.gas-scroll details p { font-size:15px; margin:0 0 24px; padding:0; }
.gs-craft summary { font-size:24px; letter-spacing:-.03em; }
.gs-craft summary>span { font-size:11px; font-weight:400; color:var(--gs-accent); margin-right:20px; }
.gs-craft-details>.gs-small { margin-top:25px; }
.gs-fit { display:grid; grid-template-columns:1.15fr 1fr; gap:10%; border-top:1px solid var(--gs-line); border-bottom:1px solid var(--gs-line); }
.gs-fit h2 { font-size:38px; }
.gs-fit p { font-size:15px; }
.gs-brands { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 24px; }
.gs-brands span { border:1px solid var(--gs-line); border-radius:6px; padding:12px 17px; font-weight:650; font-size:15px; }
.gs-area { border-top:1px solid var(--gs-line); padding-top:25px; margin-top:30px; }
.gs-area strong { font-size:16px; }
.gs-area p { margin:8px 0 0; }
.gs-process { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.gs-process li { padding:30px; border:1px solid var(--gs-line); border-radius:14px; }
.gs-process li>span { color:var(--gs-accent); font-size:12px; }
.gs-process h3 { font-size:25px; margin:36px 0 15px; }
.gs-process p { font-size:14px; margin:0; }
.gs-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:10%; border-top:1px solid var(--gs-line); }
.gs-faq h2 { font-size:45px; }
.gs-outro { text-align:center; background:radial-gradient(ellipse at center,#f6f6f8,#fff 70%); padding-top:85px; padding-bottom:100px; }
.gs-outro>.gs-eyebrow { justify-content:center; }
.gs-outro>h2 { font-size:clamp(40px,5.4vw,74px); }
.gs-outro>.gs-small { display:block; margin-top:18px; }
.gs-replay { display:block; font-size:12px; margin-top:45px; }
.gs-review-note { font-size:11px; margin:30px 0 0; }
@media (min-width:801px) and (max-height:800px) { .gas-scroll .gs-chapter h1 { font-size:58px; margin:18px 0; } .gas-scroll .gs-chapter h2 { font-size:52px; } .gs-chapter-body { font-size:15px; } .gs-detail { display:none; } .gs-hero-price { margin-top:14px; } .gs-actions { margin-top:17px; } }
@media (max-width:1100px) { .gs-heading { gap:30px; } .gs-price-layout { gap:5%; } .gs-price-card { padding:28px; } .gs-extras { grid-template-columns:1fr; } .gs-enhanced .gs-part { right:3%; } .gs-craft summary { font-size:20px; } .gs-process li { padding:24px; } }
@media (max-width:800px) {
 .gs-preview-note { font-size:10px; padding:10px 5%; gap:8px; } .gs-preview-note>a { font-size:10px; }
 .gs-section { padding:55px 7%; } .gs-heading { display:block; margin-bottom:30px; } .gs-heading>p { max-width:none; margin:20px 0 0; }
 .gs-scene { float:none; width:100%; height:320px; margin-bottom:35px; } .gs-copy { width:100%; } .gs-stage { padding:40px 7%; }
 .gas-scroll .gs-chapter h1,.gas-scroll .gs-chapter h2 { font-size:clamp(37px,8.8vw,58px); margin:17px 0; }
 .gs-enhanced .gs-story { height:420svh; } .gs-enhanced .gs-stage { min-height:610px; height:calc(100svh - var(--gs-header) - 68px); }
 .gs-enhanced .gs-copy { top:27px; left:7%; width:86%; transform:none; }
 .gs-enhanced .gs-scene { top:292px; right:0; width:100%; height:calc(100% - 368px); margin:0; }
 .gs-enhanced .gs-chapter { transform:translateY(10px); } .gs-enhanced .gs-chapter.is-active { transform:none; }
 .gs-chapter-body { font-size:15px; line-height:1.65!important; max-width:540px; margin-bottom:10px; }
 .gs-enhanced .gs-hero-price,.gs-enhanced .gs-detail,.gs-enhanced .gs-chapter>.gs-small { display:none; }
 .gs-enhanced .gs-actions { margin-top:12px; gap:18px; } .gs-enhanced .gs-actions .btn { min-height:40px; padding:10px 14px; font-size:12px; } .gs-enhanced .gs-actions>a:not(.btn) { font-size:11px; }
 .gas-scroll .gs-eyebrow { font-size:9px; letter-spacing:.08em; gap:10px; } .gas-scroll .gs-eyebrow>span { padding-right:10px; }
 .gs-enhanced .gs-chapter-nav { bottom:12px; width:90%; max-width:440px; padding:4px; gap:0; }
 .gas-scroll .gs-chapter-nav a { flex:1; flex-direction:column; gap:3px; padding:7px 3px; font-size:11px; }
 .gs-enhanced .gs-model-note { right:0; width:100%; text-align:center; bottom:79px; font-size:7px; }
 .gs-enhanced .gs-part { top:auto; bottom:31%; right:7%; font-size:9px; } .gs-part i { width:15px; }
 .gs-stage[data-chapter="3"] .gs-measurement { right:5%; bottom:110px; padding:12px; } .gs-measurement>div { margin-top:5px; gap:10px; } .gs-measurement b { font-size:14px; }
 .gs-price-layout,.gs-craft-grid,.gs-fit,.gs-faq { grid-template-columns:1fr; gap:32px; }
 .gs-price-card { padding:30px; } .gs-extras { padding:26px; gap:25px; } .gs-extra-items { grid-template-columns:1fr; gap:25px; }
 .gs-extra-items article { border-top:1px solid var(--gs-line); padding-top:20px; } .gs-extra-items article>span { float:right; } .gs-extra-items h4 { margin:0 20px 10px 0; }
 .gs-craft img { height:360px; } .gs-fit h2,.gs-faq h2 { font-size:36px; } .gs-process { grid-template-columns:1fr; gap:16px; } .gs-process h3 { margin-top:22px; }
 .gs-outro { padding-bottom:65px; } .gas-scroll summary { font-size:16px; } .gs-craft summary { font-size:22px; }
}
@media (max-width:380px) { .gs-preview-note { flex-wrap:wrap; } .gs-preview-note>a { margin-left:0; } .gas-scroll .gs-chapter h1,.gas-scroll .gs-chapter h2 { font-size:35px; } .gs-enhanced .gs-scene { top:315px; height:calc(100% - 392px); } }
@media (prefers-reduced-motion:reduce) { .gs-enhanced .gs-chapter { transition:none; } }

.gas-scroll .gs-price-card .price-card__current { font-size:inherit; color:inherit; }
@media (max-width:800px) { .gs-enhanced .gs-stage { height:calc(100svh - var(--gs-header) - 112px); min-height:560px; } }
@media (max-width:800px) and (max-height:740px) {
 .gs-enhanced .gs-stage { min-height:480px; }
 .gs-enhanced .gs-copy { top:18px; }
 .gas-scroll .gs-chapter h1,.gas-scroll .gs-chapter h2 { font-size:32px; margin:12px 0; }
 .gs-enhanced .gs-chapter-body { font-size:13px; line-height:1.55!important; }
 .gs-enhanced .gs-scene { top:255px; height:calc(100% - 326px); }
 .gs-enhanced .gs-actions { margin-top:10px; }
}

/* Combined preview: the established service content within the scroll design. */
.gas-scroll .gs-page-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 30px; max-width:1440px; margin:auto; padding:22px 6%; border-bottom:1px solid var(--gs-line); }
.gas-scroll .gs-page-nav a { display:inline-flex; align-items:center; min-height:44px; font-size:12px; font-weight:650; text-decoration:none; }
.gs-intro,.gs-prep { display:grid; grid-template-columns:1.15fr .85fr; gap:8%; align-items:center; }
.gas-scroll .gs-intro { padding-bottom:35px; }
.gas-scroll .gs-intro h2 { font-size:clamp(34px,3.5vw,50px); }
.gas-scroll .gs-intro .breadcrumbs { margin:0 0 26px; }
.gas-scroll .gs-intro .breadcrumbs ol { flex-wrap:wrap; }
.gas-scroll .gs-intro .availability-card { border-radius:16px; padding:32px; background:#f5f6f7; box-shadow:none; border:1px solid var(--gs-line); }
.gas-scroll .gs-intro .availability-card h2 { font-size:28px; }
.gas-scroll .gs-intro .availability-card p { font-size:14px; }
.gas-scroll .gs-intro .availability-card .btn { background:var(--gs-accent); border-color:var(--gs-accent); color:#fff; }
.gas-scroll .gs-price-card { align-self:start; position:sticky; top:calc(var(--gs-header) + 24px); }
.gas-scroll .gs-price-layout { align-items:start; }
.gas-scroll .gs-scope>p { font-size:14px; }
.gas-scroll .gs-scope-groups summary { font-size:18px; padding-block:16px; }
.gas-scroll .gs-scope-groups summary::after { top:15px; }
.gas-scroll .gs-scope-groups ul { margin:0 0 15px; }
.gas-scroll .gs-scope-groups li { border:0; padding:5px 0 5px 27px; font-size:14px; line-height:1.6; }
.gas-scroll .gs-scope-groups li::before { top:5px; font-size:13px; }
.gas-scroll .gs-scope-report { padding:18px 20px; background:#f5f6f7; border-radius:10px; margin-top:23px; }
.gas-scroll .gs-craft-grid { align-items:start; }
.gas-scroll .gs-craft figure { position:sticky; top:calc(var(--gs-header) + 24px); }
.gas-scroll .gs-craft summary { padding-block:17px; font-size:21px; }
.gas-scroll .gs-craft summary::after { top:16px; }
.gas-scroll .gs-craft details p { font-size:14px; }
.gas-scroll .gs-technical-note { padding:20px 24px; background:#f5f6f7; border-left:2px solid var(--gs-accent); font-size:12px; line-height:1.8; margin:38px 0 0; }
.gas-scroll .gs-checks { list-style:none; padding:0; margin:25px 0; }
.gas-scroll .gs-checks li { position:relative; padding:9px 0 9px 27px; font-size:15px; line-height:1.7; border-bottom:1px solid var(--gs-line); }
.gas-scroll .gs-checks li::before { content:'✓'; position:absolute; left:0; color:var(--gs-accent); }
.gas-scroll .gs-fit h3 { font-size:28px; margin:20px 0; }
.gas-scroll .gs-brands a { display:inline-flex; align-items:center; min-height:44px; padding:11px 15px; border:1px solid var(--gs-line); border-radius:7px; text-decoration:none; font-size:13px; font-weight:650; }
.gas-scroll .gs-brands a:hover { border-color:var(--gs-accent); background:#fff; }
.gas-scroll .gs-area>a,.gas-scroll .gs-fault-note>a { display:inline-block; margin-top:10px; font-size:13px; font-weight:650; }
.gas-scroll .gs-fault-note { padding:24px; background:#f5f6f7; border-radius:12px; margin-top:26px; }
.gas-scroll .gs-fault-note p { margin:8px 0 0; }
.gas-scroll .maintenance-packages { padding:75px 6%; max-width:1440px; margin:auto; border-bottom:1px solid var(--gs-line); }
.gas-scroll .maintenance-packages>.container { max-width:none; padding:0; }
.gas-scroll .maintenance-packages .section-heading h2 { font-size:clamp(34px,3.8vw,52px); }
.gas-scroll .maintenance-packages__panel>h3 { font-size:18px; margin-top:30px; }
.gas-scroll .maintenance-package { border-color:var(--gs-line); border-radius:14px; color:var(--ink); box-shadow:none; }
.gas-scroll .maintenance-package--plus { border-color:var(--gs-accent); background:color-mix(in srgb,var(--gs-accent) 4%,white); }
.gas-scroll .maintenance-package__badge { color:var(--gs-accent); font-size:12px; }
.gas-scroll .maintenance-package__price { color:var(--ink); font-size:30px; }
.gas-scroll .maintenance-package--premium .maintenance-package__price { font-size:23px; }
.gas-scroll .maintenance-package h4 { font-size:26px; }
.gas-scroll .maintenance-package ul { font-size:14px; }
.gas-scroll .maintenance-package .fine-print { font-size:12px; }
.gas-scroll .gs-prep { padding-top:25px; border-bottom:1px solid var(--gs-line); }
.gas-scroll .gs-prep h2 { font-size:clamp(34px,3.5vw,48px); }
.gas-scroll .gs-photo-tip { padding:28px; border:1px solid var(--gs-line); border-radius:16px; }
.gas-scroll .gs-photo-tip img { display:block; max-width:100%; width:230px; height:145px; object-fit:contain; margin:0 auto 25px; }
.gas-scroll .gs-photo-tip h3 { font-size:25px; }
.gas-scroll .gs-photo-tip p { font-size:14px; }
.gas-scroll .gs-photo-tip .gs-small { font-size:12px; }
@media(max-width:1000px) {
 .gas-scroll .maintenance-packages__grid { grid-template-columns:1fr; }
 .gas-scroll .gs-intro { gap:5%; }
}
@media(max-width:800px) {
 .gas-scroll .gs-page-nav { justify-content:flex-start; gap:0 22px; padding:14px 7%; }
 .gs-intro,.gs-prep { grid-template-columns:1fr; gap:28px; }
 .gas-scroll .gs-intro { padding-top:40px; padding-bottom:15px; }
 .gas-scroll .gs-intro .availability-card { padding:25px; }
 .gas-scroll .gs-price-card,.gas-scroll .gs-craft figure { position:static; }
 .gas-scroll .gs-craft img { height:340px; }
 .gas-scroll .gs-craft summary { font-size:19px; }
 .gas-scroll .gs-technical-note { padding:18px; margin-top:28px; }
 .gas-scroll .maintenance-packages { padding:55px 7%; }
 .gas-scroll .gs-prep { padding-top:10px; }
 .gas-scroll .gs-photo-tip { padding:24px; }
}
