/* Theme-friendly, neutral styling (no rounded corners, no background takeover) */
.os-wrap{
  max-width:1100px;
  margin:0 auto;
  background:#fff;
  padding:24px;
}

@media (max-width: 1024px){
  .os-wrap{padding:16px;}
}

.os-header{margin:0 0 14px}
.os-h1{font-size:34px;line-height:1.2;margin:0 0 10px}
.os-h2{font-size:20px;margin:18px 0 10px}
.os-h3{font-size:18px;margin:16px 0 8px}
.os-h4{font-size:16px;margin:0 0 6px}
.os-lead{opacity:.9;margin-top:10px}

.os-controls{display:grid;grid-template-columns:1fr;gap:12px;align-items:end}
.os-label{display:block;font-weight:600;margin-bottom:6px}
.os-input{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.2);background:#fff}
.os-input:focus{outline:2px solid rgba(0,0,0,.15);outline-offset:2px}

.os-section{margin-top:14px}
.os-unit{border-top:1px solid rgba(0,0,0,.10);padding-top:14px;margin-top:14px}
.os-unit--oddelenie{padding-left:10px;border-left:3px solid rgba(0,0,0,.06)}

.os-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px}
@media (max-width: 1024px){.os-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}}
@media (max-width: 640px){.os-grid{grid-template-columns:1fr;}}
.os-grid--single{grid-template-columns:minmax(0, 360px)}

.os-card{border:1px solid rgba(0,0,0,.22);padding:16px;background:#fff}
.os-card__name{margin:0 0 6px;font-size:18px;line-height:1.25}
.os-card__role{font-size:14px;opacity:.85}
.os-card__note{font-size:13px;opacity:.85;margin-top:4px}
.os-card__contacts{display:grid;gap:6px;margin:12px 0 10px}
.os-line a{text-decoration:none}
.os-line a:hover{text-decoration:underline}

.os-card__footer{border-top:1px solid rgba(0,0,0,.10);padding-top:10px;margin-top:6px;font-size:13px}
.os-card__footer-label{font-weight:700;margin-right:8px}
.os-badge{display:inline-block;background:rgba(0,0,0,.06);padding:6px 8px}

.os-empty{margin:14px 0;opacity:.8}
.os-hidden{display:none !important}
