/* Dokumentové a pomocné stránky: právne texty, stránky odborov, "Na mieru", 404. Hodnoty z css/tokens.css, vzory z css/pages.css. */

/* --- spoločné --- */
.dc-sec{margin-top:var(--scene-gap)}
.dc-sec>h2{font-size:clamp(30px,8vw,56px);letter-spacing:-.04em;line-height:1.02;max-width:20ch}
.dc-lead{max-width:56ch;margin-top:var(--sp-3);color:var(--text-2);font-size:var(--fs-lg);line-height:1.4}
.dc-lnks{display:flex;flex-wrap:wrap;gap:0 var(--sp-4)}
.dc-note{max-width:62ch;margin-top:var(--sp-3);color:var(--text-2);font-size:var(--fs-sm);line-height:1.55}
.dc-lnk{display:inline-flex;align-items:center;min-width:44px;min-height:44px;margin-top:var(--sp-2);font-size:var(--fs-md);font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.dc-card{padding:var(--sp-4) var(--sp-4) var(--sp-5);border-radius:var(--r-2);background:var(--surface)}

/* --- právne texty --- */
.lg-upd{margin-top:var(--sp-5);color:var(--text-3);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase}
.lg-list{display:grid;gap:0;margin-top:var(--sp-4)}
.lg-sec{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-2);padding:var(--sp-4) 0;border-top:2px solid var(--surface-3)}
.lg-sec h2{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em;line-height:1.2}
.lg-sec p{max-width:62ch;color:var(--text-2);font-size:var(--fs-md);line-height:1.6}
.lg-sec a,.lg-rows a{color:var(--fg);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;overflow-wrap:anywhere}
.lg-sec p a{display:inline-block;padding:12px 3px;margin:-12px -3px}
.lg-rows{display:grid;gap:0;margin-top:var(--sp-4)}
.lg-rows>div{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:var(--sp-3) 0;border-top:2px solid var(--surface-3)}
.lg-rows dt{color:var(--text-3);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase}
.lg-rows dd{margin:0;font-size:var(--fs-lg);line-height:1.3;overflow-wrap:anywhere}
.lg-rows a{display:inline-flex;align-items:center;min-height:44px}

/* --- stránka odboru --- */
.tr-stat{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px var(--sp-3);margin-top:var(--sp-4)}
.tr-stat b{font-size:clamp(40px,12vw,72px);font-weight:600;letter-spacing:-.05em;line-height:1}
.tr-stat span{max-width:34ch;color:var(--text-2);font-size:var(--fs-sm);line-height:1.4}
.tr-sample{display:grid;gap:var(--sp-5);align-items:start}
.tr-name{margin-top:var(--sp-2);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.035em;line-height:1.1}
.tr-sample-t{display:grid;gap:var(--sp-3);justify-items:start}
.tr-sample-t p{max-width:52ch;color:var(--text-2);font-size:var(--fs-md);line-height:1.55}
.tr-does{display:grid;gap:10px;max-width:52ch}
.tr-does li{position:relative;padding-left:26px;font-size:var(--fs-md);line-height:1.5}
.tr-does li::before{content:"";position:absolute;left:0;top:.8em;width:12px;height:2px;background:var(--fg)}
.tr-phone{justify-self:center;width:min(100%,260px);padding:8px;border-radius:32px;background:#000;box-shadow:inset 0 0 0 2px var(--outline)}
.tr-phone img{display:block;width:100%;height:auto;border-radius:24px}
.tr-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2);margin-top:var(--sp-4)}
.tr-sc{display:grid;gap:4px;padding:var(--sp-3) var(--sp-3) var(--sp-3);border-radius:var(--r-2);background:var(--surface)}
.tr-sc b{font-size:clamp(40px,11vw,64px);font-weight:600;letter-spacing:-.05em;line-height:1}
.tr-sc span{color:var(--text-2);font-size:var(--fs-sm)}
.tr-times{display:grid;gap:0;margin-top:var(--sp-4);max-width:560px}
.tr-times>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-3);padding:var(--sp-2) 0;border-top:2px solid var(--surface-3)}
.tr-times dt{color:var(--text-2);font-size:var(--fs-md)}
.tr-times dd{margin:0;font-weight:600;font-size:var(--fs-md)}
.tr-gets{display:grid;gap:0;margin-top:var(--sp-4)}
.tr-gets li{display:grid;gap:6px;padding:var(--sp-3) 0;border-top:2px solid var(--surface-3)}
.tr-gets h3{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em;line-height:1.2}
.tr-gets p{max-width:62ch;color:var(--text-2);font-size:var(--fs-md);line-height:1.55}
.tr-plans{display:grid;gap:var(--sp-2);margin-top:var(--sp-4)}
.tr-plan{display:grid;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-2);background:var(--surface)}
.tr-plan h3{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em}
.tr-plan .tr-pr{font-size:clamp(34px,9vw,48px);font-weight:600;letter-spacing:-.045em;line-height:1}
.tr-plan .tr-pr small{margin-right:8px;font-size:var(--fs-md);font-weight:500;letter-spacing:0;color:var(--text-2)}
.tr-plan ul{display:grid;gap:8px}
.tr-plan li{position:relative;padding-left:22px;color:var(--text-2);font-size:var(--fs-sm);line-height:1.45}
.tr-plan li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:var(--text-2)}
.tr-chg{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px var(--sp-3);margin-top:var(--sp-4);font-size:var(--fs-lg);font-weight:600}
.tr-chg b{font-size:clamp(30px,8vw,44px);letter-spacing:-.04em}
.tr-cta h2{font-size:clamp(36px,10vw,80px);letter-spacing:-.05em;line-height:.98;max-width:12ch}
.tr-cta .dc-lead{margin-bottom:var(--sp-4)}

