/* ==========================================================================
   O nás (/o-nas/) – drobné doplnky k main.css, prefix on-
   ========================================================================== */

/* 16.1 HERO – kompaktnejší: nadpis vo veľkosti h1, fotka s popisom */
.on-hero { padding-bottom: clamp(36px, 4.5vw, 64px); }
.on-hero .hero-sluzba__nadpis { font-size: var(--fs-h1); line-height: 1.04; letter-spacing: -.032em; }
.on-hero__media { margin: 0; }
.on-hero__media figcaption { margin-top: 10px; }
@media (min-width: 960px) {
  .on-hero .hero-sluzba__mriezka { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); }
  .on-hero .hero-sluzba__media > img { aspect-ratio: 3 / 2; }
}
@media (max-width: 959px) { .on-hero .hero-sluzba__media > img { aspect-ratio: 16 / 10; } }

/* hlavička sekcie – tesnejšia */
.on-hlavicka { margin-bottom: clamp(24px, 3vw, 40px); }

/* 16.2 Príbeh – text + skutočná realizácia */
.on-pribeh { display: grid; gap: clamp(28px, 4vw, 72px); align-items: center; }
@media (min-width: 1024px) { .on-pribeh { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); } }
.on-pribeh__text > p { max-width: 42em; }
.on-pribeh__zaver { font-family: var(--font-display); font-size: var(--fs-h4); font-weight: 700; line-height: 1.3; letter-spacing: -.012em; color: var(--c-nadpis); padding-left: 18px; border-left: 3px solid var(--green); }
.on-pribeh__foto { margin: 0; width: 100%; max-width: 500px; justify-self: center; }
.on-pribeh__foto figcaption { margin-top: 10px; }
@media (max-width: 1023px) { .on-pribeh__foto .obr { aspect-ratio: 4 / 3 !important; } }

/* 16.2 veľký citát – o niečo menší ako editoriálny základ, aby sekcia ostala kompaktná */
.on-citat { gap: 22px; }
.on-citat .citat__text { font-size: clamp(1.5rem, 1.15rem + 1.5vw, 2.5rem); max-width: 24em; }

