.contact-page { min-height: 100dvh; background: var(--ew-void); }
.contact-header { background: color-mix(in srgb, var(--ew-void) 96%, transparent); border-bottom-color: var(--ew-line); color: var(--ew-text); }
.contact-header .header-inner { justify-content: flex-end; }
.back-link, .contact-return { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; color: var(--ew-gold-bright); font-size: .95rem; font-weight: 500; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.back-link:hover, .contact-return:hover { color: var(--ew-gold); text-decoration-thickness: 2px; }
.contact-card { min-height: calc(100dvh - var(--header-height)); display: grid; align-items: center; padding-block: clamp(48px, 8vw, 104px); color: var(--ew-text); background: var(--ew-void); }
.contact-card__inner { display: grid; grid-template-columns: minmax(260px, .88fr) minmax(0, 1.12fr); gap: clamp(42px, 9vw, 140px); align-items: center; }
.contact-card__mark { position: relative; min-height: min(37vw, 440px); display: grid; place-items: center; border: 1px solid var(--ew-line); overflow: hidden; }
.contact-card__mark::before, .contact-card__mark::after { position: absolute; content: ""; background: var(--ew-line); }
.contact-card__mark::before { top: 0; bottom: 0; left: 50%; width: 1px; }
.contact-card__mark::after { right: 0; left: 0; top: 50%; height: 1px; }
.contact-mark { position: relative; z-index: 1; width: min(58%, 250px); height: auto; }
.contact-card__content { max-width: 590px; }
.contact-card h1 { max-width: none; font-size: clamp(3rem, 6vw, 5.6rem); }
.contact-card__intro { max-width: 34ch; margin: 26px 0 0; color: var(--ew-muted); font-size: clamp(1.125rem, 1.5vw, 1.35rem); line-height: 1.55; }
.contact-actions { display: grid; gap: 12px; margin-top: clamp(32px, 5vw, 48px); }
.contact-actions .button { width: fit-content; min-width: min(100%, 220px); }
.contact-action { position: relative; min-height: 78px; display: grid; grid-template-columns: minmax(84px, .42fr) minmax(0, 1.58fr) 24px; align-items: center; gap: 12px; padding: 16px 0; border-top: 1px solid var(--ew-line); color: var(--ew-text); text-decoration: none; }
.contact-action__label { color: var(--ew-gold); font-size: .75rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.contact-action__value { overflow-wrap: anywhere; font-size: clamp(1.05rem, 2vw, 1.25rem); font-weight: 500; letter-spacing: -.02em; }
.contact-action__arrow { color: var(--ew-gold-bright); font-size: 1.25rem; text-align: right; }
.contact-action:hover .contact-action__value { color: var(--ew-gold-bright); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
.contact-return { margin-top: 30px; }
@media (max-width: 767px) {
  .contact-card { align-items: start; padding-block: 0 60px; }
  .contact-card__inner { grid-template-columns: 1fr; gap: 44px; }
  .contact-card__mark { min-height: 190px; margin-inline: calc(-1 * clamp(20px, 4vw, 64px)); border-inline: 0; }
  .contact-mark { width: 130px; }
  .contact-card__content { max-width: none; }
  .contact-actions .button { width: 100%; }
}
@media (max-width: 479px) {
  .back-link { font-size: .84rem; }
  .contact-action { grid-template-columns: 1fr 24px; gap: 3px 12px; min-height: 86px; }
  .contact-action__label { grid-column: 1 / -1; }
  .contact-action__value { grid-column: 1; }
  .contact-action__arrow { grid-column: 2; grid-row: 2; }
}
@media (prefers-reduced-motion: reduce) {
  .back-link, .contact-return, .contact-action { scroll-behavior: auto; }
}
