.contact-hero{min-height:330px;display:grid;grid-template-columns:1fr 38%;background:linear-gradient(105deg,#0b231b,#18382c);color:#fff;overflow:hidden}
.contact-hero-copy{align-self:center;padding:55px 8% 55px 17%}
.contact-hero h1{font-size:clamp(64px,7vw,102px);line-height:.87;margin:.14em 0 .22em}
.contact-hero-copy>p:not(.eyebrow){max-width:450px;font-size:clamp(14px,1.15vw,17px);line-height:1.6;color:#e4e9e2}
.contact-hero-image{min-height:330px;position:relative}
.contact-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;position:absolute;inset:0}
.contact-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#18382c 0%,transparent 25%)}
.contact-section{display:grid;grid-template-columns:minmax(230px,34%) minmax(0,1fr);gap:8%;padding:clamp(65px,7vw,100px) 7.7% clamp(75px,8vw,110px);background:radial-gradient(circle at 70% 0,#fff,#f6f5f1 72%)}
.contact-intro h2{font-size:clamp(50px,5vw,74px);margin:.14em 0 .28em}
.contact-intro>p:not(.eyebrow){font-size:15px;line-height:1.7;color:var(--muted);max-width:340px}
.contact-email-label{display:block;margin:38px 0 9px;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#6c786f}
.contact-email{display:inline-block;overflow-wrap:anywhere;font-size:clamp(14px,1.35vw,19px);border-bottom:1px solid #829a8b;padding-bottom:5px;color:var(--green)}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 22px}
.contact-field{display:flex;flex-direction:column;gap:10px;min-width:0}
.contact-field--full{grid-column:1/-1}
.contact-field label{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#315344}
.contact-field input,.contact-field textarea{width:100%;border:1px solid #c6d0c6;border-radius:0;background:#fff;color:var(--ink);font:400 15px/1.5 var(--sans);padding:14px 16px;outline-offset:3px}
.contact-field input{height:52px}
.contact-field textarea{min-height:180px;resize:vertical}
.contact-field input:focus,.contact-field textarea:focus{border-color:#4a6a58}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#9ba49b}
.contact-send{grid-column:1/-1;justify-self:start;min-height:49px;border:0;background:var(--green);color:#fff;padding:13px 26px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.contact-send:hover,.contact-send:focus-visible{background:#245441}
.contact-form-note{grid-column:1/-1;margin:-8px 0 0;color:#777f78;font-size:12px;line-height:1.5}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-thanks{min-height:500px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:75px 7.7%;background:radial-gradient(circle at 70% 0,#fff,#f6f5f1 72%)}
.contact-thanks h1{font-size:clamp(64px,7vw,96px);margin:.1em 0 .22em}
.contact-thanks>p:not(.eyebrow){font-size:16px;line-height:1.6;color:var(--muted);max-width:550px}
.contact-thanks .outline-button{margin-top:18px;min-height:45px}
@media(max-width:760px){.contact-hero{grid-template-columns:1fr;min-height:0}.contact-hero-image{grid-row:1;height:300px;min-height:0}.contact-hero-image:after{background:linear-gradient(0deg,#18382c 0%,transparent 35%)}.contact-hero-copy{grid-row:2;padding:36px 20px}.contact-hero-copy>p:not(.eyebrow){margin-bottom:0}.contact-hero h1{font-size:clamp(58px,13vw,84px)}.contact-section{grid-template-columns:1fr;gap:38px;padding:58px 20px 72px}.contact-intro h2{font-size:clamp(54px,11vw,72px)}.contact-email-label{margin-top:24px}.contact-thanks{min-height:460px;padding:65px 20px}}
@media(max-width:520px){.contact-hero-image{height:240px}.contact-form{grid-template-columns:1fr;gap:20px}.contact-field--full,.contact-send,.contact-form-note{grid-column:1}}
