/* ---------- inner page hero (banner) ---------- */
.page-hero{
  position:relative;background:var(--navy-900);color:#fff;overflow:hidden;
}
.page-hero .wrap{position:relative;padding:2.6rem 0 2.4rem}
.page-hero .crumbs{font-size:.86rem;color:#9fb3cb;margin-bottom:.9rem;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.page-hero .crumbs a{color:#cdd9e8}
.page-hero .crumbs a:hover{color:#fff}
.page-hero h1{font-size:clamp(1.9rem,4.6vw,2.9rem);font-weight:700;text-transform:uppercase;margin-top:.2rem}
.page-hero p{color:#c4d2e3;margin:.7rem 0 0;max-width:640px}

/* ---------- tabs between Реквизиты / ОКВЭД ---------- */
.page-tabs{background:var(--surface);border-bottom:1px solid var(--line)}
.page-tabs .wrap{display:flex;gap:.4rem;flex-wrap:wrap}
.page-tabs a{
  font-family:"Oswald",sans-serif;font-weight:600;font-size:.92rem;text-transform:uppercase;letter-spacing:.04em;
  padding:1rem 1.1rem;color:var(--slate);position:relative;white-space:nowrap;
}
.page-tabs a:hover{color:var(--navy-800)}
.page-tabs a.active{color:var(--navy-900)}
.page-tabs a.active::after{content:"";position:absolute;left:1.1rem;right:1.1rem;bottom:0;height:3px;background:var(--orange);border-radius:2px 2px 0 0}

/* ---------- inner content sections ---------- */
.inner-sec{padding:clamp(2.6rem,5vw,4rem) 0}
.inner-sec + .inner-sec{padding-top:0}
.inner-sec .sec-head{margin-bottom:1.8rem}

.req-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.req-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:1.2rem 1.3rem;box-shadow:var(--shadow);
}
.req-card .lab{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--slate);margin-bottom:.4rem}
.req-card .val{display:block;font-family:"Oswald",sans-serif;font-weight:600;font-size:1.12rem;color:var(--navy-900);line-height:1.3}
.req-card .val.addr{font-size:.98rem;font-weight:500}

.reg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.1rem}
.reg-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.4rem;box-shadow:var(--shadow)}
.reg-card h3{font-family:"Oswald",sans-serif;font-weight:600;font-size:1.05rem;text-transform:uppercase;color:var(--navy-800);margin-bottom:.7rem;display:flex;align-items:center;gap:.55rem}
.reg-card h3 .ic{width:30px;height:30px;flex:none;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;color:var(--orange)}
.reg-card h3 .ic svg{width:17px;height:17px;stroke-width:1.8;fill:none;stroke:currentColor}
.reg-card dl{margin:0;font-size:.92rem;color:var(--ink)}
.reg-card dt{color:var(--slate);font-size:.82rem;margin-top:.6rem}
.reg-card dt:first-child{margin-top:0}
.reg-card dd{margin:.15rem 0 0;font-weight:600}

.okved-search{max-width:380px;margin-bottom:1.4rem;position:relative}
.okved-search input{
  width:100%;padding:.78rem 1rem .78rem 2.5rem;border-radius:10px;border:1px solid var(--line);
  font-family:inherit;font-size:.94rem;background:var(--surface);color:var(--ink);
}
.okved-search input:focus{outline:2px solid var(--orange);outline-offset:1px}
.okved-search svg{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);width:16px;height:16px;stroke:var(--slate);fill:none;stroke-width:1.8}

table.okved{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
table.okved thead th{
  background:var(--navy-900);color:#fff;text-align:left;font-family:"Oswald",sans-serif;font-weight:600;
  text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;padding:.85rem 1.1rem;
}
table.okved tbody td{padding:.72rem 1.1rem;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--ink);vertical-align:top}
table.okved tbody tr:last-child td{border-bottom:0}
table.okved tbody tr:hover td{background:var(--surface-2)}
table.okved td.code{font-family:"Oswald",sans-serif;font-weight:600;color:var(--navy-800);white-space:nowrap;width:110px}
table.okved tbody tr.is-hidden{display:none}
.okved-empty{display:none;text-align:center;color:var(--slate);padding:2rem 0}
.okved-empty.show{display:block}
.okved-count{color:var(--slate);font-size:.88rem;margin:0 0 1rem}

@media (max-width:640px){
  .req-grid,.reg-cards{grid-template-columns:1fr}
  table.okved thead{display:none}
  table.okved tbody tr{display:block;border-bottom:1px solid var(--line);padding:.8rem 0}
  table.okved tbody td{display:block;padding:.18rem 1.1rem;border-bottom:0}
  table.okved td.code{color:var(--orange);font-size:.82rem}
}
