/* Secure W V83 | source QA-only typography fixes.
 * Restores whole-word wraps after V20/V34 'anywhere' fallbacks at every breakpoint.
 * No CSS is loaded on the currently published QA site until the explicit Wix QA release.
 */
#app :is(h1,h2,h3), #app :is(h1,h2,h3) * {
  hyphens:none!important;
  -webkit-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#app :is(h1,h2,h3) {
  text-wrap:balance;
  line-height:1.17;
}
/* Split section headings had font-size up to 3.6rem and overflow-wrap:anywhere.
   On desktop those headings occupy only half of the content width. */
body #app .split-feature h2 {
  font-size:clamp(1.58rem,3.45vw,2.8rem)!important;
  line-height:1.20!important;
  letter-spacing:-.043em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance;
  padding-top:.11em;
}
/* Keep each highlighted word intact, but let whole-word breaks occur at spaces. */
body #app .split-feature h2 .accent {
  white-space:normal;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body #app .split-feature .eyebrow,
body #app .split-feature .label {
  line-height:1.65!important;
  margin-bottom:clamp(20px,2.8vw,29px)!important;
  min-height:1.65em;
  position:relative;
}
#app .split-feature > * {min-width:0;}
/* Long secondary headings in two-column sections */
body #app .grid2 > :is(article,div) > h2,
body #app .grid2 > :is(article,div) > h2 .accent {
  overflow-wrap:normal!important;
  hyphens:none!important;
  word-break:normal!important;
}
body #app .grid2 > :is(article,div) > h2 {
  font-size:clamp(1.7rem,3.5vw,3.25rem)!important;
  line-height:1.18!important;
}
/* The branded label is one indivisible unit. Its underline spans SECURE W,
   rather than the accidental partial underline under only SECURE. */
#app .v83-brand-unit {
  display:inline-block;
  white-space:nowrap;
  font:inherit;
  color:inherit;
  padding:0 0 .18em;
  border-bottom:1px solid currentColor;
  line-height:1.1;
  text-decoration:none;
  overflow-wrap:normal!important;
}
#app .pagehero .eyebrow.label {line-height:1.75!important;align-items:center;gap:.6em;flex-wrap:wrap;}
#app .pagehero h1{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;line-height:1.14!important;}
@media(max-width:700px) {
  body #app .split-feature h2 {font-size:clamp(1.45rem,6.5vw,2.2rem)!important;line-height:1.21!important;}
  body #app .grid2 > :is(article,div) > h2 {font-size:clamp(1.6rem,6.8vw,2.5rem)!important;}
  #app .pagehero .eyebrow.label {margin-bottom:22px!important;}
}
@media(max-width:360px) {
  body #app .split-feature h2 {font-size:clamp(1.39rem,6.5vw,1.85rem)!important;letter-spacing:-.035em!important;}
  body #app .grid2 > :is(article,div) > h2 {font-size:clamp(1.48rem,7vw,1.85rem)!important;}
}
/* Cookie settings action is a button that opens the preferences, not navigation. */
#app .v83-cookies-reopen {
  color:#a9ddf7;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
  font:inherit;
  padding:0;
  background:none;
  border:0;
}
#app .v83-cookies-reopen:hover{color:#e6df70;}
#app .v83-cookies-reopen:focus-visible{outline:2px solid #e6df70;outline-offset:4px;}
/* Modern scroll-to-top control: separate from existing floating chat button. */
.v83-back-to-top{
  position:fixed;
  z-index:109;
  inset:auto max(22px,env(safe-area-inset-right)) max(92px,calc(92px + env(safe-area-inset-bottom))) auto;
  width:48px;height:48px;
  display:grid;place-items:center;
  color:#102536;background:#dedf70;
  border:1px solid #f1f09c;
  border-radius:50%;box-shadow:0 8px 24px #0008;
  font:800 25px/1 Arial,Helvetica,sans-serif;
  cursor:pointer;
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(8px);
  transition:opacity .22s,transform .22s,visibility .22s;
}
.v83-back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.v83-back-to-top:hover{background:#f0ee94;transform:translateY(-3px);}
.v83-back-to-top:focus-visible{outline:3px solid #fff;outline-offset:3px;}
@media(max-width:480px){.v83-back-to-top{width:44px;height:44px;right:max(14px,env(safe-area-inset-right));bottom:max(79px,calc(79px + env(safe-area-inset-bottom)));}}
@media(prefers-reduced-motion:reduce){.v83-back-to-top{transition:none!important;}}

/* Secure W V84 – transparentne oznámenie partnerských odborných služieb. */
body #app .v84-partner-disclosure {
  box-sizing: border-box;
  display: grid;
  gap: .65rem;
  padding: clamp(18px, 2.6vw, 28px);
  margin-top: clamp(18px, 3vw, 32px);
  margin-bottom: clamp(16px, 3vw, 32px);
  border: 1px solid rgba(220, 224, 88, .33);
  border-left: 3px solid #dedf4d;
  border-radius: 14px;
  background: linear-gradient(110deg, rgba(20, 44, 60, .9), rgba(9, 22, 30, .96));
  color: #e8f0f3;
  max-width: min(1120px, calc(100% - 32px));
}
body #app .v84-partner-disclosure strong {
  color: #e2df57;
  font-size: clamp(.68rem, 1vw, .79rem);
  letter-spacing: .12em;
  line-height: 1.4;
}
body #app .v84-partner-disclosure p {
  margin: 0;
  max-width: 92ch;
  color: #d4e2e9;
  font-size: clamp(.94rem, 1.35vw, 1.06rem);
  line-height: 1.65;
}
@media (max-width: 480px) {
  body #app .v84-partner-disclosure { max-width: calc(100% - 24px); margin-left: auto; margin-right: auto; padding: 16px; }
}

