:root{--navy: #071426;--navy-2: #0f2337;--teal: #0d9488;--teal-dark: #0f766e;--amber: #f59e0b;--gold: #fbbf24;--slate: #475569;--muted: #64748b;--light: #f8fafc;--soft: #eef6f5;--border: #e2e8f0;--white: #ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--light);color:#1e293b;font-family:Arial,Helvetica,sans-serif;line-height:1.5}body.modal-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit}.container{width:min(1120px,calc(100% - 32px));margin:0 auto}section{padding:4rem 0}.offer-banner{align-items:center;background:#0d9488;color:var(--white);display:flex;font-size:.86rem;font-weight:900;justify-content:center;letter-spacing:.03em;padding:.65rem 1rem;text-align:center}.offer-banner:hover{background:var(--teal-dark)}.site-header{background:#071426f7;border-bottom:1px solid rgba(255,255,255,.08);color:var(--white);position:sticky;top:0;z-index:50}.header-inner{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:76px}.brand{display:flex;flex-direction:column;font-weight:900;letter-spacing:-.02em}.brand small{color:#94a3b8;font-size:.68rem;letter-spacing:.18em;margin-top:.15rem;text-transform:uppercase}.desktop-nav{align-items:center;display:flex;gap:1.25rem;font-size:.92rem;font-weight:800}.desktop-nav a:not(.nav-cta){color:#dbeafe}.desktop-nav a:not(.nav-cta):hover{color:#5eead4}.nav-cta,.btn-primary,.btn-secondary-fill{align-items:center;background:var(--teal);border:1px solid var(--teal);border-radius:9px;color:var(--white);display:inline-flex;font-weight:900;justify-content:center;padding:.82rem 1.05rem;transition:background .18s ease,border-color .18s ease,transform .18s ease}.nav-cta:hover,.btn-primary:hover,.btn-secondary-fill:hover{background:var(--teal-dark);border-color:var(--teal-dark);transform:translateY(-1px)}.menu-toggle{align-items:center;background:transparent;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:var(--white);cursor:pointer;display:none;flex:0 0 auto;height:44px;justify-content:center;padding:0;width:44px}.menu-toggle .menu-icon,.menu-toggle .menu-icon:before,.menu-toggle .menu-icon:after{background:currentColor;border-radius:999px;display:block;height:2px;transition:transform .18s ease,opacity .18s ease;width:18px}.menu-toggle .menu-icon{position:relative}.menu-toggle .menu-icon:before,.menu-toggle .menu-icon:after{content:"";left:0;position:absolute}.menu-toggle .menu-icon:before{top:-6px}.menu-toggle .menu-icon:after{top:6px}.menu-toggle[aria-expanded=true] .menu-icon{background:transparent}.menu-toggle[aria-expanded=true] .menu-icon:before{transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:translateY(-6px) rotate(-45deg)}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);white-space:nowrap}.mobile-nav{border-top:1px solid rgba(255,255,255,.08);display:none;padding:.65rem 0 1rem}.mobile-nav.open{display:block}.mobile-nav a{border-radius:12px;display:block;font-weight:800;padding:.9rem .85rem}.mobile-nav a:hover{background:#ffffff12}.hero{--hero-x: 72%;--hero-y: 38%;color:var(--white);min-height:720px;overflow:hidden;padding:0;position:relative}.hero:before{background:radial-gradient(circle at var(--hero-x) var(--hero-y),rgba(94,234,212,.12),transparent 26rem);content:"";inset:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:1}.hero-bg{inset:0;position:absolute}.hero-bg img{animation:heroImageEase 18s ease-in-out infinite alternate;height:100%;object-fit:cover;opacity:.4;transform:scale(1.03);width:100%}.hero-bg:after{background:linear-gradient(90deg,#071426f5,#071426d1,#07142680),linear-gradient(180deg,#0714261f,#071426c7);content:"";inset:0;position:absolute;pointer-events:none}.hero-inner{align-items:center;display:grid;gap:4rem;grid-template-columns:minmax(0,.88fr) minmax(320px,.58fr);min-height:720px;position:relative;z-index:2}.hero-copy{max-width:760px;padding:5rem 0}.eyebrow{animation:heroFadeUp .66s ease-out both;align-items:center;background:transparent;border:0;border-radius:0;color:#99f6e4;display:inline-flex;font-size:.78rem;font-weight:900;letter-spacing:.08em;margin-bottom:.95rem;padding:0;text-transform:uppercase}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(2.55rem,5.3vw,5.15rem);letter-spacing:-.05em;line-height:1;margin-bottom:1.15rem}.hero h1{animation:heroFadeUp .72s ease-out .08s both;font-size:clamp(3rem,6vw,5.8rem);letter-spacing:0;line-height:.94;max-width:780px}.hero-subhead{animation:heroFadeUp .72s ease-out .16s both;color:#dbeafe;font-size:clamp(1.08rem,1.75vw,1.24rem);line-height:1.5;max-width:650px}.hero-actions{animation:heroFadeUp .72s ease-out .24s both;display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.7rem}.btn-primary{box-shadow:0 14px 32px #0d948847;min-height:56px;padding:.95rem 1.35rem}.btn-primary:hover{box-shadow:0 14px 36px #0d94886b;transform:translateY(-2px)}.btn-outline{align-items:center;background:transparent;border:1px solid rgba(255,255,255,.38);border-radius:9px;color:#e2e8f0;display:inline-flex;font-size:.9rem;font-weight:900;justify-content:center;min-height:46px;padding:.72rem 1rem;transition:border-color .22s ease,color .22s ease}.btn-outline:hover{border-color:#5eead4;color:#5eead4}.hero-preview{animation:heroFadeUp .72s ease-out .28s both,heroPreviewFloat 8s ease-in-out 1.2s infinite alternate;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:26px;box-shadow:0 34px 80px #0000004d;overflow:hidden;transform:perspective(900px) rotateX(var(--tilt-y, 0deg)) rotateY(var(--tilt-x, 0deg));transition:transform .18s ease,border-color .18s ease}.hero-preview:hover{border-color:#5eead46b}.hero-preview-stage{aspect-ratio:4 / 3.15;position:relative}.hero-preview-stage img{height:100%;object-fit:cover;transform:scale(1.02);transition:transform .6s ease,filter .4s ease;width:100%}.hero-preview[data-scene=deck] .hero-preview-stage img{filter:saturate(1.05) contrast(1.03)}.hero-preview[data-scene=awning] .hero-preview-stage img{filter:saturate(1.08) brightness(.95)}.hero-preview[data-scene=lighting] .hero-preview-stage img{filter:saturate(1.12) brightness(.72)}.hero-preview-glow{background:linear-gradient(180deg,transparent 44%,rgba(6,24,38,.66)),radial-gradient(circle at var(--scene-x, 62%) var(--scene-y, 38%),rgba(255,255,255,.16),transparent 12rem);inset:0;position:absolute;transition:background .32s ease}.hero-preview-controls{display:grid;gap:.45rem;grid-template-columns:repeat(3,1fr);padding:.7rem}.hero-preview-tab{background:transparent;border:0;border-radius:999px;color:#cbd5e1;cursor:pointer;font:inherit;font-size:.82rem;font-weight:900;min-height:38px;transition:background .18s ease,color .18s ease}.hero-preview-tab:hover,.hero-preview-tab[aria-pressed=true]{background:#ffffff1f;color:var(--white)}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes heroImageEase{0%{transform:scale(1.03)}to{transform:scale(1.08)}}@keyframes heroPreviewFloat{0%{translate:0 0}to{translate:0 -10px}}@media(prefers-reduced-motion:reduce){.hero-bg img,.hero-preview,.hero-preview-stage img,.eyebrow,.hero h1,.hero-subhead,.hero-actions{animation:none!important;transform:none!important;opacity:1!important;transition:none!important}}.section-head{margin:0 auto 2.5rem;max-width:780px;text-align:center}.kicker{color:var(--teal-dark);font-size:.78rem;font-weight:900;letter-spacing:.12em;margin-bottom:.55rem;text-transform:uppercase}.section-head h2,.split-copy h2,.cta-block h2,.form-card h2,.financing-copy h2,.popup h4{color:var(--navy);font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;line-height:1.08;margin-bottom:.75rem}.section-head p,.split-copy p,.financing-copy p{color:var(--slate)}.grid-4,.services-grid,.gallery-grid,.testimonials-grid{display:grid;gap:1.1rem}.grid-4,.services-grid{grid-template-columns:repeat(4,1fr)}.gallery-grid,.testimonials-grid{grid-template-columns:repeat(3,1fr)}.card{background:var(--white);border:1px solid var(--border);border-radius:13px;box-shadow:0 8px 26px #0f172a0d;overflow:hidden}.benefit-card,.process-card,.testimonial-card{padding:1.35rem}.icon{align-items:center;background:#0d94881a;border-radius:10px;color:var(--teal-dark);display:flex;font-weight:900;height:42px;justify-content:center;margin-bottom:1rem;width:42px}.card h3,.card h4{color:var(--navy);margin-bottom:.45rem}.card p{color:var(--slate);font-size:.92rem;margin-bottom:0}.service-card img,.gallery-card img{height:220px;object-fit:cover;width:100%}.service-card .body,.gallery-card .body{padding:1.1rem}.tag{color:var(--teal-dark);display:block;font-size:.7rem;font-weight:900;letter-spacing:.08em;margin-bottom:.35rem;text-transform:uppercase}.project-meta{background:#f8fafc;border:1px solid var(--border);border-radius:10px;color:var(--navy);display:grid;font-size:.78rem;font-weight:900;gap:.25rem;margin-bottom:.8rem;padding:.72rem}.split-section{background:var(--white)}.split-grid{align-items:center;display:grid;gap:2rem;grid-template-columns:.9fr 1.1fr}.mini-grid{display:grid;gap:.8rem;grid-template-columns:repeat(3,1fr);margin:1.2rem 0 1.5rem}.mini-box{background:var(--light);border:1px solid var(--border);border-radius:10px;color:var(--navy);font-size:.88rem;font-weight:900;padding:.9rem}.compare-slider{--position: 52%;aspect-ratio:16 / 10;background:var(--navy);border-radius:14px;box-shadow:0 18px 45px #0f172a2e;min-height:360px;overflow:hidden;position:relative}.compare-slider img,.after-layer{height:100%;inset:0;position:absolute;width:100%}.compare-slider img{object-fit:cover}.after-layer{clip-path:inset(0 calc(100% - var(--position)) 0 0)}.compare-slider input{cursor:ew-resize;height:100%;inset:0;opacity:0;position:absolute;width:100%;z-index:20}.divider{background:#fffffff2;inset-block:0;left:var(--position);position:absolute;transform:translate(-50%);width:2px;z-index:10}.handle{align-items:center;background:var(--teal);border-radius:999px;color:var(--white);display:flex;font-weight:900;height:48px;justify-content:center;left:var(--position);position:absolute;top:50%;transform:translate(-50%,-50%);width:48px;z-index:11}.chip{border-radius:999px;font-size:.72rem;font-weight:900;padding:.4rem .65rem;position:absolute;text-transform:uppercase;top:1rem;z-index:8}.chip.before{background:var(--white);color:var(--navy);left:1rem}.chip.after{background:var(--teal);color:var(--white);right:1rem}.post-compare-cta{background:var(--soft);text-align:center}.post-compare-cta h2{color:var(--navy);font-size:clamp(1.9rem,3.5vw,2.6rem);letter-spacing:-.035em;margin-bottom:1rem}.visualizer-panel{align-items:center;background:var(--light);border:1px solid var(--border);border-radius:16px;display:grid;gap:2rem;grid-template-columns:1.25fr .75fr;padding:1.5rem}.visualizer-stage{background:#e2e8f0;border:4px solid var(--white);border-radius:12px;box-shadow:0 12px 30px #0f172a24;overflow:hidden;position:relative}.visualizer-stage img{height:410px;object-fit:cover;width:100%}.visualizer-label{background:#071426eb;border-radius:9px;bottom:1rem;color:var(--white);font-size:.84rem;left:1rem;padding:.65rem .8rem;position:absolute}.swatches{display:grid;gap:.7rem;grid-template-columns:repeat(2,1fr)}.swatch-btn{align-items:center;background:var(--white);border:1px solid var(--border);border-radius:9px;cursor:pointer;display:flex;font-size:.82rem;font-weight:900;gap:.5rem;padding:.8rem;text-align:left}.swatch-btn.active{border-color:var(--teal);box-shadow:0 0 0 3px #0d948824}.dot{border:1px solid #cbd5e1;border-radius:999px;height:18px;width:18px}.hardware-options{display:grid;gap:.55rem;margin-top:.75rem}.hardware-options label{background:var(--white);border:1px solid var(--border);border-radius:9px;cursor:pointer;display:flex;font-size:.84rem;gap:.55rem;padding:.8rem}.process-section{background:var(--soft)}.process-grid{display:grid;gap:1rem;grid-template-columns:repeat(5,1fr);text-align:center}.step-number{align-items:center;background:var(--teal);border-radius:999px;color:var(--white);display:flex;font-size:.9rem;font-weight:900;height:40px;justify-content:center;margin:0 auto 1rem;width:40px}.financing-section{background:var(--navy);color:var(--white)}.financing-grid{align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.financing-copy h2{color:var(--white)}.financing-copy p{color:#d1d5db}.finance-cards{display:grid;gap:.85rem;grid-template-columns:repeat(3,1fr);margin:1.4rem 0}.finance-card{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1rem}.finance-card h3{color:var(--white);font-size:.95rem;margin-bottom:.35rem}.finance-card p{color:#cbd5e1;font-size:.8rem;margin-bottom:0}.financing-image{border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden}.financing-image img{aspect-ratio:1672 / 941;height:100%;object-fit:cover;width:100%}.comparison-table{border:1px solid var(--border);border-radius:14px;overflow-x:auto}table{border-collapse:collapse;min-width:680px;width:100%}th{background:var(--navy);color:var(--white);font-size:.82rem;letter-spacing:.06em;padding:1rem;text-align:left;text-transform:uppercase}td{border-top:1px solid var(--border);color:var(--slate);font-size:.9rem;padding:1rem}td:nth-child(2){background:#f0fdfa;color:var(--navy);font-weight:900}.gallery-section,.form-section{background:var(--light)}.testimonial-card .stars{color:var(--gold);font-size:.92rem;letter-spacing:.05em;margin-bottom:.8rem}.testimonial-card blockquote{color:var(--slate-dark);font-size:.94rem;font-style:italic;margin:0}.testimonial-card cite{color:var(--navy);display:block;font-style:normal;font-weight:900;margin-top:1rem}.service-areas{background:#050d19;color:#cbd5e1;padding:2.5rem 0;text-align:center}.area-list{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;justify-content:center;margin-top:.85rem}.area-list span{font-size:.86rem;font-weight:800}.form-card{background:var(--white);border:1px solid rgba(13,148,136,.24);border-radius:18px;box-shadow:0 22px 60px #0f172a24;margin:0 auto;max-width:760px;padding:1.5rem}.form-card h2{text-align:center}.form-card .subhead{color:var(--slate);margin:-.25rem 0 1.2rem;text-align:center}.scarcity{align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#9a3412;display:flex;font-weight:900;gap:.55rem;justify-content:center;margin-bottom:1.15rem;padding:.75rem .9rem;text-align:center}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}label{color:var(--navy);display:block;font-size:.75rem;font-weight:900;letter-spacing:.07em;margin-bottom:.38rem;text-transform:uppercase}input[type=text],input[type=tel]{background:#f8fafc;border:1px solid #cbd5e1;border-radius:9px;color:#1e293b;padding:.92rem .95rem;width:100%}input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0d948826;outline:none}.field-error{color:#dc2626;display:none;font-size:.78rem;margin:.3rem 0 0}.form-actions{margin-top:1.15rem}.form-actions .btn-primary{border:0;cursor:pointer;width:100%}.call-note{color:var(--slate);font-size:.86rem;margin:.65rem 0 0;text-align:center}.call-note a{color:var(--teal-dark);font-weight:900;text-decoration:underline;text-underline-offset:3px}.micro-steps{border-top:1px solid var(--border);display:grid;gap:.7rem;grid-template-columns:repeat(3,1fr);margin-top:1.15rem;padding-top:1rem}.micro-step{align-items:center;display:flex;gap:.5rem}.micro-step .num{align-items:center;background:var(--navy);border-radius:999px;color:var(--white);display:flex;flex:0 0 28px;font-size:.82rem;font-weight:900;height:28px;justify-content:center;width:28px}.micro-step span:last-child{color:var(--navy);font-size:.78rem;font-weight:900;line-height:1.25}.legal{color:#64748b;font-size:.76rem;line-height:1.45;margin:1rem 0 0;text-align:center}.form-message{border-radius:9px;display:none;font-size:.9rem;font-weight:800;margin-top:1rem;padding:.85rem;text-align:center}.form-message.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.sticky-mobile{display:none}.sticky-finance{background:var(--teal);border-radius:10px;bottom:1rem;box-shadow:0 16px 40px #0f172a3d;color:var(--white);font-size:.86rem;font-weight:900;padding:.82rem 1rem;position:fixed;right:1rem;z-index:70}.sticky-finance:hover{background:var(--teal-dark)}.popup-overlay{align-items:center;background:#071426d1;display:none;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.popup-overlay.open{display:flex}.popup{background:var(--white);border:2px solid rgba(13,148,136,.28);border-radius:18px;box-shadow:0 22px 70px #00000047;max-width:440px;padding:2rem;position:relative;text-align:center;width:100%}.popup h4{font-size:1.65rem}.popup p{color:var(--slate);font-size:.95rem}.close-popup{background:transparent;border:0;color:#64748b;cursor:pointer;font-size:1.6rem;position:absolute;right:.8rem;top:.65rem}.dismiss{background:transparent;border:0;color:#64748b;cursor:pointer;display:block;font-size:.82rem;font-weight:800;margin:.9rem auto 0;text-decoration:underline}footer{background:var(--navy);border-top:1px solid rgba(255,255,255,.08);color:#94a3b8;font-size:.9rem;padding:3rem 0}.footer-grid{display:grid;gap:2rem;grid-template-columns:1fr 1fr}.footer-brand{color:var(--white);font-size:1.2rem;font-weight:900}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.footer-contact{text-align:right}.footer-contact p{margin-bottom:.4rem}.footer-bottom{align-items:center;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;padding-top:1.25rem}@media(max-width:980px){.desktop-nav{display:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center}.grid-4,.services-grid,.gallery-grid,.testimonials-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.financing-grid,.split-grid,.visualizer-panel,.finance-cards,.form-grid,.hero-inner{grid-template-columns:1fr}.hero-preview{max-width:560px}}@media(max-width:767px){section{padding:4rem 0}.hero,.hero-inner{min-height:auto}.hero-inner{padding:4rem 0}.hero-bg:after{background:#071426d1}.hero-actions{flex-direction:column}.hero-copy{padding:0}.hero-preview-controls{grid-template-columns:1fr}.btn-primary,.btn-outline,.btn-secondary-fill{width:100%}.grid-4,.services-grid,.gallery-grid,.testimonials-grid,.process-grid,.mini-grid,.micro-steps{grid-template-columns:1fr}.compare-slider{aspect-ratio:4 / 5;min-height:300px}.visualizer-stage img{height:300px}.service-card img,.gallery-card img{height:210px}.micro-step{background:var(--light);border-radius:9px;padding:.65rem}.footer-grid,.footer-bottom{grid-template-columns:1fr;flex-direction:column;align-items:flex-start}.footer-contact{text-align:left}.sticky-mobile{background:var(--navy);border-top:1px solid rgba(255,255,255,.1);bottom:0;display:grid;grid-template-columns:repeat(3,1fr);height:56px;left:0;position:fixed;right:0;z-index:80}.sticky-mobile a{align-items:center;color:var(--white);display:flex;font-size:.78rem;font-weight:900;justify-content:center;padding:.5rem;text-align:center}.sticky-mobile a:last-child{background:var(--teal)}.sticky-finance{display:none}footer{padding-bottom:5rem}}
