.contact-page{min-height:100vh;display:flex;flex-direction:column;color-scheme:dark}
.contact-page [hidden]{display:none!important}
.skip-link{position:absolute;top:-70px;left:16px;background:#007bff;padding:12px;z-index:20}.skip-link:focus{top:12px}
.contact-nav-icon{flex-shrink:0}
.contact-page .contact-main{flex:1;width:100%;max-width:1160px;margin:0 auto;padding:64px 32px 72px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.contact-intro,.form-card{min-width:0}.contact-intro{padding-top:22px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.5px;color:#ff7fb0;margin:0 0 23px}
.contact-intro h1{font-size:clamp(38px,4vw,52px);line-height:1.08;letter-spacing:-1.8px;margin:0 0 23px}
.intro-copy{font-size:17px;color:#c5bdce;line-height:1.8;margin:0 0 42px}
.contact-note{display:flex;align-items:flex-start;gap:14px;border-top:1px solid #342c3c;padding-top:25px;max-width:335px}
.note-marker{display:grid;place-items:center;flex:0 0 27px;height:27px;color:#ff95c0;border:1px solid #75415d;border-radius:50%;font-size:14px}
.contact-intro h2{font-size:14px;line-height:1.5;margin:1px 0 8px;font-weight:700}
.contact-note p{font-size:14px;line-height:1.75;color:#aaa1b4;margin:0}
.direct-contact{margin-top:36px}.direct-contact h2{color:#bcb1c5;font-weight:400;font-size:13px}
.direct-contact a{font-size:14px;color:#ff91bb;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.direct-contact a:hover{color:#ffc0da}.direct-contact a span{display:inline-block;margin-left:5px}
.form-card{border:1px solid #3c3042;background:#1b1921;border-radius:14px;padding:32px;box-shadow:0 12px 44px #0002}
.form-card h2{font-size:23px;letter-spacing:-.5px;margin:0 0 28px}
.form-card fieldset{padding:0;margin:0;border:0;min-width:0}
.field{margin-bottom:22px;min-width:0}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:10px;color:#eee8f2}.field label span{font-size:11px;font-weight:400;color:#b2a7bd}.field label .required{color:#b2a7bd}
.field input,.field select,.field textarea{display:block;box-sizing:border-box;width:100%;font:inherit;font-size:14px;color:#f5f0f8;background:#121116;border:1px solid #514458;border-radius:7px;padding:13px 14px;line-height:1.5;transition:border-color .15s,box-shadow .15s}
.field select{min-height:48px;padding-right:30px}.field textarea{resize:vertical;min-height:174px;max-height:650px}
.field input::placeholder,.field textarea::placeholder{color:#91859d;opacity:1}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #f780b5;outline-offset:2px;border-color:#f780b5}
.field [aria-invalid=true]{border-color:#ff9caa}
.reply-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.reply-fields .field{margin-bottom:8px}
.field-hint{color:#b4a9bf;font-size:12px;line-height:1.6;margin:0}.reply-hint{margin-bottom:23px}
.message-field{margin-bottom:16px}.message-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:24px;padding-top:7px;font-size:11px;color:#afa3bb}#message-count{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.field-error{font-size:12px;color:#ffb1bc;line-height:1.5;margin:6px 0 0}.message-meta .field-error{margin:0}
.verification{min-height:68px;margin-bottom:15px}.verification .field-hint{margin-top:6px}
.text-button{padding:5px 0;background:none;border:0;text-decoration:underline;text-underline-offset:3px;color:#ff91bb;font-size:12px}
.form-status a{color:#f6a5cb;text-decoration:underline;text-underline-offset:3px}
.send-button{min-height:48px;border:1px solid #459fff;background:#007bff;border-radius:7px;padding:12px 19px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:14px;font-weight:700;color:white;transition:background .15s,box-shadow .15s}
.send-button:hover:enabled{background:#1687ff;box-shadow:0 0 16px #1687ff40}.send-button:disabled{background:#24354e;border-color:#41526b;color:#b8c9e0;cursor:not-allowed}
.form-status{font-size:13px;line-height:1.6;margin:0;color:#ffc0cb}.form-status:not(:empty){margin-top:19px;border-left:2px solid #eb7ea4;padding:3px 0 3px 12px}
.success-panel{padding:62px 0;outline:none}.success-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#234039;color:#9ce4c3;font-size:27px;margin-bottom:24px}.success-panel p{font-size:15px;color:#c5bdce;line-height:1.8;margin:16px 0 30px}
.contact-page .contact-footer{padding:23px var(--page-gutter);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#b6a8bf}.contact-footer p{margin:0}.contact-footer nav{display:flex;gap:24px}.contact-footer a:hover{color:#ff91bb}
@media(max-width:900px){.contact-page .contact-main{gap:34px;padding:40px 24px 50px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.form-card{padding:25px}.reply-fields{grid-template-columns:1fr;gap:12px}.intro-copy{font-size:16px}}
@media(max-width:650px){.contact-page .header-inner{flex-wrap:nowrap;justify-content:space-between}.contact-page .site-nav{flex-basis:auto;gap:20px}.contact-page .contact-main{grid-template-columns:1fr;gap:28px;padding:30px 16px 40px}.contact-intro{padding:0}.contact-intro h1{font-size:38px;margin-bottom:16px}.contact-intro h1 br{display:none}.eyebrow{margin-bottom:16px}.intro-copy{margin-bottom:22px;font-size:15px}.intro-copy br{display:none}.contact-note{max-width:none;padding-top:18px}.direct-contact{margin-top:20px}.form-card{padding:24px 20px}.reply-fields{grid-template-columns:1fr}.field input,.field select,.field textarea{font-size:16px}.send-button{width:100%}.contact-page .contact-footer{flex-wrap:wrap;font-size:11px}.success-panel{padding:35px 0}.brand{font-size:19px}}
@media(max-width:380px){.contact-page .header-inner{flex-wrap:wrap}.contact-page .site-nav{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.contact-page *{scroll-behavior:auto!important;transition:none!important}}
