/* CONTACT FORM — NIGHT OF THE JUMPs */
.contact-form-section{background:#fff}
.contact-form-layout{display:grid;grid-template-columns:.86fr 1.28fr;gap:65px;align-items:start}
.contact-form-intro{padding:20px 0}.contact-form-intro h2{font-size:clamp(40px,5vw,65px);margin:14px 0}.contact-form-intro>p{font-size:14px;line-height:1.8;color:#5c718e;max-width:430px}
.contact-form-points{display:grid;gap:15px;margin:32px 0}
.contact-form-points>div{font-size:12px;color:#334c6d;font-weight:700;display:flex;align-items:center;gap:12px}
.contact-form-points>div span{width:27px;height:27px;display:grid;place-items:center;background:#e8f2ff;border-radius:50%;color:#104b99}
.contact-form-address{border-left:4px solid #e9244c;padding:12px 20px;background:#f5f8fc;margin-top:28px}
.contact-form-address strong{display:block;font-size:11px;letter-spacing:.1em}.contact-form-address a{display:block;color:#154c92;margin:8px 0;font-weight:800;font-size:17px}.contact-form-address small{font-size:11px;color:#6c7b90}
.contact-form-card{border:1px solid #dfe8f1;border-radius:16px;padding:29px;background:#f9fbfe;box-shadow:0 13px 35px #16385d10}
.contact-form-head h3{font-size:40px;margin:10px 0}.contact-form-head p{font-size:11px;color:#637c98;margin-bottom:21px}
.contact-topics{padding:0;border:0;margin:0 0 24px}.contact-topics legend{font-weight:800;font-size:14px;margin-bottom:8px}.contact-topics>p{font-size:11px;color:#788ba1;margin-bottom:12px}
.contact-topics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.contact-topic{position:relative;border:1px solid #d9e3ef;border-radius:10px;background:#fff;padding:15px 12px;display:flex;align-items:start;gap:11px;cursor:pointer;min-height:77px}
.contact-topic:has(input:checked){border-color:#2a62ae;background:#edf5ff;box-shadow:0 0 0 2px #aecbf249}
.contact-topic input{position:absolute;opacity:0;width:1px;height:1px}
.contact-topic:focus-within{outline:3px solid #a2c4ed}
.contact-topic-icon{width:22px;height:22px;background:#edf1f7;color:transparent;display:grid;place-items:center;border-radius:6px;font-size:13px;font-weight:900;flex-shrink:0}
.contact-topic:has(input:checked) .contact-topic-icon{background:#13529a;color:#fff}
.contact-topic strong{font-size:12px;font-weight:800;display:block;line-height:1.35}.contact-topic small{font-size:10px;color:#7b8fa6;display:block;line-height:1.45;margin-top:4px}
.contact-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
.contact-input-label{font-size:11px;font-weight:800;color:#425874;display:flex;flex-direction:column;gap:7px}
.contact-input-label:has(textarea){grid-column:span 2}
.contact-input-label input,.contact-input-label textarea,.contact-input-label select{border:1px solid #d6dfec;border-radius:9px;background:white;color:#152d50;font:500 13px Inter,Arial,sans-serif;padding:12px 14px;width:100%;outline:0}
.contact-input-label textarea{resize:vertical;line-height:1.65;min-height:130px}
.contact-input-label input:focus,.contact-input-label textarea:focus,.contact-input-label select:focus{border-color:#3372bd;box-shadow:0 0 0 3px #d7e8fc}
.contact-required{color:#e9234b;font-weight:900}
.contact-extra-checkbox{display:flex;gap:10px;align-items:center;font-size:11px;font-weight:700;color:#475d79}
.contact-extra-checkbox input{accent-color:#1654a5;width:18px;height:18px}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;aria-hidden:true}
.contact-privacy-check{display:flex;gap:11px;align-items:start;font-size:11px;line-height:1.75;color:#4d6380;margin:25px 0 14px;cursor:pointer}
.contact-privacy-check input{width:19px;height:19px;flex-shrink:0;accent-color:#e9244c;margin:2px 0 0}
.contact-privacy-check a{font-weight:800;text-decoration:underline;color:#0e4b93}
.contact-submit-btn{width:100%;padding:15px 22px;font-size:13px}.contact-submit-btn:disabled{opacity:.65;cursor:wait}
.contact-disclaimer{font-size:10px;color:#7489a1;line-height:1.7;margin:13px 0 0}
.contact-form-result{font-size:12px;border-radius:9px;padding:0;margin:0}
.contact-form-result:not(:empty){padding:14px;margin-bottom:14px}
.contact-form-result.success{background:#e7f5ed;border:1px solid #bde1cd;color:#206b47}
.contact-form-result.error{background:#fff0f2;border:1px solid #f5cbd3;color:#b32f49}
.contact-form-loading,.contact-form-unavailable{padding:50px 30px;text-align:center;background:#f5f8fd;border-radius:15px;color:#657a99;border:1px solid #e2eaf3}
.contact-form-unavailable h3{font-size:29px}.contact-form-unavailable a{color:#104e98;text-decoration:underline}
@media(max-width:1000px){.contact-form-layout{gap:30px;grid-template-columns:.85fr 1.25fr}.contact-topics-grid{grid-template-columns:1fr}.contact-form-card{padding:20px}}
@media(max-width:760px){.contact-form-layout,.contact-form-fields{grid-template-columns:1fr}.contact-topics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-intro h2{font-size:46px}.contact-form-intro{padding:0}.contact-form-card{padding:16px}.contact-input-label:has(textarea){grid-column:auto}.contact-topic{padding:11px 8px;gap:7px;min-height:78px}.contact-topic strong{font-size:10px}.contact-topic small{font-size:9px}}

/* Configurable contact form layouts controlled by the backend */
.contact-form-section.contact-layout-classic .contact-form-layout{display:flex;flex-direction:column;gap:27px;max-width:850px;margin:auto}
.contact-form-section.contact-layout-classic .contact-form-intro{text-align:center;padding:8px}
.contact-form-section.contact-layout-classic .contact-form-intro>p{margin-left:auto;margin-right:auto}
.contact-form-section.contact-layout-classic .contact-form-points{display:flex;flex-wrap:wrap;justify-content:center;margin:20px 0}
.contact-form-section.contact-layout-classic .contact-form-address{max-width:430px;margin:18px auto;padding:10px 15px;text-align:left}
.contact-form-section.contact-layout-compact .contact-form-layout{display:block;max-width:970px;margin:auto}
.contact-form-section.contact-layout-compact .contact-form-intro{display:flex;flex-direction:column;padding:5px 0 19px}
.contact-form-section.contact-layout-compact .contact-form-intro h2{font-size:44px;margin:6px 0}
.contact-form-section.contact-layout-compact .contact-form-points,.contact-form-section.contact-layout-compact .contact-form-address{display:none}
.contact-form-section.contact-layout-compact .contact-form-card{padding:22px}
.contact-form-section.contact-layout-compact .contact-topics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-form-section .contact-submit-btn{background:var(--contact-accent,#E9244C)}
.contact-form-section .contact-topic:has(input:checked){border-color:var(--contact-accent,#E9244C)}
.contact-form-section .contact-topic:has(input:checked) .contact-topic-icon{background:var(--contact-accent,#E9244C)}
@media(max-width:760px){
.contact-form-section.contact-layout-compact .contact-topics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-form-section.contact-layout-classic .contact-form-points{display:grid}
}
