/* Контактные данные, внутренние отступы и отраслевые обложки. */
.menu-contacts{display:none}
.home-page .atom-boundary{padding:30px 32px;gap:32px;border:1px solid #afc7d477;align-items:center}
.home-page .atom-boundary>p{font-size:12px;line-height:1.9;min-width:0}
.home-page .atom-boundary>.text-link{flex-shrink:0;max-width:210px;white-space:normal;line-height:1.7}
.contact-domain{margin-top:4px;font-size:16px}
.contact-context{max-width:480px;border-top:1px solid var(--line);padding-top:28px;margin-top:32px}
.contact-context h3{font-size:22px;line-height:1.35}
.contact-context p{font-size:13px;color:var(--muted);line-height:1.85}
.address-panel h2{overflow-wrap:normal}
.article-cover{margin-top:0;margin-bottom:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#f2f6fa}
.article-cover>img{width:100%;height:auto;aspect-ratio:21/8;object-fit:cover}
.article-cover figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 22px;font-size:11px;color:var(--muted);line-height:1.8}
.article-cover figcaption a{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;text-decoration:underline;text-underline-offset:3px}
.article-cover figcaption .icon{width:13px;height:13px}
.footer-main address>span{align-items:flex-start;line-height:1.7}
.footer-main address>span .icon{margin-top:3px}
@media(max-width:1000px){
 .home-page .atom-boundary{padding:26px;gap:24px}
}
@media(max-width:767px){
 .main-nav{display:none;position:absolute;left:0;right:0;top:100%;margin:0;flex-direction:column;align-items:stretch;padding:15px 20px 25px;max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain}
 .main-nav.is-open{display:flex}
 .main-nav .menu-contacts{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-top:22px;padding:23px 10px 10px;border-top:1px solid #c8d7e5;color:#22384c;font-style:normal;white-space:normal}
 .menu-contacts>.overline{margin:0;color:#617b92;font-size:9px}
 .menu-contacts>a{display:flex;align-items:center;gap:12px;padding:0;border:0;font-size:14px;line-height:1.7;border-radius:0;background:transparent;overflow-wrap:anywhere}
 .menu-contacts>a.menu-contact-phone{font-size:22px;font-weight:600;letter-spacing:-.035em}
 .menu-contacts>a.menu-contact-address{align-items:flex-start;font-size:13px}
 .menu-contacts .icon{width:18px;height:18px;color:#577893}
 .menu-contact-address .icon{margin-top:3px}
 .menu-contacts>a.menu-contact-site{font-size:12px;color:#617b92}
 .home-page .atom-boundary{padding:24px;margin-top:25px}
 .home-page .atom-boundary>p{font-size:12px;line-height:1.85}
 .home-page .atom-boundary>.text-link{max-width:none;display:inline-flex;margin-top:20px;font-size:12px}
 .article-cover{border-radius:16px}
 .article-cover>img{aspect-ratio:16/10}
 .article-cover figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:15px 18px;font-size:10px}
 .contact-context{margin-top:26px;padding-top:23px}
 .contact-context p{font-size:13px}
 .footer-main address>span{font-size:12px}
}
@media(max-width:359px){
 .home-page .atom-boundary{padding:20px}
 .menu-contacts>a.menu-contact-phone{font-size:20px}
}

.atom-desktop-context{display:none}
@media(min-width:768px){
 .atom-layout{align-items:stretch}
 .atom-offer{display:flex;flex-direction:column;min-width:0}
 .atom-offer>:is(.section-intro,.atom-desktop-context){color:var(--muted);font-size:16px;line-height:1.75}
 .atom-offer>.section-intro{margin-bottom:0}
 .atom-offer>.atom-desktop-context{display:block;max-width:500px;margin:22px 0 0}
 .atom-offer>.atom-actions{margin-top:auto;padding-top:28px}
 .atom-layout>.atom-procurement{height:100%;min-width:0}
}

/* Высоту лабораторного блока на десктопе определяет содержимое колонок. */
@media(min-width:768px){
 .lab-media{position:relative;min-width:0}
 .lab-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 35%}
}
@media(min-width:1051px){
 .lab-methods{display:flex;flex-direction:column}
 .lab-methods>a{flex:1}
}

/* Источники сохраняются в материалах без внешних переходов. */
.source-url{display:block;margin-top:5px;font-size:11px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere;word-break:break-word}
.article-source ul{padding-left:20px;margin:16px 0 0}
.article-source li{margin-bottom:16px;line-height:1.8}
.photo-credits .source-record{margin-top:12px;margin-bottom:0;font-size:12px}

/* Телефон в шапке: номер и пояснение на двух строках. */
@media(min-width:1151px){
 .header-phone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex-shrink:0;line-height:1.2}
 .header-phone-number{font-size:19px;font-weight:650;letter-spacing:-.025em}
 .header-phone small{font-size:10px;font-weight:400;letter-spacing:.02em;color:#bdcfe0;line-height:1.4}
}

.menu-phone-note{font-size:11px;line-height:1.5;color:#617b92;margin-top:-13px;margin-bottom:2px}

/* Long legal titles remain within narrow screens. */
.legal-page .page-intro h1{overflow-wrap:anywhere}
