:root{
  --ink:#16302B;
  --ink-soft:#1F3F38;
  --paper:#FBFBF8;
  --mist:#EAF2EF;
  --mist-line:#D7E4DF;
  --teal:#17A398;
  --teal-deep:#0E7A70;
  --gold:#C9A227;
  --charcoal:#3F5751;
  --charcoal-light:#6E8680;
  --line:#DCE6E2;
  --radius:16px;
  --max:1180px;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Work Sans', sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Bricolage Grotesque', sans-serif;
  font-weight:700;
  line-height:1.05;
  letter-spacing:-0.01em;
  color:var(--ink);
}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
.wrap{max-width:var(--max); margin:0 auto; padding:0 28px;}
:focus-visible{outline:2.5px solid var(--teal); outline-offset:3px;}
.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:#fff;color:var(--ink);padding:12px 18px;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.18);font-weight:700;}
.skip-link:focus{top:16px;}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
}

.eyebrow{
  font-family:'Work Sans', sans-serif;
  font-size:12.5px;
  font-weight:600;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--teal-deep);
  display:flex; align-items:center; gap:9px;
  margin-bottom:16px;
}
.eyebrow::before{
  content:""; width:18px; height:2px; background:var(--gold);
}

/* ---------- HEADER / NAV ---------- */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(251,251,248,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 28px; max-width:var(--max); margin:0 auto; gap:24px;
}
.logo{
  font-family:'Bricolage Grotesque', sans-serif; font-weight:800; font-size:21px;
  color:var(--ink); letter-spacing:-0.01em;
}
.logo .dot{color:var(--teal);}
.navlinks{display:flex; align-items:center; gap:28px; font-size:14.5px; font-weight:500; color:var(--charcoal);}
.navlinks > a{transition:color .2s;}
.navlinks > a:hover{color:var(--teal-deep);}
.nav-cta{
  background:var(--ink); color:#fff; font-weight:600; font-size:14px;
  padding:11px 22px; border-radius:999px; transition:transform .18s, background .18s;
  white-space:nowrap;
}
.nav-cta:hover{background:var(--teal-deep); transform:translateY(-1px);}
@media (max-width:940px){ .navlinks{display:none;} }

/* dropdown */
.has-dropdown{position:relative;}
.dd-trigger{
  display:flex; align-items:center; gap:5px; background:none; border:none;
  font-family:'Work Sans', sans-serif; font-size:14.5px; font-weight:500; color:var(--charcoal); cursor:pointer;
  padding:4px 0;
}
.dd-trigger:hover{color:var(--teal-deep);}
.dd-trigger .caret{
  width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px); transition:transform .2s;
}
.has-dropdown.open .dd-trigger .caret{transform:rotate(225deg) translateY(2px);}
.dropdown{
  position:absolute; top:calc(100% + 16px); left:50%; transform:translateX(-50%) translateY(-6px);
  background:#fff; border:1px solid var(--line); border-radius:14px;
  min-width:300px; padding:10px; box-shadow:0 24px 48px rgba(22,48,43,0.14);
  opacity:0; visibility:hidden; transition:opacity .18s, transform .18s, visibility .18s;
  max-height:70vh; overflow-y:auto;
}
.has-dropdown.open .dropdown{opacity:1; visibility:visible; transform:translateX(-50%) translateY(0);}
.dropdown a{
  display:flex; flex-direction:column; gap:2px; padding:10px 12px; border-radius:9px;
  color:var(--ink); transition:background .15s;
}
.dropdown a:hover{background:var(--mist);}
.dropdown a .dd-title{font-size:14.5px; font-weight:600;}
.dropdown a .dd-sub{font-size:12px; color:var(--charcoal-light);}
.dropdown a.current{background:var(--mist);}
.dropdown a.current .dd-title{color:var(--teal-deep);}
.dropdown-grid{display:grid; grid-template-columns:1fr 1fr; gap:2px;}
@media (max-width:820px){
  .dropdown{position:static; transform:none; opacity:1; visibility:visible; box-shadow:none; display:none; margin-top:8px; min-width:0; max-height:none;}
  .has-dropdown.open .dropdown{display:block;}
  .dropdown-grid{grid-template-columns:1fr;}
}

