/* Approved desktop composition and responsive layout. */
.preview-bar{display:none}
.site-header{position:sticky;top:0;z-index:20;background:#f7f7f9}
.header-inner{min-height:76px;gap:24px}
.hero-copy>[data-request],.terms-details>[data-request]{display:none}
.hero{grid-template-columns:1.35fr 1fr;align-items:center;padding-block:44px 52px;gap:64px}
.hero-description{font-size:18px;line-height:1.7}
.hero-portrait{width:100%;max-width:410px;justify-self:end}
.hero-photo{height:auto;aspect-ratio:auto;object-fit:contain;flex:none}
.hero-portrait .art-heading{padding:20px 24px}
.hero-portrait .art-heading .eyebrow{margin-bottom:10px}
.hero-portrait .art-heading p{font-size:38px}
.hero-portrait .art-heading br{display:none}
.hero-portrait .art-heading em:before{content:' '}
.hero-portrait .art-footer{padding:12px 18px;font-size:10px}
.products{padding:28px;margin-block:64px;background:linear-gradient(#25252530,#25252530),url('assets/review/metal-racks-background-v1.webp') center/cover;border-radius:6px}
.products .section-heading{padding:26px 30px;background:#6e2437;color:#fff;border-radius:4px;margin-bottom:24px;gap:32px;align-items:center}
.products .section-heading>div{max-width:720px}
.products .section-heading h2{font-size:44px}
.products .section-tag{color:#fff;margin-bottom:14px}
.products .section-heading>p{color:#fff;font-size:14px;max-width:310px;flex-shrink:0}
.products .product-grid{gap:20px}
.products .product-card{background:#fff;border:0;min-height:285px;padding:24px}
.products .product-card h3{font-size:28px}
.products .custom-card{background:#eceef2}
.products>.section-note{background:#f7f7f9;color:#555861;max-width:none;padding:12px 16px;border-radius:4px;margin-top:20px}
.faq{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:28px 56px;padding-block:64px}
.faq-heading{grid-column:1/-1;grid-row:1;display:flex;align-items:baseline;gap:34px}
.faq-heading .section-tag{margin:0;flex-shrink:0}
.faq-heading h2{font-size:45px}
.faq-heading h2 br{display:none}
.faq-heading h2 em:before{content:' '}
.faq .consultation-scene{grid-column:1;grid-row:2;min-width:0}
.faq .consultation-scene img{display:block;width:100%;height:auto;aspect-ratio:9/10;object-fit:cover;object-position:23% 50%;border-radius:5px}
.faq .faq-list{grid-column:2;grid-row:2;align-self:start}
.faq summary{font-size:18px;min-height:91px;padding-block:28px}
.faq summary:after{top:27px}
.faq details p{font-size:15px}
.consultation-caption{position:static;width:auto;height:auto;margin:0;padding:15px 0 0;overflow:visible;clip-path:none;white-space:normal}
.consultation-caption ul{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}
.consultation-caption li{background:#eceef2;padding:6px 9px;border-left:2px solid #6e2437;font-size:12px;line-height:1.6}
.consultation-caption small{display:block;color:#555861;font-size:11px;margin-top:9px}
.contact{margin-bottom:20px}
.faq{display:block}
.faq-heading{margin-bottom:28px}
.faq-composition{position:relative;border-radius:6px;overflow:hidden}
.faq-composition>img{display:block;width:100%;height:auto;aspect-ratio:auto}
.faq .faq-composition .faq-list{position:absolute;inset:24px 24px 24px auto;width:32%;height:calc(100% - 48px);border:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#6e2437 #eceef2;padding:3px}
.faq-composition details,.faq-services{flex:1 0 auto;background:#fff;border:0;border-radius:4px;box-shadow:0 2px 8px #25252515}
.faq-composition summary{font-size:16px;line-height:1.45;min-height:78px;padding:22px 40px 22px 18px;display:flex;align-items:center}
.faq-composition summary:after{right:15px;top:25px;font-size:22px}
.faq-composition summary:focus-visible{outline-offset:-3px;border-radius:4px}
.faq-composition details p{padding:0 18px 20px;font-size:14px;line-height:1.65}
.faq-services{padding:20px 18px;flex-basis:153px;background:#f7f7f9}
.faq-services h3{font-size:22px;color:#6e2437;line-height:1.2;letter-spacing:-.025em}
.faq-services ul{padding:0;margin:14px 0 0;list-style:none;display:grid;gap:9px;font-size:14px;line-height:1.4}
.faq-services li{padding-left:13px;border-left:2px solid #6e2437}
.faq .faq-composition .faq-list{background:linear-gradient(transparent 68%,#eceef2 68%);border-radius:4px}
.faq-staged{font-size:11px;color:#555861;margin-top:10px}
.faq{padding-block:32px}
.faq .faq-composition .faq-list{inset:24px 24px 24px auto;width:32%;height:calc(100% - 48px);display:flex;gap:0;padding:22px 20px;background:#f7f7f9;border-top:4px solid #6e2437;border-radius:5px;box-shadow:0 6px 24px #25252535;overflow:visible}
.faq-list .faq-heading{display:block;margin:0 0 19px}
.faq-list .faq-heading .section-tag{font-size:10px;margin:0 0 9px}
.faq-list .faq-heading h2{font-size:31px;line-height:1.12;letter-spacing:-.035em}
.faq-list .faq-heading h2 br{display:none}
.faq-composition details{flex:0 0 auto;background:transparent;box-shadow:none;border-radius:0;border-top:1px solid #c9cbd1}
.faq-composition summary{min-height:65px;padding:17px 23px 17px 0;font-size:15px;line-height:1.45}
.faq-composition summary:after{right:0;top:19px;font-size:20px}
.faq-composition details p{padding:0 0 15px;font-size:13px;line-height:1.55}
.faq-services{flex:0 0 auto;margin-top:auto;padding:18px 15px;background:#eceef2;box-shadow:none;border-radius:3px}
.faq-services h3{font-size:20px}
.faq-services ul{margin-top:12px;font-size:13px;gap:8px}
@media(max-width:980px){.faq .faq-composition .faq-list{position:static;width:auto;height:auto;padding:22px 20px}.faq-services{margin-top:18px}}
@media(max-width:980px){.faq .faq-composition .faq-list{position:static;width:auto;height:auto;padding:16px;background:#eceef2;overflow:visible}.faq-composition details,.faq-services{flex:auto}}
@media(max-width:980px){.hero{gap:30px}.header-inner{gap:15px}.faq{gap:24px}.faq-heading{display:block}.faq-heading .section-tag{margin-bottom:16px}.products .section-heading{display:block}.products .section-heading>p{margin-top:18px}}
@media(max-width:650px){.header-inner{display:grid;min-height:111px}.hero{display:flex}.hero-portrait{max-width:none}.hero-photo{aspect-ratio:auto}.hero-copy>[data-request]{display:none}.products{padding:16px}.products .section-heading{padding:20px}.products .section-heading h2{font-size:34px}.faq{display:flex;flex-direction:column}.faq-heading{order:0}.faq .consultation-scene{order:1}.faq-list{order:2}.faq-heading h2{font-size:35px}.faq summary{font-size:15px}}
/* Keep the approved desktop composition, adapt the same content for phones. */
@media (min-width:981px) and (max-width:1250px){.faq .faq-composition .faq-list{position:static;width:auto;height:auto;display:block}.faq-services{margin-top:20px}}
@media(max-width:980px){.faq .faq-composition .faq-list{background:#f7f7f9;padding:24px;border-radius:0;box-shadow:none}.faq-composition details{flex:none}.faq-services{margin-top:22px}.faq .faq-composition{background:#f7f7f9}.products .section-heading>p{max-width:none}}
@media(max-width:650px){
 html{scroll-padding-top:82px}
 .header-inner{display:flex;min-height:68px;width:calc(100% - 32px);padding-block:10px;gap:8px;justify-content:space-between}
 .header-inner .brand{gap:7px}.header-inner .brand-symbol{font-size:30px}.header-inner .brand strong{font-size:14px}.header-inner .brand small{display:none}
 .header-inner .header-cta{width:auto;min-height:44px;padding:10px 11px;font-size:12px;gap:8px;margin:0 0 0 auto;white-space:nowrap}
 .header-cta span{font-size:17px}.menu-toggle{font-size:0;gap:0;width:44px;min-width:44px;min-height:44px;padding:10px;justify-content:center}.menu-toggle span{font-size:21px}
 .mobile-nav a{min-height:44px}
 .hero{padding-block:30px 42px;gap:26px}.hero-copy{padding:0}.hero h1{font-size:37px}.hero-description{font-size:15px;line-height:1.65}
 .hero-portrait{width:100%;max-width:none}.hero-portrait .art-heading{padding:20px}.hero-portrait .art-heading p{font-size:31px}.hero-photo{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;flex:none}
 .section{padding-block:44px}.terms{width:100%;padding:32px 20px;background:#eceef2;border:0}.terms-details{grid-template-columns:1fr;gap:22px}.terms-details>div{padding-top:18px;border-top:1px solid #c9cbd1}.terms-details h3{font-size:20px}.terms-details p{font-size:14px}
 .products{width:100%;margin-block:36px;padding:16px;background-size:auto 850px;background-position:center top;background-repeat:repeat-y;border-radius:0}.products .section-heading{padding:22px 20px}.products .section-heading h2{font-size:33px}.products .section-heading>p{font-size:14px;max-width:100%}.products .product-card{min-height:0}.products .product-card p{font-size:14px}.products>.section-note{font-size:12px}
 .result-band{padding-block:38px}.result-row p,.steps p{font-size:14px}.about{width:100%;padding:32px 20px;background:#eceef2;border:0}
 .faq{display:block;padding-block:36px}.faq .faq-composition>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:25% 50%}
 .faq .faq-composition .faq-list{position:static;width:100%;height:auto;padding:24px 18px;background:#f7f7f9;border:1px solid #c9cbd1;border-top:4px solid #6e2437}
 .faq-list .faq-heading h2{font-size:31px}.faq-list .faq-heading{margin-bottom:20px}.faq summary{font-size:15px;min-height:65px}.faq-composition details p{font-size:14px;line-height:1.65}.faq-services{margin-top:22px;padding:18px 14px}.faq-services h3{font-size:21px}.faq-services ul{font-size:14px}
}
@media(max-width:650px){.menu-toggle{height:44px;line-height:1}.menu-toggle span{line-height:1}}
