/* v34 - shared contact design: same layout and form controls in both packages */
.page-contact main{background:#f5f9fd}
.page-contact .ent-pagehero--contact{padding:72px 0 54px;background:linear-gradient(115deg,#fff 0%,#f5faff 76%,#eef6fc 100%);border-bottom:0}
.page-contact .ent-pagehero--contact .ent-shell{max-width:1320px}
.page-contact .ent-pagehero--contact h1{max-width:900px;font-size:clamp(34px,3.7vw,57px);line-height:1.12;letter-spacing:-.04em;color:#102e55;margin:0}
.page-contact .ent-pagehero--contact p{font-size:clamp(16px,1.4vw,19px);line-height:1.65;max-width:810px;margin:18px 0 0;color:#51667c}
.page-contact .ent-section--soft{padding:30px 0 105px;background:#f5f9fd}
.page-contact .ent-contact-grid{display:grid;grid-template-columns:minmax(265px,.73fr) minmax(0,1.27fr);align-items:start;gap:28px;max-width:1320px}
.page-contact .ent-contact-grid>*{min-width:0}
.page-contact .ent-contact-aside{display:flex;flex-direction:column;gap:18px}
.page-contact .ent-contact-card{padding:27px;border:1px solid #dbe6f1;background:#fff;border-radius:22px;box-shadow:0 14px 42px rgba(12,45,82,.035)}
.page-contact .ent-contact-card h2,.page-contact .ent-contact-card h3{margin:0 0 16px;color:#12345b;line-height:1.25;font-size:21px;letter-spacing:-.02em}
.page-contact .ent-contact-card p{margin:12px 0 0;color:#5a6d82;line-height:1.6;font-size:15px}
.page-contact .ent-contact-card a{display:block;margin:14px 0 0;color:#075fae;font-weight:750;overflow-wrap:anywhere;text-decoration:none}
.page-contact .ent-contact-card a:hover{text-decoration:underline}
.page-contact .ent-contact-card--dark{background:#103259;color:#fff;border-color:#103259;box-shadow:0 22px 50px rgba(15,47,89,.14)}
.page-contact .ent-contact-card--dark>span{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:850;color:#91dcf6;margin:0 0 18px}
.page-contact .ent-contact-card--dark h2{color:#fff;margin-bottom:16px;font-size:clamp(18px,1.6vw,23px);overflow-wrap:anywhere}
.page-contact .ent-contact-card--dark a{color:#fff}
.page-contact .ent-contact-card--dark p{color:#c7d9ea}
.page-contact .ent-contact-card--notice{border-color:#cde2ee;background:#f0f8fd}
.page-contact .ent-contact-card--notice h3{font-size:17px;margin-bottom:7px}
.page-contact .ent-checklist{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.page-contact .ent-checklist li{position:relative;padding:0 0 0 27px;font-size:14px;line-height:1.55;color:#50667e}
.page-contact .ent-checklist li:before{content:'✓';position:absolute;top:0;left:0;color:#087bb6;font-weight:900}
.page-contact .ent-form-card{padding:clamp(28px,3.3vw,52px);background:#fff;border:1px solid #dbe6f1;border-radius:27px;box-shadow:0 24px 64px rgba(12,45,82,.075);min-width:0}
.page-contact .ent-form-card .ent-eyebrow{margin-bottom:13px}
.page-contact .ent-form-card>h2{color:#112f54;font-size:clamp(29px,2.4vw,36px);letter-spacing:-.025em;line-height:1.18;margin:0 0 10px;font-weight:780}
.page-contact .ent-form-card>p{color:#62768a;line-height:1.55;font-size:15px;margin:0 0 34px}
.page-contact .ent-form{display:grid;gap:23px;min-width:0}
.page-contact .ent-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;min-width:0}
.page-contact .ent-form label:not(.ent-consent){display:flex;flex-direction:column;gap:9px;min-width:0;color:#19385d;font-size:14px;font-weight:760;line-height:1.4}
.page-contact .ent-form label>span{display:block}
.page-contact .ent-form label .required-star{display:inline;color:#c33445;margin-left:2px}
.page-contact .ent-form :is(input:not([type=hidden]):not([type=checkbox]),select,textarea){appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:0;margin:0;padding:14px 17px;border:1.5px solid #ccdae8;border-radius:13px;background:#fff;color:#172c47;font:500 16px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.page-contact .ent-form input:not([type=checkbox]):not([type=hidden]),.page-contact .ent-form select{min-height:53px}
.page-contact .ent-form textarea{min-height:164px;resize:vertical}
.page-contact .ent-form :is(input,select,textarea)::placeholder{color:#8292a4;opacity:1;font-weight:400}
.page-contact .ent-form :is(input:not([type=checkbox]),select,textarea):hover{border-color:#9eb8d1}
.page-contact .ent-form :is(input:not([type=checkbox]),select,textarea):focus-visible{outline:3px solid #7ec8fa;outline-offset:2px;border-color:#126bb7;box-shadow:0 0 0 5px rgba(20,109,204,.11)}
.page-contact .ent-form select{padding-right:45px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234d6781' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.page-contact .ent-consent{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:13px!important;padding:18px;border-radius:14px;background:#f4f8fc;border:1px solid #dce7f1;color:#445c74;font-size:14px;font-weight:450;line-height:1.65}
.page-contact .ent-consent input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;display:block;width:19px;height:19px;min-width:19px;margin:3px 0 0;accent-color:#146dcc;cursor:pointer;box-shadow:none!important}
.page-contact .ent-consent span{display:block}
.page-contact .ent-consent a{color:#075ba6;text-decoration:underline;text-underline-offset:3px;font-weight:750}
.page-contact .ent-form-submit{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding-top:2px}
.page-contact .ent-form-submit .ent-btn{display:inline-flex;min-height:54px;padding:0 29px;border:0;border-radius:13px;background:#115aaf;color:#fff;box-shadow:0 10px 25px rgba(17,90,175,.17);font-size:15px;font-weight:800;cursor:pointer;transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease}
.page-contact .ent-form-submit .ent-btn:hover{background:#0b4e98;transform:translateY(-2px);box-shadow:0 14px 26px rgba(17,90,175,.23)}
.page-contact .ent-form-submit .ent-btn:focus-visible{outline:3px solid #69b8f0;outline-offset:3px}
.page-contact .ent-form-submit .ent-btn:disabled{opacity:.65;cursor:wait;transform:none}
.page-contact .ent-form-submit>span{flex:1 1 220px;min-width:0;color:#74869a;font-size:12px;line-height:1.55}
.page-contact #formStatus{padding:15px 17px;border-radius:12px;margin:0 0 20px;font-size:14px;line-height:1.5}
.page-contact #formStatus[hidden]{display:none!important}
.page-contact #formStatus.ok{background:#eaf8f0;border:1px solid #b0dfc7;color:#145b3a}
.page-contact #formStatus.err{background:#fff2f2;border:1px solid #efc2c7;color:#8b2431}
.page-contact .hp-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;clip-path:inset(50%)!important}
body.a11y-large-text.page-contact .ent-form label:not(.ent-consent){font-size:17px!important}
body.a11y-large-text.page-contact .ent-form :is(input,select,textarea),body.a11y-large-text.page-contact .ent-consent{font-size:19px!important}
body.a11y-high-contrast.page-contact .ent-form-card{border-color:#274967}
body.a11y-high-contrast.page-contact .ent-form :is(input,select,textarea){border-color:#335875}
@media(max-width:1020px){.page-contact .ent-contact-grid{grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:18px}.page-contact .ent-form-card{padding:30px}.page-contact .ent-contact-card{padding:22px}}
@media(max-width:800px){.page-contact .ent-pagehero--contact{padding:51px 0 35px}.page-contact .ent-contact-grid{grid-template-columns:minmax(0,1fr);gap:21px}.page-contact .ent-contact-aside{order:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.page-contact .ent-contact-card--dark{grid-column:1/-1}.page-contact .ent-form-card{order:1}.page-contact .ent-section--soft{padding:24px 0 74px}}
@media(max-width:550px){.page-contact .ent-contact-aside{display:flex}.page-contact .ent-form-row{grid-template-columns:1fr;gap:22px}.page-contact .ent-form-card{padding:26px 20px;border-radius:21px}.page-contact .ent-form-submit{align-items:stretch;flex-direction:column}.page-contact .ent-form-submit .ent-btn{width:100%}.page-contact .ent-pagehero--contact h1{font-size:clamp(32px,9vw,44px)}}
@media(prefers-reduced-motion:reduce){.page-contact .ent-form :is(input,select,textarea),.page-contact .ent-form-submit .ent-btn{transition:none!important}}
