/* Только страница контактов; шапка и подвал используют стили главной. */
.contact-page{padding:40px 0 64px}
.contact-crumbs{display:flex;flex-wrap:wrap;gap:10px;color:var(--t2);font-size:13px;margin-bottom:22px}
.contact-crumbs a{text-underline-offset:3px}
.contact-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:32px}
.contact-title h1{font-size:clamp(34px,3.6vw,46px)}
.contact-title p{margin:0;color:var(--t2);font-size:16px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px}
.contact-person{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:26px;border:1px solid #dcdcdc;align-items:start}
.contact-portrait{display:block;width:180px;height:216px;object-fit:cover;object-position:center top}
.contact-person h2{font-size:28px;margin:0 0 8px}
.contact-role{font-size:15px;color:var(--t2);margin-bottom:20px}
.contact-note{font-size:14px;color:var(--t2);margin-bottom:10px}
.contact-direct{display:grid;gap:12px}
.contact-direct a{display:flex;align-items:center;gap:10px;text-decoration:none;overflow-wrap:anywhere}
.contact-direct svg,.contact-messengers svg{width:20px;height:20px;color:var(--g);flex:none}
.contact-phone{font:700 22px/1.25 "Roboto Condensed",sans-serif}
.contact-direct a:hover,.contact-vcard:hover{color:var(--g)}
.contact-messengers{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 18px}
.contact-messengers a{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #dcdcdc;text-decoration:none;font-size:14px}
.contact-messengers a:hover{border-color:var(--g);background:var(--gp)}
.contact-vcard{font-size:14px;text-underline-offset:4px}
.contact-office{background:var(--gp);padding:28px 32px;display:grid;gap:28px;align-content:start}
.contact-office h2{font-size:23px;margin-bottom:12px}
.contact-office address{font-style:normal;font-size:18px;line-height:1.6}
.contact-hours{border-top:1px solid #c9ded5;padding-top:22px}
.contact-hours dl{margin:0;display:grid;gap:6px}
.contact-hours dl>div{display:flex;gap:24px}
.contact-hours dt{min-width:65px;font-weight:500}
.contact-hours dd{margin:0;font-variant-numeric:tabular-nums}
.contact-documents{margin-top:38px;padding-top:30px;border-top:1px dashed var(--ln)}
.contact-documents>h2{font-size:26px;margin-bottom:20px}
.contact-documents .doc{padding:20px;align-items:flex-start}
.contact-documents .doc b{line-height:1.25;margin-bottom:6px}
.contact-page a:focus-visible{outline:2px solid var(--g);outline-offset:4px}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr}.contact-office{grid-template-columns:1fr 1fr;gap:32px}.contact-hours{border-top:0;border-left:1px solid #c9ded5;padding:0 0 0 32px}.contact-documents .docs{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-documents .doc{display:block}.contact-documents .doc svg{margin-bottom:10px}}
@media(max-width:760px){.contact-shell{padding:28px}.contact-title{display:block}.contact-title p{margin-top:10px}.contact-documents .docs{grid-template-columns:1fr}.contact-documents .doc{display:flex}.contact-documents .doc svg{margin-bottom:0}}
@media(max-width:560px){.contact-page{padding:24px 0 40px}.contact-shell{padding:24px 18px}.contact-crumbs{margin-bottom:18px}.contact-title{margin-bottom:24px}.contact-person{grid-template-columns:1fr;padding:20px;gap:18px}.contact-portrait{width:120px;height:144px}.contact-person h2{font-size:26px}.contact-office{grid-template-columns:1fr;padding:24px;gap:22px}.contact-office address{font-size:16px}.contact-hours{border-left:0;border-top:1px solid #c9ded5;padding:20px 0 0}.contact-documents{margin-top:28px;padding-top:24px}}