/* --- Na mieru --- */
.nm-who{max-width:40ch;font-size:clamp(22px,5.8vw,32px);font-weight:600;letter-spacing:-.03em;line-height:1.2}
.nm-price{margin-top:var(--sp-3);color:var(--text-2);font-size:var(--fs-lg)}
.nm-get{display:grid;gap:0;margin-top:var(--sp-4)}
.nm-get li{display:grid;gap:6px;padding:var(--sp-3) 0;border-top:2px solid var(--surface-3)}
.nm-get h3{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em;line-height:1.2}
.nm-get p{max-width:62ch;color:var(--text-2);font-size:var(--fs-md);line-height:1.55}
.nm-steps{display:grid;gap:var(--sp-2);margin-top:var(--sp-4);counter-reset:nm}
.nm-steps li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-3);align-items:start;padding:var(--sp-3);border-radius:var(--r-2);background:var(--surface)}
.nm-steps .nm-n{color:var(--text-3);font:500 var(--fs-sm)/1.5 var(--f-mono)}
.nm-steps h3{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em;line-height:1.2}
.nm-steps p{margin-top:4px;color:var(--text-2);font-size:var(--fs-md);line-height:1.5}
.nm-samples{display:grid;gap:0;margin-top:var(--sp-3)}
.nm-samples a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px var(--sp-3);align-items:center;min-height:64px;padding:var(--sp-2) 0;border-top:2px solid var(--surface-3);text-decoration:none}
.nm-samples b{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em}
.nm-samples span{color:var(--text-2);font-size:var(--fs-sm)}
.nm-samples .ico{grid-row:1/span 2;grid-column:2;width:24px;height:24px}

/* --- 404 --- */
.nf{min-height:calc(100svh - 160px);display:grid;align-content:center;padding-top:96px}
.nf .nf-n{margin:0;max-width:none;color:var(--fg);font-size:clamp(96px,34vw,300px);font-weight:600;letter-spacing:-.07em;line-height:.85}
.nf h1{margin-top:var(--sp-4);font-size:clamp(30px,8vw,56px);letter-spacing:-.04em;line-height:1.05;max-width:18ch}
.nf p{max-width:44ch;margin-top:var(--sp-3);color:var(--text-2);font-size:var(--fs-md);line-height:1.5}
.nf-links{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3);margin-top:var(--sp-4)}
.nf-lang{display:grid;gap:2px;margin-top:var(--sp-5);padding-top:var(--sp-3);border-top:2px solid var(--surface-3);color:var(--text-2);font-size:var(--fs-sm)}
.nf-lang p{margin:0;max-width:none}
.nf-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--fg);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}

