body.contact-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#f6f3fa;color:#202641}
.contact-page>.site-header,.contact-page>.site-breadcrumbs,.contact-page>.platform-footer{flex-shrink:0}
.contact-page>.platform-footer{margin-top:auto}
.contact-main{flex:1;position:relative;isolation:isolate;padding:clamp(36px,5vw,76px) 32px;background:radial-gradient(ellipse at 7% 17%,#e7ddfa 0,transparent 52%),radial-gradient(ellipse at 83% 85%,#e1eee9 0,transparent 49%),#f8f6fa}
.contact-main:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.3;background:url('img/spotlight-ribbons.svg') center/cover no-repeat}
.contact-layout{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(40px,6vw,90px);max-width:1240px;margin:auto;align-items:center}
.contact-intro{min-width:0;max-width:530px}
.contact-page .contact-eyebrow{font-size:.875rem!important;line-height:1.5!important;letter-spacing:.12em;font-weight:750;color:#776398;margin:0 0 16px}
.contact-page .contact-intro h1{font-size:clamp(3rem,4.5vw,4.5rem)!important;line-height:1.05!important;letter-spacing:-.055em;margin:0 0 24px;color:#28203f}
.contact-page .contact-lead{font-size:clamp(1.125rem,1rem + .3vw,1.375rem)!important;line-height:1.6!important;color:#625b73;max-width:38ch;margin:0 0 28px}
.contact-reasons{display:grid;gap:22px;margin:0 0 28px}
.contact-reasons>div{display:flex;gap:14px;align-items:flex-start}
.contact-reasons>div>span{width:42px;height:42px;border:1px solid #d8cfee;border-radius:13px;display:grid;place-items:center;flex:none;background:#ffffff86;color:#7761b4}
.contact-page .contact-reasons h2{font-size:1.125rem!important;line-height:1.4!important;margin:0 0 4px;letter-spacing:-.02em}
.contact-page .contact-reasons p{font-size:1rem!important;line-height:1.55!important;margin:0;color:#665f73}
.contact-email{display:inline-flex;align-items:center;gap:12px;font-size:1.0625rem;font-weight:650;color:#5d4698;text-decoration:none;border-bottom:1px solid #c6b8e1;padding-bottom:6px}
.contact-email:hover{color:#3d2b71}
.contact-art{max-width:460px;margin:18px 0 -10px}.contact-art svg{display:block;width:100%;height:auto}
.contact-card{min-width:0;position:relative;padding:clamp(24px,3vw,42px);border:1px solid #e4deed;border-radius:28px;background:#fffefc;box-shadow:0 24px 70px #4024660c;scroll-margin-top:30px}
.contact-page .contact-card>h2{font-size:clamp(1.5rem,1.2rem + .5vw,1.875rem)!important;line-height:1.3!important;letter-spacing:-.035em;margin:0 0 28px}
.contact-card form{display:grid;gap:20px}.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-field{display:grid;gap:8px;min-width:0}
.contact-page .contact-field label{font-size:1rem!important;font-weight:650;line-height:1.5!important;color:#393347}
.contact-page .contact-field :is(input,select,textarea){width:100%;min-width:0;min-height:50px;border:1px solid #dcd6e5;border-radius:12px;background:#fff;color:#302a3e;padding:12px 14px;font:inherit;font-size:1rem!important;line-height:1.5!important;box-shadow:none}
.contact-field textarea{resize:vertical;min-height:140px}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#8a8296}
.contact-field :is(input,select,textarea):focus{outline:3px solid #ad99df50;outline-offset:1px;border-color:#8b70c2}
.contact-field [aria-invalid=true]{border-color:#ad4e62!important}
.contact-page .contact-field-error{font-size:.875rem!important;line-height:1.5!important;color:#962f49;margin:0}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-card altcha-widget{display:block;max-width:100%;--altcha-color-primary:#6650a6;--altcha-color-border:#ddd5e9;--altcha-border-radius:12px;--altcha-max-width:100%}
.contact-page .contact-privacy{font-size:.875rem!important;line-height:1.6!important;color:#70687c;margin:0}.contact-privacy a{color:#604a9b;text-decoration:underline;text-underline-offset:3px}
.contact-submit{display:flex;justify-content:center;align-items:center;gap:14px;width:100%;min-height:54px;border:0;border-radius:12px;background:#6650a6;color:#fff;font:inherit;font-size:1rem;font-weight:650;cursor:pointer;transition:background .2s,transform .2s}
.contact-submit:hover{background:#503c8d;transform:translateY(-1px)}.contact-submit:focus-visible,.contact-email:focus-visible{outline:3px solid #8c74c9;outline-offset:4px}.contact-submit:disabled{opacity:.65;cursor:wait}
.contact-alert{border:1px solid #e7c7d0;border-radius:12px;background:#fff5f7;color:#8b3549;padding:14px 16px;margin:0 0 20px;font-size:1rem}.contact-alert ul{margin:8px 0 0;padding-left:20px}.contact-alert a{color:inherit;text-decoration:underline}
.contact-page .contact-verification-status{font-size:.875rem!important;line-height:1.5!important;color:#963c51;margin:0}.contact-verification-status:empty{display:none}
.contact-success{text-align:center;padding:40px 0}.contact-success-icon{display:grid;place-items:center;width:72px;height:72px;background:#e3f2eb;color:#4a806a;border-radius:50%;margin:0 auto 24px}.contact-success h2{font-size:2rem!important;line-height:1.2!important;margin:0 0 18px}.contact-success p{color:#665f73}.contact-success .button{margin-top:18px}
@media(max-width:860px){.contact-layout{grid-template-columns:1fr;gap:30px;max-width:620px}.contact-intro{max-width:none}.contact-art{max-width:330px;margin:18px auto 0}.contact-main{padding:36px 24px}.contact-reasons{grid-template-columns:1fr 1fr}.contact-card{border-radius:22px}}
@media(max-width:520px){.contact-main{padding:30px 18px}.contact-field-row,.contact-reasons{grid-template-columns:1fr}.contact-card{padding:24px 20px}.contact-art{max-width:290px}.contact-page .contact-intro h1{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.contact-submit{transition:none}.contact-submit:hover{transform:none}}
