*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#07131d;color:#fff;font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif}
.container{width:min(1240px,calc(100% - 36px));margin:auto}
.approved-home{position:relative;width:100%;min-height:100vh;background:#07131d;overflow:hidden}
.approved-image{display:block;width:100%;height:auto;min-height:100vh;object-fit:cover;object-position:top center}
.hotspot{position:absolute;display:block;text-decoration:none}
.hotspot.quote{top:3.1%;right:4.1%;width:12.5%;height:5.2%}
.hotspot.discover{top:48.1%;left:4.3%;width:13.7%;height:5.2%}
.hotspot.brochure{top:48.1%;left:18.3%;width:13.4%;height:5.2%}
.hotspot.contactnav{top:4.4%;left:53.2%;width:6.5%;height:3%}
.weather-section{padding:28px 0;background:#07131d}
.panel-img{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.32)}
.roof-section{padding:18px 0 40px;background:#07131d}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.project h2{color:#ff7a3c;text-transform:uppercase;margin:0 0 16px;font-size:34px}
.project img{width:100%;border-radius:14px;display:block;box-shadow:0 24px 80px rgba(0,0,0,.32)}
.project p{color:#c8d0d5;font-size:16px;line-height:1.8}
.mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mini-cards article{background:#0f2231;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:14px}
.mini-cards h3{color:#ff7a3c;text-transform:uppercase;font-size:13px;margin:0 0 8px}
.mini-cards p{color:white;font-size:13px;margin:0}
.contact-section{padding:48px 0;background:linear-gradient(180deg,#07131d,#0b1d2a)}
.contact-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:28px}
.language{background:#ef6332;color:#fff;border:0;border-radius:4px;padding:10px 14px;font-weight:800;margin-bottom:18px;cursor:pointer}
.eyebrow{color:#ff7a3c;text-transform:uppercase;font-weight:900;letter-spacing:.12em}
.contact-info h2{font-size:52px;font-weight:300;line-height:1.04;margin:10px 0 16px}
.contact-info p{color:#c8d0d5;font-size:16px;line-height:1.8}
.info-card{margin-top:24px;background:#08121c;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:24px;display:grid;gap:8px;max-width:350px}
.info-card a{color:#fff;text-decoration:none;font-weight:800}.info-card span{color:#c8d0d5}
.form-wrap{background:#0f2231;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.32)}
.contact-form h3{font-size:32px;font-weight:300;margin:0 0 18px}
.contact-form label{display:block;margin-bottom:14px}.contact-form span{display:block;margin-bottom:8px}
.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(255,255,255,.09);background:#102739;color:#fff;border-radius:8px;padding:14px;font:inherit}
.submit{background:#ef6332;color:#fff;border:0;border-radius:3px;padding:14px 22px;text-transform:uppercase;font-weight:900;cursor:pointer}
@media(max-width:900px){.approved-image{width:auto;height:100vh;max-width:none;transform:translateX(-18%)}.hotspot{display:none}.two-col,.contact-layout,.mini-cards{grid-template-columns:1fr}.contact-info h2{font-size:38px}}