@media (min-width:700px){
  .tr-scores{grid-template-columns:repeat(4,minmax(0,1fr))}
  .tr-plans{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:900px){
  .tr-sample{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--sp-7)}
  .tr-gets li,.nm-get li{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);column-gap:var(--sp-6)}
  .lg-sec{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);column-gap:var(--sp-6)}
  .lg-rows>div{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);column-gap:var(--sp-6)}
  .nm-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.dc-h3{margin-top:var(--sp-3);font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em;line-height:1.2}
/* dlhé jednoslovné nadpisy (Prevádzkovateľ, Datenschutzerklärung) sa na úzkom telefóne nesmú vyliať */
@media (max-width:699px){.pg-legal .pg-head h1{font-size:clamp(30px,10.6vw,60px);overflow-wrap:anywhere}}

/* --- úvod v angličtine a nemčine --- */
.hm-hero{padding-top:124px}
.hm-hero h1{max-width:14ch;font-size:clamp(46px,13.4vw,148px);letter-spacing:-.055em;line-height:.94}
.hm-hero h1 span{display:block}
.hm-hero .lead{max-width:30ch;margin-top:var(--sp-4)}
.hm-act{margin-top:var(--sp-4)}
.hm-notes{display:grid;gap:0;margin-top:var(--sp-5);max-width:720px}
.hm-notes li{display:grid;gap:2px;padding:var(--sp-3) 0;border-top:2px solid var(--surface-3)}
.hm-notes b{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.02em}
.hm-notes span{color:var(--text-2);font-size:var(--fs-sm)}
.hm-incl{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--sp-3)}
.hm-incl li{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 2px var(--outline);font-size:var(--fs-sm);font-weight:500}
.hm .sc-work,.hm .sc-blog,.hm .sc-close{margin-top:var(--scene-gap)}
/* krátke zoznamy krokov s chipmi faktov */
.nm-steps .stp-f{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.nm-steps .stp-f li{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--surface-3);font-size:var(--fs-xs);font-weight:600;letter-spacing:.02em}
/* Optimalizácie / Optimierungen */
.op-q{margin-top:var(--sp-4)}
.op-q a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.op-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--sp-4)}
.op-pills a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 2px var(--outline);font-size:var(--fs-sm);font-weight:500;text-decoration:none}
.op-sec{scroll-margin-top:84px}
.op-sec .eyebrow{color:var(--text-3)}
.op-sec h2{max-width:20ch}
.op-p{max-width:56ch}
.op-facts{display:grid;margin-top:var(--sp-4);max-width:720px}
.op-facts>div{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:var(--sp-2) 0;border-top:2px solid var(--surface-3)}
.op-facts dt{color:var(--text-2);font-size:var(--fs-md)}
.op-facts dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0}
.op-facts b{font-size:clamp(28px,7vw,40px);font-weight:600;letter-spacing:-.04em;line-height:1.1}
.op-facts i{font-style:normal;color:var(--text-2)}
.op-facts small{flex-basis:100%;color:var(--text-2);font-size:var(--fs-sm);line-height:1.4}
@media (min-width:900px){
  .op-facts>div{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:var(--sp-5);align-items:baseline}
}

/* odkazy v texte a krátke odkazy v päte: cieľ aspoň 44 px */
.dc-note a,.dc-lead a{display:inline-block;padding:12px 2px;margin:-12px -2px;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;overflow-wrap:anywhere}
/* nemecké zložené slová v nadpisoch (Zahnarztpraxen, Datenschutzerklärung) sa na úzkom telefóne nesmú vyliať */
@media (max-width:699px){html[lang="de"] .pg-head h1{font-size:clamp(30px,10.6vw,60px);overflow-wrap:anywhere;hyphens:auto}}
.tr-plan{align-content:start}
@media (min-width:900px){.hm .nm-steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
