:root{--ink:#082b33;--deep:#041d24;--sea:#0a6671;--aqua:#65e0d1;--sand:#f2e5ce;--paper:#f7f5ef;--coral:#ff765d;--muted:#526b6f;--line:#ccd9d6;--radius:1.35rem;--shadow:0 24px 70px rgba(1,31,37,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;overflow-x:hidden}a{color:inherit}button,input,select{font:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:20;background:#fff;padding:.75rem 1rem;border-radius:.5rem}.skip:focus{top:1rem}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5rem);background:rgba(247,245,239,.93);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(8,43,51,.08)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand>span:last-child{display:flex;align-items:baseline;gap:.45rem}.brand strong{font-family:Georgia,serif;font-size:2rem;line-height:1}.brand small{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:700}.brand-mark{width:2.35rem;height:2.35rem;display:grid;place-content:center;gap:3px;border-radius:50%;background:var(--ink);transform:rotate(-14deg)}.brand-mark i{display:block;width:1.2rem;height:2px;background:var(--aqua);border-radius:9px}.brand-mark i:nth-child(2){width:.9rem}.brand-mark i:nth-child(3){width:.6rem}.site-header nav{display:flex;align-items:center;gap:2rem}.site-header nav a{text-decoration:none;font-size:.87rem;font-weight:700}.nav-cta{padding:.75rem 1rem;border:1px solid var(--ink);border-radius:999px}.menu-button{display:none;border:1px solid var(--ink);border-radius:999px;padding:.55rem .85rem;background:transparent;color:var(--ink)}.hero{min-height:calc(100vh - 84px);padding:clamp(4rem,8vw,8rem) clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(22rem,.82fr);gap:clamp(2rem,6vw,6rem);align-items:center;background:radial-gradient(circle at 72% 30%,rgba(101,224,209,.19),transparent 29%),linear-gradient(115deg,#f7f5ef 62%,#e8f2ee 62%)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:var(--sea);margin:0 0 1rem}.hero h1,.section-heading h2,.about h2,.planner h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.04em;line-height:.98;margin:0}.hero h1{font-size:clamp(3.3rem,7vw,7.1rem);max-width:12ch}.hero h1 em{color:var(--sea);font-weight:400}.lede{font-size:clamp(1rem,1.7vw,1.25rem);max-width:38rem;color:var(--muted);margin:1.8rem 0}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:3.2rem;padding:.8rem 1.25rem;border-radius:999px;text-decoration:none;font-weight:800;font-size:.9rem}.button.primary{background:var(--coral);color:#1e211d;box-shadow:0 12px 30px rgba(255,118,93,.22)}.button.ghost{border:1px solid var(--ink)}.trust-row{list-style:none;padding:0;margin:3rem 0 0;display:flex;gap:clamp(1.2rem,3vw,3rem);flex-wrap:wrap}.trust-row li{display:grid}.trust-row strong{font-family:Georgia,serif;font-size:1.05rem}.trust-row span{font-size:.73rem;color:var(--muted)}.hero-visual{text-align:center;position:relative}.sun-disc{position:absolute;width:12rem;height:12rem;border-radius:50%;background:var(--coral);right:-3rem;top:-4rem;opacity:.82}.property-card{position:relative;isolation:isolate;aspect-ratio:4/5;max-height:38rem;border-radius:10rem 10rem 1rem 1rem;overflow:hidden;background:#1e5d65;box-shadow:var(--shadow)}.property-scene{position:absolute;inset:0;background:linear-gradient(#86ccd2 0 38%,#458e79 38% 100%)}.property-scene.after{clip-path:inset(0 0 0 52%);background:linear-gradient(#9be6e5 0 38%,#59a481 38% 100%)}.property-scene span{position:absolute;display:block}.roof{left:16%;top:25%;width:68%;height:18%;background:#173941;clip-path:polygon(50% 0,100% 100%,0 100%)}.before .roof{filter:saturate(.4);background:#455351}.wall{left:22%;top:39%;width:56%;height:31%;background:#f4efe3}.before .wall{background:#aeb5a7}.door{left:45%;top:52%;width:12%;height:18%;background:#0a6671}.pavers{left:12%;bottom:0;width:76%;height:30%;background:repeating-linear-gradient(90deg,transparent 0 19%,rgba(255,255,255,.3) 19% 20%),repeating-linear-gradient(0deg,#e8b875 0 31%,#c89c63 31% 33%);clip-path:polygon(37% 0,63% 0,100% 100%,0 100%)}.before .pavers{filter:grayscale(.65) brightness(.72)}#reveal{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:4}.compare-line{position:absolute;z-index:3;left:calc(52% - 1px);top:0;height:100%;border-left:2px solid #fff;pointer-events:none}.compare-line span{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);display:grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:50%;background:#fff;color:var(--ink);font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.2)}.compare-label{position:absolute;z-index:3;top:1.2rem;padding:.5rem .7rem;border-radius:999px;background:rgba(4,29,36,.78);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.before-label{left:1rem}.after-label{right:1rem}.hero-visual>p{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--muted)}.service-section{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,7vw,8rem);background:#fff}.section-heading h2{font-size:clamp(2.6rem,5vw,5rem);max-width:13ch}.service-layout{display:grid;grid-template-columns:.8fr 1.25fr;gap:clamp(2rem,7vw,7rem);margin-top:4rem}.service-tabs{display:grid;align-content:start}.service-tabs button{display:flex;gap:1.4rem;text-align:left;padding:1.4rem 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.service-tabs button span{font-family:Georgia,serif;font-size:1.45rem}.service-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}.service-panel{min-height:25rem;padding:clamp(2rem,5vw,4rem);background:var(--sand);border-radius:var(--radius);display:flex;flex-direction:column;justify-content:space-between}.service-kicker{text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;font-weight:800;color:var(--sea)}.service-panel h3{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;margin:.5rem 0 1rem}.service-panel>div>p:last-child{max-width:40rem;color:var(--muted);font-size:1.05rem}.service-panel dl{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(8,43,51,.2);margin:2rem 0 0;padding-top:1.5rem}.service-panel dl div{display:grid}.service-panel dt{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.service-panel dd{margin:.25rem 0;font-weight:800}.process{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,7vw,8rem);background:var(--deep);color:#ecf8f6}.light .eyebrow{color:var(--aqua)}.process ol{list-style:none;padding:0;margin:4rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}.process li{padding:clamp(2rem,4vw,4rem);background:var(--deep)}.process li>span{color:var(--aqua);font-size:.72rem;letter-spacing:.1em}.process h3{font:400 1.6rem Georgia,serif;margin:2.6rem 0 .8rem}.process li p{color:#abc4c6;max-width:25rem}.about{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,9vw,10rem);display:grid;grid-template-columns:.72fr 1.1fr;align-items:center;gap:clamp(3rem,9vw,10rem)}.portrait{min-height:35rem;border-radius:var(--radius);background:linear-gradient(155deg,#6fdacb,#0a6671 62%,#06353c);display:grid;place-items:center;position:relative;overflow:hidden}.portrait span{font:400 clamp(6rem,13vw,13rem)/1 Georgia,serif;color:rgba(255,255,255,.88);z-index:1}.portrait i{position:absolute;width:23rem;height:23rem;border:4rem solid rgba(255,255,255,.09);border-radius:50%}.about h2{font-size:clamp(2.8rem,5vw,5rem)}blockquote{margin:2rem 0;padding-left:1.2rem;border-left:3px solid var(--coral);font:italic 1.25rem/1.5 Georgia,serif}.about>div:last-child>p:not(.eyebrow){color:var(--muted);max-width:43rem}.text-link{font-weight:800;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.3rem}.text-link span{color:var(--coral)}.planner{padding:clamp(5rem,9vw,8rem) clamp(1.25rem,7vw,8rem);background:var(--sand);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem)}.planner h2{font-size:clamp(2.8rem,5vw,5rem);max-width:10ch}.planner-intro>p:not(.eyebrow),.planner address{color:var(--muted);max-width:30rem}.planner address{font-style:normal;margin-top:2rem}.planner form{background:#fff;padding:clamp(1.4rem,4vw,3rem);border-radius:var(--radius);box-shadow:var(--shadow)}fieldset{border:0;padding:0;margin:0 0 2rem}legend{font-weight:800;margin-bottom:.8rem}.choice-grid,.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.check-grid{grid-template-columns:repeat(2,1fr)}.choice-grid input,.check-grid input{position:absolute;opacity:0;pointer-events:none}.choice-grid span,.check-grid span{display:block;padding:.85rem;border:1px solid var(--line);border-radius:.65rem;cursor:pointer;text-align:center;font-size:.85rem}.choice-grid input:checked+span,.check-grid input:checked+span{border-color:var(--sea);background:#e6f6f2;box-shadow:inset 0 0 0 1px var(--sea)}select{width:100%;padding:.9rem;border:1px solid var(--line);border-radius:.65rem;background:#fff;color:var(--ink)}.summary{padding:1rem;background:#eff6f4;border-left:3px solid var(--sea);margin-bottom:1rem}.summary small{text-transform:uppercase;letter-spacing:.1em;color:var(--sea);font-weight:800}.summary p{margin:.3rem 0 0}.full{width:100%}.form-note{text-align:center;font-size:.72rem;color:var(--muted)}footer{background:#03171d;color:#d8eae8;padding:4rem clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:center}.footer-brand .brand-mark{background:var(--aqua)}.footer-brand .brand-mark i{background:var(--deep)}footer>p{color:#93aeb0}footer>div:nth-of-type(2){display:grid;gap:.35rem;text-align:right}footer>div:nth-of-type(2) a{text-decoration:none}.legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:1.5rem;font-size:.75rem}
@media (max-width:900px){.site-header{height:72px}.brand small{display:none}.menu-button{display:block}.site-header nav{position:absolute;left:1rem;right:1rem;top:72px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:.6rem;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow)}.site-header nav.open{display:flex}.site-header nav a{padding:1rem}.nav-cta{border:0;border-radius:.6rem;background:var(--coral)}.hero{min-height:auto;grid-template-columns:1fr;background:radial-gradient(circle at 75% 65%,rgba(101,224,209,.2),transparent 30%),var(--paper)}.hero-visual{max-width:32rem;width:100%;justify-self:center}.service-layout,.about,.planner{grid-template-columns:1fr}.process ol{grid-template-columns:1fr}.portrait{min-height:26rem}.planner h2{max-width:12ch}footer{grid-template-columns:1fr}footer>div:nth-of-type(2){text-align:left}.legal{grid-column:auto}}
@media (max-width:560px){.hero{padding-top:3.5rem}.hero h1{font-size:3.35rem}.hero-actions{display:grid}.button{width:100%}.trust-row{display:grid;grid-template-columns:1fr 1fr;margin-top:2rem}.property-card{max-height:none}.section-heading h2,.about h2,.planner h2{font-size:2.8rem}.service-section,.process,.about,.planner{padding-top:4.5rem;padding-bottom:4.5rem}.service-tabs button span{font-size:1.2rem}.service-panel{min-height:23rem}.service-panel dl{grid-template-columns:1fr;gap:1rem}.choice-grid,.check-grid{grid-template-columns:1fr}.portrait{min-height:22rem}.brand strong{font-size:1.65rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
html{overflow-x:hidden}
@media (max-width:560px){.sun-disc{right:0}.portrait i{width:20rem;height:20rem}}