/* ---------- HERO / STREAK REVEAL ---------- */
.hero{background:linear-gradient(135deg,#f9fcfa 0%,#edf8f5 52%,#fff8e7 135%); padding:78px 0 96px;position:relative;overflow:hidden;}
.hero-grid{display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center;}
@media (max-width:960px){ .hero-grid{grid-template-columns:1fr;} }
.hero h1{font-size:clamp(44px,6vw,72px); margin-bottom:22px;max-width:650px;letter-spacing:-.045em;}
.hero h1 em{font-style:normal; color:var(--teal-deep);}
.hero p.lede{font-size:18px; color:var(--charcoal); max-width:620px; margin-bottom:30px;}
.hero-badges{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px;}
.badge{
  font-size:12.5px; font-weight:600; color:var(--charcoal);
  background:var(--mist); border:1px solid var(--mist-line); padding:7px 13px; border-radius:999px;
}
.hero-ctas{display:flex; gap:14px; flex-wrap:wrap;}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 26px; border-radius:999px; font-weight:600; font-size:15px;
  transition:transform .18s, box-shadow .18s, background .18s;
}
.btn-primary{background:var(--teal); color:#fff;}
.btn-primary:hover{background:var(--teal-deep); transform:translateY(-2px); box-shadow:0 10px 24px rgba(23,163,152,0.28);}
.btn-ghost{border:1.5px solid var(--line); color:var(--ink);}
.btn-ghost:hover{border-color:var(--teal); color:var(--teal-deep);}

.hero-glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;}
.hero-glow-one{width:420px;height:420px;background:rgba(23,163,152,.10);right:-120px;top:-180px;}
.hero-glow-two{width:280px;height:280px;background:rgba(201,162,39,.11);left:42%;bottom:-170px;}
.hero-copy{position:relative;z-index:2;}
.hero-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;color:var(--charcoal);font-size:13.5px;font-weight:600;}
.hero-trust b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--teal);color:#fff;margin-right:5px;font-size:11px;}
.hero-showcase{position:relative;min-height:500px;isolation:isolate;}
.showcase-orbit{position:absolute;width:420px;height:420px;right:10px;top:35px;border:1px dashed rgba(14,122,112,.25);border-radius:50%;}
.clean-card{background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.85);box-shadow:0 24px 70px rgba(22,48,43,.13);backdrop-filter:blur(14px);}
.clean-card-main{position:absolute;inset:58px 35px 55px 55px;border-radius:36px;padding:44px;background:linear-gradient(150deg,#0f4a42 0%,#0c302b 100%);color:#fff;overflow:hidden;transform:rotate(-2deg);}
.clean-card-main::after{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:rgba(23,163,152,.22);right:-90px;bottom:-140px;}
.clean-card-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:var(--teal);font-size:28px;margin-bottom:74px;}
.clean-card-kicker{display:block;text-transform:uppercase;letter-spacing:.14em;color:#9fd8d1;font-size:11px;font-weight:700;margin-bottom:12px;}
.clean-card-main strong{font-family:'Bricolage Grotesque',sans-serif;font-size:clamp(28px,3vw,40px);line-height:1.05;position:relative;z-index:1;}
.shine-lines{position:absolute;right:25px;top:25px;display:flex;gap:7px;transform:rotate(45deg);}
.shine-lines i{width:4px;height:48px;border-radius:9px;background:rgba(255,255,255,.18);}
.clean-card-small{position:absolute;padding:16px 18px;border-radius:18px;display:grid;grid-template-columns:36px 1fr;column-gap:10px;min-width:190px;z-index:3;}
.clean-card-small>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--mist);color:var(--teal-deep);font-weight:800;font-size:18px;}
.clean-card-small b{font-size:13px;line-height:1.2;}.clean-card-small small{font-size:11px;color:var(--charcoal-light);}
.card-home{top:20px;right:-10px;transform:rotate(3deg);}.card-office{bottom:18px;right:5px;transform:rotate(-2deg);}.card-tenancy{bottom:75px;left:0;transform:rotate(2deg);}
.spark{position:absolute;color:var(--gold);font-size:28px;z-index:4;}.spark-one{left:20px;top:70px;}.spark-two{right:30px;bottom:130px;font-size:18px;}
@media (max-width:960px){.hero-showcase{min-height:440px;max-width:560px;width:100%;margin:auto}.clean-card-main{inset:45px 45px 45px}.card-home{right:0}.card-tenancy{left:0}.hero h1{max-width:760px}}
@media (max-width:560px){.hero{padding:58px 0 70px}.hero-showcase{min-height:390px}.clean-card-main{inset:55px 10px 50px;padding:30px;border-radius:26px}.clean-card-icon{margin-bottom:65px}.clean-card-small{min-width:165px;padding:12px}.card-home{top:15px}.card-office{right:0;bottom:10px}.card-tenancy{left:0;bottom:58px}.showcase-orbit{width:330px;height:330px;right:-20px}.hero-trust{gap:12px}}

