@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#142f34;--muted:#5c7072;--teal:#1e5356;--mint:#c9e2d8;--cream:#f8f7f1;--line:#dce3dd;--orange:#dd8b58;--white:#fff;--shadow:0 20px 60px rgba(13,49,49,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.55}a{color:inherit}.topbar{height:76px;padding:0 clamp(20px,6vw,88px);display:flex;align-items:center;justify-content:space-between;background:var(--cream)}.brand{display:inline-flex;gap:11px;align-items:center;text-decoration:none;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.03em}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;background:var(--teal);color:#fff;font-size:12px;letter-spacing:-.05em}.phone{font-weight:700;text-decoration:none;font-variant-numeric:tabular-nums}.phone:hover,footer a:hover,.help-card a:hover{color:var(--orange)}.hero{position:relative;overflow:hidden;margin:0 clamp(12px,2.5vw,36px);border-radius:20px;background:var(--teal);color:white;min-height:430px}.home-hero{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;padding:65px clamp(25px,7vw,100px);min-height:490px}.hero-copy{position:relative;z-index:2;max-width:630px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;margin:0 0 18px;color:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(39px,6vw,68px);margin-bottom:19px}h2{font-size:clamp(29px,4vw,43px);margin-bottom:14px}h3{font-size:23px;margin:10px 0}.intro{font-size:17px;line-height:1.65;color:rgba(255,255,255,.83);max-width:560px;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 19px;border-radius:8px;font-size:14px;font-weight:700;text-decoration:none;border:0;cursor:pointer;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button-light{background:#f8f7f1;color:var(--ink)}.button-light:hover{background:#e7eee6}.button-dark{background:var(--teal);color:white}.button-dark:hover{background:#173e42}.button:disabled{opacity:.65;cursor:wait;transform:none}.hero-art{height:320px;position:relative;border-radius:48% 52% 46% 54%/50%;background:radial-gradient(ellipse at 44% 45%,#3d7773 0,#2a6665 42%,#245c5d 76%);overflow:hidden}.hero-art:before,.hero-art:after{content:"";position:absolute;inset:14% 12%;border:1px solid rgba(226,241,227,.22);border-radius:50%;transform:rotate(-20deg)}.hero-art:after{inset:24% 4%;transform:rotate(28deg)}.sun{position:absolute;width:76px;height:76px;border-radius:50%;background:var(--orange);right:19%;top:18%;box-shadow:0 0 0 15px rgba(221,139,88,.12)}.road{position:absolute;width:135%;height:100px;background:#e2ddd0;opacity:.94;transform:rotate(-29deg);left:-18%;top:56%;border-radius:50%;box-shadow:0 0 0 15px rgba(226,221,208,.08)}.route-line{position:absolute;width:135%;height:2px;background:repeating-linear-gradient(to right,var(--teal) 0 15px,transparent 15px 25px);transform:rotate(-29deg);left:-18%;top:71%}.route-pin{position:absolute;width:19px;height:19px;border-radius:50% 50% 50% 0;background:var(--orange);transform:rotate(-45deg);z-index:2;box-shadow:0 3px 10px #163d40}.pin-one{left:22%;top:42%}.pin-two{right:19%;top:21%;background:#d6ead8}.route-label{position:absolute;left:38%;top:32%;font:700 17px/1.4 Manrope,sans-serif;transform:rotate(-4deg)}.section{padding:95px clamp(20px,8vw,118px)}.section-heading{max-width:580px;margin-bottom:36px}.section-heading .eyebrow,.quote-copy .eyebrow{color:#a75d35}.section-heading p:last-child,.quote-copy>p:not(.eyebrow){color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{display:flex;flex-direction:column;min-height:245px;text-decoration:none;padding:27px;border:1px solid var(--line);border-radius:13px;background:#fff;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-number{font-size:12px;color:#b46e4a;font-weight:700;letter-spacing:.09em}.service-card p{font-size:14px;color:var(--muted);margin-bottom:25px}.card-link{margin-top:auto;font-size:13px;font-weight:700;color:var(--teal)}.contact-band{background:var(--mint);margin:0 clamp(12px,2.5vw,36px);border-radius:16px;padding:39px clamp(24px,7vw,95px);display:flex;align-items:center;justify-content:space-between;gap:28px}.contact-band h2{font-size:34px;margin-bottom:8px}.contact-band p:not(.eyebrow){color:#466165;margin-bottom:0}.contact-band .eyebrow{color:#a75d35;margin-bottom:9px}.sub-hero{min-height:340px;padding:40px clamp(24px,8vw,110px);display:flex;align-items:center;justify-content:space-between}.sub-hero h1{max-width:750px;font-size:clamp(38px,5.5vw,62px)}.sub-hero .intro{max-width:650px}.back-link{display:inline-block;margin-bottom:28px;font-size:13px;text-decoration:none;color:rgba(255,255,255,.7)}.back-link:hover{color:#fff}.hero-stamp{width:185px;height:185px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;flex-shrink:0;transform:rotate(10deg);color:rgba(255,255,255,.76);font-size:10px;font-weight:700;letter-spacing:.18em}.hero-stamp strong{font-size:60px;line-height:1;color:var(--orange)}.quote-layout{padding:86px clamp(20px,8vw,115px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(38px,8vw,110px);align-items:start}.quote-copy{position:sticky;top:35px}.quote-copy>p:not(.eyebrow){line-height:1.75}.help-card{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:27px 0}.help-icon{display:grid;place-items:center;background:var(--mint);width:42px;height:42px;border-radius:50%;font-size:18px}.help-card strong,.help-card a{display:block}.help-card strong{font-size:13px}.help-card a{font-weight:700;color:var(--teal);text-decoration:none}.small-note,.form-privacy{font-size:12px;color:var(--muted)}.quote-form{background:white;padding:clamp(22px,4vw,38px);border-radius:14px;box-shadow:var(--shadow)}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:17px;border-bottom:1px solid var(--line);margin-bottom:22px;color:var(--muted);font-size:11px}.form-step{font-size:10px;font-weight:700;letter-spacing:.13em;color:#a75d35}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 14px}.form-grid label{font-size:12px;font-weight:700}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d6dfda;border-radius:7px;background:#fff;color:var(--ink);font:500 14px "DM Sans",Arial,sans-serif}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid #a7cabe;outline-offset:1px;border-color:var(--teal)}.form-privacy{margin:18px 0}.submit-button{width:100%;font:700 14px "DM Sans",Arial,sans-serif}.form-status{font-size:13px;color:#aa493a;margin:14px 0 0}.form-status.success{color:#236450}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}footer{padding:36px clamp(20px,6vw,88px);display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:18px;color:var(--muted);font-size:12px}footer p{margin:0}footer>a:last-child{font-weight:700;text-decoration:none}.footer-brand{font-size:13px;color:var(--ink)}.footer-brand .brand-mark{width:30px;height:30px;border-radius:10px}
@media(max-width:780px){.topbar{height:65px}.home-hero{grid-template-columns:1fr;padding:48px 25px 28px;min-height:auto}.hero-art{height:225px;max-width:440px;width:100%;margin:25px auto 0}.section{padding:67px 21px}.service-grid{grid-template-columns:1fr}.service-card{min-height:unset}.contact-band{align-items:flex-start;flex-direction:column}.sub-hero{min-height:unset;padding:31px 25px}.hero-stamp{width:110px;height:110px;align-self:flex-end;margin:0 10px 16px 10px}.hero-stamp strong{font-size:38px}.quote-layout{grid-template-columns:1fr;padding:62px 20px;gap:26px}.quote-copy{position:static}.quote-form{padding:24px 18px}footer{grid-template-columns:1fr;gap:12px;padding:30px 22px}}
@media(max-width:430px){.brand{font-size:13px}.phone{font-size:14px}.sub-hero{display:block}.hero-stamp{float:right;margin-top:-8px;margin-bottom:0}.sub-hero .hero-copy{max-width:100%}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.form-heading{align-items:flex-start;flex-direction:column}}
