/* Hallmark · reference-led service layout · user screenshots September 24.
   Scope: supporting homepage + footer. Hero and shared styles are unchanged.
   Composition: facts rail, service cards, compact options, image/detail split,
   dark process band, asymmetric image gallery, FAQ cards, split action panel.
   Pre-emit critique: P4 H4 E4 S4 R5 V4. */
.home-compositions,.home-footer {
 --home-bg:#f6fafc; --home-tint:#f0f5f8; --home-white:#fff;
 --home-ink:#1d2934; --home-muted:#5d6976; --home-line:#ced8e0;
 --home-navy:#304e64; --home-accent:#df8426; --home-on-dark:#c6d5df;
 --home-overlay:linear-gradient(transparent,rgba(22,42,57,.86));
 color:var(--home-ink); background:var(--home-bg); font-family:var(--font-body);
}
.home-compositions *, .home-footer * { min-width:0; }
.home-frame { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.home-compositions .home-section { padding-block:80px; border-bottom:1px solid var(--home-line); }
.home-compositions .home-section--tint { background:var(--home-tint); }
.home-compositions h2 { font-size:clamp(27px,2.65vw,36px); font-weight:600; letter-spacing:-.035em; line-height:1.18; text-align:left; text-wrap:balance; }
.home-compositions h3 { font-size:17px; line-height:1.35; font-weight:600; letter-spacing:-.01em; }
.home-compositions p { color:var(--home-muted); font-size:15px; line-height:1.65; }
.home-compositions a,.home-footer a { text-decoration:none; }
.home-compositions a:focus-visible,.home-compositions summary:focus-visible,.home-footer a:focus-visible { outline:3px solid var(--home-accent); outline-offset:5px; }
.home-compositions .home-facts { background:var(--home-white); border-bottom:1px solid var(--home-line); }
.home-compositions .home-facts .home-frame { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-block:30px; gap:24px; text-align:center; }
.home-compositions .home-facts strong { display:block; color:var(--home-ink); font-size:23px; font-weight:600; letter-spacing:-.03em; }
.home-compositions .home-facts span { display:block; margin-top:4px; font-size:12px; }
.home-compositions .section-heading { margin-bottom:34px; }
.home-compositions .section-heading p { max-width:650px; margin-top:16px; }
.home-compositions .section-heading--split { display:flex; align-items:start; justify-content:space-between; gap:60px; }
.home-compositions .section-heading--split h2 { flex:1; }
.home-compositions .section-heading--split p { flex:0 1 360px; margin-top:0; }
.home-compositions .service-cards,.home-compositions .option-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.home-compositions .service-card,.home-compositions .option-card { position:relative; padding:26px; border:1px solid var(--home-line); border-radius:9px; background:var(--home-white); transition:border-color .18s,transform .18s; }
.home-compositions .service-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:7px; background:var(--home-tint); color:var(--home-navy); margin-bottom:22px; }
.home-compositions svg { width:23px; height:23px; }
.home-compositions .service-card p { font-size:14px; margin-top:12px; padding-right:8px; }
.home-compositions .card-arrow { position:absolute; top:29px; right:26px; color:var(--home-muted); font-size:20px; }
.home-compositions .option-card { padding:24px; }
.home-compositions .option-card h3 { display:flex; justify-content:space-between; gap:16px; }
.home-compositions .option-card h3 span { color:var(--home-accent); font-size:18px; }
.home-compositions .option-card p { font-size:14px; margin-top:10px; }
.home-compositions .fit-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; }
.home-compositions .fit-photo img { width:100%; height:440px; object-fit:cover; border-radius:9px; }
.home-compositions .section-description { margin-top:18px; }
.home-compositions .fit-details { margin-top:28px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 26px; }
.home-compositions .fit-detail { display:flex; gap:12px; align-items:start; }
.home-compositions .fit-detail svg { width:20px; height:20px; flex-shrink:0; color:var(--home-accent); }
.home-compositions .fit-detail h3 { font-size:15px; }
.home-compositions .fit-detail p { font-size:13px; margin-top:8px; }
.home-compositions .process-band { background:var(--home-navy); color:var(--home-white); border:0; padding-block:64px; }
.home-compositions .process-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:28px; margin:42px 0 0; padding:0; list-style:none; counter-reset:process; }
.home-compositions .process-steps li { counter-increment:process; }
.home-compositions .process-steps li::before { content:counter(process,decimal); display:block; font-size:35px; line-height:1; color:var(--home-accent); letter-spacing:-.04em; margin-bottom:22px; }
.home-compositions .process-steps h3 { font-size:16px; }
.home-compositions .process-steps p { font-size:13px; color:var(--home-on-dark); margin-top:12px; }
.home-compositions .opening-gallery { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); grid-template-rows:245px 245px; gap:18px; }
.home-compositions .gallery-tile { position:relative; overflow:hidden; border-radius:9px; background:var(--home-tint); }
.home-compositions .gallery-tile--lead { grid-row:span 2; }
.home-compositions .gallery-tile img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.home-compositions .gallery-tile--lead img { object-position:65% center; }
.home-compositions .gallery-tile--product img { object-fit:contain; padding:15px 25px 40px; }
.home-compositions .gallery-tile > div { position:absolute; inset:auto 0 0; padding:65px 22px 22px; background:var(--home-overlay); color:var(--home-white); }
.home-compositions .gallery-tile p { color:var(--home-on-dark); font-size:13px; margin-top:3px; }
.home-compositions .question-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:start; }
.home-compositions .question-cards details { padding:24px; background:var(--home-white); border:1px solid var(--home-line); border-radius:9px; }
.home-compositions .question-cards summary { list-style:none; cursor:pointer; font-size:15px; line-height:1.5; font-weight:600; padding-right:24px; position:relative; }
.home-compositions .question-cards summary::-webkit-details-marker { display:none; }
.home-compositions .question-cards summary::after { content:'+'; position:absolute; top:0; right:0; color:var(--home-accent); }
.home-compositions .question-cards details[open] summary::after { content:'−'; }
.home-compositions .question-cards p { font-size:14px; margin-top:16px; }
.home-compositions .project-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid var(--home-line); border-radius:12px; overflow:hidden; background:var(--home-white); }
.home-compositions .project-panel-copy { background:var(--home-navy); color:var(--home-white); padding:60px 48px; display:flex; flex-direction:column; justify-content:center; }
.home-compositions .project-panel-copy p { color:var(--home-on-dark); margin-top:22px; }
.home-compositions .contact-line { display:block; margin-top:28px; color:var(--home-white); font-size:16px; }
.home-compositions .panel-location { font-size:13px; }
.home-compositions .project-panel-action { padding:48px; }
.home-compositions .project-panel-action > p { font-size:14px; margin-top:10px; }
.home-compositions .project-shortcuts { display:grid; gap:10px; margin:24px 0; }
.home-compositions .project-shortcuts a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px; background:var(--home-bg); border:1px solid var(--home-line); border-radius:6px; font-size:14px; }
.home-compositions .home-button { background:var(--home-navy); color:var(--home-white); display:flex; justify-content:center; gap:20px; padding:14px 20px; border-radius:6px; font-size:14px; }
.home-compositions .project-panel-action .panel-note { font-size:12px; text-align:center; margin-top:16px; }
.home-footer { background:var(--home-white); padding-block:52px 26px; }
.home-footer-grid { display:grid; grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr)); gap:50px; }
.home-footer .brand { color:var(--home-ink); font-size:28px; }
.home-footer .brand small { font-size:8px; }
.home-footer-grid p { max-width:280px; font-size:13px; color:var(--home-muted); margin-block:22px 16px; }
.home-footer-grid h3 { font-size:14px; font-weight:600; margin-bottom:18px; }
.home-footer-grid nav a { display:block; color:var(--home-muted); font-size:13px; margin-bottom:12px; }
.home-footer-grid > div > a:last-child { font-size:13px; }
.home-footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--home-line); padding-top:24px; margin-top:38px; font-size:12px; color:var(--home-muted); }
.home-footer-bottom > div { display:flex; gap:24px; }
@media(hover:hover) { .home-compositions .service-card:hover,.home-compositions .option-card:hover { border-color:var(--home-navy); transform:translateY(-3px); } .home-compositions .gallery-tile:hover img { transform:scale(1.025); } .home-compositions .project-shortcuts a:hover { border-color:var(--home-navy); } .home-footer a:hover { text-decoration:underline; } }
@media(max-width:1000px) { .home-compositions .fit-layout { gap:32px; } .home-compositions .fit-details { gap:22px 16px; } .home-compositions .process-steps { gap:18px; } .home-compositions .project-panel-copy,.home-compositions .project-panel-action { padding:32px; } .home-footer-grid { gap:28px; } }
@media(max-width:760px) { .home-frame { width:calc(100% - 36px); } .home-compositions .home-section { padding-block:48px; } .home-compositions .home-facts .home-frame { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; } .home-compositions .home-facts strong { font-size:21px; } .home-compositions .section-heading--split { display:block; } .home-compositions .section-heading--split p { margin-top:16px; } .home-compositions .service-cards,.home-compositions .option-cards,.home-compositions .question-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } .home-compositions .service-card,.home-compositions .option-card { padding:22px; } .home-compositions .fit-layout { grid-template-columns:minmax(0,1fr); gap:30px; } .home-compositions .fit-photo img { height:330px; } .home-compositions .process-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; } .home-compositions .opening-gallery { grid-template-rows:320px 220px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } .home-compositions .gallery-tile--lead { grid-column:1/-1; grid-row:auto; } .home-compositions .gallery-tile > div { padding:45px 16px 16px; } .home-compositions .gallery-tile h3 { font-size:15px; } .home-compositions .project-panel { grid-template-columns:minmax(0,1fr); } .home-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; } .home-footer-bottom { flex-direction:column; } .home-footer-bottom > div { flex-wrap:wrap; gap:18px; } }
@media(max-width:440px) { .home-compositions .desktop-break { display:none; } .home-compositions .service-cards,.home-compositions .option-cards,.home-compositions .question-cards { grid-template-columns:minmax(0,1fr); } .home-compositions .service-icon { margin-bottom:16px; } .home-compositions .fit-details { grid-template-columns:minmax(0,1fr); } .home-compositions .fit-photo img { height:270px; } .home-compositions .opening-gallery { grid-template-columns:minmax(0,1fr); grid-template-rows:320px 240px 240px; } .home-compositions .process-steps { gap:28px 22px; } .home-compositions .project-panel-copy,.home-compositions .project-panel-action { padding:28px 24px; } }
@media(prefers-reduced-motion:reduce) { .home-compositions * { transition:none!important; animation:none!important; } }

