/* Contact: one globe, one primary action group, one contact directory. */
body.contactPage{--contact-ink:#2F3A4C;--contact-muted:#626C79;--contact-accent:#B4A582;--contact-rule:rgba(47,58,76,.14);background:#fff;color:var(--contact-ink)}
.contactPage #mainContent{background:#fff}
.contactPage .contactOrbitSection{position:relative;isolation:isolate;background:#fff;padding:64px 0 30px}
.contactPage .contactOrbitSection .wrap,.contactPage .contactInfoSection .wrap{width:min(1120px,calc(100% - 64px))}
.contactPage .contactOrbitIntro{text-align:center;position:relative;z-index:1}
.contactPage .contactOrbitEyebrow,.contactPage .contactEyebrow{display:inline-block;color:var(--contact-muted);font-size:.75rem;font-weight:500;line-height:1.8;letter-spacing:.18em}
.contactPage .contactOrbitEyebrow{margin-bottom:20px}
.contactPage .contactOrbitIntro h1{color:var(--contact-ink);font-size:clamp(2.25rem,4.6vw,3.75rem);font-weight:500;letter-spacing:-.045em;line-height:1.25;margin:0;text-wrap:balance}
.contactPage .contactOrbitIntro p{color:var(--contact-muted);font-size:1rem;line-height:1.8;margin:18px auto 0;max-width:36em;text-wrap:pretty}
.contactPage .contactPrimaryActions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin-top:26px}
.contactPage .contactPrimaryActions .btn{min-height:50px;min-width:164px;padding:12px 24px;font-size:1rem;line-height:1.5;font-weight:500;border-radius:999px;box-shadow:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.contactPage .contactPrimaryActions .primary{color:#fff;background:var(--contact-ink);border:1px solid var(--contact-ink)}
.contactPage .contactPrimaryActions .contactLineAction{color:var(--contact-ink);background:#fff;border:1px solid rgba(47,58,76,.25)}
.contactPage .contactPrimaryActions .primary:hover{background:#414F64;border-color:#414F64}
.contactPage .contactPrimaryActions .contactLineAction:hover{background:#F5F6F8;border-color:var(--contact-accent)}
.contactPage .contactPrimaryActions .btn:active{transform:scale(.98)}
.contactPage #mainContent :is(a,button):focus-visible{outline:2px solid var(--contact-ink);outline-offset:5px}
.contactPage .contactOrbitScene{position:relative;width:min(720px,100%);margin:18px auto 0;--rise-height:720px}
.contactPage .contactOrbitVisual{position:relative;width:100%;aspect-ratio:1;overflow:hidden}
.contactPage .contactOrbitRim{position:absolute;left:5.57%;top:5.57%;width:88.86%;aspect-ratio:1;pointer-events:none}
.contactPage .contactOrbitRing{display:block;width:100%;height:100%;color:var(--contact-ink)}
.contactPage .contactOrbitCanvas{position:relative;display:block;width:100%;height:100%}
.contactPage .contactOrbitStars{position:absolute;inset:0;overflow:hidden;pointer-events:none;mask-image:linear-gradient(transparent,#000 22%,#000 76%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 22%,#000 76%,transparent)}
.contactPage .contactOrbitStars i{position:absolute;left:var(--x);top:100%;width:var(--size);height:var(--size);background:var(--contact-ink);border-radius:50%;opacity:0;animation:contactStarRise var(--duration) var(--delay) linear infinite;animation-play-state:paused}
.contactPage .contactOrbitScene.is-visible .contactOrbitStars i{animation-play-state:running}
@keyframes contactStarRise{0%{opacity:0;transform:translateY(0)}12%,78%{opacity:.52}100%{opacity:0;transform:translateY(calc(-1 * var(--rise-height)))}}
.contactPage .contactInfoSection{padding:0 0 88px;background:#fff}
.contactPage .contactInfoGrid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:88px;align-items:start;border-top:1px solid var(--contact-rule);padding-top:48px}
.contactPage .contactInfoCopy{max-width:360px}
.contactPage .contactEyebrow{letter-spacing:.2em}
.contactPage #contactInfoTitle{font-size:clamp(2rem,3vw,2.625rem);line-height:1.3;letter-spacing:-.035em;font-weight:500;margin:12px 0 18px;color:var(--contact-ink)}
.contactPage .contactInfoCopy p{font-size:1rem;line-height:1.9;color:var(--contact-muted);margin:0}
.contactPage .contactInfoList{margin:0}
.contactPage .contactInfoRow{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;align-items:center;padding:21px 0;border-bottom:1px solid var(--contact-rule);min-height:82px}
.contactPage .contactInfoRow:first-child{padding-top:0;min-height:61px}
.contactPage .contactInfoRow dt{font-size:.875rem;font-weight:400;color:var(--contact-muted);line-height:1.7}
.contactPage .contactInfoRow dd{margin:0;font-size:1rem;line-height:1.8;color:var(--contact-ink);min-width:0}
.contactPage .contactInfoRow dd a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;text-decoration:none;border-radius:3px}
.contactPage .contactInfoRow dd a>span:first-child{font-size:1.125rem;font-weight:500}
.contactPage .contactLinkLabel{font-size:.875rem;color:var(--contact-muted);text-decoration:underline;text-decoration-color:var(--contact-accent);text-underline-offset:6px;white-space:nowrap}
.contactPage .contactInfoRow a:hover .contactLinkLabel{color:var(--contact-ink);text-decoration-color:var(--contact-ink)}
.contactPage footer{background:#fff}
@media(max-width:800px){.contactPage .contactInfoGrid{grid-template-columns:1fr;gap:30px;padding-top:36px}.contactPage .contactInfoCopy{max-width:36em}}
@media(max-width:640px){.contactPage .contactOrbitSection{padding:42px 0 24px}.contactPage .contactOrbitSection .wrap,.contactPage .contactInfoSection .wrap{width:calc(100% - 36px)}.contactPage .contactOrbitEyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:16px}.contactPage .contactOrbitIntro h1{font-size:clamp(2rem,8.8vw,2.5rem);letter-spacing:-.045em}.contactPage .contactOrbitIntro p{font-size:1rem;margin-top:16px;max-width:24em}.contactPage .contactPrimaryActions{gap:10px;margin-top:22px}.contactPage .contactPrimaryActions .btn{min-width:0;flex:1;max-width:200px;padding:12px 14px}.contactPage .contactOrbitScene{margin:18px auto 0}.contactPage .contactOrbitStars i:nth-child(n+13){display:none}.contactPage .contactInfoSection{padding-bottom:56px}.contactPage .contactInfoRow{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:17px 0;min-height:76px}.contactPage .contactInfoRow dd a{flex-wrap:wrap;gap:4px 12px}.contactPage .contactInfoRow dd a>span:first-child{font-size:1rem}.contactPage .contactInfoRow dd{font-size:1rem}.contactPage .contactInfoGrid{gap:26px}.contactPage #contactInfoTitle{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.contactPage .contactOrbitStars i{animation:none;opacity:0}.contactPage .contactPrimaryActions .btn{transition:none}.contactPage .contactPrimaryActions .btn:active{transform:none}}
