:root{--ink:#17252b;--muted:#5d6a6f;--navy:#173c49;--teal:#2b8791;--mint:#dff2ef;--white:#fff;--line:#d8e2e4;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}.announcement{height:44px;padding:0 clamp(20px,5vw,78px);display:flex;align-items:center;justify-content:flex-end;gap:34px;background:#e7f2f4;font-size:13px;font-weight:700}.announcement a{color:var(--teal)}.site-header{min-height:112px;padding:18px clamp(20px,5vw,78px);display:flex;align-items:center;gap:34px;background:#fff;border-bottom:1px solid #edf1f2;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50% 50% 50% 16%;background:var(--navy);color:white;font-size:30px;font-weight:800;box-shadow:inset -8px -8px 0 var(--teal)}.brand strong,.brand small{display:block;letter-spacing:.07em}.brand strong{font-size:19px}.brand small{font-size:10px;color:var(--teal);margin-top:2px}.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(17px,2vw,34px);flex:1}.main-nav a{font-size:14px;font-weight:800;white-space:nowrap}.main-nav a:hover{color:var(--teal)}.header-actions{display:flex;align-items:center;gap:22px}.phone span,.phone strong{display:block}.phone span{font-size:12px;color:var(--teal);font-weight:800}.phone strong{font-size:18px;letter-spacing:.04em}.estimate,.button{display:inline-flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:.04em}.estimate{min-height:56px;padding:0 25px;color:white;background:var(--teal);font-size:14px}.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;padding:10px 14px;font:700 14px Manrope;border-radius:4px}.hero{min-height:calc(100vh - 156px);position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);background:linear-gradient(115deg,#234c58 0%,#2c6970 48%,#d8e9e7 48.1%,#eff6f5 100%)}.hero:before{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.1);border-radius:50%;left:-170px;top:-220px}.hero-content{position:relative;z-index:2;align-self:center;padding:72px clamp(28px,7.2vw,150px);padding-right:42px;color:white}.eyebrow{margin:0 0 22px;color:#a8e1dc;text-transform:uppercase;letter-spacing:.2em;font-size:13px;font-weight:800}.hero h1{font-size:clamp(50px,5.25vw,86px);line-height:.98;letter-spacing:-.05em;margin:0;max-width:760px}.subhead{font-size:clamp(18px,1.4vw,23px);letter-spacing:.16em;text-transform:uppercase;line-height:1.55;margin:30px 0 42px;max-width:700px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-width:180px;min-height:62px;padding:0 26px}.primary{background:#fff;color:var(--navy)}.secondary{border:1px solid rgba(255,255,255,.5);color:white}.secondary svg{width:22px;fill:currentColor;margin-right:12px}.button:hover,.estimate:hover{transform:translateY(-2px);filter:brightness(1.04)}.rating{display:flex;align-items:center;gap:12px;margin-top:34px;font-size:14px;flex-wrap:wrap}.google{display:grid;place-items:center;width:39px;height:39px;background:#fff;color:#4285f4;border-radius:50%;font-size:22px;font-weight:800}.stars{color:#ffd447;font-size:22px;letter-spacing:2px}.photo-placeholder{min-height:620px;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.7));border-left:1px solid rgba(255,255,255,.4)}.photo-placeholder:after{content:"";position:absolute;inset:36px;border:1px dashed rgba(23,60,73,.22);border-radius:2px}.photo-placeholder div{text-align:center;color:#507178;z-index:1}.photo-placeholder span,.photo-placeholder small{display:block}.photo-placeholder span{font-weight:800;letter-spacing:.18em}.photo-placeholder small{margin-top:8px}.pricing-tab{position:absolute;right:0;top:50%;transform:translateY(-50%);height:210px;width:68px;background:var(--teal);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;z-index:3}.pricing-tab span{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;letter-spacing:.08em}.pricing-tab strong{font-size:24px}@media(max-width:1180px){.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:24px;box-shadow:0 12px 30px rgba(0,0,0,.12);flex-direction:column}.main-nav.open{display:flex}.menu-toggle{display:block;margin-left:auto}.phone{display:none}}@media(max-width:780px){.announcement{justify-content:center;height:auto;min-height:40px;padding:10px 18px}.announcement a{display:none}.site-header{min-height:88px;padding:14px 20px}.estimate{display:none}.hero{min-height:calc(100vh - 128px);grid-template-columns:1fr;background:linear-gradient(145deg,#173c49,#2b7a82)}.hero-content{padding:66px 24px 48px}.hero h1{font-size:clamp(46px,14vw,68px)}.subhead{font-size:16px;letter-spacing:.1em}.button{min-width:0;flex:1}.rating strong{width:100%}.photo-placeholder{min-height:280px;background:rgba(223,242,239,.92)}.photo-placeholder:after{inset:20px}.pricing-tab{display:none}}@media(max-width:430px){.brand-mark{width:48px;height:48px}.brand strong{font-size:16px}.hero-actions{flex-direction:column}.button{width:100%}}
