/* Contact follows the shared inner-page editorial system. */
.contact-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:end;gap:56px;padding-block:80px 110px;border-bottom:1px solid var(--line)}
.contact-hero .eyebrow{margin-bottom:30px}
.contact-hero h1{font-size:clamp(64px,8.8vw,144px);line-height:.96;letter-spacing:-.075em;font-weight:500;margin:0}
.contact-hero h1 em{font-style:normal;color:var(--ink);background:linear-gradient(transparent 64%,var(--lime) 64%,var(--lime) 94%,transparent 94%)}
.contact-hero-intro{padding-bottom:6px}
.contact-hero-intro p{font-size:19px;line-height:1.65;color:var(--muted);max-width:560px;margin:0}
.contact-hero-intro p+p{margin-top:20px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,76px);padding-block:clamp(64px,7vw,104px) 130px;align-items:start}
.contact-details h2{font-size:clamp(36px,3.5vw,52px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:0 0 24px}
.contact-details>p{font-size:18px;line-height:1.75;color:var(--muted);max-width:440px}
.contact-details dl{margin:38px 0 0}.contact-details dl>div{border-top:1px solid var(--line);padding:24px 0}
.contact-details dt{font-size:16px;color:var(--muted);margin-bottom:10px}.contact-details dd{margin:0;font-size:21px;line-height:1.6}
.contact-details a{display:inline-block;border-bottom:2px solid #c9f31d;overflow-wrap:anywhere;padding:4px 0;font-weight:500}
.contact-form-panel{padding:0;background:transparent;border-radius:0;box-shadow:none;min-width:0}
.contact-form-panel h2{font-size:clamp(30px,3vw,44px);line-height:1.15;letter-spacing:-.045em;font-weight:500;margin:0 0 18px}
.contact-form-panel>p{font-size:18px;line-height:1.75;color:var(--muted);margin-bottom:32px}
#contact-enquiry{display:grid;gap:24px;padding-top:28px;border-top:1px solid var(--line)}
.contact-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
#contact-enquiry label{display:block;font-size:16px;line-height:1.5;font-weight:500;min-width:0}
#contact-enquiry input,#contact-enquiry select,#contact-enquiry textarea{display:block;width:100%;margin-top:10px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:4px;font:inherit;font-size:16px;color:var(--ink);min-height:52px}
#contact-enquiry textarea{resize:vertical;min-height:160px}#contact-enquiry :is(input,select,textarea):focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-color:var(--ink)}
#contact-enquiry .optional{font-weight:400;color:var(--muted)}
#contact-enquiry button{justify-self:start;font-size:16px;font-weight:550;padding:15px 26px;line-height:1.5;border-radius:50px;background:var(--ink);color:white}
#contact-enquiry .contact-form-note,#contact-status{font-size:15px;line-height:1.65;color:var(--muted);margin:0}
.contact-form-note a{border-bottom:2px solid #c9f31d;overflow-wrap:anywhere}
@media(max-width:1000px){.contact-hero{gap:36px}.contact-hero h1{font-size:clamp(58px,8.5vw,88px)}.contact-layout{gap:36px}.contact-details dd{font-size:18px}.contact-form-row{grid-template-columns:1fr}}
@media(max-width:760px){.contact-hero{grid-template-columns:1fr;gap:30px;padding-block:58px 72px}.contact-hero h1{font-size:clamp(48px,11vw,76px);line-height:1.02}.contact-hero .eyebrow{margin-bottom:24px}.contact-hero-intro p{font-size:18px}.contact-layout{grid-template-columns:1fr;padding-block:64px 85px;gap:56px}.contact-details>p{max-width:560px}.contact-details dd{font-size:20px}.contact-form-panel{padding-top:32px;border-top:1px solid var(--line)}}
