:root{--bg:#080b0e;--bg2:#0d1217;--panel:#11171c;--line:#27313a;--text:#f5f6f7;--muted:#b7bec5;--accent:#f2b705;--accent2:#ffd34d;--max:1240px;--shadow:0 18px 50px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800}.section-title{font-size:clamp(2rem,4vw,3.6rem);line-height:.96;margin:.35rem 0 1rem;text-transform:uppercase;letter-spacing:-.03em}.section-copy{color:var(--muted);max-width:720px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;border-radius:6px;padding:14px 22px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;border:1px solid var(--accent);transition:.2s}.btn-primary{background:var(--accent);color:#111;border-color:var(--accent)}.btn-primary:hover{background:var(--accent2)}.btn-outline{background:rgba(5,8,10,.5);color:#fff}.btn-outline:hover{background:rgba(242,183,5,.08)}
.topbar{position:sticky;top:0;z-index:50;background:rgba(7,10,13,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.nav{height:92px;display:grid;grid-template-columns:280px 1fr auto;align-items:center;gap:24px}.brand img{width:245px;height:76px;object-fit:contain;object-position:left center;mix-blend-mode:screen}.navlinks{display:flex;justify-content:center;align-items:center;gap:30px;font-size:.86rem;font-weight:700;text-transform:uppercase}.navlinks a{position:relative;padding:35px 0 29px}.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--accent);transition:.2s}.navlinks a:hover:after,.navlinks a.active:after{right:0}.nav-social{display:flex;gap:10px}.social{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#192027;border:1px solid #2e3943}.social svg{width:20px;height:20px;fill:#fff}.social.fb{background:#315cab}.social.ig{background:linear-gradient(145deg,#833ab4,#fd1d1d,#fcb045)}.burger{display:none;background:none;border:0;color:#fff;font-size:28px}
.hero{min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden;background:#050708}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,7,9,.98) 0%,rgba(4,7,9,.91) 28%,rgba(4,7,9,.48) 58%,rgba(4,7,9,.18) 100%),url('images/patio-pergola-2.jpg') center/cover no-repeat}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,10,.8),transparent 42%)}.hero-inner{position:relative;z-index:2;padding:80px 0 55px;max-width:610px}.hero h1{font-size:clamp(3rem,6.2vw,6rem);line-height:.9;margin:0 0 14px;text-transform:uppercase;letter-spacing:-.045em}.hero h1 span{display:block;color:var(--accent)}.hero h2{font-size:clamp(1.2rem,2vw,2rem);margin:0 0 16px;text-transform:uppercase;letter-spacing:.08em}.hero p{font-size:1.08rem;color:#e6e8ea;max-width:530px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-trust{display:flex;gap:30px;flex-wrap:wrap;margin-top:38px;font-size:.78rem;font-weight:800;text-transform:uppercase}.hero-trust span{display:flex;align-items:center;gap:8px}.hero-trust b{color:var(--accent);font-size:1.1rem}
.services{padding:68px 0 82px;background:linear-gradient(180deg,#090d11,#0c1115)}.center{text-align:center}.center .section-copy{margin-left:auto;margin-right:auto}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:32px}.service-card{min-height:154px;background:linear-gradient(180deg,#11171c,#0d1216);border:1px solid #39434c;border-radius:5px;padding:20px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.25s;box-shadow:inset 0 1px rgba(255,255,255,.02)}.service-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow)}.service-card svg{width:48px;height:48px;stroke:var(--accent);fill:none;stroke-width:1.7;margin-bottom:10px}.service-card h3{font-size:.95rem;line-height:1.12;margin:0}
.ba-section{padding:22px 0 75px;background:#080c10;border-top:1px solid #202a32}.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ba-card h3{text-align:center;font-size:1.05rem;margin:12px 0 0;font-weight:600}.compare{position:relative;overflow:hidden;border-radius:5px;border:1px solid #c9d0d5;aspect-ratio:1.75/1;background:#222}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.compare.full-image img{object-fit:contain;background:#0b0f12}.compare .after{clip-path:inset(0 0 0 50%)}.divider{position:absolute;left:50%;top:0;bottom:0;width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}.handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border:2px solid #fff;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-weight:900;cursor:ew-resize;z-index:4}.label{position:absolute;top:12px;z-index:3;padding:6px 12px;font-size:.78rem;font-weight:800;background:#111}.label.before{left:12px}.label.after-label{right:12px;background:var(--accent);color:#111}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5;margin:0}
.trust-strip{border-top:1px solid #2b343b;border-bottom:1px solid #2b343b;background:#0a0e12}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:25px 28px;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;border-right:1px solid #283139}.trust-item:last-child{border-right:0}.trust-icon{width:40px;height:40px;border:2px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--accent);font-weight:900}.trust-item h4{margin:0 0 4px;font-size:.9rem;text-transform:uppercase}.trust-item p{margin:0;color:#c7cbd0;font-size:.82rem;line-height:1.4}
.gallery{padding:78px 0;background:#0b1014}.gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:260px;gap:14px;margin-top:30px}.gallery-grid a{position:relative;overflow:hidden;border-radius:5px}.gallery-grid a:first-child{grid-row:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-grid a:hover img{transform:scale(1.035)}.gallery-grid span{position:absolute;left:14px;bottom:12px;background:rgba(0,0,0,.72);padding:6px 9px;font-size:.8rem;border-left:3px solid var(--accent)}
.quote{padding:78px 0;background:radial-gradient(circle at 80% 20%,rgba(242,183,5,.08),transparent 30%),#080c10}.quote-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.contact-list{display:grid;gap:14px;margin:28px 0}.contact-list a,.contact-list div{display:flex;gap:12px;align-items:center;color:#e3e6e8}.contact-list b{color:var(--accent);width:24px}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#10161b;border:1px solid #2e3942;padding:28px;border-radius:7px;box-shadow:var(--shadow)}.quote-form label{font-size:.76rem;text-transform:uppercase;color:#d7dce0;font-weight:800}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.quote-form input,.quote-form select,.quote-form textarea{width:100%;background:#090e12;border:1px solid #3a454e;color:#fff;border-radius:4px;padding:13px 12px;font:inherit}.quote-form textarea{min-height:130px;resize:vertical}.quote-form button{grid-column:1/-1}
.coverage{padding:56px 0;border-top:1px solid #27313a;background:#0a0f13}.coverage-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.map-art{min-height:230px;position:relative;border:1px solid #2a343c;border-radius:6px;background:radial-gradient(circle at 58% 54%,rgba(242,183,5,.16) 0 2px,transparent 3px),linear-gradient(115deg,#151b20 0 22%,#0d1216 22% 38%,#171d22 38% 52%,#0d1216 52% 67%,#151b20 67%);overflow:hidden}.map-art:before{content:"";position:absolute;width:185px;height:185px;border:2px dashed var(--accent);border-radius:50%;left:58%;top:54%;transform:translate(-50%,-50%)}.map-pin{position:absolute;left:58%;top:52%;transform:translate(-50%,-50%);text-align:center;color:#fff;font-weight:800}.map-pin b{display:block;color:var(--accent);font-size:1.5rem}.map-pin small{display:block;color:var(--accent);margin-top:72px}
.footer{padding:28px 0;background:#05080a;border-top:1px solid #212a31;color:#aeb5bb;font-size:.82rem}.footer-wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer a:hover{color:var(--accent)}
.page-hero{padding:105px 0 70px;background:linear-gradient(90deg,rgba(4,7,9,.96),rgba(4,7,9,.55)),var(--bgimg) center/cover no-repeat;border-bottom:1px solid #27313a}.page-hero h1{font-size:clamp(2.7rem,6vw,5.2rem);line-height:.94;text-transform:uppercase;max-width:850px;margin:.4rem 0 1rem}.page-hero p{max-width:700px;color:#d7dde2}.content{padding:72px 0}.content-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:50px}.content h2{font-size:2rem;text-transform:uppercase;margin-top:0}.content p,.content li{color:#c0c6cb}.content ul{padding-left:18px}.side-card{background:#11171c;border:1px solid #303a43;border-radius:6px;padding:24px;position:sticky;top:115px}.side-card h3{margin-top:0}.mini-list{display:grid;gap:8px}.mini-list a{padding:9px 10px;border-left:2px solid #313b44}.mini-list a:hover{border-color:var(--accent);color:var(--accent)}
@media(max-width:1050px){.nav{grid-template-columns:220px 1fr auto}.brand img{width:205px}.navlinks{gap:18px;font-size:.76rem}.service-grid{grid-template-columns:repeat(4,1fr)}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid a:first-child{grid-row:auto;grid-column:1/-1}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid #283139}.quote-wrap,.coverage-wrap,.content-grid{grid-template-columns:1fr}.side-card{position:static}}
@media(max-width:780px){.container{width:min(var(--max),calc(100% - 26px))}.topbar{position:sticky}.nav{height:76px;grid-template-columns:1fr auto auto}.brand img{width:178px;height:58px}.burger{display:block}.navlinks{position:fixed;left:0;right:0;top:76px;background:#070b0e;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 24px;border-bottom:1px solid #2b353d}.navlinks.open{display:flex}.navlinks a{padding:14px 0;border-bottom:1px solid #182027}.navlinks a:after{display:none}.nav-social{gap:7px}.social{width:34px;height:34px}.hero{min-height:670px}.hero:before{background:linear-gradient(90deg,rgba(4,7,9,.94),rgba(4,7,9,.68)),url('images/patio-pergola-2.jpg') center/cover no-repeat}.hero-inner{padding:60px 0 40px}.hero h1{font-size:clamp(3.1rem,15vw,5.2rem)}.hero-trust{gap:16px}.service-grid{grid-template-columns:repeat(2,1fr);gap:11px}.service-card{min-height:135px}.ba-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid #283139}.trust-item:last-child{border-bottom:0}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-grid a:first-child{grid-column:auto}.quote-form{grid-template-columns:1fr}.field.full,.quote-form button{grid-column:1}.footer-wrap{display:grid}.page-hero{padding:75px 0 55px}}
@media(max-width:430px){.nav-social{display:none}.hero-actions .btn{width:100%}.service-grid{grid-template-columns:1fr 1fr}.service-card h3{font-size:.86rem}.quote-form{padding:20px}.section-title{font-size:2.35rem}}
