.contacts-page{isolation:isolate;display:flex;flex-direction:column;min-height:100svh;min-height:100dvh}
.contacts-space{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 80% 25%,#21465e 0,#102e47 28%,#071c2e 70%);isolation:isolate}
.contacts-space .atmosphere{opacity:.22}
.contacts-space .stage-veil{background:linear-gradient(110deg,#071c2ebd,transparent 85%)}
.contacts-space .orbital-one{left:46%;top:-18%;width:64vw;height:64vw}
.contacts-space .orbital-two{left:32%;top:-40%;width:88vw;height:88vw}
.contacts-page .header [aria-current=page]{color:var(--gold)}
.contacts-main{width:100%;max-width:1440px;margin:0 auto;padding:143px 7vw 76px;flex:1 0 auto}
.contacts-breadcrumb{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:14px}
.contacts-breadcrumb>span:nth-child(2){color:#617f94}
.contacts-breadcrumb a:hover{color:var(--gold)}
.contacts-intro{padding:38px 0 45px}
.contacts-intro h1{font-size:clamp(48px,5.4vw,78px);margin:14px 0 18px}
.contacts-intro>p:last-child{font-size:16px;line-height:1.75;color:#b8ccd9}
.contacts-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7%;align-items:start}
.contacts-information{min-width:0;padding-top:7px}
.contact-demo-note{max-width:350px;margin:18px 0 22px;font-size:13px;line-height:1.6;color:#93acbd}
.contact-method{display:flex;flex-direction:column;gap:8px;margin-top:22px}
.contact-method>span:first-child{font-size:14px;color:var(--muted)}
.contact-method>span:last-child,.contact-method>a{font-size:clamp(19px,1.8vw,26px);line-height:1.5;overflow-wrap:anywhere;color:var(--gold)}
.contact-method>a:hover{text-decoration:underline;text-underline-offset:5px}
.company-details{margin-top:36px;padding-top:30px;border-top:1px solid var(--line)}
.company-details h2{font:clamp(23px,2.25vw,31px)/1.25 var(--serif);margin:20px 0 25px;overflow-wrap:anywhere}
.company-numbers{margin:0}
.company-numbers>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #ffffff16;font-size:15px}
.company-numbers dt{color:var(--muted)}
.company-numbers dd{margin:0;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.company-address-label{font-size:14px;color:var(--muted);margin:26px 0 10px}
.company-details address{font-size:16px;line-height:1.75;font-style:normal;color:#d8e2e9;max-width:420px}
.address-link{color:var(--gold);font-size:14px;margin-top:12px}
.copy-company{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;width:100%;padding:13px 17px;border:1px solid #a8b9c45e;border-radius:3px;margin-top:25px;font-size:14px;background:#ffffff03;text-align:left;transition:background .2s,border-color .2s}
.copy-company:hover{background:#ffffff08;border-color:var(--gold)}
.copy-company svg{color:var(--gold)}
.copy-status{min-height:22px;margin-top:10px;font-size:13px;line-height:1.6;color:#bdd0dd}
.contact-form-panel{padding:32px 34px;border:1px solid #9ab2c038;border-radius:6px;background:linear-gradient(130deg,#18394ecc,#091e31ed);box-shadow:0 20px 60px #00000012;min-width:0}
.contact-form-heading h2{font:clamp(34px,3vw,43px)/1.15 var(--serif);margin:13px 0 12px}
.contact-form-heading>p:last-child{font-size:15px;line-height:1.7;color:#b8ccd9;max-width:380px}
.contact-form{margin-top:8px;scroll-margin-top:115px}
.contact-form label{font-size:14px;margin-top:22px}
.contact-form input,.contact-form select,.contact-form textarea{font-size:16px;min-width:0;min-height:46px}
.contact-form select{-webkit-appearance:none;appearance:none;color-scheme:dark;border-radius:0;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23d5b67d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;background-size:16px 16px;padding-right:28px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;font-family:Arial,Helvetica,'Apple Color Emoji','Segoe UI Emoji',sans-serif}
.contact-form select::-ms-expand{display:none}
.contact-form select option{background:#071c2e;color:#f4f3ed}
.contact-form textarea{min-height:100px;max-height:420px}
.inquiry-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.contact-form .phone-input-group{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}
.contact-form .field-hint{font-size:13px;line-height:1.6}
.contact-form .field-error{font-size:13px;color:#ffc3b8;line-height:1.5;margin-top:7px}
.contact-form .field-error:empty{display:none}
.contact-form .form-status{font-size:13px;line-height:1.65;margin:15px 0 0}
.contact-form input:focus,.contact-form input:focus-visible,.contact-form select:focus,.contact-form textarea:focus{outline:none;box-shadow:none}
.contact-form input:not([type=checkbox]):focus,.contact-form select:focus,.contact-form textarea:focus{border-bottom-color:#c5dceb;box-shadow:0 1px 0 #c5dceb}
.contact-form [aria-invalid=true]{border-bottom-color:#f3b5a9}
.contact-form [aria-invalid=true]:focus{border-bottom-color:#f3b5a9;box-shadow:0 1px 0 #f3b5a9}
.contact-form .consent-label{align-items:center;gap:12px;font-size:13px;margin:22px 0}
.contact-form .consent-label input{flex:0 0 19px;width:19px;height:19px;min-height:19px;margin:0;padding:0;align-self:center}
.contact-form .consent-label:has(input:focus-visible)>span{text-decoration:underline;text-decoration-color:#c5dceb;text-underline-offset:5px}
.contact-form .photo-field input[type=file]{font-size:13px;max-width:100%}
.photo-previews{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.photo-previews:empty{display:none}
.photo-previews li{position:relative;min-width:0}
.photo-previews img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;background:#071c2e}
.photo-previews button{position:absolute;right:4px;top:4px;width:28px;height:28px;border-radius:50%;background:#071c2ee8;color:#f4f3ed;font-size:21px}
.photo-previews span{display:block;font-size:11px;line-height:1.5;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}
.contact-routes{margin-top:60px;padding-top:32px;border-top:1px solid var(--line)}
.contact-routes-heading h2{font:clamp(32px,3vw,43px)/1.2 var(--serif);margin:13px 0 25px}
.contact-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.contact-route-grid>a{position:relative;padding:22px 24px 26px;border:1px solid #9ab2c038;border-radius:6px;background:linear-gradient(125deg,#23425a65,#091e31bf);transition:background .25s,border-color .25s;min-width:0}
.contact-route-grid>a:hover{border-color:#d5b67d9c;background:#18394e}
.route-number{font-size:12px;color:var(--gold)}
.contact-route-grid h3{font:30px/1.2 var(--serif);margin:20px 0 10px}
.contact-route-grid p{font-size:14px;line-height:1.65;color:#b7cad8;padding-right:20px}
.contact-route-grid .arrow-icon{position:absolute;right:23px;top:23px;color:var(--gold)}
.contacts-noscript{padding:25px 7vw;line-height:1.7}
.contacts-heading-kicker{margin:38px 0 14px}
@media(min-width:701px){
 .contacts-layout{align-items:stretch}
 .contacts-information{display:flex;flex-direction:column;padding-top:0}
 .contacts-intro{padding:0 0 45px}
 .contacts-intro h1{margin-top:0}
 .company-details{position:relative;display:flex;flex-direction:column;flex:1}
 .company-details .address-link{align-self:flex-start;margin-bottom:25px}
 .company-details .copy-company{margin-top:auto}
 .copy-status{position:absolute;top:100%;left:0;right:0}
}
@media(min-width:1600px){.contacts-main{padding-left:90px;padding-right:90px}}
@media(max-width:1000px){.contacts-main{padding-left:5vw;padding-right:5vw}.contacts-layout{gap:5%}.contact-form-panel{padding:28px 24px}.inquiry-row{grid-template-columns:1fr;gap:0}.contact-form .phone-input-group{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:10px}.contact-route-grid>a{padding:20px}.contact-route-grid h3{font-size:27px}}
@media(max-width:700px){.contacts-main{padding:110px 6vw 40px}.contacts-breadcrumb{font-size:12px;gap:10px}.contacts-intro{padding:28px 0 30px}.contacts-intro h1{font-size:clamp(43px,10.5vw,62px);margin:12px 0 16px}.contacts-intro>p:last-child{font-size:15px}.contacts-layout{grid-template-columns:1fr;gap:30px}.contacts-information{display:contents}.contact-direct{order:0}.contact-form-panel{order:1;padding:26px 21px}.company-details{order:2;margin-top:0;padding-top:30px}.contact-demo-note{max-width:none;margin:14px 0 18px}.contact-method{margin-top:18px}.contact-method>span:last-child,.contact-method>a{font-size:22px}.contact-form-heading h2{font-size:36px}.contact-form-heading>p:last-child{font-size:14px}.contact-form .phone-input-group{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.contact-form .phone-input-group select{font-size:14px}.contact-form .consent-label{font-size:13px}.company-details h2{font-size:29px}.contact-routes{margin-top:34px;padding-top:28px}.contact-route-grid{grid-template-columns:1fr;gap:10px}.contact-route-grid>a{padding:20px 22px}.contact-route-grid h3{font-size:29px;margin:12px 0 8px}.contact-route-grid p{font-size:14px}.contacts-space .orbital-one{left:-18%;top:8%;width:125vw;height:125vw}.contacts-space .orbital-two{left:-35%;top:1%;width:165vw;height:165vw}}
@media(max-width:360px){.contact-form-panel{padding:23px 16px}.contact-form .phone-input-group{grid-template-columns:1fr;gap:0}.contact-form-heading h2{font-size:33px}.photo-previews{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-method>span:last-child,.contact-method>a{font-size:20px}}
@media(prefers-reduced-motion:reduce){.contacts-page *,.contacts-page *:before,.contacts-page *:after{animation:none!important;transition:none!important}}
@media(max-width:700px){
 .contacts-heading-kicker{margin:28px 0 12px}
 .contacts-intro{order:-1;padding:0}
 .contacts-intro h1{margin-top:0}
}
