.contact-page{background:#fff;color:#586174;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:400;font-size:16px;line-height:1.6}.contact-page [hidden]{display:none!important}.contact-wrap{max-width:1152px;margin:auto;padding-inline:24px}.contact-page h1,.contact-page h2{font-family:'proxima-nova','Proxima Nova',Arial,sans-serif;line-height:1.1;letter-spacing:-.035em;color:#1b3a6b}.contact-intro{padding-top:80px;padding-bottom:56px}.contact-page h1{font-size:clamp(38px,4.4vw,62px);font-weight:700;margin:0 0 28px}.contact-page h1 span{color:#4a6fa5;font-weight:400}.contact-intro p{max-width:590px;font-size:17px;margin:0}.contact-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:88px;padding-bottom:80px}.contact-message,.contact-channels{border-top:1px solid #e4e7ec;padding-top:32px;min-width:0}.contact-page h2{font-size:28px;font-weight:600;margin:0 0 16px}.contact-form-intro,.contact-channels>p{margin:0 0 28px;font-size:15px}.contact-page label{display:block;color:#4e586b;font-size:14px}.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.contact-page input,.contact-page select,.contact-page textarea{display:block;width:100%;min-width:0;margin:8px 0 20px;min-height:48px;padding:12px 16px;background:#f7f8fa;border:1px solid #e4e7ec;border-radius:16px;font:inherit;font-size:16px;color:#1d1d1f;line-height:1.5;transition:border-color .16s,background .16s}.contact-page textarea{resize:vertical;min-height:136px}.contact-page input:focus,.contact-page select:focus,.contact-page textarea:focus{outline:2px solid #3d5994;outline-offset:2px;background:#fff}.contact-page textarea::placeholder{color:#707887}.contact-help{font-size:13px;margin:-12px 0 24px;color:#626b7b}.contact-event-details{border-top:1px solid #e4e7ec;border-bottom:1px solid #e4e7ec;margin:4px 0 24px}.contact-event-details summary{cursor:pointer;min-height:56px;padding-block:14px;font-size:15px;color:#1b3a6b}.contact-event-details summary span{font-size:13px;color:#626b7b;margin-left:8px}.contact-event-details[open] summary{margin-bottom:8px}.contact-privacy{font-size:13px;line-height:1.6;margin:0 0 24px;max-width:500px}.contact-privacy a{text-decoration:underline;text-underline-offset:3px;color:#1b3a6b}.contact-primary,.contact-secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 24px;border-radius:24px;border:0;font:inherit;font-size:15px;cursor:pointer;background:#1b3a6b;color:#fff;transition:background .16s}.contact-primary:hover{background:#2b4b81}.contact-primary:disabled{opacity:.6;cursor:wait}.contact-secondary{background:#f0f2f6;color:#1b3a6b}.contact-info{margin:0}.contact-info>div{margin-bottom:24px}.contact-info dt{display:flex;align-items:center;gap:10px;font-size:14px;color:#626b7b}.contact-info dt i{font-size:26px;color:#3d5994}.contact-info dd{margin:4px 0 0 32px;font-size:16px;color:#1b3a6b}.contact-info a{display:inline-flex;align-items:center;gap:8px;min-height:36px;overflow-wrap:anywhere}.contact-info a:hover{text-decoration:underline;text-underline-offset:4px}.contact-address,.contact-booking{border-top:1px solid #e4e7ec;padding-top:24px;margin-top:28px}.contact-page h3{font-size:18px;line-height:1.3;font-weight:600;color:#1b3a6b;margin:0 0 12px}.contact-address address{font-style:normal;font-size:15px}.contact-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#1b3a6b;text-decoration:underline;text-underline-offset:4px;font-size:15px;margin-top:8px}.contact-booking p{font-size:15px;margin:0;max-width:320px}.contact-page :is(a,button,summary):focus-visible{outline:3px solid #3d5994;outline-offset:4px}.contact-error{background:#fff2f1;color:#92332c;padding:14px 16px;border-radius:12px;font-size:14px;margin:0 0 20px}.contact-success>i{display:block;font-size:44px;color:#3d5994;margin-bottom:24px}.contact-success p{max-width:450px;margin:0 0 24px}.contact-success:focus{outline:none}
@media(max-width:900px){.contact-layout{gap:40px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.contact-fields{grid-template-columns:1fr;gap:0}.contact-info dd{margin-left:0}}
@media(max-width:600px){.contact-intro{padding-top:48px;padding-bottom:32px}.contact-intro p{font-size:16px}.contact-layout{grid-template-columns:1fr;gap:48px;padding-bottom:56px}.contact-message,.contact-channels{padding-top:24px}.contact-page h2{font-size:26px}.contact-primary{width:100%}.contact-info dd{margin-left:32px}.contact-info a{min-height:44px}}
@media(prefers-reduced-motion:reduce){.contact-page *{transition:none!important}}
