.page-contacts .main-nav > a[aria-current="page"] { color: var(--color-gold-light); }
.contact-hero { padding: 30px 0 72px; border-bottom: 1px solid rgb(var(--color-accent-rgb) / 24%); background: radial-gradient(ellipse at 100% 20%, #46371c50, transparent 65%), repeating-linear-gradient(135deg, transparent 0 60px, #ffffff03 60px 61px), #141416; }
.contact-breadcrumb { display: flex; gap: 14px; color: var(--color-muted); font-size: 13px; margin-bottom: 48px; }
.contact-breadcrumb a { text-decoration: none; }
.contact-hero h1 { margin: 12px 0 20px; font-size: clamp(38px, 4.7vw, 68px); line-height: 1.15; letter-spacing: -.045em; font-weight: 600; }
.contact-hero h1 span { color: var(--color-gold-light); }
.contact-lead { color: #b8b8bb; font-size: 19px; margin: 0 0 40px; }
.contact-cards { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.contact-card { position: relative; display: flex; flex-direction: column; padding: 26px; background: #ffffff03; border: 1px solid #b5914c45; text-decoration: none; transition: border-color .2s, background .2s; }
.contact-card:hover { border-color: var(--color-gold-light); background: #ffffff07; }
.contact-card__icon { position: absolute; right: 24px; top: 22px; color: var(--color-gold-light); font-size: 25px; }
.contact-card__label { color: #b8b8bb; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 22px; }
.contact-card strong { font-size: clamp(20px, 2vw, 28px); font-weight: 600; letter-spacing: -.035em; }
.contact-card__hint { color: var(--color-muted); font-size: 13px; margin-top: 10px; }
.contact-details { padding-block: 80px; }
.contact-columns { display: grid; grid-template-columns: 1fr 1.15fr; gap: 80px; }
.page-contacts main h2 { font-size: clamp(28px, 3vw, 40px); font-weight: 600; letter-spacing: -.035em; line-height: 1.2; margin: 12px 0 28px; }
.contact-requisites { margin: 0; }
.contact-requisites > div { padding: 17px 0; border-bottom: 1px solid #ffffff14; }
.contact-requisites dt { color: var(--color-muted); font-size: 12px; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 6px; }
.contact-requisites dd { margin: 0; font-size: 15px; overflow-wrap: anywhere; }
.contact-tax { color: var(--color-gold-light); }
.contact-description { color: #aaa; margin-bottom: 30px; }
.contact-form { padding: 32px; border: 1px solid #b5914c45; background: #19191c; }
.contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-form label { display: block; font-size: 13px; color: #d2d2d2; margin-bottom: 20px; }
.contact-form label > span { color: var(--color-gold-light); }
.contact-form input, .contact-form textarea { width: 100%; border: 1px solid #ffffff25; color: #fff; background: #101012; padding: 14px; margin-top: 8px; border-radius: 0; font-size: 15px; }
.contact-form textarea { resize: vertical; min-height: 140px; }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #808086; }
.contact-form__note { color: #aaa; font-size: 13px; margin: 0 0 22px; }
.contact-form button { width: 100%; cursor: pointer; }
.contact-form__status { margin: 14px 0 0; color: var(--color-gold-light); font-size: 13px; }
.contact-form__status:empty { display: none; }
.contact-location { padding-block: 64px 80px; border-top: 1px solid #ffffff12; background: #141416; }
.contact-location__heading { display: flex; justify-content: space-between; gap: 32px; align-items: flex-end; margin-bottom: 32px; }
.contact-location address { font-style: normal; font-size: 20px; }
.contact-location__actions { display: flex; flex-wrap: wrap; gap: 14px; max-width: 560px; }
.contact-location__actions button { cursor: pointer; }
#copy-status { flex-basis: 100%; color: var(--color-gold-light); font-size: 13px; }
#copy-status:empty { display: none; }
.contact-map { display: block; width: 100%; height: 420px; border: 1px solid #b5914c45; background: #242428; color-scheme: light; }
.contact-map-note { font-size: 13px; color: var(--color-muted); }
@media(max-width: 1000px) {
  .contact-columns { gap: 36px; }
  .contact-card { padding: 20px; }
  .contact-form { padding: 24px; }
  .contact-form__row { grid-template-columns: 1fr; gap: 0; }
  .contact-location__heading { align-items: flex-start; flex-direction: column; }
}
@media(max-width: 700px) {
  .contact-hero { padding-bottom: 40px; }
  .contact-breadcrumb { margin-bottom: 32px; }
  .contact-hero h1 { font-size: 38px; }
  .contact-lead { font-size: 16px; margin-bottom: 28px; }
  .contact-cards, .contact-columns { grid-template-columns: 1fr; }
  .contact-cards { gap: 12px; }
  .contact-card strong { font-size: 26px; }
  .contact-card__label { margin-bottom: 10px; }
  .contact-details, .contact-location { padding-block: 44px; }
  .contact-form { padding: 20px; }
  .contact-map { height: 330px; }
  .contact-location__actions { width: 100%; }
  .contact-location__actions .button { width: 100%; }
}
