.roofdeck-intro{padding:64px 0 28px;max-width:850px;margin:auto}
.roofdeck-intro h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.16;margin:18px 0 20px}
.roofdeck-intro p{line-height:1.8;font-size:1.1rem;color:#3b534a}
.roofdeck-tag{text-transform:uppercase;letter-spacing:.14em;color:#497566;font-weight:800;font-size:.76rem}
.roofdeck-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:55px}
.roofdeck-image{margin:0;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 6px 22px rgba(0,0,0,.08)}
.roofdeck-image img{width:100%;height:335px;object-fit:cover;display:block;background:#d5ded9}
.roofdeck-feature{grid-column:1/-1}.roofdeck-feature img{height:min(56vw,600px)}
.roofdeck-image figcaption{padding:14px 18px 16px;line-height:1.5}
.roofdeck-image figcaption strong{font-size:.74rem;color:#52766b;letter-spacing:.09em;text-transform:uppercase;margin-right:9px}
.roofdeck-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 60px}
.roofdeck-details article{padding:24px;background:#edf3ef;border-radius:10px}
.roofdeck-details h3{font-size:1.1rem;margin:0 0 12px;color:#153a32}
.roofdeck-details p{line-height:1.65;margin:0}
.roofdeck-banner{background:#153a32;color:white;padding:34px;border-radius:12px;margin:0 0 70px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.roofdeck-banner h2{font-size:1.65rem;color:white;margin:0 0 9px}
.roofdeck-banner p{color:#e6efe8;line-height:1.6;margin:0}
.roofdeck-banner a{background:#eeaa6f;color:#153a32;border-radius:7px;text-decoration:none;padding:15px 22px;font-weight:800;white-space:nowrap}
.roofdeck-promo{padding:65px 0;background:#f1f5f1}
.roofdeck-promo-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center}
.roofdeck-promo img{display:block;width:100%;height:390px;object-fit:cover;border-radius:12px}
.roofdeck-promo h2{font-size:clamp(1.9rem,3.5vw,2.9rem);line-height:1.2;margin:14px 0 17px}
.roofdeck-promo p{line-height:1.7}
.roofdeck-promo a.roofdeck-button{display:inline-block;text-decoration:none;background:#153a32;color:white;border-radius:7px;font-weight:800;padding:13px 20px;margin-top:14px}
@media(max-width:770px){.roofdeck-gallery,.roofdeck-details,.roofdeck-promo-inner{grid-template-columns:1fr}.roofdeck-feature{grid-column:auto}.roofdeck-image img,.roofdeck-feature img{height:280px}.roofdeck-promo img{height:265px}.roofdeck-banner{flex-direction:column;align-items:flex-start}.roofdeck-intro{padding-top:35px}}