:root{--legacy-0b4a4a:#0b4a4a;--legacy-0d8c8c:#0d8c8c;--legacy-0e5757:#0e5757;--legacy-0e5d5d:#0e5d5d;--legacy-11a0a0:#11a0a0;--legacy-16222f:#16222f;--legacy-235e5e:#235e5e;--legacy-33444f:#33444f;--legacy-46586a:#46586a;--legacy-728390:#728390;--legacy-8a98a2:#8a98a2;--legacy-b8f2e6:#b8f2e6;--legacy-c3d2d8:#c3d2d8;--legacy-cdeef0:#cdeef0;--legacy-cdf6ec:#cdf6ec;--legacy-d7ecee:#d7ecee;--legacy-e9fbf8:#e9fbf8}
.hc{--ink:var(--legacy-16222f, #16222f);--ink-2:var(--legacy-46586a, #46586a);--teal:var(--legacy-0d8c8c, #0d8c8c);--teal-d:var(--legacy-0b4a4a, #0b4a4a);--mint:var(--legacy-b8f2e6, #b8f2e6);--mint-2:var(--legacy-e9fbf8, #e9fbf8);--line:var(--color-primary-subtle, #e2ecee);--bg-soft:var(--color-surface-alt, #f5fbfa);--white:var(--color-background, #fff);--radius:16px;--shadow:0 10px 30px rgba(11,74,74,.10);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);max-width:1140px;margin:0 auto;padding:0 18px;line-height:1.6;-webkit-font-smoothing:antialiased}
.hc *{box-sizing:border-box}
.hc img{max-width:100%;display:block}
.hc a{color:var(--teal)}
.hc mark{background:none;color:inherit;padding:0;font-weight:700}
.hc .loc{color:var(--teal-d);font-weight:700;white-space:nowrap}

/* breadcrumb */
.hc-bc{font-size:13px;color:var(--legacy-728390, #728390);padding:16px 2px;margin:0}
.hc-bc a{text-decoration:none}
.hc-bc a:hover{text-decoration:underline}
.hc-bc span[aria-current]{color:var(--ink)}

/* hero */
.hc-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:30px;align-items:center;background:radial-gradient(140% 120% at 100% 0%,var(--legacy-0e5757, #0e5757) 0%,var(--ink) 55%);border-radius:var(--radius-xl, 22px);padding:42px;color:var(--color-background, #fff);position:relative;overflow:hidden;margin-bottom:14px}
.hc-hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(184,242,230,.08) 1px,transparent 1px);background-size:22px 22px;opacity:.7;pointer-events:none}
.hc-hero>*{position:relative;z-index:1}
.hc-eyebrow{display:inline-block;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;font-weight:800;color:var(--ink);background:var(--mint);padding:6px 12px;border-radius:50px;margin-bottom:16px}
.hc-hero h1{font-size:clamp(28px,4.4vw,40px);line-height:1.1;margin:0 0 14px;font-weight:800;letter-spacing:-.5px}
.hc-hero h1 em{font-style:normal;color:var(--mint)}
.hc-hero p{color:var(--legacy-d7ecee, #d7ecee);font-size:16px;margin:0 0 24px;max-width:46ch}
.hc-cta{display:flex;gap:12px;flex-wrap:wrap}
.hc-btn{display:inline-block;padding:14px 26px;border-radius:var(--radius-md, 11px);font-weight:700;text-decoration:none;font-size:15px;transition:transform .15s ease,background .15s ease;line-height:1}
.hc-btn:hover{transform:translateY(-2px)}
.hc-btn--p{background:var(--teal);color:var(--color-background, #fff);box-shadow:0 8px 18px rgba(13,140,140,.35)}
.hc-btn--p:hover{background:var(--legacy-11a0a0, #11a0a0)}
.hc-btn--m{background:var(--mint);color:var(--teal-d)}
.hc-btn--m:hover{background:var(--legacy-cdf6ec, #cdf6ec)}
.hc-btn--ghost{background:transparent;color:var(--teal);border:2px solid var(--teal)}
.hc-btn--ghost:hover{background:var(--mint-2)}
.hc-trust{margin-top:22px;display:flex;gap:8px 20px;flex-wrap:wrap;font-size:13px;color:var(--mint);font-weight:600}
.hc-trust li{list-style:none}
.hc-trust ul{margin:0;padding:0;display:flex;gap:8px 20px;flex-wrap:wrap}
.hc-hero figure{margin:0}
.hc-hero figure img{border-radius:var(--radius-lg, 16px);box-shadow:0 16px 40px rgba(0,0,0,.35);aspect-ratio:4/3;object-fit:cover;width:100%}

/* section shell */
.hc-sec{margin:52px 0}
.hc-kicker{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;font-weight:800;color:var(--teal);margin:0 0 8px}
.hc-sec>h2{font-size:clamp(22px,3vw,28px);font-weight:800;letter-spacing:-.4px;margin:0 0 10px}
.hc-lead{color:var(--ink-2);margin:0 0 24px;max-width:80ch}

/* cards grid */
.hc-grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.hc-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg, 14px);padding:22px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;position:relative}
.hc-card:hover{transform:translateY(-3px);border-color:var(--teal);box-shadow:var(--shadow)}
.hc-card .ic{width:40px;height:40px;border-radius:var(--radius-md, 10px);background:var(--mint-2);display:flex;align-items:center;justify-content:center;margin-bottom:14px;color:var(--teal)}
.hc-card .ic svg{width:22px;height:22px}
.hc-card h3{margin:0 0 6px;font-size:17px}
.hc-card p{margin:0;font-size:14px;color:var(--ink-2)}

/* steps */
.hc-steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;margin:0;padding:0}
.hc-step{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius-lg, 16px);padding:26px 24px}
.hc-step .n{counter-increment:step;width:48px;height:48px;border-radius:var(--radius-lg, 14px);background:var(--teal);color:var(--color-background, #fff);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;font-variant-numeric:tabular-nums;margin-bottom:16px}
.hc-step .n::before{content:counter(step,decimal-leading-zero)}
.hc-step h3{margin:0 0 6px;font-size:17px}
.hc-step p{margin:0;font-size:14px;color:var(--ink-2)}

/* why */
.hc-why{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:0;padding:0}
.hc-why li{list-style:none;display:grid;grid-template-columns:24px 1fr;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md, 12px);padding:16px}
.hc-why li::before{content:"";width:24px;height:24px;border-radius:50%;background:var(--teal);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/16px no-repeat;margin-top:2px}
.hc-why li span{font-size:14px;color:var(--ink-2)}
.hc-why li strong{color:var(--ink)}

/* price band */
.hc-band{background:linear-gradient(120deg,var(--mint) 0%,var(--mint-2) 100%);border-radius:var(--radius-lg, 18px);padding:30px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.hc-band h2{margin:0 0 6px;font-size:21px;color:var(--teal-d);padding:0}
.hc-band p{margin:0;color:var(--legacy-235e5e, #235e5e);max-width:60ch;font-size:14px}
.hc-band .hc-btn--p{background:var(--teal-d);box-shadow:0 8px 18px rgba(11,74,74,.28)}
.hc-band .hc-btn--p:hover{background:var(--legacy-0e5d5d, #0e5d5d)}

/* checklist */
.hc-check{columns:2;column-gap:34px;margin:0;padding:0}
.hc-check li{list-style:none;padding:8px 0 8px 28px;position:relative;font-size:14.5px;break-inside:avoid;color:var(--ink-2)}
.hc-check li::before{content:"";position:absolute;left:0;top:9px;width:18px;height:18px;border-radius:var(--radius-sm, 5px);background:var(--mint-2);box-shadow:inset 0 0 0 1.5px var(--teal)}
.hc-check li::after{content:"";position:absolute;left:4px;top:11px;width:11px;height:11px;background:var(--teal);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/11px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/11px no-repeat}

/* service link cards */
.hc-svc{display:block;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md, 13px);padding:18px;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.hc-svc:hover{transform:translateY(-3px);border-color:var(--teal);box-shadow:var(--shadow)}
.hc-svc .t{display:block;font-weight:700;font-size:15.5px;color:var(--teal);margin-bottom:5px}
.hc-svc:hover .t{color:var(--teal-d)}
.hc-svc .d{display:block;font-size:13px;color:var(--ink-2)}

/* nearby + map */
.hc-cover{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.hc-near{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}
.hc-near a{display:block;padding:11px 13px;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius-sm, 9px);text-decoration:none;color:var(--teal);font-size:13.5px;font-weight:600;transition:background .15s ease,color .15s ease}
.hc-near a:hover{background:var(--teal);color:var(--color-background, #fff);border-color:var(--teal)}
.hc-cover iframe{width:100%;height:100%;min-height:320px;border:0;border-radius:var(--radius-lg, 14px)}

/* about */
.hc-about{background:var(--bg-soft);border-left:5px solid var(--teal);border-radius:0 14px 14px 0;padding:24px 28px}
.hc-about p{margin:0 0 12px;color:var(--legacy-33444f, #33444f)}
.hc-about p:last-child{margin:0}

/* stats */
.hc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hc-stat{background:var(--ink);color:var(--color-background, #fff);border-radius:var(--radius-lg, 14px);padding:22px;text-align:center}
.hc-stat .num{font-size:25px;font-weight:800;color:var(--mint);letter-spacing:-.5px}
.hc-stat .lbl{font-size:12px;color:var(--legacy-c3d2d8, #c3d2d8);margin-top:6px}
.hc-note{font-size:12px;color:var(--legacy-8a98a2, #8a98a2);margin-top:12px}

/* faq */
.hc-faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md, 12px);padding:2px 20px;margin-bottom:10px;transition:border-color .15s ease}
.hc-faq details[open]{border-color:var(--teal)}
.hc-faq summary{font-weight:700;padding:16px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.hc-faq summary::-webkit-details-marker{display:none}
.hc-faq summary::after{content:"";flex:0 0 18px;width:18px;height:18px;background:var(--teal);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M11 5h2v14h-2z'/%3E%3Cpath fill='%23fff' d='M5 11h14v2H5z'/%3E%3C/svg%3E") center/18px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M11 5h2v14h-2z'/%3E%3Cpath fill='%23fff' d='M5 11h14v2H5z'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .2s ease}
.hc-faq details[open] summary::after{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M5 11h14v2H5z'/%3E%3C/svg%3E") center/18px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M5 11h14v2H5z'/%3E%3C/svg%3E") center/18px no-repeat}
.hc-faq p{margin:0 0 16px;color:var(--ink-2);font-size:14.5px}

/* guides */
.hc-guide{display:block;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md, 13px);padding:20px;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.hc-guide:hover{transform:translateY(-3px);border-color:var(--teal);box-shadow:var(--shadow)}
.hc-guide .tag{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--teal);font-weight:800}
.hc-guide .gt{display:block;font-weight:700;font-size:16px;margin:8px 0 6px}
.hc-guide .gd{display:block;font-size:13.5px;color:var(--ink-2)}

/* final cta */
.hc-final{background:radial-gradient(120% 140% at 0% 0%,var(--legacy-0e5757, #0e5757) 0%,var(--teal-d) 60%);border-radius:var(--radius-xl, 22px);padding:46px 30px;text-align:center;color:var(--color-background, #fff)}
.hc-final h2{color:var(--color-background, #fff);font-size:clamp(22px,3vw,28px);margin:0 0 10px;padding:0}
.hc-final p{color:var(--legacy-cdeef0, #cdeef0);margin:0 0 24px}
.hc-final .hc-cta{justify-content:center}

/* sticky */
.hc-sticky{position:fixed;right:18px;bottom:18px;z-index:60}
.hc-sticky a{display:inline-block;background:var(--teal);color:var(--color-background, #fff);padding:15px 26px;border-radius:50px;font-weight:800;text-decoration:none;box-shadow:0 10px 26px rgba(13,140,140,.45);transition:transform .15s ease,background .15s ease}
.hc-sticky a:hover{background:var(--legacy-11a0a0, #11a0a0);transform:translateY(-2px)}

.hc :focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:var(--radius-sm, 6px)}

@media (max-width:880px){
  .hc-hero{grid-template-columns:1fr;padding:30px}
  .hc-hero figure{order:-1}
  .g2,.g3,.hc-why,.hc-cover,.hc-near,.hc-steps{grid-template-columns:1fr}
  .hc-stats{grid-template-columns:repeat(2,1fr)}
  .hc-check{columns:1}
  .hc-near{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  .hc *{transition:none!important;animation:none!important}
}