/* Contact page — intentionally isolated to keep the core site untouched. */
.contact-section{background:var(--paper);font-family:N27,Arial,sans-serif}
.contact-layout{display:grid!important;grid-template-columns:minmax(0,.78fr) minmax(36rem,1.22fr)!important;gap:clamp(3rem,7vw,9rem)!important;align-items:start}
.contact-aside{position:sticky;top:8rem}
.contact-aside h2{font-family:N27,Arial,sans-serif;font-size:clamp(4rem,8.2vw,9.2rem);font-weight:200;line-height:.76;letter-spacing:-.07em;margin:.35em 0 .3em}
.contact-aside h2 em{color:var(--orange);font-weight:700}
.contact-intro{font-size:clamp(1.5rem,2.5vw,2.8rem);font-weight:300;line-height:1.06;letter-spacing:-.035em;max-width:18ch}
.contact-notes{margin-top:clamp(3rem,7vw,7rem);border-top:1px solid var(--line)}
.contact-notes p{display:grid;grid-template-columns:2rem 1fr;gap:1rem;margin:0;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.9rem}
.contact-notes span{color:var(--orange);font-size:.7rem}
.form-panel{background:var(--ink);color:var(--paper);padding:clamp(1.5rem,4vw,4.5rem);border-top:.7rem solid var(--orange);box-shadow:0 2rem 5rem rgba(0,0,0,.14)}
.contact-form{display:block!important;font-family:N27,Arial,sans-serif}
.contact-form fieldset{border:0;margin:0;padding:0 0 clamp(2.5rem,5vw,4.5rem)}
.contact-form fieldset+fieldset{border-top:1px solid rgba(255,255,255,.18);padding-top:clamp(2.5rem,5vw,4.5rem)}
.contact-form legend{display:flex;width:100%;gap:.8rem;align-items:center;margin:0 0 2rem;padding:0;color:var(--paper);font:500 clamp(1.15rem,2vw,1.65rem)/1 N27,Arial,sans-serif;letter-spacing:-.02em}
.contact-form legend span{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--orange);color:#10100f;font-size:.68rem;letter-spacing:.08em}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.contact-form label{display:grid!important;gap:.55rem;min-width:0}
.contact-form label>span:first-child{color:var(--paper);font:500 .68rem/1.2 N27,Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{appearance:none;width:100%;min-height:3.8rem;border:1px solid rgba(255,255,255,.28)!important;border-radius:0!important;background:rgba(255,255,255,.055)!important;color:var(--paper)!important;padding:1rem 1.05rem!important;font:400 1rem/1.35 N27,Arial,sans-serif!important;outline:0;transition:border-color .25s,background .25s,box-shadow .25s}
.contact-form textarea{min-height:13rem;resize:vertical}
.contact-form select{cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%!important;background-size:6px 6px,6px 6px!important;background-repeat:no-repeat!important}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.4);opacity:1}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange)!important;background:rgba(255,90,0,.08)!important;box-shadow:0 0 0 1px var(--orange)!important}
.form-wide{grid-column:1/-1}
.form-finish{border-top:1px solid rgba(255,255,255,.18);padding-top:2rem;display:grid;gap:2rem}
.form-consent{grid-template-columns:1.35rem 1fr!important;align-items:start;gap:1rem!important}
.form-consent input{appearance:none;width:1.35rem!important;height:1.35rem!important;margin:0!important;border:1px solid rgba(255,255,255,.5)!important;background:transparent!important;cursor:pointer}
.form-consent input:checked{background:var(--orange)!important;box-shadow:inset 0 0 0 4px var(--ink)!important}
.form-consent span{font:300 .88rem/1.5 N27,Arial,sans-serif!important;color:rgba(255,255,255,.72)!important;text-transform:none!important;letter-spacing:0!important}
.form-consent a{color:#fff;text-decoration-color:var(--orange);text-underline-offset:.2em}
.form-submit{width:100%;min-height:5rem;border:0!important;border-radius:0!important;background:var(--orange)!important;color:#10100f!important;padding:1rem 1.4rem!important;display:flex;justify-content:space-between;align-items:center;font:500 .78rem/1 N27,Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .25s,transform .25s}
.form-submit b{font-size:1.6rem;font-weight:300}.form-submit:hover{background:#ff7426!important;color:#10100f!important;transform:translateY(-3px)}
.form-status{font-family:N27,Arial,sans-serif;padding:clamp(1.5rem,4vw,3rem);font-size:1.1rem}.form-status.success{background:var(--orange);color:#10100f}.form-status.error{border-color:#ff8b69;color:#ffb19b}
.form-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
@media(max-width:980px){.contact-layout{grid-template-columns:1fr!important}.contact-aside{position:relative;top:auto}.contact-aside h2{max-width:8ch}.contact-notes{margin-top:3rem}.form-panel{padding:clamp(1.2rem,5vw,3rem)}}
@media(max-width:620px){.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:16px!important}}