/* V84_S_CARD_TITLE_ALIGNMENT_20261016
   Shared service cards: consistent headings, descriptions, CTAs across desktop/tablet/mobile.
   Scope: only cards inside #app .grid3; no typography/content/branding replacement. */
#app .grid3 > a.s-card {
  justify-content: flex-start;
}
#app .grid3 > a.s-card > .index {
  margin-bottom: clamp(24px, 3.5vw, 50px);
  min-height: 2.6em;
}
#app .grid3 > a.s-card > h3 {
  min-height: 2.28em;
  line-height: 1.14;
  margin: 0 0 10px;
}
#app .grid3 > a.s-card > p {
  margin-top: 0;
  margin-bottom: 12px;
}
#app .grid3 > a.s-card > .inline {
  margin-top: auto;
}
@media (max-width: 650px) {
  #app .grid3 > a.s-card > .index {
    margin-bottom: 24px;
  }
}

/* V84_S_MOBILE_FINAL_POLISH_20261016
   Secure W V84 / 2026-10-16 - approved mobile UX polish.
   Scoped: mobile navigation, home hero eyebrow, and footer density.
   No typography redesign, no functional scripts or desktop layout changes. */
@media (max-width: 700px) {
  /* The privacy policy is reachable via the footer and cookies controls;
     it must not appear as the ninth primary navigation item. */
  #mobile-nav > a[href="/ochrana-osobnych-udajov"] {
    display: none !important;
  }

  /* In the original V84 mobile rule hero-copy starts 115px below the hero top.
     Reclaim the unnecessary gap above its brand eyebrow. */
  body[data-hero-topic="home"] .hero-copy {
    padding-top: clamp(45px, 8vw, 64px) !important;
  }
  body[data-hero-topic="home"] .hero-copy > .eyebrow.label {
    align-items: baseline;
    flex-wrap: wrap;
    column-gap: .8em;
    row-gap: .35em;
    line-height: 1.55;
    margin-bottom: 16px;
  }

  /* Keep 44px touch targets while removing excess grid-track spacing. */
  .footer {
    padding-top: 34px;
    padding-bottom: 36px;
  }
  .footergrid {
    gap: 24px;
    align-items: start;
  }
  .footer-title {
    margin-bottom: 5px;
  }
  .footer-links {
    gap: 0;
    align-content: start;
  }
  .footer-links a {
    min-height: 44px;
    padding-block: 0;
    display: flex;
    align-items: center;
    line-height: 1.3;
  }
  .footergrid > div:first-child p {
    margin-top: 12px !important;
    line-height: 1.55;
  }
  .footer-bottom {
    margin-top: 26px;
    gap: 12px;
  }
}
@media (max-width: 600px) {
  .footergrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .footergrid > div:first-child {
    grid-column: auto !important;
  }
}

/* V84_S_MOBILE_HEADER_LINKS_20261016
   Mobile only: Career remains in utility header and footer, but not in
   expanded primary navigation. Both utility links share identical font styling.
   Do not alter desktop, page copy, analytics, consent or menu behaviors. */
@media (max-width: 900px) {
  #mobile-nav > a[href="/kariera"] {
    display: none !important;
  }
  .site-top > a[href="/kariera"],
  .site-top > a[href="/kontakt"] {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    font-style: normal !important;
    line-height: 1.25 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
  }
}
