.page--contacts main { padding: 16px 0 26px; background:#020710; }
.mock-container { width:min(calc(100% - 80px),1328px); margin-inline:auto; }
.mock-contacts-hero { display:grid; grid-template-columns:minmax(0,47fr) minmax(0,53fr); gap:48px; padding-top:24px; padding-bottom:30px; }
.mock-contacts-hero__copy { padding-top:12px; }
.mock-contacts-hero h1 { margin:0 0 17px; font-size:72px; line-height:1; }
.mock-contacts-statement { max-width:550px; margin:0 0 26px; white-space:pre-line; font-size:31px; font-weight:600; line-height:1.15; }
.mock-contacts-lead { max-width:500px; margin:0 0 45px; color:var(--mock-muted); font-size:16px; line-height:1.6; }
.mock-contact-benefits { display:grid; grid-template-columns:repeat(3,1fr); }
.mock-contact-benefits>div { display:grid; grid-template-columns:38px 1fr; padding:0 20px; border-left:1px solid var(--mock-line); }
.mock-contact-benefits>div:first-child { padding-left:0; border-left:0; }
.mock-contact-benefits svg { grid-row:1/3; width:30px; height:30px; fill:none; stroke:#ef4b86; stroke-width:1.5; }
.mock-contact-benefits strong { font-size:12px; }
.mock-contact-benefits span { color:var(--mock-muted); font-size:11px; }
.mock-contact-form { width:100%; min-width:0; padding:34px; border:1px solid var(--mock-line); border-radius:15px; background:linear-gradient(145deg,#0b111b,#070b13); }
.mock-contact-form h2 { margin:0 0 22px; font-size:22px; text-transform:uppercase; }
.mock-contact-form h2::first-letter { color:#ef4b86; }
.mock-form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.mock-contact-form .field label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.mock-contact-form input,.mock-contact-form textarea { width:100%; border:1px solid rgba(255,255,255,.08); border-radius:7px; background:#10151f; font-size:13px; }
.mock-contact-form input { height:49px; padding:0 15px; }
.mock-contact-form textarea { min-height:97px; padding:14px; resize:vertical; }
.mock-contact-form .field--wide { grid-column:1/-1; }
.mock-upload label { position:static!important; display:flex; width:auto!important; height:52px!important; padding:9px 14px; overflow:visible!important; clip:auto!important; align-items:center; gap:12px; border:1px dashed rgba(255,255,255,.25); border-radius:7px; }
.mock-upload label svg { width:24px; height:24px; fill:none; stroke:#d6d8dd; }
.mock-upload label span { font-size:12px; }
.mock-upload label small { display:block; color:var(--mock-muted); font-size:10px; }
.mock-upload input { position:absolute; width:1px; height:1px; opacity:0; }
.mock-contact-form .consent-field { display:grid; grid-template-columns:20px minmax(0,1fr); align-items:start; gap:11px; margin:15px 0 26px; color:#aeb3bd; font-size:11px; line-height:1.5; cursor:pointer; }
.mock-contact-form .consent-field input[type="checkbox"] { width:20px; min-width:20px; height:20px; min-height:20px; padding:0; margin:1px 0 0; border:1px solid rgba(255,255,255,.3); border-radius:3px; accent-color:#d332a7; cursor:pointer; }
.mock-contact-form .consent-field span { min-width:0; }
.mock-contact-form .consent-field a { color:#d9dce4; text-underline-offset:3px; transition:color .18s ease; }
.mock-contact-form .consent-field a:hover { color:#f05a7d; }
.mock-contact-form>.field__error[data-error-for="consent"] { margin:-11px 0 15px 31px; }
.mock-contact-form>.field__error[data-error-for="consent"]:empty { display:none; }
.mock-contact-form>.button { width:230px; }
.mock-contact-channels { display:grid; grid-template-columns:250px 1fr; gap:28px; padding:28px 0 36px; border-top:1px solid var(--mock-line); }
.mock-contact-channels>h2 { margin:4px 0 0; font-size:30px; }
.mock-contact-card-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.mock-contact-card { position:relative; min-height:180px; padding:22px 16px 14px; border:1px solid var(--mock-line); border-radius:12px; background:linear-gradient(145deg,#0b111b,#070b13); text-decoration:none; }
.mock-contact-card__icon { width:34px; height:34px; margin-bottom:16px; fill:none; stroke:#ef4b86; stroke-width:1.4; }
.mock-contact-card>span { display:block; color:var(--mock-muted); font-size:13px; }
.mock-contact-card>strong { display:block; margin:7px 0 14px; color:#f05a7d; font-size:18px; }
.mock-contact-card>small { color:var(--mock-muted); font-size:10px; line-height:1.6; }
.mock-contact-card__arrow { position:absolute; top:15px; right:15px; width:25px; height:25px; padding:5px; fill:none; stroke:#fff; border:1px solid var(--mock-line); border-radius:50%; }
.mock-contact-brief { display:grid; grid-template-columns:minmax(0,28fr) minmax(0,72fr); gap:30px; padding:32px 0; border-top:1px solid var(--mock-line); }
.mock-contact-brief__list h2 { margin:0 0 22px; font-size:30px; }
.mock-contact-brief__list ul { display:grid; gap:12px; padding:0; margin:0; list-style:none; color:var(--mock-muted); font-size:12px; }
.mock-contact-brief__list li { display:flex; align-items:center; gap:14px; }
.mock-contact-brief__list svg { width:22px; height:22px; fill:none; stroke:#ef4b86; stroke-width:1.5; }
.mock-office-card { display:grid; grid-template-columns:1.05fr .95fr; overflow:hidden; border:1px solid var(--mock-line); border-radius:13px; background:#090e17; }
.mock-office-card>img { width:100%; height:100%; min-height:305px; object-fit:cover; background:#050a12; }
.mock-office-card>div { padding:28px; }
.mock-office-card h2 { margin:0 0 4px; font-size:27px; }
.mock-office-card__address,.mock-office-card__hours { white-space:pre-line; color:#b0b4bc; font-size:12px; line-height:1.65; }
.mock-office-card .button { width:max-content; min-height:42px; margin-top:10px; }
.mock-contact-final { display:grid; grid-template-columns:43% 57%; min-height:300px; overflow:hidden; border:1px solid var(--mock-line); border-radius:14px; background:linear-gradient(145deg,#0b111b,#070b13); }
.mock-contact-final>img { width:100%; height:100%; object-fit:cover; }
.mock-contact-final__copy { padding:34px; }
.mock-contact-final h2 { margin:0 0 16px; font-size:34px; }
.mock-contact-final__copy>p:not(.mock-kicker) { color:var(--mock-muted); font-size:13px; }
.mock-contact-final__features { display:grid; grid-template-columns:repeat(4,1fr); margin:24px 0; }
.mock-contact-final__features span { padding:0 12px; border-left:1px solid var(--mock-line); color:#c0c3ca; font-size:11px; }
.mock-contact-final__features span:first-child { padding-left:0; border-left:0; }
.page--contacts .site-footer { border-top:1px solid var(--mock-line); }
.page--contacts .site-footer__top { display:flex; padding-block:18px; }
.page--contacts .site-footer__brand { display:flex; align-items:center; gap:18px; }
.page--contacts .site-footer__brand img { width:112px; }
.page--contacts .site-footer__brand p { max-width:210px; margin:0; font-size:9px; text-transform:uppercase; }
.page--contacts .site-footer__nav,.page--contacts .site-footer__contacts { display:none; }
.page--contacts .site-footer__bottom { padding-block:10px; font-size:9px; }
.page--contacts .site-footer__socials { margin-left:auto; }
.page--contacts .site-footer__socials a,.page--contacts .site-footer__socials span { width:27px; height:27px; }
.page--contacts .site-footer__socials svg { width:14px; height:14px; }

.mock-offices { padding: 54px 0 66px; border-top: 1px solid var(--mock-line); }
.mock-offices__heading { margin-bottom: 30px; display: grid; grid-template-columns: minmax(0,1fr) minmax(340px,.62fr); align-items: end; gap: 50px; }
.mock-offices__heading h2 { margin: 0; font-size: clamp(32px,4vw,52px); font-weight: 550; letter-spacing: -.04em; line-height: 1.08; }
.mock-offices__heading>p { margin: 0; color: var(--mock-muted); font-size: 13px; line-height: 1.7; }
.mock-offices__tools { margin-bottom: 18px; display: grid; grid-template-columns: minmax(260px,390px) minmax(0,1fr); align-items: center; gap: 17px; }
.mock-office-search { min-height: 48px; padding: 0 15px; border: 1px solid var(--mock-line); border-radius: 10px; display: flex; align-items: center; gap: 10px; color: #aeb2bc; background: linear-gradient(145deg,#0b111b,#070b13); }
.mock-office-search:focus-within { border-color: rgba(229,75,141,.5); box-shadow: 0 0 0 3px rgba(171,47,201,.12); }
.mock-office-search svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: currentColor; }
.mock-office-search input { width: 100%; min-width: 0; border: 0; outline: 0; color: #fff; background: transparent; font-size: 13px; }
.mock-office-filters { padding-bottom: 3px; display: flex; justify-content: flex-end; gap: 7px; overflow-x: auto; scrollbar-width: thin; }
.mock-office-filters button { min-height: 40px; padding: 9px 13px; border: 1px solid var(--mock-line); border-radius: 999px; flex: 0 0 auto; color: #a6aab4; background: rgba(255,255,255,.02); font-size: 10px; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; }
.mock-office-filters button:hover { border-color: rgba(236,77,137,.4); color: #fff; }
.mock-office-filters button:focus-visible { outline: 3px solid #a9c7ff; outline-offset: 2px; }
.mock-office-filters button.is-active { border-color: transparent; color: #fff; background: linear-gradient(100deg,#ff784a,#e44388 52%,#8d29f0); }
.mock-office-regions { border-top: 1px solid var(--mock-line); }
.mock-office-region { border-bottom: 1px solid var(--mock-line); }
.mock-office-region[hidden] { display: none; }
.mock-office-region>summary { min-height: 68px; padding: 17px 47px 17px 3px; position: relative; display: flex; align-items: center; justify-content: space-between; gap: 20px; list-style: none; cursor: pointer; }
.mock-office-region>summary::-webkit-details-marker { display: none; }
.mock-office-region>summary::after { width: 29px; height: 29px; position: absolute; top: 50%; right: 3px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; content: "+"; display: grid; place-items: center; color: #ef5484; font-size: 17px; transform: translateY(-50%); }
.mock-office-region[open]>summary::after { content: "−"; }
.mock-office-region>summary:focus-visible { border-radius: 6px; outline: 3px solid #a9c7ff; outline-offset: 3px; }
.mock-office-region>summary>span { font-size: 17px; font-weight: 600; }
.mock-office-region>summary small { color: #858a95; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.mock-office-grid { padding: 0 0 20px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.mock-office-region:not([open])>.mock-office-grid { display: none; }
.mock-office-item { min-width: 0; min-height: 155px; padding: 20px 54px 18px 20px; border: 1px solid rgba(255,255,255,.09); border-radius: 11px; position: relative; background: linear-gradient(145deg,rgba(13,19,30,.92),rgba(5,10,18,.97)); }
.mock-office-item[hidden] { display: none; }
.mock-office-item p { margin: 0 0 8px; color: #df4d87; font-size: 9px; font-weight: 700; letter-spacing: .075em; line-height: 1.35; text-transform: uppercase; }
.mock-office-item h3 { margin: 0 0 8px; font-size: 18px; font-weight: 550; line-height: 1.2; }
.mock-office-item address { color: #aaadb6; font-size: 11px; font-style: normal; line-height: 1.55; }
.mock-office-item small { margin-top: 8px; display: block; color: #858a95; font-size: 9px; }
.mock-office-item>a { width: 28px; height: 28px; position: absolute; top: 17px; right: 17px; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; display: grid; place-items: center; color: #fff; text-decoration: none; transition: border-color .18s ease,color .18s ease,transform .18s ease; }
.mock-office-item>a:hover { border-color: #ed5187; color: #ed5187; transform: translateY(-1px); }
.mock-office-item>a:focus-visible { outline: 3px solid #a9c7ff; outline-offset: 2px; }
.mock-offices__status { min-height: 20px; margin: 15px 0 0; color: #8f939d; font-size: 11px; }

@media(max-width:1000px){.mock-contacts-hero{grid-template-columns:1fr}.mock-contact-card-grid{grid-template-columns:repeat(2,1fr)}.mock-contact-channels{grid-template-columns:1fr}.mock-contact-brief{grid-template-columns:1fr}.mock-contact-final{grid-template-columns:1fr}.mock-contact-final>img{max-height:420px}.mock-container{width:calc(100% - 40px)}.mock-offices__heading,.mock-offices__tools{grid-template-columns:1fr}.mock-office-filters{justify-content:flex-start}.mock-office-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.page--contacts main{padding-top:0}.mock-container{width:calc(100% - 32px)}.mock-contacts-hero{padding-top:28px}.mock-contacts-hero h1{font-size:54px}.mock-contacts-statement{font-size:27px}.mock-contact-benefits{grid-template-columns:1fr;gap:18px}.mock-contact-benefits>div{padding:0;border-left:0}.mock-contact-form{padding:22px 18px}.mock-form-grid{grid-template-columns:1fr}.mock-contact-form .consent-field{font-size:11px;gap:10px}.mock-contact-form>.field__error[data-error-for="consent"]{margin-left:30px}.mock-contact-card-grid{grid-template-columns:1fr}.mock-office-card{grid-template-columns:1fr}.mock-office-card>img{min-height:0;aspect-ratio:720/460}.mock-office-grid{grid-template-columns:1fr}.mock-office-region>summary{align-items:flex-start;flex-direction:column;justify-content:center;gap:4px}.mock-contact-final__copy{padding:24px 20px}.mock-contact-final h2{font-size:29px}.mock-contact-final__features{grid-template-columns:repeat(2,1fr);gap:18px 0}.mock-contact-form>.button{width:100%}}
