/* 0.42.2 — approved Bildhero. Content stays in flow; backdrop ends above card bottom. */
.ch-home-hero-stage{
  --ch-hero-shell:1280px;--ch-hero-gutter:40px;--ch-hero-overlap:96px;
  --ch-hero-link-clearance:48px;--ch-hero-dark:#00382e;--ch-hero-body:1.25rem;
  --ch-hero-h1:clamp(2.25rem,1.25rem + 3.2vw,3.625rem);
  position:relative;isolation:isolate;padding:180px 0 0;
  background:linear-gradient(to bottom,var(--ch-hero-dark) 0 calc(100% - var(--ch-hero-overlap)),#fff calc(100% - var(--ch-hero-overlap)) 100%);
  color:#fff;font-family:var(--chp-sans);
}
.ch-home-hero-stage *{box-sizing:border-box}
.ch-home-hero-backdrop{position:absolute;inset:0 0 var(--ch-hero-overlap);z-index:-1;overflow:hidden;pointer-events:none}
.ch-home-hero-backdrop img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:64% 45%;opacity:0;transition:opacity 900ms ease}
.ch-home-hero-backdrop img.is-active{opacity:1}
.ch-home-hero-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,56,46,.05) 0%,rgba(0,56,46,.2) 15%,rgba(0,56,46,.94) 49%,#00382e 100%)}
.ch-home-hero-composition{position:relative;display:grid;grid-template-columns:480px minmax(0,1fr);gap:64px;align-items:stretch;width:min(var(--ch-hero-shell),calc(100% - 2 * var(--ch-hero-gutter)));margin-inline:auto}
.ch-home-hero-sidecopy{grid-column:2;grid-row:1;align-self:end;min-width:0;padding-bottom:calc(var(--ch-hero-overlap) + var(--ch-hero-link-clearance));color:#fff}
.ch-site .ch-home-hero-sidecopy .ch-home-hero-eyebrow{font:500 1rem/1.5 var(--chp-sans);color:#d4eade;margin:0 0 20px;max-width:none}
.ch-site .ch-home-hero-stage .ch-home-hero-title{position:static;margin:0;max-width:none;width:auto;color:#fff;font:600 var(--ch-hero-h1)/1.12 var(--chp-sans);letter-spacing:-.045em;text-wrap:balance;overflow-wrap:break-word;white-space:normal}
.ch-site .ch-home-hero-sidecopy .ch-home-hero-lead{font:400 var(--ch-hero-body)/1.65 var(--chp-sans);color:#fff;margin:26px 0 0;max-width:53ch;hyphens:none;word-break:normal}
.ch-home-hero-link{display:inline-flex;align-items:center;gap:28px;min-height:52px;padding:0;border-bottom:1px solid #fff;margin-top:22px;color:#fff;text-decoration:none;font:500 1.0625rem/1.65 var(--chp-sans)}
.ch-home-hero-link:hover{color:#fff;border-bottom-color:#98d0b7}
.ch-home-hero-link .chp-icon{width:24px;height:24px;flex:none}
.ch-home-hero-form-panel{grid-column:1;grid-row:1;position:relative;min-width:0;padding:30px;background:var(--ch-hero-dark);color:#fff;border-radius:0;box-shadow:0 0 0 1px #ffffff2b;scroll-margin-top:24px}
.ch-home-hero-form{margin:0}
.ch-site .ch-home-hero-form-title h2{margin:0;color:#fff;font:600 1.75rem/1.25 var(--chp-sans);letter-spacing:-.025em}
.ch-site .ch-home-hero-form-title p{margin:10px 0 22px;color:#e4eeea;font:400 1rem/1.6 var(--chp-sans)}
.ch-home-hero-mini-label{display:block;margin:0 0 10px;color:#fff;font:500 1rem/1.5 var(--chp-sans)}
.ch-home-hero-topic-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}
.ch-home-hero-topic{display:flex;align-items:center;justify-content:center;min-width:0;min-height:50px;padding:10px 6px;background:#165648;border:1px solid #84a79b;border-radius:3px;color:#fff;text-align:center;font:400 1rem/1.3 var(--chp-sans);cursor:pointer}
.ch-home-hero-topic.is-active,.ch-home-hero-topic[aria-pressed=true]{color:#004638;background:#fff;border-color:#fff;box-shadow:inset 0 -4px 0 #13a865;font-weight:600}
.ch-home-hero-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ch-home-hero-field{min-width:0}
.ch-home-hero-field label{display:block;margin:0 0 7px;color:#fff;font:500 1rem/1.65 var(--chp-sans)}
.ch-site .ch-home-hero-form-panel .ch-home-hero-field input{display:block;appearance:none;width:100%;min-width:0;max-width:100%;height:auto;min-height:56px;max-height:none;margin:0;padding:14px 12px;background:#fff;border:1px solid #a6b9af;border-radius:4px;box-shadow:none;color:#183f34;font:400 1.0625rem/1.5 var(--chp-sans)}
.ch-home-hero-field input::placeholder{color:#62746d;opacity:1}
.ch-home-hero-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:56px;margin:2px 0 0;padding:14px 16px;border:0;border-radius:4px;background:#fff;color:#004638;font:600 1.125rem/1.65 var(--chp-sans);text-align:left;cursor:pointer}
.ch-home-hero-submit:hover{background:#eaf5ee}.ch-home-hero-submit:disabled{opacity:.7;cursor:wait}
.ch-home-hero-submit .chp-icon{width:24px;height:24px;flex:none}
.ch-home-hero-meta{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:18px;margin-top:22px;padding-top:20px;border-top:1px solid #5b7e70}
.ch-home-hero-meta-item{display:flex;align-items:center;gap:10px;min-width:0;min-height:52px;color:#fff;text-decoration:none}
.ch-home-hero-meta-item>.chp-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6}
.ch-home-hero-meta-item>span{display:block;min-width:0}
.ch-home-hero-meta-item small{display:block;color:#fff;font:400 1rem/1.65 var(--chp-sans)}
.ch-home-hero-meta-item b{display:block;color:#fff;font:600 1.375rem/1.5 var(--chp-sans);white-space:nowrap}
.ch-home-hero-hours{gap:9px}.ch-home-hero-hours b{font-size:1rem;line-height:2.0625rem}
.ch-home-hero-phone:hover b{text-decoration:underline;text-underline-offset:4px}
.ch-home-hero-google{display:flex;align-items:center;gap:12px;margin:20px 0 0;padding:18px 0 0;min-height:68px;border-top:1px solid #5b7e70;color:#fff;text-decoration:none;font:400 1rem/1.65 var(--chp-sans)}
.ch-home-hero-google>svg{flex:none;width:25px;height:25px;background:#fff;border-radius:50%;padding:2px}
.ch-home-hero-google>span:not(.ch-home-hero-stars){min-width:0}
.ch-home-hero-google b{font-weight:600}.ch-home-hero-google small{display:block;color:#d5e5de;font-size:.875rem;line-height:1.65}
.ch-home-hero-google:hover b{text-decoration:underline;text-underline-offset:4px}
.ch-home-hero-stars{flex:none;margin-left:auto;color:#f8c25e;font-size:.875rem;letter-spacing:1px;white-space:nowrap}
.ch-home-hero-stage :is(a,button,input):focus-visible{outline:3px solid #edbd53;outline-offset:4px}
.ch-site .ch-home-hero-form-panel .ch-home-hero-status{margin:16px 0 0;padding:14px;color:#004638;background:#e1f5e8;font:400 1rem/1.6 var(--chp-sans);border-left:4px solid #44ac73}
.ch-site .ch-home-hero-form-panel .ch-home-hero-status.is-error{background:#fff0ea;color:#792e26;border-color:#a14235}
.ch-home-hero-status[hidden]{display:none}
.ch-home-hero-honeypot{position:absolute;clip-path:inset(50%);opacity:0;width:1px;height:1px;min-width:0;min-height:0;overflow:hidden;pointer-events:none}
.ch-site .ch-home-focus-start{padding-top:64px}
html[data-ch-a11y-contrast=high] .ch-home-hero-backdrop:after{background:#00382eef}
html[data-ch-a11y-text]:not([data-ch-a11y-text="0"]) .ch-home-hero-composition{grid-template-columns:1fr}
html[data-ch-a11y-text]:not([data-ch-a11y-text="0"]) .ch-home-hero-sidecopy,html[data-ch-a11y-text]:not([data-ch-a11y-text="0"]) .ch-home-hero-form-panel{grid-column:1;grid-row:auto}
html[data-ch-a11y-text]:not([data-ch-a11y-text="0"]) .ch-home-hero-sidecopy{padding-bottom:0}
@media(min-width:1700px){.ch-home-hero-composition{gap:76px}.ch-home-hero-stage{padding-top:210px}}
@media(max-width:1190px){
 .ch-home-hero-stage{--ch-hero-gutter:32px;--ch-hero-h1:3rem}
 .ch-home-hero-composition{grid-template-columns:440px minmax(0,1fr);gap:36px}
 .ch-home-hero-form-panel{padding:26px}.ch-home-hero-fields{grid-template-columns:1fr}
}
@media(max-width:900px){
 .ch-home-hero-stage{--ch-hero-gutter:24px;--ch-hero-overlap:80px;--ch-hero-h1:clamp(2.25rem,1.4rem + 4vw,3.25rem);--ch-hero-body:1.125rem;padding-top:250px}
 .ch-home-hero-backdrop{height:620px}.ch-home-hero-backdrop:after{background:linear-gradient(180deg,transparent 10%,#00382e 63%)}
 .ch-home-hero-composition{grid-template-columns:1fr;gap:32px}
 .ch-home-hero-sidecopy,.ch-home-hero-form-panel{grid-column:1;grid-row:auto}
 .ch-home-hero-sidecopy{padding-bottom:0}.ch-home-hero-form-panel{width:100%}
 .ch-home-hero-fields{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .ch-home-hero-stage{--ch-hero-gutter:20px;--ch-hero-overlap:64px;--ch-hero-h1:2.25rem;padding-top:220px}
 .ch-home-hero-backdrop{height:510px}.ch-home-hero-backdrop img{object-position:65% 15%}
 .ch-home-hero-backdrop:after{background:linear-gradient(180deg,#00382e00 12%,#00382eb3 35%,#00382e 60%)}
 .ch-home-hero-composition{gap:28px}
 .ch-site .ch-home-hero-sidecopy .ch-home-hero-eyebrow{margin-bottom:16px}
 .ch-site .ch-home-hero-stage .ch-home-hero-title{line-height:1.14;letter-spacing:-.04em}
 .ch-site .ch-home-hero-sidecopy .ch-home-hero-lead{line-height:1.7;margin-top:22px}
 .ch-home-hero-link{font-size:1rem;margin-top:18px}
 .ch-home-hero-form-panel{padding:24px 20px;border:1px solid #507568;box-shadow:none}
 .ch-site .ch-home-hero-form-title h2{font-size:1.5rem}
 .ch-home-hero-topic-chips{grid-template-columns:1fr 1fr}.ch-home-hero-topic:last-child{grid-column:1/-1}
 .ch-home-hero-topic{padding:12px 8px}.ch-home-hero-fields{grid-template-columns:1fr;gap:16px}
 .ch-site .ch-home-hero-form-panel .ch-home-hero-field input{min-height:58px}
 .ch-home-hero-submit{min-height:58px;font-size:1.0625rem;padding:15px 14px}
 .ch-home-hero-meta{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px;margin-top:20px;padding-top:18px}
 .ch-home-hero-meta-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:0 6px;align-content:start;align-items:start}
 .ch-home-hero-meta-item>.chp-icon{grid-column:1;grid-row:1;width:18px;height:18px;margin-top:3px}
 .ch-home-hero-meta-item>span{display:contents}
 .ch-home-hero-meta-item small{grid-column:2;grid-row:1;min-height:3em;font-size:1rem;line-height:1.5;white-space:normal}
 .ch-home-hero-phone .ch-home-hero-contact-word{display:block;white-space:nowrap;hyphens:none;word-break:normal;overflow-wrap:normal}
 .ch-home-hero-meta-item b{grid-column:1/-1;grid-row:2;font-size:1.125rem;line-height:1.6875rem;letter-spacing:0}
 .ch-home-hero-hours b{font-size:1rem}
 .ch-home-hero-google{gap:10px;flex-wrap:wrap}.ch-home-hero-stars{display:none}
 .ch-site .ch-home-focus-start{padding-top:56px}
 html[data-ch-a11y-text]:not([data-ch-a11y-text="0"]) .ch-home-hero-meta-item b{white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:359px){
 .ch-home-hero-stage{--ch-hero-gutter:16px;--ch-hero-h1:2rem}
 .ch-home-hero-form-panel{padding-inline:16px}.ch-site .ch-home-hero-form-title h2{font-size:1.375rem}
}
@media(prefers-reduced-motion:reduce){.ch-home-hero-backdrop img{transition:none}}
html[data-ch-a11y-motion=reduce] .ch-home-hero-backdrop img{transition:none}