/* Legacy photography makes the service and style choices visible. */
.home-compositions .service-card > img { width:100%; height:180px; object-fit:cover; border-radius:6px; margin-bottom:20px; }
.home-compositions .option-card > img { width:100%; height:160px; object-fit:contain; background:#f5f2ee; border-radius:6px; margin-bottom:18px; }
.home-compositions .legacy-team { margin-block:28px; }
@media(max-width:600px) { .home-compositions .service-card > img { height:190px; } }
.scroll-cue {
  position:fixed;
  z-index:20;
  bottom:max(18px, env(safe-area-inset-bottom));
  left:50%;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  background:rgba(48,41,34,.78);
  color:#fff;
  animation:scroll-cue-blink 2.4s ease-in-out infinite;
}
.scroll-cue:hover,.scroll-cue:focus-visible { animation:none; }
@keyframes scroll-cue-blink { 0%,100% { opacity:1; } 50% { opacity:.45; } }
@media(prefers-reduced-motion:reduce) { .scroll-cue { animation:none; } }

/* Decision-led homepage: trust, services, evidence, choices, and a clear next step. */
.home-compositions .home-facts { display:block; background:var(--home-white); border-bottom:1px solid var(--home-line); }
.home-compositions .home-facts .home-frame { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; padding-block:28px; text-align:left; }
.home-compositions .home-facts p { display:grid; gap:4px; }
.home-compositions .home-facts strong { color:var(--home-ink); font-size:18px; font-weight:600; letter-spacing:-.025em; }
.home-compositions .home-facts span { color:var(--home-muted); font-size:12px; line-height:1.35; }
.home-compositions .home-section { padding-block:76px; }
.home-compositions .section-heading { margin-bottom:30px; }
.home-compositions .section-heading--split { display:flex; align-items:end; justify-content:space-between; gap:50px; }
.home-compositions .section-heading--split > div { min-width:0; }
.home-compositions .section-heading--split p { flex:0 1 430px; margin-top:0; }
.home-compositions .section-heading p { max-width:680px; }
.home-compositions .section-link { display:inline-flex; align-items:center; gap:12px; flex-shrink:0; color:var(--home-navy); font-size:14px; font-weight:600; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.home-compositions .section-link span { text-decoration:none; }
.home-compositions .service-cards { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home-compositions .service-card { display:flex; flex-direction:column; min-height:100%; padding:0 0 24px; overflow:hidden; }
.home-compositions .service-card > img { width:100%; height:170px; margin:0 0 20px; border-radius:0; object-fit:cover; }
.home-compositions .service-card h3,.home-compositions .service-card p { margin-inline:22px; }
.home-compositions .service-card h3 { padding-right:20px; }
.home-compositions .service-card p { flex:1; margin-top:10px; }
.home-compositions .service-card .card-arrow { top:auto; right:22px; bottom:22px; color:var(--home-accent); font-size:18px; }
.home-compositions .service-card:hover { transform:translateY(-3px); }
.home-compositions .opening-gallery { grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,.8fr); grid-template-rows:minmax(245px,1fr) minmax(245px,1fr); gap:16px; }
.home-compositions .gallery-tile { min-height:240px; border-radius:9px; }
.home-compositions .gallery-tile--lead { grid-row:span 2; }
.home-compositions .gallery-tile--wide { grid-column:2 / span 2; }
.home-compositions .gallery-tile--detail { grid-column:2; }
.home-compositions .gallery-tile img { width:100%; height:100%; object-fit:cover; }
.home-compositions .gallery-tile--lead img { object-position:center; }
.home-compositions .gallery-tile figcaption { position:absolute; inset:auto 0 0; display:grid; gap:4px; padding:72px 22px 20px; background:var(--home-overlay); color:var(--home-white); }
.home-compositions .gallery-tile figcaption strong { font-size:16px; font-weight:600; }
.home-compositions .gallery-tile figcaption span { color:var(--home-on-dark); font-size:13px; line-height:1.45; }
.home-compositions .gallery-story { grid-column:3; display:flex; flex-direction:column; justify-content:center; padding:28px; border:1px solid var(--home-line); border-radius:9px; background:var(--home-white); }
.home-compositions .gallery-story h3 { margin-top:7px; font-size:22px; }
.home-compositions .gallery-story p:not(.gallery-kicker) { margin-top:12px; font-size:14px; }
.home-compositions .gallery-story a { display:inline-flex; align-items:center; gap:10px; margin-top:20px; color:var(--home-navy); font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.home-compositions .gallery-kicker,.home-compositions .home-kicker { color:var(--home-accent); font-size:11px; font-weight:700; letter-spacing:.11em; line-height:1.3; text-transform:uppercase; }
.home-compositions .installation-layout { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; align-items:start; }
.home-compositions .process-steps { grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.home-compositions .process-steps li { counter-increment:process; }
.home-compositions .process-steps { counter-reset:process; }
.home-compositions .process-steps li::before { display:block; margin-bottom:15px; color:var(--home-accent); font-size:30px; line-height:1; }
.home-compositions .process-steps h3 { font-size:15px; }
.home-compositions .process-steps p { margin-top:9px; font-size:13px; }
.home-compositions .concerns { border-top:1px solid var(--home-line); }
.home-compositions .concerns details { border-bottom:1px solid var(--home-line); background:transparent; }
.home-compositions .concerns summary { min-height:58px; padding:18px 34px 18px 0; color:var(--home-ink); font-size:15px; font-weight:600; }
.home-compositions .concerns summary::after { top:15px; right:3px; color:var(--home-accent); }
.home-compositions .concerns p { max-width:none; padding:0 28px 18px 0; color:var(--home-muted); font-size:14px; line-height:1.6; }
.home-compositions .home-offer { border-bottom:0; background:var(--home-navy); color:var(--home-white); }
.home-compositions .home-offer h2 { color:var(--home-white); max-width:620px; }
.home-compositions .home-offer p { color:var(--home-on-dark); max-width:610px; }
.home-compositions .home-offer .home-kicker { color:#f1a45f; }
.home-compositions .offer-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:72px; align-items:start; }
.home-compositions .home-button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:48px; padding:14px 20px; border:1px solid transparent; border-radius:6px; background:var(--home-navy); color:var(--home-white); font-size:14px; font-weight:600; text-decoration:none; }
.home-compositions .home-offer .home-button { margin-top:24px; }
.home-compositions .home-button--light { background:var(--home-white); color:var(--home-navy); }
.home-compositions .buying-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.28); }
.home-compositions .buying-links a { display:grid; gap:6px; min-height:106px; padding:18px 16px; border-bottom:1px solid rgba(255,255,255,.28); color:var(--home-white); }
.home-compositions .buying-links a:nth-child(odd) { border-right:1px solid rgba(255,255,255,.28); }
.home-compositions .buying-links strong { font-size:15px; }
.home-compositions .buying-links span { color:var(--home-on-dark); font-size:13px; line-height:1.4; }
.home-compositions .buying-links a:hover { background:rgba(255,255,255,.08); }
.home-compositions .reviews-faq-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:64px; align-items:start; }
.home-compositions .review-card { margin:0; padding:26px; border:1px solid var(--home-line); border-radius:9px; background:var(--home-white); }
.home-compositions .review-card blockquote { margin:0; color:var(--home-ink); font-size:18px; line-height:1.6; }
.home-compositions .review-card figcaption { margin-top:18px; color:var(--home-muted); font-size:13px; }
.home-compositions .review-card + .section-link { margin-top:20px; }
.home-compositions .question-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.home-compositions .question-cards details { padding:19px; border-radius:7px; }
.home-compositions .question-cards summary { min-height:42px; display:flex; align-items:center; font-size:14px; }
.home-compositions .question-cards p { font-size:13px; line-height:1.55; }
.home-compositions .project-panel { grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr); border-radius:9px; }
.home-compositions .project-panel-copy { padding:48px; }
.home-compositions .project-panel-copy h2 { max-width:460px; color:var(--home-white); }
.home-compositions .project-panel-copy > p:not(.home-kicker):not(.panel-location) { max-width:430px; }
.home-compositions .contact-line { min-height:44px; display:inline-flex; align-items:center; margin-top:22px; color:var(--home-white); font-size:17px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.home-compositions .project-shortcuts { display:grid; gap:8px; margin-top:24px; }
.home-compositions .project-shortcuts a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:12px 14px; border:1px solid rgba(255,255,255,.3); border-radius:6px; color:var(--home-navy); font-size:13px; }
.home-compositions .project-shortcuts a:hover,.home-compositions .project-shortcuts a:focus-visible { background:rgba(255,255,255,.08); border-color:var(--home-white); color:var(--home-white); }
.home-compositions .quote-map { display:block; width:100%; height:200px; margin-top:20px; border:0; border-radius:6px; }
.home-compositions .project-panel-action { padding:42px; }
.home-compositions .project-panel-action h3 { font-size:25px; }
.home-compositions .project-panel-action > p { margin-top:8px; }
.home-compositions .quote-form { display:grid; gap:16px; margin-top:22px; }
.home-compositions .quote-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.home-compositions .quote-field { display:grid; gap:7px; color:var(--home-ink); font-size:13px; font-weight:600; }
.home-compositions .quote-field--wide { grid-column:1 / -1; }
.home-compositions .quote-field input,.home-compositions .quote-field select,.home-compositions .quote-field textarea { width:100%; min-height:46px; padding:10px 12px; border:1px solid var(--home-line); border-radius:6px; background:var(--home-white); color:var(--home-ink); font-size:15px; font-weight:400; }
.home-compositions .quote-field textarea { min-height:88px; resize:vertical; }
.home-compositions .quote-field input:focus,.home-compositions .quote-field select:focus,.home-compositions .quote-field textarea:focus { border-color:var(--home-navy); outline:3px solid rgba(48,78,100,.22); outline-offset:2px; }
.home-compositions .quote-submit { width:100%; border:0; cursor:pointer; }
.home-compositions .quote-submit:disabled { cursor:wait; opacity:.65; }
.home-compositions .quote-response { margin:0; color:var(--home-muted); font-size:12px; line-height:1.55; }
.home-compositions .quote-status { min-height:1.35em; margin:0; color:var(--home-navy); font-size:14px; font-weight:600; }
.home-compositions .detailed-estimator { display:grid; gap:5px; margin-top:22px; padding-top:18px; border-top:1px solid var(--home-line); color:var(--home-muted); font-size:13px; }
.home-compositions .detailed-estimator a { color:var(--home-navy); font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.home-compositions .product-series-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.home-compositions .product-series-card { min-height:245px; padding:24px; border:1px solid var(--home-line); background:var(--home-white); }
.home-compositions .product-series-card > span { display:block; color:var(--home-accent); font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.home-compositions .product-series-card h3 { margin-top:28px; font-size:23px; line-height:1.12; }
.home-compositions .product-series-card p { margin-top:14px; color:var(--home-muted); font-size:14px; line-height:1.65; }
.home-compositions .product-series-actions { display:flex; flex-wrap:wrap; gap:18px 30px; margin-top:24px; }
.home-compositions .next-step-note { display:grid; gap:5px; margin-top:18px; padding:15px 0; border-top:1px solid var(--home-line); border-bottom:1px solid var(--home-line); }
.home-compositions .next-step-note strong { font-size:13px; }
.home-compositions .next-step-note span { color:var(--home-muted); font-size:12px; line-height:1.55; }
@media(max-width:1100px) { .home-compositions .service-cards,.home-compositions .product-series-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .home-compositions .installation-layout { gap:34px; } .home-compositions .process-steps { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:30px; } }
@media(max-width:760px) { .home-frame { width:calc(100% - 36px); } .home-compositions .home-section { padding-block:52px; } .home-compositions .home-facts .home-frame { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 14px; padding-block:24px; } .home-compositions .section-heading--split { display:block; } .home-compositions .section-heading--split p { margin-top:15px; } .home-compositions .section-link { margin-top:18px; } .home-compositions .opening-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:300px 220px 220px; } .home-compositions .gallery-tile--lead { grid-column:1 / -1; grid-row:auto; } .home-compositions .gallery-tile--wide { grid-column:1 / -1; } .home-compositions .gallery-tile--detail { grid-column:1; } .home-compositions .gallery-story { grid-column:2; } .home-compositions .installation-layout,.home-compositions .offer-layout,.home-compositions .reviews-faq-grid { grid-template-columns:minmax(0,1fr); gap:36px; } .home-compositions .buying-links { margin-top:4px; } .home-compositions .project-panel { grid-template-columns:minmax(0,1fr); } .home-compositions .project-panel-copy,.home-compositions .project-panel-action { padding:32px; } }
@media(max-width:520px) { .home-compositions .home-facts .home-frame { grid-template-columns:minmax(0,1fr); } .home-compositions .service-cards,.home-compositions .product-series-grid { grid-template-columns:minmax(0,1fr); } .home-compositions .opening-gallery { grid-template-columns:minmax(0,1fr); grid-template-rows:280px 220px 220px auto; } .home-compositions .gallery-tile--lead,.home-compositions .gallery-tile--wide,.home-compositions .gallery-tile--detail,.home-compositions .gallery-story { grid-column:1; } .home-compositions .question-cards,.home-compositions .quote-fields,.home-compositions .buying-links { grid-template-columns:minmax(0,1fr); } .home-compositions .quote-field--wide { grid-column:auto; } .home-compositions .buying-links a:nth-child(odd) { border-right:0; } .home-compositions .project-panel-copy,.home-compositions .project-panel-action { padding:28px 24px; } }
@media(prefers-reduced-motion:reduce) { .home-compositions .service-card,.home-compositions .gallery-tile img { transition:none; } }