/* streak reveal widget */
.streak{
  position:relative; aspect-ratio:1/1; max-width:480px; margin:0 auto;
  border-radius:24px; overflow:hidden; user-select:none;
  box-shadow:0 30px 60px rgba(22,48,43,0.16);
}
.streak-layer{position:absolute; inset:0;}
.streak-after{
  background:linear-gradient(155deg, #EAF9F6 0%, #CFF1EC 55%, #17A398 130%);
  display:flex; align-items:center; justify-content:center;
}
.streak-before{
  background:
    radial-gradient(circle at 30% 30%, rgba(0,0,0,0.05), transparent 60%),
    linear-gradient(155deg, #E7E5DE 0%, #D3D0C6 60%, #B6B2A6 130%);
  clip-path:inset(0 45% 0 0);
  transition:clip-path .05s linear;
}
.streak-icon-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; padding:40px;}
.streak-after .streak-icon-grid svg{opacity:1;}
.streak-before .streak-icon-grid svg{opacity:0.35;}
.sparkle{width:34px; height:34px;}
.streak-handle{
  position:absolute; top:0; bottom:0; left:55%; width:0;
  transform:translateX(-50%);
  pointer-events:none;
}
.streak-handle::before{
  content:""; position:absolute; top:0; bottom:0; left:0; width:3px; background:#fff;
  box-shadow:0 0 0 1px rgba(0,0,0,0.06);
}
.streak-handle-grip{
  position:absolute; top:50%; left:0; transform:translate(-50%,-50%);
  width:44px; height:44px; border-radius:50%; background:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 20px rgba(22,48,43,0.25);
}
.streak-handle-grip::before, .streak-handle-grip::after{
  content:""; width:6px; height:6px; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink);
}
.streak-handle-grip::before{transform:rotate(135deg); margin-right:6px;}
.streak-handle-grip::after{transform:rotate(-45deg);}
.streak-input{
  position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:ew-resize; margin:0;
}
.streak-caption{
  position:absolute; bottom:16px; left:0; right:0; text-align:center;
  font-size:12px; font-weight:600; color:var(--ink); letter-spacing:0.04em; text-transform:uppercase;
  pointer-events:none;
}

/* ---------- SECTION SHELL ---------- */
section{padding:92px 0;}
.section-head{max-width:640px; margin-bottom:52px;}
.section-head h2{font-size:clamp(28px,3.2vw,38px);}
.section-head p{color:var(--charcoal); font-size:16.5px; margin-top:14px;}

