.contact-page{position:relative}.contact-hero{position:relative;padding:calc(var(--header-h) + 28px) var(--gutter) 28px;overflow:hidden}.contact-hero__mark{position:absolute;right:max(-1vw,-12px);top:calc(var(--header-h) - 8px);z-index:0;margin:0;font-family:var(--font-display);font-size:clamp(6.5rem,16vw,13rem);font-weight:600;letter-spacing:.04em;line-height:1;white-space:nowrap;color:#000;filter:url(#contact-hello-outline);pointer-events:none;-webkit-user-select:none;user-select:none}.contact-hero__filter{position:absolute;width:0;height:0}.contact-hero .crumbs,.contact-hero__title,.contact-hero__sub,.contact-hero__answer{position:relative;z-index:1}.contact-hero__title{max-width:12ch;margin:0 0 18px;font-family:var(--font-display);font-size:clamp(3rem,7vw,6.4rem);font-weight:700;letter-spacing:-.05em;line-height:.92}.contact-hero__sub{max-width:46rem;color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.6}.contact-hero__answer{max-width:48rem;margin-top:28px;padding:18px 0 18px 18px;border-left:2px solid var(--mint);color:#ffffffd1;font-size:1.02rem;line-height:1.7}.contact-hero__answer a{color:var(--mint-bright);border-bottom:1px solid rgba(142,228,184,.45)}.contact-desk{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(22px,3vw,40px);align-items:start;padding:28px var(--gutter) 20px}.contact-panel,.contact-card{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:24px;background:radial-gradient(420px circle at var(--gx, 20%) var(--gy, 0%),rgba(120,200,163,.14),transparent 42%),#ffffff06;transition:transform .45s var(--ease-out-expo),border-color .3s,box-shadow .45s}.contact-panel{padding:clamp(22px,3vw,36px)}.contact-panel h2,.contact-direct>h2,.contact-next h2,.contact-company h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.04em;line-height:1.05}.contact-panel h2{margin-bottom:22px;font-size:clamp(1.8rem,3vw,2.6rem)}.contact-direct>h2{margin-bottom:16px;font-size:clamp(1.7rem,3vw,2.4rem)}.contact-direct{display:grid;gap:12px}.contact-card{display:grid;gap:6px;padding:18px 18px 16px}.contact-card p{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}.contact-card a,.contact-card strong{font-size:1.05rem;font-weight:600;letter-spacing:-.02em}.contact-card span{color:var(--muted);font-size:.92rem;line-height:1.5}.contact-card__actions{display:flex;flex-wrap:wrap;gap:8px 14px}@media(hover:hover){.contact-panel:hover,.contact-card:hover{transform:translateY(-6px);border-color:#78c8a38c;box-shadow:0 18px 40px #00000047}.contact-card:hover a{color:var(--mint-bright)}}.contact-next{padding:clamp(64px,10vh,110px) var(--gutter) 20px}.contact-next h2{max-width:14ch;margin-bottom:36px;font-size:clamp(2.2rem,5vw,4rem)}.contact-steps{position:relative}.contact-steps__rail{position:absolute;left:27px;top:27px;width:1px;height:0;overflow:hidden;background:#ffffff1f;pointer-events:none}.contact-steps__rail span{display:block;width:1px;height:100%;background:linear-gradient(180deg,var(--mint-bright),var(--mint));transform:scaleY(0);transform-origin:top center;box-shadow:0 0 12px #78c8a3a6}.contact-steps ol{list-style:none;display:grid;gap:18px}.contact-steps li{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;align-items:start}.contact-steps li>span{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:#050605;color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.08em;transition:color .35s,border-color .35s,background .35s,transform .45s var(--ease-out-expo)}.contact-steps h3{margin-bottom:6px;font-size:clamp(1.25rem,2vw,1.6rem);letter-spacing:-.03em}.contact-steps p{max-width:46rem;color:var(--muted);line-height:1.65}.contact-steps li.is-on>span,.contact-steps li:hover>span{color:#04110d;border-color:var(--mint);background:var(--mint);transform:scale(1.06)}.contact-page>.faq{padding-bottom:clamp(28px,4vh,44px)}.contact-company{padding:4px var(--gutter) 0}.contact-company h2{margin:0 0 20px;font-size:clamp(1.5rem,3vw,2.2rem)}.contact-page .marquee-section{margin-bottom:clamp(36px,6vh,72px)}.contact-page+footer .marquee--footer{display:none}@media(max-width:900px){.contact-desk{grid-template-columns:1fr;padding-bottom:96px}.contact-hero__mark{opacity:.45}}@media(prefers-reduced-motion:reduce){.contact-panel,.contact-card,.contact-steps li>span{transition:none}.contact-panel:hover,.contact-card:hover,.contact-steps li:hover>span,.contact-steps li.is-on>span{transform:none}}
