/* ALEK-FIRE reference: airy sections, prominent product imagery and restrained motion. */
.native-scanner-page .page-title { font-size:clamp(28px,3.2vw,40px) !important; margin-bottom:20px; }
:root { --red:#ce0028; --red-hover:#a30020; }
.container { max-width:1280px; }
.site-header .container { grid-template-columns:auto minmax(0,1fr) auto auto auto; gap:14px; }
.header-quote { background:#fff; border:1px solid var(--border); color:var(--ink); }
.header-quote:hover { background:var(--warm-white); color:var(--red); }
.header-scan { display:inline-flex; align-items:center; justify-content:center; gap:5px; white-space:nowrap; padding:11px 16px; min-height:44px; font-size:13px; }
.header-scan svg { flex-shrink:0; }
.home-hero { min-height:610px; padding-block:70px; gap:clamp(32px,5vw,64px); }
.home-hero-content { gap:22px; max-width:570px; }
.home-hero-content > .eyebrow::before { content:''; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--red); margin-right:10px; vertical-align:middle; }
.hero-company-name { display:block; font-size:clamp(44px,5.8vw,76px); font-weight:700; line-height:1.15; letter-spacing:-2px; margin-bottom:20px; }
.hero-headline { display:block; font-size:clamp(30px,3.2vw,42px); line-height:1.55; }
.hero-tagline { font-size:19px; color:var(--text-muted); font-weight:400; }
.hero-intro { font-size:16px; color:var(--text-muted); }
.hero-visual { max-width:550px; border-radius:6px; border:1px solid var(--border); }
.hero-visual img { height:clamp(340px,34vw,470px); padding:20px; }
.home-hero-actions .btn-secondary { font-size:14px; }
.service-strip .container { padding-block:30px; gap:36px; }
.service-strip .container > div { padding-left:18px; border-left:2px solid var(--red-tint-border); }
.section-heading h2,.section-title { font-size:clamp(28px,3.4vw,43px); line-height:1.5; }
.collection-intro { font-size:16px; color:var(--text-muted); margin:16px 0 0; }
.collection-note { font-size:13px; color:var(--text-muted); margin:22px 0 0; }
.fire-collection-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:24px; }
.fire-size-card { display:flex; flex-direction:column; flex:0 1 calc((100% - 48px)/3); max-width:420px; min-width:0; border:1px solid var(--border); background:#fff; border-radius:6px; overflow:hidden; color:var(--ink); }
.fire-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 22px; font-size:11px; letter-spacing:1px; color:var(--text-muted); background:var(--warm-white); }
.fire-size-image { aspect-ratio:4/3; display:flex; align-items:center; justify-content:center; padding:24px; background:var(--warm-white); overflow:hidden; }
.fire-size-image img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.fire-size-copy { padding:26px; }
.fire-size-copy h3 { font-size:clamp(30px,3vw,42px); line-height:1.3; margin:10px 0 14px; }
.fire-size-copy p { font-size:15px; color:var(--text-muted); margin:0 0 24px; }
.fire-card-link { display:flex; align-items:center; justify-content:space-between; font-size:13px; font-weight:600; color:var(--red); border-top:1px solid var(--border); padding-top:18px; gap:12px; }
.fire-feature-link { display:block; max-width:600px; padding:28px; margin-inline:auto; background:var(--warm-white); }
.fire-feature-link img { width:100%; max-height:380px; object-fit:contain; }
.fire-feature-link > span { display:block; margin-top:20px; color:var(--red); }
.home-product-card,.product-card,.group-card,.cert-card { border-radius:6px; overflow:hidden; }
.fire-product { padding-top:42px; }
.fire-product .product-layout { align-items:start; gap:clamp(28px,6vw,76px); }
.fire-product .product-gallery { max-width:560px; }
.fire-product .pg-main { aspect-ratio:auto; height:clamp(430px,43vw,660px); max-height:none; background:var(--warm-white); border:1px solid var(--border); padding:32px; }
.fire-product .pg-main img { width:100%; height:100%; max-height:100%; object-fit:contain; }
.fire-product .product-info { padding-top:26px; }
.fire-product .product-info h1 { margin:22px 0 20px; }
.fire-model-name { display:block; font-size:clamp(44px,5.5vw,68px); font-weight:700; line-height:1.2; letter-spacing:-1px; }
.fire-product-kind { display:block; font-size:23px; font-weight:500; line-height:1.6; margin-top:12px; }
.fire-product .product-summary { margin:0 0 22px; }
.fire-model-picker { border-block:1px solid var(--border); padding-block:22px; }
.fire-picker-label { font-size:13px; font-weight:600; margin:0 0 12px; }
.fire-product .variant-buttons { gap:8px; margin-bottom:0; }
.fire-product .variant-button { font-size:15px; padding:9px 16px; min-height:44px; }
.fire-product .fire-variant-details { padding-top:20px; }
.fire-variant-details h2 { font-size:clamp(32px,3.6vw,46px); color:var(--red); line-height:1.3; margin:0 0 16px; }
.fire-variant-details .fire-capacity { display:flex; align-items:center; gap:16px; margin:0; }
.fire-capacity strong { font-family:var(--font-heading); font-size:30px; font-weight:600; color:var(--ink); }
.fire-capacity span { font-size:12px; color:var(--text-muted); }
.fire-variant-details .fire-variant-usage { font-size:14px; margin:14px 0 0; }
.fire-product .product-cta { border-top:0; padding-top:24px; }
.fire-quick-links { display:flex; gap:12px 24px; flex-wrap:wrap; font-size:13px; padding-top:18px; }
.fire-quick-links a { color:var(--red); }
.fire-product .product-section-nav { margin-top:56px; justify-content:flex-start; }
.fire-model-comparison { max-width:960px; margin:60px auto; }
.fire-model-comparison .section-heading h2 { font-size:clamp(26px,3vw,36px); }
.fire-model-comparison .fire-size-copy { padding:20px; }
.fire-model-comparison .fire-size-copy h3 { font-size:32px; }
.product-section-nav a,.fire-quick-links a,.hero-caption a,.link-red { text-underline-offset:5px; }
.site-footer { background:#fff; color:var(--ink); border-top:1px solid var(--border); }
.footer-grid { border-bottom-color:var(--border); }
.footer-address,.footer-tax,.footer-grid ul,.footer-bottom { color:var(--text-muted); }
.footer-links-group { border-color:var(--border); }
.footer-grid a:hover,.footer-bottom a { color:var(--red); }
.footer-brand { max-width:180px; }
.btn-primary:focus-visible,.btn-secondary:focus-visible,.fire-size-card:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .home-product-card,.product-card,.group-card,.cert-card,.fire-size-card { transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
 .home-product-card:hover,.product-card:hover,.group-card:hover,.cert-card:hover,.fire-size-card:hover { transform:translateY(-5px); box-shadow:0 14px 30px #111b260b; border-color:#dab6bd; }
 .home-product-image img,.product-card-img img,.cert-img img,.fire-size-image img,.hero-visual img,.pg-main img { transition:transform .3s ease; }
 .home-product-card:hover .home-product-image img,.product-card:hover .product-card-img img,.cert-card:hover .cert-img img,.fire-size-card:hover .fire-size-image img,.hero-visual:hover img,.pg-main:hover img { transform:scale(1.035); }
 .btn-primary,.btn-secondary,.variant-button { transition:transform .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease; }
 .btn-primary:hover,.btn-secondary:hover { transform:translateY(-2px); }
 .fire-card-link > span,.home-hero-actions a > span { display:inline-block; transition:transform .2s ease; }
 .fire-size-card:hover .fire-card-link > span,.home-hero-actions a:hover > span { transform:translate(2px,-2px); }
}
@media (max-width:1400px) {
 .site-header .container { grid-template-columns:auto minmax(0,1fr) auto auto; }
 .header-quote { display:none; }
}
@media (max-width:1100px) {
 .site-header .container { grid-template-columns:minmax(0,1fr) auto auto auto; }
 .header-search { grid-column:2; grid-row:1; }
 .header-scan { grid-column:3; grid-row:1; }
 .nav-ready .menu-toggle { grid-column:4; grid-row:1; }
 .primary-nav { grid-column:1 / -1; grid-row:2; }
 .header-search-form { right:-100px; }
}
@media (max-width:900px) {
 .home-hero { padding-block:40px; min-height:0; }
 .hero-company-name { font-size:58px; }
 .hero-visual img { height:350px; }
 .fire-size-card { flex-basis:calc((100% - 24px)/2); }
 .fire-product .product-layout { grid-template-columns:minmax(0,1fr); }
 .fire-product .product-gallery { max-width:520px; }
 .fire-product .pg-main { height:clamp(320px,60vw,520px); padding:24px; }
 .fire-product .product-info { padding-top:0; max-width:620px; width:100%; margin-inline:auto; }
}
@media (max-width:600px) {
 .home-hero { padding-block:36px 40px; gap:24px; }
 .hero-company-name { font-size:clamp(40px,10.5vw,58px); margin-bottom:12px; letter-spacing:-1px; }
 .hero-headline { font-size:30px; }
 .hero-visual img { height:320px; }
 .home-hero-content > .eyebrow { font-size:10px; }
 .home-hero-actions { margin-inline:0; }
 .home-hero-actions a { flex:1 1 100%; text-align:center; }
 .service-strip .container > div { border-left:0; padding-left:0; }
 .fire-collection-grid { gap:20px; }
 .fire-size-card { flex-basis:100%; max-width:420px; }
 .fire-size-image { aspect-ratio:4/3; }
 .fire-size-copy h3 { font-size:36px; }
 .fire-model-name { font-size:48px; }
 .fire-product-kind { font-size:21px; }
 .fire-product .pg-main { height:clamp(300px,80vw,430px); padding:20px; }
 .fire-model-comparison { margin-block:40px; }
 .fire-product .product-section-nav { gap:12px 20px; margin-top:36px; }
}
@media (max-width:480px) {
 .site-header .container { column-gap:6px; }
 .site-logo img { max-width:120px; height:36px; }
 .header-search summary { width:34px; height:40px; }
 .header-scan { padding:9px 10px; min-height:40px; font-size:12px; }
 .scan-word { display:none; }
}
@media (prefers-reduced-motion:reduce) {
 .home-product-card,.product-card,.group-card,.cert-card,.fire-size-card,.btn-primary,.btn-secondary,.variant-button,.home-product-image img,.product-card-img img,.cert-img img,.fire-size-image img,.hero-visual img,.pg-main img,.fire-card-link > span { transition:none !important; animation:none !important; transform:none !important; }
}