.local-intro{padding:54px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.local-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;}
.local-intro h2{font-size:clamp(28px,3.2vw,42px);}
.local-intro p{color:var(--charcoal);font-size:16px;}
.quick-area-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;}
.quick-area-links a{font-size:12.5px;font-weight:700;padding:8px 12px;background:var(--mist);border:1px solid var(--mist-line);border-radius:999px;color:var(--teal-deep);}
.quick-area-links a:hover{background:var(--teal);color:#fff;}
@media(max-width:760px){.local-intro-grid{grid-template-columns:1fr;gap:24px}}

/* ---------- WHY CHOOSE ---------- */
.why{background:var(--mist);}
.why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
@media (max-width:820px){ .why-grid{grid-template-columns:1fr;} }
.why-item{background:#fff; border-radius:var(--radius); padding:30px 26px; border:1px solid var(--mist-line);}
.why-item .num{font-family:'Bricolage Grotesque',sans-serif; font-size:15px; font-weight:700; color:var(--gold); margin-bottom:14px; display:block;}
.why-item h3{font-size:19px; margin-bottom:8px;}
.why-item p{color:var(--charcoal); font-size:14.5px;}

/* ---------- SERVICES ---------- */
.services{background:var(--paper);}
.service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
@media (max-width:900px){ .service-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:620px){ .service-grid{grid-template-columns:1fr;} }
.service-card{
  border:1px solid var(--line); border-radius:var(--radius); padding:28px 24px;
  transition:transform .18s, box-shadow .18s, border-color .18s; display:block; background:#fff;
}
.service-card:hover{transform:translateY(-4px); box-shadow:0 20px 40px rgba(22,48,43,0.1); border-color:var(--teal);}
.service-card h3{font-size:18.5px; margin-bottom:8px;}
.service-card p{color:var(--charcoal); font-size:14.5px; margin-bottom:14px;}
.service-card .arrow{color:var(--teal-deep); font-weight:600; font-size:14px;}

/* ---------- PROCESS ---------- */
.process{background:var(--ink); color:#fff;}
.process .section-head h2{color:#fff;}
.process .section-head p{color:#B7CBC5;}
.process .eyebrow{color:var(--gold);}
.process .eyebrow::before{background:var(--teal);}
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
@media (max-width:900px){ .steps{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .steps{grid-template-columns:1fr;} }
.step{background:var(--ink-soft); border-radius:var(--radius); padding:26px 22px; border:1px solid rgba(255,255,255,0.08);}
.step .num{font-family:'Bricolage Grotesque',sans-serif; font-size:26px; font-weight:800; color:var(--teal); display:block; margin-bottom:12px;}
.step h3{font-size:17px; color:#fff; margin-bottom:8px;}
.step p{font-size:14px; color:#B7CBC5;}

/* ---------- TESTIMONIALS ---------- */
.testimonials{background:var(--mist);}
.t-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
@media (max-width:900px){ .t-grid{grid-template-columns:1fr;} }
.t-card{background:#fff; border-radius:var(--radius); padding:28px 24px; border:1px solid var(--mist-line);}
.t-stars{color:var(--gold); font-size:15px; margin-bottom:14px; letter-spacing:2px;}
.t-card p{font-size:15px; color:var(--charcoal); margin-bottom:16px;}
.t-name{font-weight:600; font-size:14px;}
.t-loc{font-size:13px; color:var(--charcoal-light);}

/* ---------- AREAS ---------- */
.areas{background:var(--paper);}
.area-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
@media (max-width:900px){ .area-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:640px){ .area-grid{grid-template-columns:1fr 1fr;} }
.area-card{
  border:1px solid var(--line); border-radius:12px; padding:18px 18px;
  transition:transform .18s, box-shadow .18s, border-color .18s; display:block; background:#fff;
}
.area-card:hover{transform:translateY(-3px); box-shadow:0 14px 28px rgba(22,48,43,0.1); border-color:var(--teal);}
.area-card h3{font-size:15.5px; font-weight:600;}
.area-card p{font-size:12.5px; color:var(--charcoal-light); margin-top:4px;}

/* ---------- FAQ ---------- */
.faq{background:var(--mist);}
.faq-list{border-top:1px solid var(--mist-line);}
.faq-item{border-bottom:1px solid var(--mist-line);}
.faq-q{
  width:100%; text-align:left; background:none; border:none; cursor:pointer;
  display:flex; justify-content:space-between; align-items:center; gap:20px;
  padding:24px 4px; font-family:'Bricolage Grotesque',sans-serif; font-size:18px; font-weight:700; color:var(--ink);
}
.faq-q .plus{font-family:'Work Sans',sans-serif; color:var(--teal-deep); font-size:22px; font-weight:400; transition:transform .25s; flex-shrink:0;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease; color:var(--charcoal); font-size:15.5px; padding:0 4px;}
.faq-item.open .faq-a{max-height:240px; padding-bottom:24px;}

/* ---------- PAGE HERO (service/location subpages) ---------- */
.page-hero{background:var(--mist); padding:52px 0 68px;}
.breadcrumb{
  font-size:12.5px; color:var(--charcoal-light); margin-bottom:24px; display:flex; align-items:center; gap:8px;
}
.breadcrumb a{color:var(--charcoal); transition:color .2s;}
.breadcrumb a:hover{color:var(--teal-deep);}
.breadcrumb .sep{color:var(--charcoal-light);}
.breadcrumb .current{color:var(--teal-deep); font-weight:600;}
.page-hero h1{font-size:clamp(30px,4vw,46px); max-width:760px; margin-bottom:16px;}
.page-hero p.lede{font-size:17px; color:var(--charcoal); max-width:560px;}

/* ---------- INCLUDED / DETAIL LIST ---------- */
.included{background:var(--paper);}
.included-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:16px;}
@media (max-width:760px){ .included-grid{grid-template-columns:1fr;} }
.included-item{background:#fff; border:1px solid var(--line); border-radius:14px; padding:24px;}
.included-item h3{font-size:17px; margin-bottom:6px;}
.included-item p{color:var(--charcoal); font-size:14.5px;}

/* ---------- END OF TENANCY CHECKLIST ---------- */
.tenancy-checklist{background:var(--mist);padding:92px 0;}
.checklist-heading{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:42px;}
.checklist-heading h2{font-size:clamp(30px,3.8vw,46px);max-width:620px;}
.checklist-heading>p{color:var(--charcoal);font-size:16px;max-width:560px;}
.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.checklist-card{background:#fff;border:1px solid var(--mist-line);border-radius:20px;padding:28px;box-shadow:0 14px 35px rgba(22,48,43,.05);}
.checklist-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--ink);color:#fff;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;margin-bottom:18px;}
.checklist-card h3{font-size:20px;margin-bottom:16px;}
.checklist-card ul{list-style:none;display:grid;gap:10px;}
.checklist-card li{position:relative;padding-left:25px;color:var(--charcoal);font-size:14.5px;}
.checklist-card li::before{content:"✓";position:absolute;left:0;top:0;color:var(--teal-deep);font-weight:800;}
.checklist-note{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:#fff;border-radius:18px;padding:24px 28px;margin-top:18px;}
.checklist-note>div{display:flex;flex-direction:column;gap:4px;}
.checklist-note strong{font-family:'Bricolage Grotesque',sans-serif;font-size:17px;}
.checklist-note span{color:#b7cbc5;font-size:13.5px;}
.checklist-note>a{flex-shrink:0;color:#fff;font-weight:700;font-size:14px;}
.checklist-note>a span{color:var(--teal);font-size:18px;margin-left:4px;}
@media(max-width:760px){.checklist-heading,.checklist-grid{grid-template-columns:1fr}.checklist-heading{gap:18px}.checklist-note{align-items:flex-start;flex-direction:column}.checklist-card{padding:23px}}

.local-proof{background:#fff;padding:78px 0;}
.local-proof-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;}
.local-proof h2{font-size:clamp(28px,3.5vw,42px);margin-bottom:18px;}
.local-proof p{color:var(--charcoal);font-size:16px;max-width:700px;}
.coverage-note{margin-top:16px;padding-left:16px;border-left:3px solid var(--gold);}
.local-checklist{display:grid;gap:10px;background:var(--mist);border:1px solid var(--mist-line);padding:26px;border-radius:20px;}
.local-checklist span{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;font-weight:600;font-size:14px;}
.local-checklist span::before{content:"✓";color:var(--teal);font-weight:800;margin-right:9px;}
@media(max-width:760px){.local-proof-grid{grid-template-columns:1fr;gap:30px}}

.service-area-strip{padding:26px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.service-area-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.service-area-inner>div{display:flex;flex-direction:column;gap:4px}.service-area-inner strong{font-family:'Bricolage Grotesque',sans-serif;font-size:18px}.service-area-inner span{font-size:13.5px;color:var(--charcoal)}
@media(max-width:680px){.service-area-inner{align-items:flex-start;flex-direction:column}}

/* ---------- RELATED (internal linking) ---------- */
.related{background:var(--mist);}
.related-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
@media (max-width:900px){ .related-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .related-grid{grid-template-columns:1fr;} }
.related-card{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:20px;
  transition:transform .18s, box-shadow .18s, border-color .18s; display:block;
}
.related-card:hover{transform:translateY(-3px); box-shadow:0 14px 28px rgba(22,48,43,0.1); border-color:var(--teal);}
.related-card .tag{font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--gold); display:block; margin-bottom:8px;}
.related-card h3{font-size:15.5px; margin-bottom:5px;}
.related-card p{font-size:13px; color:var(--charcoal-light);}
.related-card.home{background:var(--ink); border-color:var(--ink);}
.related-card.home .tag, .related-card.home h3{color:#fff;}
.related-card.home p{color:#B7CBC5;}

/* ---------- CONTACT ---------- */
.cta-block{background:var(--ink); color:#fff; padding:96px 0;}
.contact-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:start;}
@media (max-width:860px){ .contact-grid{grid-template-columns:1fr; gap:36px;} }
.contact-intro h2{color:#fff; font-size:clamp(26px,3.4vw,36px); margin-bottom:16px;}
.contact-intro p{color:#B7CBC5; font-size:16px; margin-bottom:24px;}
.contact-alt{font-size:14px; color:#8FA8A2 !important; margin-top:14px;}
.contact-details{display:flex; flex-direction:column; gap:10px; margin-bottom:8px;}
.contact-details a{font-weight:600; color:#fff; font-size:16px;}
.contact-details a:hover{color:var(--teal);}
.contact-form{background:var(--paper); border-radius:18px; padding:32px; display:flex; flex-direction:column; gap:16px;}
.contact-form label{display:flex; flex-direction:column; gap:6px; font-size:13.5px; color:var(--charcoal); font-weight:600;}
.contact-form input, .contact-form select, .contact-form textarea{
  font-family:'Work Sans', sans-serif; font-size:15px; color:var(--ink);
  border:1.5px solid var(--line); border-radius:9px; padding:11px 13px;
  background:#fff; resize:vertical; transition:border-color .18s;
}
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus{outline:none; border-color:var(--teal);}
.contact-form button{align-self:flex-start; border:none; cursor:pointer;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media (max-width:520px){ .form-row{grid-template-columns:1fr;} }

/* ---------- FOOTER ---------- */
footer{background:var(--ink); border-top:1px solid rgba(255,255,255,0.08); padding:52px 0 30px; color:#8FA8A2; font-size:13.5px;}
.foot-links{display:flex; gap:64px; margin-bottom:40px; flex-wrap:wrap;}
.foot-heading{font-family:'Work Sans',sans-serif; font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin-bottom:14px;}
.foot-links a{display:block; color:#C7D9D4; font-size:14px; margin-bottom:9px; transition:color .2s;}
.foot-links a:hover{color:var(--teal);}
.foot-row{display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:28px; border-top:1px solid rgba(255,255,255,0.08);}

.mobile-call{display:none;position:fixed;z-index:45;left:16px;right:16px;bottom:14px;background:var(--teal);color:#fff;text-align:center;padding:14px 20px;border-radius:999px;font-weight:800;box-shadow:0 14px 35px rgba(14,122,112,.35);}
@media(max-width:700px){.mobile-call{display:block}body{padding-bottom:72px}.nav{padding:13px 18px}.nav-cta{padding:10px 15px;font-size:12.5px}.wrap{padding-left:20px;padding-right:20px}section{padding:68px 0}}
