.contact-page{--contact-ink: #06142c;--contact-navy: #0a254d;--contact-blue: #1677ee;--contact-ice: #f4f8fc;--contact-text: #10243f;background:#edf5fc;color:#f8fbff;overflow:clip}.contact-shell{width:min(calc(100% - 3rem),1220px);margin-inline:auto}.contact-eyebrow{display:inline-flex;align-items:center;gap:.7rem;margin:0 0 1.15rem;color:#8fd2ff;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:clamp(.69rem,.76vw,.78rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase}.contact-eyebrow span{width:1.7rem;height:1px;background:#39a5ff}.contact-hero{position:relative;min-height:clamp(780px,48vw,920px);isolation:isolate;overflow:hidden;background:#030d20}.contact-hero__media,.contact-hero__veil{position:absolute;inset:0;pointer-events:none}.contact-hero__media{z-index:-3;inset:2.6rem 0 -2.6rem}.contact-hero__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:64% center;object-position:64% center;opacity:.96;filter:saturate(.96) brightness(.82);transform:scale(1)}.contact-hero__veil{z-index:-2;background:linear-gradient(90deg,#020a19fa,#030e22e6 31%,#0415316b 53%,#0310260d 78%),linear-gradient(180deg,#02091661,#020b1b0a 48%,#030f24b8)}.contact-hero:after{position:absolute;inset:auto 0 0;z-index:-1;height:12rem;content:"";background:linear-gradient(180deg,#05132b00,#041127d1);pointer-events:none}.contact-hero__stage{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.41fr) minmax(28rem,.59fr);grid-template-rows:auto 1fr;min-height:clamp(780px,48vw,920px);padding-block:clamp(4.75rem,6.2vw,7rem) clamp(3.5rem,5vw,5rem)}.contact-hero__copy{grid-column:1;grid-row:1;width:min(100%,29rem)}.contact-hero h1{margin:0;color:#f8fbff;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:clamp(3.2rem,4.15vw,4.125rem);font-weight:550;line-height:1.1;letter-spacing:0}.contact-hero h1:after{display:block;width:1.8rem;height:2px;margin-top:.8rem;content:"";background:#2a9cff}.contact-hero__lead{width:min(100%,27rem);margin:.9rem 0 0;color:#e0edfbd1;font-size:clamp(.92rem,1.08vw,1rem);line-height:1.75}.contact-direct{grid-column:1;grid-row:2;display:grid;gap:1.1rem;align-content:start;width:min(100%,26rem);margin-top:clamp(2.25rem,3.45vw,3.65rem)}.contact-direct__heading,.contact-form__heading,.contact-phone-list,.contact-address,.contact-field,.contact-form__row,.contact-form__status,.contact-message-form button{position:relative;z-index:1}.contact-direct__heading{display:grid;gap:.45rem}.contact-direct__heading span{color:#75c7ff;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:.68rem;font-weight:600;letter-spacing:.12em}.contact-direct__heading h2{margin:0;color:#f4f9ff;font-size:clamp(1.35rem,1.6vw,1.55rem);font-weight:560;line-height:1.25;letter-spacing:0}.contact-phone-list{display:grid;gap:.85rem}.contact-phone-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:center;min-width:0;padding:0;transition:transform .18s ease}.contact-phone-item:hover{transform:translateY(-1px)}.contact-phone-item__icon{width:2.125rem;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(122,203,255,.24);border-radius:50%;color:#8bd2ff;background:#3097e91a}.contact-phone-item__icon svg{width:1rem;height:1rem}.contact-phone-item h3{margin:0 0 .18rem;color:#cde2f4b8;font-size:.78rem;font-weight:500}.contact-phone-item a{display:inline-block;color:#f7fbff;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:clamp(1.78rem,2.18vw,2.075rem);font-weight:520;line-height:1.1;letter-spacing:0}.contact-address{display:grid;grid-template-columns:4rem minmax(0,1fr);gap:.8rem;align-items:start;margin:0;padding-top:.85rem;border-top:1px solid rgba(168,207,237,.16);color:#cbdeefad;font-style:normal;font-size:.76rem;line-height:1.65}.contact-address span{color:#ecf6ffe0;font-weight:600}.contact-message-form{grid-column:2;grid-row:1 / span 2;justify-self:start;align-self:center;display:grid;width:min(100%,27.5rem);top:1rem;margin-left:1rem;gap:.75rem;align-content:start;padding:1.65rem 1.75rem 1.75rem;border:1px solid rgba(183,210,234,.58);border-radius:.75rem;background:#f9fcfff7;color:var(--contact-text);box-shadow:0 22px 54px #000b1e33}.contact-form__heading{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:.6rem;margin-bottom:.15rem}.contact-form__heading h3{margin:0;color:#10243f;font-size:clamp(1.35rem,1.55vw,1.5rem);font-weight:600;line-height:1.2}.contact-form__heading span{color:#718399;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:.64rem;font-weight:600;letter-spacing:.12em}.contact-form__heading p{grid-column:1 / -1;margin:0;color:#6a7d90;font-size:.75rem;line-height:1.45}.contact-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.contact-field{display:grid;gap:.3rem}.contact-field label{color:#30475f;font-size:.74rem;font-weight:600}.contact-field label span{color:#e14e58}.contact-field input,.contact-field textarea{width:100%;border:1px solid rgba(65,94,123,.12);border-radius:.375rem;background:#fff;color:#10243f;outline:none;padding:.6rem .75rem;font:inherit;font-size:.82rem;line-height:1.45;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.contact-field input{height:2.625rem}.contact-field textarea{height:5.75rem;min-height:5.75rem;resize:vertical}.contact-field input::-moz-placeholder,.contact-field textarea::-moz-placeholder{color:#94a3b4}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#94a3b4}.contact-field input:focus,.contact-field textarea:focus{border-color:#1677ee85;background:#fff;box-shadow:0 0 0 3px #1677ee1a}.contact-message-form button{width:100%;min-height:2.75rem;border:0;border-radius:.375rem;color:#fff;background:#1677ee;padding:.55rem 1rem;font:inherit;font-size:.82rem;font-weight:650;cursor:pointer;box-shadow:0 5px 12px #1677ee21;transition:filter .18s ease,box-shadow .18s ease,transform .18s ease}.contact-message-form button:hover{filter:brightness(1.04);box-shadow:0 9px 20px #1677ee33;transform:translateY(-1px)}.contact-message-form button:disabled{cursor:not-allowed;filter:saturate(.72) brightness(.92);box-shadow:none;transform:none}.contact-form__status{min-height:.85rem;margin:0;color:#64778b;font-size:.72rem;line-height:1.45}.contact-form__status:empty{visibility:hidden}.contact-form__status.is-success{color:#047857}.contact-form__status.is-error{color:#b42318}.contact-form__status.is-loading{color:#155bd8}.contact-exposure-transition{position:relative;z-index:3;height:5.25rem;margin-top:-3.5rem;margin-bottom:-1.75rem;pointer-events:none}.contact-exposure-transition svg{display:block;width:100%;height:100%}.contact-exposure-transition__mist{fill:#a8daf724}.contact-exposure-transition__ice{fill:#eef6fc}.contact-followup{position:relative;margin-top:-1px;background:#eef6fc;color:var(--contact-text)}.contact-location{position:relative;min-height:clamp(22rem,25vw,26rem);background:#eef6fc;isolation:isolate;overflow:hidden}.contact-social{position:relative;min-width:0;min-height:clamp(20rem,22vw,23rem);background:linear-gradient(180deg,#f7fafd,#eef5fa)}.contact-location__visual{position:absolute;inset:0 0 0 22%;z-index:-2;opacity:1;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.32) 18%,#000 42%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.32) 18%,#000 42%,#000 100%)}.contact-location__visual img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center right;object-position:center right;filter:saturate(1.08) contrast(1.09) brightness(.98)}.contact-location:before{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none;background:linear-gradient(90deg,#eef6fc,#eef6fcf0 31%,#eef6fc61 50%,#eef6fc08 72%)}.contact-location__pin{position:absolute;top:52%;left:69%;z-index:1;width:clamp(6.3rem,8.65vw,9rem);height:auto;pointer-events:none;transform:translate(-50%,-50%);transform-origin:50% 58%;filter:drop-shadow(0 12px 20px rgba(25,104,185,.16));animation:contact-pin-breathe 4.8s ease-in-out infinite}.contact-location__inner{position:relative;z-index:2;display:flex;min-height:clamp(22rem,25vw,26rem);align-items:center;padding-block:3.5rem 3.25rem}.contact-location__copy{width:min(40%,27rem)}.contact-section-heading{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:.6rem}.contact-section-heading:after{display:block;width:1.6rem;height:2px;content:"";background:#258df3}.contact-section-heading h2{margin:0;color:#122b46;font-size:clamp(1.45rem,1.75vw,1.7rem);font-weight:600;line-height:1.2}.contact-section-heading span{color:#70849a;font-family:Space Grotesk,Noto Sans SC,system-ui,sans-serif;font-size:.64rem;font-weight:600;letter-spacing:.12em}.contact-location .contact-section-heading{grid-template-columns:1fr;gap:.55rem}.contact-location .contact-section-heading span{grid-row:1;color:#438ecb}.contact-location .contact-section-heading h2{grid-row:2;font-size:clamp(2rem,2.8vw,2.65rem);font-weight:560}.contact-location .contact-section-heading:after{grid-row:3;width:2rem;margin-top:.1rem}.contact-location p,.contact-social__copy p{margin:1rem 0 0;color:#4f667d;font-size:clamp(1.0625rem,1.05vw,1.125rem);line-height:1.8}.contact-location address{margin-top:1.05rem;padding-top:.9rem;border-top:1px solid rgba(51,93,132,.14);color:#203f5d;font-style:normal;font-size:clamp(1.0625rem,1.05vw,1.125rem);font-weight:600;line-height:1.7}@keyframes contact-pin-breathe{0%,to{transform:translate(-50%,-50%) scale(.985);filter:drop-shadow(0 16px 24px rgba(25,104,185,.13))}50%{transform:translate(-50%,-50%) scale(1.015);filter:drop-shadow(0 22px 34px rgba(25,104,185,.2))}}.contact-social__inner{display:grid;grid-template-columns:minmax(16rem,.32fr) minmax(0,.68fr);gap:clamp(2rem,4vw,4rem);min-height:clamp(20rem,22vw,23rem);align-items:center;padding-block:3.25rem}.contact-social .contact-section-heading{grid-template-columns:1fr;gap:.55rem}.contact-social .contact-section-heading span{grid-row:1;color:#438ecb}.contact-social .contact-section-heading h2{grid-row:2;font-size:clamp(2rem,2.8vw,2.65rem);font-weight:560}.contact-social .contact-section-heading:after{grid-row:3;width:2rem;margin-top:.1rem}.contact-social__copy p{width:min(100%,22rem);margin-top:1.15rem}.contact-social__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:90%;gap:clamp(1.5rem,2.6vw,3rem);align-items:start;justify-self:center}.contact-social-card{display:grid;min-width:0;gap:1rem;justify-items:center;align-content:start;margin:0;transition:transform .18s ease}.contact-social-card:hover{transform:translateY(-3px)}.contact-social-card>img,.contact-social-card--reserved>div{width:clamp(7.75rem,9.5vw,9.25rem);aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(35,75,111,.1);border-radius:.5rem;background:#fff;box-shadow:0 10px 24px #27507612}.contact-social-card>img{padding:.5rem;-o-object-fit:contain;object-fit:contain}.contact-social-card--reserved>div{gap:.45rem;color:#72869a;font-size:.7rem;font-weight:600}.contact-social-card--reserved svg{width:2.5rem;height:2.5rem}.contact-social-card figcaption{display:grid;gap:.18rem;min-width:0;text-align:center}.contact-social-card strong{color:#18324d;font-size:.9375rem;font-weight:600}.contact-social-card figcaption span{color:#62758a;font-size:clamp(.9375rem,.84vw,1rem);line-height:1.45}@media (max-width: 1100px){.contact-shell{width:min(calc(100% - 2.5rem),1220px)}.contact-hero__stage{grid-template-columns:minmax(0,.4fr) minmax(27rem,.6fr)}.contact-phone-item a{font-size:clamp(1.55rem,2.35vw,1.75rem)}.contact-social__inner{grid-template-columns:minmax(14rem,.3fr) minmax(0,.7fr);gap:2.5rem}}@media (max-width: 900px){.contact-shell{width:min(calc(100% - 2rem),1220px)}.contact-hero{min-height:auto}.contact-hero__media img{-o-object-position:66% top;object-position:66% top;opacity:.8}.contact-hero__veil{background:linear-gradient(90deg,#020a19fa,#030e22e6 48%,#04153166),linear-gradient(180deg,#0209166b,#04112799)}.contact-hero__stage{grid-template-columns:1fr;grid-template-rows:auto;min-height:auto;padding-block:5rem}.contact-hero__copy{grid-column:1;grid-row:1;width:min(100%,29rem)}.contact-hero h1{font-size:clamp(2.85rem,8.5vw,3.75rem)}.contact-direct{grid-column:1;grid-row:2;margin-top:3rem}.contact-message-form{grid-column:1;grid-row:3;justify-self:start;width:min(100%,32rem);top:0;margin:3rem 0 0}.contact-location__copy{width:min(48%,24rem)}.contact-social__inner{grid-template-columns:1fr;gap:3rem;padding-block:4.5rem}.contact-social__copy p{width:min(100%,30rem)}.contact-social__grid{width:min(100%,44rem)}}@media (max-width: 640px){.contact-shell{width:min(calc(100% - 1.25rem),1220px)}.contact-hero{min-height:auto}.contact-hero__stage{padding-block:4.5rem 4rem}.contact-hero h1{font-size:clamp(2.7rem,13vw,3.25rem)}.contact-hero__lead{font-size:.9rem;line-height:1.75}.contact-direct{gap:1.1rem;margin-top:2.5rem}.contact-phone-item{gap:.8rem}.contact-phone-item__icon{width:2.2rem}.contact-phone-item a{font-size:clamp(1.45rem,6vw,1.7rem)}.contact-address{grid-template-columns:1fr;gap:.4rem}.contact-message-form{margin-top:2.5rem;padding:1.35rem 1.25rem 1.4rem}.contact-form__row{grid-template-columns:1fr;gap:.45rem}.contact-exposure-transition{height:4.75rem;margin-top:-3.25rem;margin-bottom:-1.5rem}.contact-location,.contact-location__inner{min-height:30rem}.contact-location__inner{align-items:flex-start;padding-block:3.5rem 3rem}.contact-location__visual{inset:11.5rem -18% 0 -14%;opacity:.78}.contact-location:before{background:linear-gradient(180deg,#eef6fc,#eef6fcf5 40%,#eef6fc3d 73%,#eef6fc0f)}.contact-location__pin{top:74%;left:64%;width:6.3rem}.contact-location__copy{width:min(100%,30rem)}.contact-location .contact-section-heading h2,.contact-social .contact-section-heading h2{font-size:clamp(1.9rem,8vw,2.35rem)}.contact-social,.contact-social__inner{min-height:auto}.contact-social__inner{gap:2rem;padding-block:3rem}.contact-social__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.contact-social-card{gap:.75rem}.contact-social-card>img,.contact-social-card--reserved>div{width:min(24vw,5.75rem)}.contact-social-card figcaption span{display:none}.contact-social-card strong{font-size:.8rem}}@media (max-width: 520px){.contact-form__row{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.contact-location__pin{animation:none}.contact-phone-item,.contact-social-card,.contact-message-form button{transition:none}}
