:root{color-scheme:light;--ink:#14303b;--ink-soft:#4b5f66;--stone:#f4f0e8;--paper:#fffdf9;--line:#e2dccf;--harbour:#1f5a6e;--tower:#b8392a;--display:"Literata", Georgia, "Times New Roman", serif;--body:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--ink:#ece6da;--ink-soft:#a9b4b6;--stone:#10191d;--paper:#17232a;--line:#2a3a41;--harbour:#7cc0d4;--tower:#f0806f}}*{box-sizing:border-box}html,body{background:var(--stone);color:var(--ink);margin:0}body{font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:1.0625rem;line-height:1.6}a{color:inherit}.wrap{max-width:1120px;padding-left:max(20px, env(safe-area-inset-left,0px));padding-right:max(20px, env(safe-area-inset-right,0px));margin-inline:auto}header.top{padding-block:20px}header.top .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.mark{font-family:var(--display);letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.35rem;font-weight:600;text-decoration:none;display:inline-flex}.mark svg{flex:none}nav.top{align-items:center;gap:20px;font-size:.95rem;display:flex}nav.top a{color:var(--ink-soft);text-decoration:none}nav.top a:hover{color:var(--ink)}.btn{border:1.5px solid var(--ink);border-radius:999px;padding:12px 20px;font-size:.98rem;font-weight:600;text-decoration:none;display:inline-block}.btn.solid{background:var(--ink);color:var(--stone)}.btn.ghost{color:var(--ink);background:0 0}.btn:focus-visible,nav.top a:focus-visible{outline:2px solid var(--tower);outline-offset:3px}.hero{padding-block:40px 0}.hero .wrap{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:end;gap:48px;display:grid}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--tower);margin:0 0 14px;font-size:.82rem;font-weight:600}h1{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0 0 20px;font-size:clamp(2.3rem,5vw,3.7rem);font-weight:400;line-height:1.06}.lede{color:var(--ink-soft);max-width:34em;margin:0 0 28px;font-size:1.15rem}.ctas{flex-wrap:wrap;gap:12px;padding-bottom:40px;display:flex}.street{width:100%;height:auto;display:block}.kerb{background:var(--line);height:14px}section{padding-block:72px}h2{font-family:var(--display);letter-spacing:-.01em;text-wrap:balance;margin:0 0 12px;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;line-height:1.15}.intro{color:var(--ink-soft);max-width:40em;margin:0 0 36px}.services{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:0;display:grid}.service{border-bottom:1px solid var(--line);padding:26px 24px 28px 0}.service h3{font-family:var(--display);margin:0 0 8px;font-size:1.2rem;font-weight:600}.service p{color:var(--ink-soft);margin:0;font-size:.98rem}.band{background:var(--paper);border-block:1px solid var(--line)}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:28px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step}.steps li:before{content:counter(step);border:1.5px solid var(--tower);width:34px;height:34px;color:var(--tower);border-radius:50%;place-items:center;margin-bottom:12px;font-weight:600;display:inline-grid}.steps h3{font-family:var(--display);margin:0 0 6px;font-size:1.15rem;font-weight:600}.steps p{color:var(--ink-soft);margin:0;font-size:.98rem}.checks{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:12px 28px;margin:0;padding:0;list-style:none;display:grid}.checks li{padding-left:26px;position:relative}.checks li:before{content:"";background:repeating-linear-gradient(180deg, var(--tower) 0 3px, transparent 3px 6px);border-radius:3px;width:12px;height:12px;position:absolute;top:.55em;left:0}.owners .wrap{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;display:grid}.owners p{color:var(--ink-soft);max-width:38em;margin:0}.contact{background:var(--ink);color:var(--stone)}.contact h2{color:var(--stone)}.contact p{color:color-mix(in srgb, var(--stone) 78%, transparent);max-width:36em}.contact .btn{border-color:var(--stone);background:var(--stone);color:var(--ink)}.contact .email{font-family:var(--display);color:var(--stone);word-break:break-all;font-size:clamp(1.3rem,3vw,1.8rem)}footer{color:var(--ink-soft);padding-block:28px;font-size:.9rem}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}@media (width<=760px){.hero .wrap,.owners .wrap{grid-template-columns:minmax(0,1fr);gap:24px}.ctas{padding-bottom:12px}nav.top .hide-sm{display:none}section{padding-block:52px}}
