.campaign-main { display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,7vw,110px); padding-block:60px 88px; align-items:start; }
.campaign-story h1 { font-size:clamp(58px,5.8vw,90px); line-height:.98; margin:14px 0 28px; }
.campaign-intro { max-width:490px; font-size:17px; color:var(--muted); }
.campaign-story figure { margin:32px 0 20px; }
.campaign-story figure img { width:100%; height:auto; aspect-ratio:1.45; object-fit:cover; }
.campaign-story figcaption { margin-top:12px; font-size:12px; color:var(--muted); }
.campaign-details { font-size:14px; color:var(--muted); max-width:490px; }
.campaign-details strong { color:var(--ink); font-weight:500; }
.campaign-details address { font-style:normal; color:var(--ink); }
.campaign-form-panel { padding:clamp(24px,3.5vw,48px); border:1px solid var(--line); background:#e4d7c9; }
.campaign-form-panel h2 { font-size:clamp(43px,4vw,58px); line-height:1.03; margin:12px 0 22px; }
.campaign-form-panel>p:not(.section-label) { font-size:14px; color:var(--muted); }
.campaign-fields { display:grid; grid-template-columns:1fr 1fr; gap:20px 16px; }
.campaign-fields label { display:block; font-size:11px; letter-spacing:.07em; text-transform:uppercase; font-weight:600; }
.campaign-fields label span { font-weight:400; color:var(--muted); }
.campaign-fields input,.campaign-fields select,.campaign-fields textarea { display:block; width:100%; min-height:48px; margin-top:8px; padding:11px 12px; background:var(--cream); color:var(--ink); border:1px solid #8e7b6b; border-radius:0; font-size:16px; letter-spacing:normal; text-transform:none; }
.campaign-fields input:focus,.campaign-fields select:focus,.campaign-fields textarea:focus { outline:2px solid var(--accent-text); outline-offset:2px; }
.campaign-fields input[type=date] { min-width:0; -webkit-appearance:none; }
.campaign-fields textarea { resize:vertical; }
.field-wide,.campaign-fields .field-help { grid-column:1/-1; }
.campaign-fields .field-help { font-size:12px; color:var(--muted); margin:-10px 0 0; line-height:1.5; }
#enquiry-fields { border:0; margin:0; padding:0; min-width:0; }
#turnstile-container { margin-top:22px; min-height:65px; }
.campaign-submit { width:100%; justify-content:space-between; }
.campaign-submit:disabled { cursor:wait; opacity:.6; }
#enquiry-status { font-size:13px; margin-bottom:0; }
#enquiry-status[data-error=true] { color:#852b20; }
.campaign-assurance { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.enquiry-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.campaign-thanks { min-height:65vh; padding-block:90px; max-width:800px; text-align:center; }
.campaign-thanks h1 { font-size:clamp(60px,7vw,96px); line-height:1; }
.campaign-thanks>p:not(.section-label) { max-width:560px; margin:24px auto; }
.campaign-privacy { max-width:850px; padding-block:60px 90px; }
.campaign-privacy h1 { font-size:clamp(48px,6vw,76px); }
.campaign-privacy h2 { font-size:34px; margin:40px 0 16px; }
html[data-theme=dark] .campaign-form-panel { background:#302019; }
html[data-theme=dark] #enquiry-status[data-error=true] { color:#ffbaaa; }
@media(max-width:760px) { .campaign-main { display:flex; flex-direction:column; padding-top:38px; gap:0; } .campaign-story { display:contents; } .campaign-story>.section-label { order:0; } .campaign-story h1 { order:1; font-size:62px; } .campaign-intro { order:2; font-size:16px; } .campaign-story figure { order:4; margin-top:30px; } .campaign-details { order:5; } .campaign-form-panel { order:3; margin-top:20px; padding:24px 20px; } .campaign-form-panel h2 { font-size:48px; } .campaign-fields { gap:18px 12px; } }
@media(max-width:370px) { .campaign-fields { grid-template-columns:1fr; } }

#enquiry-form { scroll-margin-top:24px; }
