.contact-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.contact-directions{display:inline-flex;align-items:center;gap:34px;padding:14px 0;border-bottom:1px solid #9fb8c4;color:#163344;font-size:12px;font-weight:700}
.contact-directions b{color:#168db9;font-size:16px}

.contact-dialog{width:min(980px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:0;border:1px solid rgba(151,191,207,.38);border-radius:18px;background:#fff;color:#061824;box-shadow:0 45px 130px rgba(0,12,20,.45);overflow:auto}
.contact-dialog[open]{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)}
.contact-dialog::backdrop{background:rgba(1,10,16,.78);backdrop-filter:blur(10px)}
.contact-dialog-close{position:absolute;z-index:4;top:18px;right:18px;width:42px;height:42px;border:1px solid rgba(7,36,50,.16);border-radius:50%;background:#f4f8fa;color:#071b28;font-size:23px;line-height:1;cursor:pointer;transition:transform .2s,background .2s}
.contact-dialog-close:hover{transform:rotate(6deg);background:#e5f2f7}
.contact-dialog-intro{position:relative;display:flex;min-height:650px;flex-direction:column;padding:58px 42px 42px;background:radial-gradient(circle at 18% 15%,rgba(73,184,226,.22),transparent 31%),linear-gradient(155deg,#061d2b,#03131e);color:#fff;overflow:hidden}
.contact-dialog-intro:after{content:"";position:absolute;right:-125px;bottom:-115px;width:330px;height:330px;border:1px solid rgba(91,200,239,.2);border-radius:50%;box-shadow:0 0 0 58px rgba(91,200,239,.045),0 0 0 116px rgba(91,200,239,.025)}
.contact-dialog-intro .micro-label{position:relative;z-index:1;color:#74d0f2}
.contact-dialog-intro h2{position:relative;z-index:1;margin:52px 0 24px;font-size:clamp(46px,5vw,68px);font-weight:500;line-height:.98;letter-spacing:-.06em}
.contact-dialog-intro>p:last-of-type{position:relative;z-index:1;margin:0;color:#a9c0cb;font-size:13px;line-height:1.75}
.contact-dialog-destination{position:relative;z-index:1;margin-top:auto;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.contact-dialog-destination small{display:block;margin-bottom:7px;color:#668695;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.contact-dialog-destination strong{color:#dff7ff;font-size:14px;font-weight:500}

.contact-form{padding:58px 52px 44px;background:#fff}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:29px 24px}
.contact-form label{display:block;min-width:0}
.contact-form label>span{display:block;margin-bottom:10px;color:#3e5967;font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.contact-form label>span em{color:#8ba0aa;font-style:normal;font-weight:500}
.contact-form input:not([type="checkbox"]),.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #b7cbd4;border-radius:0;outline:0;background:transparent;color:#061824;font:inherit;font-size:15px;line-height:1.5;transition:border-color .2s,box-shadow .2s}
.contact-form input:not([type="checkbox"]){height:48px}
.contact-form textarea{min-height:128px;padding:12px 0;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{border-color:#2fa7d4;box-shadow:0 2px 0 #2fa7d4}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#94a7af}
.contact-message-field{grid-column:1/-1}
.contact-submit-frame{position:absolute;width:1px;height:1px;border:0;opacity:0;pointer-events:none}
.contact-consent{display:grid!important;grid-template-columns:18px 1fr;gap:10px;align-items:start;margin-top:25px;color:#66808c;font-size:10px;line-height:1.6}
.contact-consent input{width:16px;height:16px;margin:1px 0 0;accent-color:#168db9}
.contact-consent span{margin:0!important;color:inherit!important;font-size:inherit!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.contact-form-footer{display:flex;align-items:center;gap:22px;margin-top:26px}
.contact-submit{display:flex;min-width:190px;align-items:center;justify-content:space-between;gap:24px;padding:17px 20px;border:0;border-radius:7px;background:#55b8df;color:#041622;font-size:12px;font-weight:800;cursor:pointer;transition:transform .2s,background .2s,opacity .2s}
.contact-submit:hover{transform:translateY(-2px);background:#76cbed}
.contact-submit:disabled{opacity:.58;cursor:wait;transform:none}
.contact-submit b{font-size:16px}
.contact-form-alt{margin:0;color:#6f8791;font-size:9px;line-height:1.6}
.contact-form-alt a{color:#157fa7;font-weight:700;overflow-wrap:anywhere}
.contact-form-status{min-height:21px;margin:17px 0 0;font-size:11px;line-height:1.6}
.contact-form-status.success{color:#17845f}.contact-form-status.error{color:#b92938}

html[dir="rtl"] .contact-dialog-close{right:auto;left:18px}
html[dir="rtl"] .contact-dialog-intro h2{line-height:1.55;letter-spacing:0}
html[dir="rtl"] .contact-dialog-intro:after{right:auto;left:-125px}
html[dir="rtl"] .contact-form input,html[dir="rtl"] .contact-form textarea{text-align:right}

@media(max-width:760px){
  .contact-dialog{width:calc(100vw - 16px);max-height:calc(100svh - 16px);border-radius:14px}
  .contact-dialog[open]{display:block}
  .contact-dialog-intro{min-height:330px;padding:48px 24px 30px}
  .contact-dialog-intro h2{max-width:300px;margin:36px 0 18px;font-size:48px}
  .contact-dialog-destination{margin-top:52px}
  .contact-form{padding:35px 24px 30px}
  .contact-form-grid{grid-template-columns:1fr;gap:24px}
  .contact-message-field{grid-column:auto}
  .contact-form-footer{align-items:stretch;flex-direction:column}
  .contact-submit{width:100%}
  .contact-form-alt{text-align:center}
  .contact-actions{align-items:stretch;flex-direction:column;gap:10px}
  .contact-actions .particle-button{width:100%}
  .contact-directions{justify-content:space-between;padding-inline:4px}
}

@media(prefers-reduced-motion:reduce){.contact-dialog-close,.contact-submit{transition:none}}