/* 16.3 Hodnoty – číslovaný zoznam 3 × 2 s linkou (nie karty) */
.on-hodnoty { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 clamp(24px, 3vw, 48px); margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .on-hodnoty { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .on-hodnoty { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.on-hodnota { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 16px; align-content: start; padding: clamp(18px, 2vw, 26px) 0; border-top: 1px solid var(--c-linka); }
.on-hodnota::before { content: ""; position: absolute; top: -1px; left: 0; width: 48px; height: 3px; background: var(--tr, var(--green)); }
.on-hodnota:nth-child(1) { --tr: var(--tr-g); }
.on-hodnota:nth-child(2) { --tr: var(--tr-e); }
.on-hodnota:nth-child(3) { --tr: var(--tr-d); }
.on-hodnota:nth-child(4) { --tr: var(--tr-c); }
.on-hodnota:nth-child(5) { --tr: var(--tr-b); }
.on-hodnota:nth-child(6) { --tr: var(--tr-a); }
.on-hodnota__cislo { grid-row: 1 / span 2; font-family: var(--font-display); font-weight: 800; font-size: 1.0625rem; line-height: 1.5; letter-spacing: .02em; color: var(--c-muted); font-variant-numeric: tabular-nums; }
.on-hodnota__nadpis { font-size: var(--fs-h4); line-height: 1.25; }
.on-hodnota p { margin: 0; grid-column: 2; color: var(--c-text); font-size: var(--fs-small); line-height: 1.55; }

/* 16.4 Čísla – 4 položky: 2 → 4 stĺpce (bez osamelej položky v riadku) */
.on-cisla { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
.on-cisla .cisla__polozka { padding-block: clamp(18px, 2.2vw, 30px); gap: 10px; }
@media (min-width: 720px) {
  .on-cisla { column-gap: 0; }
  .on-cisla .cisla__polozka:nth-child(2n + 1) { padding-left: 0; border-left: 0; }
  .on-cisla .cisla__polozka:nth-child(2n + 1)::before { left: 0; }
}
@media (min-width: 1200px) {
  .on-cisla { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .on-cisla .cisla__polozka:nth-child(2n + 1):not(:first-child) { padding-left: clamp(16px, 2vw, 32px); border-left: 1px solid var(--c-linka); }
  .on-cisla .cisla__polozka:nth-child(2n + 1):not(:first-child)::before { left: clamp(16px, 2vw, 32px); }
  .on-cisla .cislo { font-size: clamp(2rem, 1.2rem + 1.6vw, 2.75rem); }
}
@media (max-width: 479px) { .on-cisla .cislo { font-size: clamp(1.75rem, 1.2rem + 3.4vw, 2.5rem); } }

/* 16.5 Kde pôsobíme + 16.7 Firemné údaje */
.on-kde { display: grid; gap: clamp(28px, 4vw, 72px); align-items: start; }
@media (min-width: 960px) { .on-kde { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); } }
.on-kde__text > p { max-width: 40em; }
.on-udaje { gap: 16px; border-color: var(--c-linka); overflow: hidden; }
.on-udaje > .stitok-pasik { position: absolute; top: 0; left: 0; right: 0; width: auto; border-radius: 0; }
.on-udaje__zoznam { display: grid; gap: 0; margin: 0; }
.on-udaje__zoznam > div { display: grid; grid-template-columns: minmax(0, 9em) minmax(0, 1fr); gap: 4px 16px; padding: 10px 0; border-top: 1px solid var(--c-linka); }
.on-udaje__zoznam dt { color: var(--c-muted); font-size: var(--fs-small); font-weight: 650; }
.on-udaje__zoznam dd { margin: 0; color: var(--c-nadpis); font-weight: 650; overflow-wrap: anywhere; }
@media (max-width: 479px) { .on-udaje__zoznam > div { grid-template-columns: minmax(0, 6.5em) minmax(0, 1fr); gap: 4px 12px; } }

/* 16.6 Tím – mená a funkcie zo starého webu; portréty nie sú, preto iniciály v kruhu */
.on-tim { display: grid; gap: clamp(24px, 3vw, 44px); }
.on-tim__hlavicka { display: grid; gap: 14px clamp(24px, 4vw, 64px); align-items: end; }
@media (min-width: 960px) { .on-tim__hlavicka { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); } }
.on-tim__hlavicka h2 { margin: 0; }
.on-tim__uvod > p { max-width: 40em; }
.on-tim__zoznam { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .on-tim__zoznam { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } }
@media (min-width: 1024px) { .on-tim__zoznam { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } }
.on-clen {
  display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 3px 16px; align-items: center; min-width: 0;
  padding: clamp(14px, 1.6vw, 20px) clamp(16px, 1.8vw, 24px);
  border-radius: var(--r-karta); background: var(--paper-3); border: 1px solid var(--c-linka);
}
.on-clen__inicialy {
  grid-row: 1 / span 2; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%;
  background: var(--ink); color: var(--green);
  font-family: var(--font-display); font-weight: 800; font-size: 1.0625rem; letter-spacing: .04em; line-height: 1;
  -webkit-text-fill-color: currentColor; /* ?overit=1 dedí tmavú výplň textu – iniciály musia ostať čitateľné */
}
.on-clen__meno { margin: 0; align-self: end; font-size: var(--fs-h4); line-height: 1.25; letter-spacing: -.012em; overflow-wrap: anywhere; }
.on-clen__funkcia { margin: 0; align-self: start; color: var(--c-muted); font-size: var(--fs-small); font-weight: 600; line-height: 1.4; }
@media (max-width: 479px) {
  .on-clen { gap: 2px 14px; }
  .on-clen__inicialy { width: 48px; height: 48px; font-size: .9375rem; }
}

/* 16.8 záver pred formulárom */
.on-zaver { display: grid; gap: 24px clamp(24px, 4vw, 64px); align-items: center; }
@media (min-width: 1024px) { .on-zaver { grid-template-columns: minmax(0, 1fr) auto; } }
.on-zaver .akcie { margin: 0; }
