/* Extracted from sk/index.html; keep this link after site-wide styles. */
/* === Väčšia typografia (inšpirované liquidtechnology.net) === */
      * {
        --body-font-size: 18px;
        --h1-font-size: 80px;
        --h2-font-size: 64px;
        --h3-font-size: 36px;
        --h4-font-size: 26px;
        --h5-font-size: 22px;
        --h6-font-size: 18px;
      }
      body { font-size: 18px; }
      p { font-size: 18px; }
      p.lead { font-size: 22px; line-height: 1.6; }
      .fs-12 { font-size: 14px; }
      .fs-14 { font-size: 16px; }
      .fs-15 { font-size: 17px; }
      .fs-16 { font-size: 18px; }
      .fs-18 { font-size: 20px; }
      .fs-20 { font-size: 22px; }
      .fs-24 { font-size: 28px; }
      .fs-28 { font-size: 32px; }
      .fs-30 { font-size: 34px; }
      .fs-32 { font-size: 38px; }
      .fs-36 { font-size: 42px; }
      .fs-40 { font-size: 48px; }
      .fs-48 { font-size: 56px; }
      .fs-56 { font-size: 64px; }
      .fs-60 { font-size: 72px; }
      .de-marquee-list-1 .fs-60,
      .de-marquee-list-2 .fs-60 { font-size: 40px; }
      .fs-64 { font-size: 76px; }
      .fs-72 { font-size: 84px; }
      @media (max-width: 1199px) {
        * {
          --h1-font-size: 56px;
          --h2-font-size: 44px;
          --h3-font-size: 30px;
          --h4-font-size: 22px;
          --h5-font-size: 20px;
        }
        p.lead { font-size: 20px; }
        .fs-60 { font-size: 56px; }
        .fs-48 { font-size: 44px; }
        .fs-40 { font-size: 38px; }
        .de-marquee-list-1 .fs-60,
        .de-marquee-list-2 .fs-60 { font-size: 31px; }
      }
      @media (max-width: 575px) {
        * {
          --h1-font-size: 40px;
          --h2-font-size: 34px;
          --h3-font-size: 26px;
          --h4-font-size: 20px;
        }
        body { font-size: 17px; }
        p { font-size: 17px; }
        p.lead { font-size: 18px; }
        .fs-60 { font-size: 40px; }
        .fs-48 { font-size: 36px; }
        .fs-40 { font-size: 30px; }
        .de-marquee-list-1 .fs-60,
        .de-marquee-list-2 .fs-60 { font-size: 22px; }
      }

      /* === Svetlé fialové pozadie pre sekcie pod hero bannerom === */

      body.dark-scheme {
        background: var(--color-surface-soft) !important;
      }

      /* Pozadie sekcií */
      #section-about,
      #section-why-attend,
      #section-schedule,
      #section-tickets,
      #section-venue,
      #section-faq,
      footer.bg-dark,
      footer.dark-scheme {
        background-color: var(--color-surface-soft) !important;
      }

      /* Sticky header — svetlejšia tmavá farba pri scrollovaní */
      header.smaller {
        background: var(--color-text) !important;
      }

      /* Fialový gradient — scroll attachment na #wrapper, jemné prekrývajúce sa glow-spoty. */
      #wrapper {
        background:
          /* Glow 1 — vľavo, ~14% */
          radial-gradient(ellipse 55% 25% at 22% 14%, rgba(140,90,255,0.22) 0%, rgba(180,140,255,0.08) 50%, transparent 85%),
          /* Glow 2 — vpravo, ~30% */
          radial-gradient(ellipse 50% 22% at 78% 30%, rgba(190,150,255,0.18) 0%, rgba(210,180,255,0.06) 55%, transparent 88%),
          /* Glow 3 — vľavo, ~48% */
          radial-gradient(ellipse 55% 25% at 22% 48%, rgba(140,90,255,0.20) 0%, rgba(180,140,255,0.07) 55%, transparent 88%),
          /* Glow 4 — vpravo, ~66% */
          radial-gradient(ellipse 50% 22% at 78% 66%, rgba(190,150,255,0.18) 0%, rgba(210,180,255,0.06) 55%, transparent 88%),
          /* Glow 5 — vľavo, ~84% */
          radial-gradient(ellipse 55% 25% at 22% 84%, rgba(140,90,255,0.16) 0%, transparent 85%),
          var(--color-surface-accent);
      }
      html, body {
        background: transparent !important;
      }

      /* Zjednotenie veľkosti textov pod nadpismi vo všetkých sekciách */
      p.lead,
      .motion-base-text p,
      .motion-row-text p,
      #section-motion-2 .motion-base-text p,
      #section-motion-2 .motion-row-text p {
        font-size: 1.05rem !important;
        line-height: 1.7 !important;
        font-weight: 400 !important;
        letter-spacing: -0.1px !important;
      }
      /* Svetlé sekcie sú transparentné — ukazujú gradient z body */
      #section-about,
      #section-motion-2,
      #section-why-attend,
      #section-schedule,
      #section-venue,
      #section-faq {
        background: transparent !important;
        position: relative;
      }

      /* Pozadie sekcie s fialovými pasmi */
      /* Bežiace pásy v section-about — text musí ostať biely na fialovom pozadí */
      #section-about .de-marquee-list-1 span,
      #section-about .de-marquee-list-2 span {
        color: #ffffff !important;
      }

      #section-about + section {
        background-color: var(--color-surface-soft) !important;
      }
      /* Sekcia Naše služby — namiesto plochej farby svetlý fialový gradient */
      #section-about + section#section-why-attend,
      #section-why-attend,
      #section-why-attend-2 {
        background: transparent !important;
        background-color: transparent !important;
        position: relative;
      }
      #section-why-attend::before,
      #section-why-attend-2::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: -150px;
        z-index: 0;
        pointer-events: none;
        background:
          radial-gradient(ellipse 70% 50% at 20% 20%, rgba(140,90,255,0.18) 0%, rgba(180,140,255,0.06) 55%, transparent 85%),
          radial-gradient(ellipse 70% 50% at 80% 80%, rgba(190,150,255,0.16) 0%, rgba(210,180,255,0.05) 55%, transparent 85%),
          linear-gradient(180deg, var(--color-surface-soft) 0%, #ece4fa 100%);
      }
      #section-why-attend > .container,
      #section-why-attend-2 > .container {
        position: relative;
        z-index: 1;
      }

      /* Farba textu v svetlých sekciách */
      #section-about,
      #section-about h1, #section-about h2, #section-about h3,
      #section-about h4, #section-about h5, #section-about h6,
      #section-about p, #section-about li, #section-about span,
      #section-about a, #section-about .subtitle,
      #section-why-attend,
      #section-why-attend h1, #section-why-attend h2, #section-why-attend h3,
      #section-why-attend h4, #section-why-attend p, #section-why-attend span,
      #section-why-attend .subtitle,
      #section-why-attend-2,
      #section-why-attend-2 h1, #section-why-attend-2 h2, #section-why-attend-2 h3,
      #section-why-attend-2 h4, #section-why-attend-2 p, #section-why-attend-2 span,
      #section-why-attend-2 .subtitle,
      #section-schedule,
      #section-schedule h1, #section-schedule h2, #section-schedule h3,
      #section-schedule h4, #section-schedule p, #section-schedule span,
      #section-schedule .subtitle,
      #section-tickets,
      #section-tickets h1, #section-tickets h2, #section-tickets h3,
      #section-tickets h4, #section-tickets p, #section-tickets span,
      #section-tickets .subtitle,
      #section-venue,
      #section-venue h1, #section-venue h2, #section-venue h3,
      #section-venue h4, #section-venue p, #section-venue span,
      #section-venue .subtitle,
      #section-faq,
      #section-faq h1, #section-faq h2, #section-faq h3,
      #section-faq h4, #section-faq p, #section-faq span,
      #section-faq .subtitle {
        color: var(--color-text-strong) !important;
      }

      /* Nadpisy v svetlých sekciách — tmavý fialový gradient viditeľný na svetlom pozadí */
      #section-about h1, #section-about h2,
      #section-why-attend h1, #section-why-attend h2,
      #section-why-attend-2 h1, #section-why-attend-2 h2,
      #section-schedule h1, #section-schedule h2,
      #section-tickets h1, #section-tickets h2,
      #section-venue h1, #section-venue h2,
      #section-faq h1, #section-faq h2 {
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
      }

      /* btn-main tlačidlá majú vždy biely text (zhodné s hlavičkou), aj keď sú v sekciách so stmaveným textom */
      #section-about .btn-main, #section-about .btn-main span,
      #section-why-attend .btn-main, #section-why-attend .btn-main span,
      #section-why-attend-2 .btn-main, #section-why-attend-2 .btn-main span,
      #section-schedule .btn-main, #section-schedule .btn-main span,
      #section-tickets .btn-main, #section-tickets .btn-main span,
      #section-venue .btn-main, #section-venue .btn-main span,
      #section-faq .btn-main, #section-faq .btn-main span {
        color: #ffffff !important;
      }

      /* Karty a vnorené tmavé prvky */
      #section-why-attend .bg-dark-2 {
        background-color: var(--color-surface-soft) !important;
      }
      #section-why-attend .bg-dark-2 h4,
      #section-why-attend .bg-dark-2 p {
        color: var(--color-text-strong) !important;
      }

      /* Počítadlo v sekcii
      IT výzvy*/
      #section-about .subtitle {
        display: inline-block;
      }
      #section-about .col-lg-5 img {
        width: 145%;
        max-width: 145%;
        margin-left: 0%;
      }
      @media (max-width: 1199px) {
        #section-about .col-lg-5 img {
          width: 100%;
          max-width: 100%;
          margin-left: 0;
        }
      }
      #section-about .about-stats {
        background-color: rgba(255, 255, 255, 0.6);
        border-radius: 8px;
        padding: 24px 12px;
      }
      #section-about .about-stat-item {
        text-align: left;
        padding: 0 20px;
        position: relative;
      }
      #section-about .about-stat-item + .about-stat-item::before {
        content: "";
        position: absolute;
        left: 0;
        top: 10%;
        height: 80%;
        width: 1px;
        background-color: rgba(26, 16, 64, 0.15);
      }
      #section-about .about-stat-number {
        font-size: 2rem;
        font-weight: 700;
        line-height: 1.1;
        color: var(--color-text-strong);
      }
      #section-about .about-stat-number .about-stat-plus {
        color: #813eed !important;
        font-weight: 700;
      }
      #section-about .about-stat-label {
        font-size: 0.95rem;
        color: var(--color-text-strong);
        margin-top: 4px;
      }
      @media (max-width: 767px) {
        #section-about .about-stat-item {
          margin-bottom: 16px;
        }
        #section-about .about-stat-item + .about-stat-item::before {
          display: none;
        }
        /* Menšie čísla, aby sa napr. "64 000+" zmestilo do jedného riadku */
        #section-about .about-stat-number {
          font-size: 1.5rem;
          white-space: nowrap;
        }
      }
      /* Tablet + iPad Pro (768–1199): štatistiky 2×2 namiesto 4 vedľa seba (nestláčajú sa) */
      @media (min-width: 768px) and (max-width: 1199px) {
        #section-about .about-stat-item {
          flex: 0 0 50%;
          max-width: 50%;
          margin-bottom: 22px;
        }
        #section-about .about-stat-item + .about-stat-item::before { display: none; }
        #section-about .about-stat-number { white-space: nowrap; }
      }

      /* Zväčšenie log v slideri o 30% */
      .owl-6 img {
        transform: scale(1.3);
      }
      @media (max-width: 767px) {
        .owl-6 img { transform: scale(1.2); padding-left: 4px !important; padding-right: 4px !important; }
      }
      /* Certifikáty — na mobile sú logá pri max-width:49% príliš malé */
      @media (max-width: 1199px) {
        #section-schedule .row.g-2 img { max-width: 72% !important; }
      }
      @media (max-width: 767px) {
        /* 2 logá vedľa seba namiesto jedného cez celú šírku */
        #section-schedule .row.g-2 > [class*="col-"] { flex: 0 0 50%; max-width: 50%; }
        #section-schedule .row.g-2 img { max-width: 78% !important; }
      }
      /* Mobil/tablet/iPad Pro: „Prečo s nami" + počítadlo na celú šírku, vycentrované pod sebou */
      @media (max-width: 1199px) {
        #section-about .col-lg-auto.offset-lg-2 {
          width: 100%;
          margin-left: 0 !important;
          text-align: center;
        }
        #section-about .row.gx-5 > .col-lg-7 {
          width: 100%;
          flex: 0 0 100%;
          max-width: 100%;
        }
        #section-about .about-stats {
          max-width: 620px;
          margin: 18px auto 0;
        }
      }

      /* === Karty služieb — Naše služby === */
      .service-card {
        position: relative;
        height: 540px;
        border-radius: 16px;
        overflow: hidden;
        background: linear-gradient(160deg, #1a0a45 0%, #2a1a5e 60%, #3a2a72 100%);
        border: 1px solid rgba(255,255,255,0.06);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 44px;
        transition: box-shadow .45s ease, transform .35s ease;
      }
      .service-card.hover-bg-color {
        transition: background .45s ease, box-shadow .45s ease, transform .35s ease;
      }
      .service-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 30px 60px rgba(0,0,0,0.4);
      }
      .service-card-bg {
        position: absolute;
        top: 0;
        right: 0;
        width: 65%;
        height: 100%;
        object-fit: cover;
        object-position: right center;
        z-index: 0;
        opacity: 0.85;
        -webkit-mask-image: linear-gradient(to left, black 40%, transparent 100%);
                mask-image: linear-gradient(to left, black 40%, transparent 100%);
        transition: transform .8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .service-card-content {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        height: 100%;
      }
      .service-card-body {
        margin-top: auto;
        margin-bottom: 24px;
      }
      #section-why-attend .service-card h3,
      #section-why-attend .service-card p,
      #section-why-attend-2 .service-card h3,
      #section-why-attend-2 .service-card p {
        color: #ffffff !important;
      }
      #section-why-attend .service-card p,
      #section-why-attend-2 .service-card p {
        color: rgba(255,255,255,0.72) !important;
      }
      .service-card-icon {
        width: 56px;
        height: 56px;
        border: 1px solid rgba(255,255,255,0.18);
        border-radius: 12px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #ffffff;
      }
      .service-card-icon svg {
        width: 26px;
        height: 26px;
        stroke: #ffffff;
        fill: none;
        stroke-width: 1.6;
      }
      .service-card-body h3 {
        color: #ffffff !important;
        font-size: 1.9rem;
        line-height: 1.2;
        margin: 0 0 14px;
        font-weight: 600;
      }
      .service-card-body p {
        color: rgba(255,255,255,0.72) !important;
        font-size: 1rem;
        line-height: 1.55;
        margin: 0;
        max-width: 90%;
      }
      .service-card .motion-cta {
        margin-top: 0;
      }
      @media (max-width: 1199px) {
        .service-card {
          height: 440px;
          padding: 32px;
        }
        .service-card-body h3 {
          font-size: 1.55rem;
        }
      }

      /* === Naše služby — rozbaľovací accordion (4 panely) === */
      .svc-acc {
        display: flex;
        gap: 14px;
        height: 600px;
        margin-top: 8px;
      }
      .svc-acc-item {
        position: relative;
        flex: 1 1 0;
        min-width: 0;
        border-radius: 18px;
        overflow: hidden;
        cursor: pointer;
        transition: flex .65s cubic-bezier(0.22,0.61,0.36,1);
      }
      .svc-acc-item.is-active { flex: 3.4 1 0; }
      .svc-acc-item:hover { flex: 3.4 1 0; }
      .svc-acc:hover .svc-acc-item.is-active:not(:hover) { flex: 1 1 0; }
      /* pozadie panela — placeholder gradient, neskôr nahradíš obrázkom cez --img */
      .svc-acc-img {
        position: absolute;
        inset: 0;
        z-index: 0;
        background: var(--img, var(--color-text-strong)) center / cover no-repeat;
        transition: transform .9s cubic-bezier(0.25,0.46,0.45,0.94);
      }
      .svc-acc-item:hover .svc-acc-img,
      .svc-acc-item.is-active .svc-acc-img { transform: scale(1.05); }
      .svc-acc-item::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(180deg, rgba(8,4,24,0.25) 0%, rgba(8,4,24,0.62) 100%);
      }
      .svc-acc-content {
        position: absolute;
        inset: 0;
        z-index: 2;
      }
      /* číslo + nadpis — pevne ukotvené, nemenia výšku medzi panelmi */
      .svc-acc-head {
        position: absolute;
        left: 0;
        right: 0;
        top: 33%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 0 22px;
      }
      .svc-acc-num {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 54px;
        height: 54px;
        padding: 0;
        border: 1px solid rgba(255,255,255,0.5);
        border-radius: 50%;
        color: #fff !important;
        margin-bottom: 20px;
      }
      .svc-acc-num svg {
        width: 26px;
        height: 26px;
        stroke: #fff;
        fill: none;
        stroke-width: 1.6;
        stroke-linecap: round;
        stroke-linejoin: round;
      }
      #section-why-attend .svc-acc-title {
        margin: 0;
        font-size: 1.15rem;
        font-weight: 700;
        letter-spacing: 1.3px;
        text-transform: uppercase;
        color: #fff !important;
        -webkit-text-fill-color: #fff;
        background: none !important;
      }
      #section-why-attend .svc-acc-desc {
        position: absolute;
        top: 56%;
        left: 50%;
        width: min(380px, 82%);
        margin: 0;
        font-size: 0.97rem;
        line-height: 1.7;
        text-align: center;
        color: rgba(255,255,255,0.82) !important;
        transform: translateX(-50%);
      }
      /* jednotlivé riadky popisu — každý vystredený, objaví sa postupne */
      #section-why-attend .svc-acc-line {
        display: block;
        color: rgba(255,255,255,0.82) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.82);
        opacity: 0;
        transform: translateY(12px);
        transition: opacity .5s ease, transform .5s ease;
      }
      .svc-acc-cta {
        position: absolute;
        left: 50%;
        bottom: 58px;
        opacity: 0;
        transform: translate(-50%, 8px);
        transition: opacity .5s ease .34s, transform .5s ease .34s;
      }
      /* CTA viditeľné len v rozbalenom paneli */
      .svc-acc-item.is-active .svc-acc-cta,
      .svc-acc-item:hover .svc-acc-cta {
        opacity: 1;
        transform: translate(-50%, 0);
      }
      .svc-acc:hover .svc-acc-item.is-active:not(:hover) .svc-acc-cta {
        opacity: 0;
        transform: translate(-50%, 8px);
      }
      /* popis sa odhaľuje riadok po riadku, keď je panel aktívny */
      #section-why-attend .svc-acc-item.is-active .svc-acc-line,
      #section-why-attend .svc-acc-item:hover .svc-acc-line {
        opacity: 1;
        transform: translateY(0);
        transition-delay: calc(var(--i, 0) * 0.09s + 0.06s);
      }
      #section-why-attend .svc-acc:hover .svc-acc-item.is-active:not(:hover) .svc-acc-line {
        opacity: 0;
        transform: translateY(12px);
        transition-delay: 0s;
      }
      @media (max-width: 1199px) {
        .svc-acc { flex-direction: column; height: auto; gap: 12px; }
        .svc-acc-item { flex: none; min-height: 88px; transition: min-height .55s cubic-bezier(0.22,0.61,0.36,1); }
        .svc-acc-item.is-active,
        .svc-acc-item:hover { min-height: 420px; }
        .svc-acc:hover .svc-acc-item.is-active:not(:hover) { min-height: 88px; }
        /* Viac miesta pre popis, aby ho CTA tlačidlo neprekrývalo */
        #section-why-attend .svc-acc-desc { top: 42%; }
        /* Zbalený panel: číslo + názov v riadku, vertikálne vycentrované do 88px (inak sa názov orezal) */
        .svc-acc-head {
          top: 50%;
          transform: translateY(-50%);
          flex-direction: row;
          justify-content: center;
          gap: 14px;
        }
        .svc-acc-num { margin-bottom: 0; width: 44px; height: 44px; }
        #section-why-attend .svc-acc-title { font-size: 1rem; }
        /* Rozbalený/aktívny panel: vráť pôvodné stĺpcové ukotvenie hore */
        .svc-acc-item.is-active .svc-acc-head,
        .svc-acc-item:hover .svc-acc-head {
          top: 20%;
          transform: none;
          flex-direction: column;
          gap: 0;
        }
        .svc-acc-item.is-active .svc-acc-num,
        .svc-acc-item:hover .svc-acc-num { margin-bottom: 16px; }
      }
      /* Užšie telefóny: menšie a širšie písmo popisu (menej zalomení) + väčší
         odstup, aby tlačidlo „ZISTIŤ VIAC" neprekrývalo popis */
      @media (max-width: 575px) {
        .svc-acc-item.is-active,
        .svc-acc-item:hover { min-height: 440px; }
        /* názov vyššie a ikona bližšie, aby vznikol odstup pod názvom */
        .svc-acc-item.is-active .svc-acc-head,
        .svc-acc-item:hover .svc-acc-head { top: 14%; }
        .svc-acc-item.is-active .svc-acc-num,
        .svc-acc-item:hover .svc-acc-num { margin-bottom: 10px; }
        #section-why-attend .svc-acc-desc {
          top: 44%;
          width: 92%;
          font-size: 0.85rem;
          line-height: 1.55;
        }
        .svc-acc-cta { bottom: 40px; }
      }

      /* === Štvorcové karty prípadových štúdií === */
      .case-card-sq {
        position: relative;
        display: block;
        aspect-ratio: 1 / 1;
        border-radius: 16px;
        overflow: hidden;
        background: #0c1530;
        border: 1px solid rgba(255,255,255,0.06);
        transition: transform .35s ease, box-shadow .45s ease;
        text-decoration: none;
      }
      .case-card-sq:hover {
        transform: translateY(-6px);
        box-shadow: 0 24px 50px rgba(0,0,0,0.4);
      }
      .case-card-sq .case-card-bg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: 0;
        transition: transform .8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .case-card-sq:hover .case-card-bg {
        transform: scale(1.1);
      }
      .case-card-sq .case-card-shade {
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,0.85) 100%);
      }
      /* jemný fialový filter cez všetky karty (stály) */
      .case-card-sq .case-card-overlay {
        position: absolute;
        inset: 0;
        z-index: 2;
        opacity: 1;
        background: linear-gradient(180deg, rgba(92,78,180,0.36) 0%, rgba(40,46,120,0.48) 100%);
        mix-blend-mode: multiply;
      }
      .case-card-sq .case-card-title {
        position: absolute;
        left: 0; right: 0; bottom: 0;
        padding: 20px 22px;
        margin: 0;
        z-index: 3;
        color: #ffffff;
        font-size: 1.2rem;
        font-weight: 600;
        line-height: 1.3;
      }

      /* Aktívne tlačidlo prepínača prípadových štúdií */
      .case-tab-btn.active,
      .case-tab-btn.active:hover,
      .case-tab-btn.active:focus {
        background: var(--btn-hover-bg) !important;
        color: #ffffff !important;
      }
      .case-tab-btn.active span {
        transform: none !important;
        opacity: 1 !important;
      }

      /* Zoznam preklikateľných odvetví */
      .case-industry-list {
        text-align: center;
        line-height: 2.2;
        margin-bottom: 8px;
      }
      .case-industry-list a {
        color: #ffffff;
        text-decoration: underline;
        text-underline-offset: 4px;
        text-decoration-thickness: 1px;
        padding: 0 10px;
        white-space: nowrap;
        display: inline-block;
        transition: color .25s ease;
      }
      .case-industry-list a:hover {
        color: var(--primary-color);
      }
      .case-industry-list .case-industry-sep {
        color: rgba(255,255,255,0.35);
      }
      /* Odvetvia bez štúdie — nie sú klikateľné (zatiaľ) */
      .case-industry-list .case-industry-soon {
        color: rgba(255,255,255,0.4);
        text-decoration: none;
        padding: 0 10px;
        white-space: nowrap;
        display: inline-block;
        cursor: default;
      }
      .case-card-soon {
        cursor: default;
        pointer-events: none;
      }
      /* Videostory — play tlačidlo na karte */
      .yt-card .yt-play {
        position: absolute;
        top: 42%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 58px;
        height: 58px;
        border-radius: 50%;
        background: rgba(118, 77, 240, 0.92);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 3;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
        transition: transform .25s ease, background .25s ease;
      }
      .yt-card .yt-play::after {
        content: "";
        margin-left: 5px;
        border-style: solid;
        border-width: 10px 0 10px 17px;
        border-color: transparent transparent transparent #ffffff;
      }
      .yt-card:hover .yt-play {
        transform: translate(-50%, -50%) scale(1.08);
        background: rgba(118, 77, 240, 1);
      }

      /* Slider prípadových štúdií */
      .case-slider-wrap {
        position: relative;
        padding: 0 160px;
      }
      .case-slider .owl-nav button.owl-prev,
      .case-slider .owl-nav button.owl-next {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 36px;
        height: 36px;
        border-radius: 50%;
        background: rgba(255,255,255,0.08) !important;
        border: 1px solid rgba(255,255,255,0.2) !important;
        color: #ffffff !important;
        font-size: 16px !important;
        line-height: 1 !important;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background .25s ease, color .25s ease, border-color .25s ease;
      }
      .case-slider .owl-nav button.owl-prev {
        left: -110px;
      }
      .case-slider .owl-nav button.owl-next {
        right: -110px;
      }
      .case-slider .owl-nav button.owl-prev:hover,
      .case-slider .owl-nav button.owl-next:hover {
        background: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
      }
      .case-slider .owl-nav button.disabled {
        opacity: 0.35;
        cursor: default;
      }
      .case-slider .owl-nav button span {
        font-size: 20px;
        line-height: 1;
      }
      /* Šípky sú 36x36 px, na mobile pod odporúčaným dotykovým minimom 44x44 px.
         Zväčšuje ich priehľadný prekryv, nie samotné tlačidlo: kruh a jeho tieň
         ostávajú vizuálne rovnaké a nemení sa ani odsadenie obalu (.case-slider-wrap),
         ktoré je na 575 px iba 44 px a väčšie tlačidlo by sa doň nezmestilo. */
      .case-slider .owl-nav button.owl-prev::after,
      .case-slider .owl-nav button.owl-next::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 44px;
        height: 44px;
        transform: translate(-50%, -50%);
      }

      @media (max-width: 1199px) {
        .case-slider-wrap { padding: 0 100px; }
        .case-slider .owl-nav button.owl-prev { left: -70px; }
        .case-slider .owl-nav button.owl-next { right: -70px; }
      }
      @media (max-width: 767px) {
        .case-slider-wrap { padding: 0 60px; }
        .case-slider .owl-nav button.owl-prev { left: -44px; }
        .case-slider .owl-nav button.owl-next { right: -44px; }
      }
      @media (max-width: 575px) {
        .case-slider-wrap { padding: 0 44px; }
        .case-slider .owl-nav button.owl-prev { left: -38px; }
        .case-slider .owl-nav button.owl-next { right: -38px; }
      }

      /* === Karty technológií === */
      .tech-card {
        position: relative;
        background: #ffffff;
        border-radius: 16px;
        padding: 0 24px 32px;
        box-shadow: 0 6px 24px rgba(0,0,0,0.08);
        height: 100%;
        min-height: 520px;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        transition: transform .35s ease, box-shadow .35s ease;
      }
      .tech-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 16px 40px rgba(0,0,0,0.18);
      }
      .tech-card-header {
        position: relative;
        margin: 0 -24px 32px;
        padding: 18px;
        min-height: 132px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(135deg, #9b5cff 0%, #6024c8 60%, #3d1382 100%);
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 14px), 50% 100%, 0 calc(100% - 14px));
        text-align: center;
        overflow: hidden;
      }
      .tech-card-header::before {
        content: '';
        position: absolute;
        top: -40%;
        right: -30%;
        width: 140%;
        height: 160%;
        background: radial-gradient(circle, rgba(200, 160, 255, 0.35) 0%, transparent 55%);
        pointer-events: none;
      }
      .tech-card-title {
        position: relative;
        z-index: 2;
        font-size: 1.4rem;
        color: #ffffff !important;
        line-height: 1.2;
        margin: 0;
        font-weight: 600;
      }
      .tech-card-logos {
        flex: 1;
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-items: center;
        gap: 28px;
        padding: 8px 0;
      }
      .tech-card-logos.cols-2 {
        grid-template-columns: 1fr 1fr;
        gap: 28px 16px;
      }
      .tech-card-logos img {
        /* Karta je v pásme 992–1300 px iba 91 až 124 px široká (col-lg-2), ale
           logo si drží 140 px, takže pretekalo doprava mimo kartu. Nahlásené
           klientom 26. 8. 2026. Grid navyše nedovolí položke zmenšiť sa pod
           obsah, kým nie je `min-width: 0`. */
        min-width: 0;
        max-width: min(140px, 100%);
        max-height: 52px;
        width: auto;
        height: auto;
        object-fit: contain;
        filter: grayscale(1);
        opacity: 0.88;
        transition: filter .25s ease, opacity .25s ease;
      }
      .tech-card:hover .tech-card-logos img {
        filter: grayscale(0);
        opacity: 1;
      }
      @media (max-width: 1199px) {
        .tech-card {
          min-height: 460px;
          padding: 0 20px 28px;
        }
        .tech-card-header {
          margin: 0 -20px 28px;
          padding: 14px;
          min-height: 96px;
        }
        .tech-card-title {
          font-size: 1.15rem;
        }
      }
      /* Úzke mobily — logá nesmú pretekať bunku mriežky */
      @media (max-width: 575px) {
        .tech-card {
          padding: 0 14px 24px;
        }
        .tech-card-header {
          margin: 0 -14px 24px;
        }
        .tech-card-logos.cols-2 {
          gap: 22px 10px;
        }
        .tech-card-logos img {
          min-width: 0;
          max-width: 100%;
          max-height: 46px;
        }
      }

      /* === Hero banner — stlmenie tmavých a farebných vrstiev nad obrázkom, aby pôvodné farby viac presvitali === */
      #section-hero .sw-overlay {
        opacity: 0.35 !important;
      }
      #section-hero .gradient-edge-top.color {
        opacity: 0.25 !important;
      }
      #section-hero .gradient-edge-bottom {
        opacity: 0.5 !important;
      }
      /* Motion efekt (častice) — hore plynule vyblednutý cez gradient mask,
         aby neprekrýval logo a názvy podstránok (žiadny ostrý rez). */
      #particles-js,
      #particles-js-right {
        -webkit-mask-image: linear-gradient(to bottom, transparent 0, transparent 110px, #000 175px);
                mask-image: linear-gradient(to bottom, transparent 0, transparent 110px, #000 175px);
      }
      @media (max-width: 1199px) {
        #particles-js,
        #particles-js-right {
          -webkit-mask-image: linear-gradient(to bottom, transparent 0, transparent 65px, #000 120px);
                  mask-image: linear-gradient(to bottom, transparent 0, transparent 65px, #000 120px);
        }
      }
      /* Posunutie obsahu hero bannera nižšie */
      #section-hero .abs-centered {
        top: 60% !important;
      }
      /* Desktop: kontaktný panel hero v strede medzi spodkom podnadpisu a spodkom banneru */
      @media (min-width: 992px) {
        #section-hero .abs.bottom-0 {
          top: 77%;
          bottom: auto;
        }
      }
      /* Mobil/tablet: panel vycentrovaný v spodnej časti banneru (stred panelu na 79 %,
         cez translateY(-50%) — nezáleží na výške panelu) */
      @media (max-width: 1199px) {
        #section-hero .abs.bottom-0 {
          top: 79%;
          bottom: auto;
          transform: translateY(-50%);
        }
      }
      @media (max-width: 1199px) {
        #section-hero .abs-centered {
          top: 55% !important;
        }
      }
      /* Mobil: kompaktnejší hero (ako na podstránkach) — nižší banner (1000→760),
         obsah vyššie a kontaktný panel tesne pod obsahom, nie plávajúci s medzerami */
      @media (max-width: 767px) {
        #section-hero.mh-800 { min-height: 760px !important; }
        #section-hero .abs-centered { top: 44% !important; }
        #section-hero .abs.bottom-0 {
          top: auto !important;
          bottom: 24px !important;
          transform: none !important;
        }
      }
      /* Väčší podnadpis v hero banneri */
      #section-hero .hero-subheadline {
        font-size: 3.6rem;
        line-height: 1.15;
        font-weight: 700;
      }
      @media (max-width: 1199px) {
        #section-hero .hero-subheadline {
          font-size: 2.4rem;
        }
      }
      @media (max-width: 575px) {
        #section-hero .hero-subheadline {
          font-size: 1.6rem;
        }
      }
      /* Spodný panel hero (číslo, e-mail, „Zanechajte Váš e-mail") — zobraziť aj na
         mobile/tablete/iPad Pro (bol skrytý cez .sm-hide) */
      @media (max-width: 1199px) {
        #section-hero .abs.bottom-0 .sm-hide { display: block !important; }
      }
      @media (max-width: 767px) {
        #section-hero .abs.bottom-0 .sm-hide { padding: 20px !important; text-align: center; }
        #section-hero .abs.bottom-0 .row { row-gap: 14px; }
        #section-hero .abs.bottom-0 h5 { font-size: 0.85rem; }
        #section-hero .abs.bottom-0 p { font-size: 0.8rem; margin-bottom: 8px !important; }
        /* číslo a e-mail vycentrovať */
        #section-hero .abs.bottom-0 .d-flex.align-items-center { justify-content: center; }
        #section-hero .abs.bottom-0 .fs-18 { font-size: 0.95rem !important; }
        #section-hero .abs.bottom-0 .form-control,
        #section-hero .abs.bottom-0 .btn-main { height: 42px !important; font-size: 0.85rem; }
        #section-hero .abs.bottom-0 .btn-main { line-height: 42px !important; }
      }

      /* === Motion split section pod hero bannerom === */
      .motion-scroll-wrap {
        position: relative;
        height: 100vh;
        overflow: hidden;
      }
      .motion-sticky {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        will-change: transform;
      }
      .motion-content {
        position: relative;
        z-index: 2;
        width: 100%;
        max-width: 1200px;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 0 32px;
      }
      .motion-text-wrap {
        text-align: center;
        max-width: 1100px;
        margin: 0 auto 4px;
        will-change: transform, opacity;
      }
      .motion-text-wrap .subtitle {
        color: #c4a8ff;
        margin-bottom: 14px;
      }
      .motion-cta {
        display: inline-flex;
        align-items: stretch;
        gap: 10px;
        margin-top: 44px;
      }
      .motion-headline {
        font-size: 64px;
        line-height: 1.2em;
        padding-bottom: 0.12em;
        letter-spacing: -0.015em;
        background: linear-gradient(180deg, #ffffff 0%, #b39fff 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        margin: 0;
      }
      @media (max-width: 1199px) {
        .motion-headline { font-size: 44px; }
      }
      @media (max-width: 575px) {
        .motion-headline { font-size: 34px; }
      }
      .motion-stage {
        position: relative;
        width: 100%;
        height: 64vh;
        max-height: 600px;
      }
      .motion-img-base {
        position: absolute;
        top: 50%;
        left: 25%;
        transform: translate(-50%, -50%);
        width: 70%;
        min-width: 560px;
        max-width: 1120px;
        height: auto;
        z-index: 1;
        will-change: opacity;
        -webkit-mask-image: radial-gradient(ellipse at center, black 30%, rgba(0,0,0,0.85) 55%, transparent 100%);
                mask-image: radial-gradient(ellipse at center, black 30%, rgba(0,0,0,0.85) 55%, transparent 100%);
      }
      .motion-base-text {
        position: absolute;
        top: 50%;
        left: 72%;
        transform: translate(-50%, -50%);
        width: 100%;
        max-width: 480px;
        text-align: left;
        z-index: 2;
        will-change: opacity, transform;
      }
      .motion-base-text h3 {
        font-size: 2.6rem;
        line-height: 1.15;
        margin: 0 0 16px;
        background: linear-gradient(180deg, #ffffff 0%, #b39fff 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      .motion-base-text p {
        margin: 0;
        color: rgba(255,255,255,0.78);
        line-height: 1.6;
        font-size: 1.15rem;
      }
      .motion-row {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 50px;
        align-items: center;
        opacity: 0;
        transform: translateY(-50%);
        will-change: transform, opacity;
        z-index: 2;
      }
      .motion-row-mid { z-index: 10; }
      .motion-row-top { z-index: 3; }
      .motion-row-bot { z-index: 2; }
      .motion-row-img-wrap {
        display: flex;
        justify-content: center;
      }
      .motion-row-img {
        width: 100%;
        max-width: 880px;
        height: auto;
        filter: drop-shadow(0 18px 40px rgba(124, 92, 191, 0.55));
      }
      .motion-row-text {
        text-align: left;
        max-width: 540px;
      }
      .motion-row-text h3 {
        font-size: 2.6rem;
        line-height: 1.15;
        margin: 0 0 16px;
        background: linear-gradient(180deg, #ffffff 0%, #b39fff 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      .motion-row-text p {
        margin: 0;
        color: rgba(255,255,255,0.78);
        line-height: 1.6;
        font-size: 1.15rem;
      }
      .motion-row-text ul {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      .motion-row-text ul li {
        position: relative;
        padding-left: 38px;
        margin-bottom: 10px;
        color: rgba(255,255,255,0.78);
        line-height: 1.5;
        font-size: 1.15rem;
      }
      .motion-row-text ul li::before {
        content: "→";
        position: absolute;
        left: 0;
        top: 0;
        width: auto;
        height: auto;
        font-size: 1em;
        line-height: 1.5;
        font-weight: bold;
        color: var(--primary-color);
        -webkit-text-stroke: 0.8px var(--primary-color);
        text-shadow: 0 0 0.6px var(--primary-color);
      }
      @media (max-width: 1199px) {
        .motion-headline { font-size: 52px; }
        .motion-text-wrap { max-width: 900px; }
      }
      @media (max-width: 1199px) {
        .motion-headline { font-size: 42px; }
        .motion-content { padding: 0 24px; }
        .motion-row { gap: 28px; }
        .motion-row-img { max-width: 80%; }
        .motion-row-text { max-width: 100%; }
        .motion-row-text h3 { font-size: 2rem; }
        .motion-row-text p,
        .motion-row-text ul li { font-size: 1.05rem; }
        .motion-img-base { width: 82%; max-width: 760px; min-width: 0; }
        .motion-base-text { max-width: 45%; }
        .motion-base-text h3 { font-size: 2rem; }
        .motion-base-text p { font-size: 1.05rem; }
        .motion-stage { height: 70vh; max-height: none; }
      }

      /* === Mobil + tablet (vrátane iPad Pro): vypnúť sticky-scroll animáciu, statický layout pod sebou === */
      @media (max-width: 1199px) {
        .motion-scroll-wrap {
          height: auto !important;
          overflow: visible;
        }
        .motion-sticky {
          position: relative !important;
          height: auto !important;
          transform: none !important;
          padding: 50px 0;
        }
        .motion-content {
          padding: 0 16px;
        }
        .motion-text-wrap {
          transform: none !important;
          opacity: 1 !important;
          margin: 0 auto 24px;
        }
        .motion-headline { font-size: 32px; }
        .motion-stage {
          height: auto !important;
          max-height: none !important;
          display: flex;
          flex-direction: column;
          gap: 36px;
          align-items: center;
        }
        .motion-img-base {
          position: relative !important;
          top: auto !important;
          left: auto !important;
          transform: none !important;
          opacity: 1 !important;
          width: 80% !important;
          max-width: 360px !important;
          min-width: 0 !important;
          margin: 0 auto;
        }
        .motion-base-text {
          position: relative !important;
          top: auto !important;
          left: auto !important;
          right: auto !important;
          bottom: auto !important;
          transform: none !important;
          opacity: 1 !important;
          width: 100%;
          max-width: 100%;
          text-align: center;
          padding: 0;
          margin-top: -18px;
        }
        .motion-row {
          position: relative !important;
          top: auto !important;
          left: auto !important;
          right: auto !important;
          transform: none !important;
          opacity: 1 !important;
          display: flex;
          flex-direction: column;
          gap: 12px;
          width: 100%;
          align-items: center;
        }
        .motion-row-img-wrap { width: 100%; }
        .motion-row-img { max-width: 70%; }
        .motion-row-text {
          text-align: center;
          max-width: 100%;
        }
        .motion-row-text h3 { font-size: 1.7rem; }
        .motion-row-text p,
        .motion-row-text ul li { font-size: 1rem; }
        .motion-row-text ul li {
          text-align: left;
          display: inline-block;
        }
      }
      @media (max-width: 480px) {
        .motion-headline { font-size: 26px; }
        .motion-row-text h3,
        .motion-base-text h3 { font-size: 1.55rem; }
        .motion-row-img { max-width: 80%; }
        .motion-img-base { max-width: 280px !important; }
      }
      @media (max-width: 360px) {
        .motion-headline { font-size: 22px; }
      }

      /* === Motion section 2 — light theme === */
      #section-motion-2 {
        background: transparent;
        position: relative;
      }
      #section-motion-2 .motion-text-wrap .subtitle,
      #section-motion-2 .motion-stage-subtitle .subtitle {
        color: #813eed;
      }
      .motion-stage-subtitle {
        position: absolute;
        top: 13vh;
        left: 0;
        right: 0;
        text-align: center;
        z-index: 3;
        opacity: 0;
        will-change: opacity;
      }
      #section-motion-2 .motion-headline {
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      #section-motion-2 .motion-base-text h3,
      #section-motion-2 .motion-row-text h3 {
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      #section-motion-2 .motion-base-text p,
      #section-motion-2 .motion-row-text p {
        color: rgba(26, 16, 64, 0.78);
      }
      #section-motion-2 .motion-row-text ul li {
        color: rgba(26, 16, 64, 0.78);
      }
      #section-motion-2 .motion-row-text ul li::before {
        background: transparent;
        color: var(--primary-color);
      }
      #section-motion-2 .motion-row-img {
        filter: drop-shadow(0 18px 40px rgba(124, 92, 191, 0.30));
      }

      /* === Sieťový efekt na pozadí sekcie Súčasné výzvy === */
      .challenge-network {
        position: absolute;
        top: 58%;
        left: 32%;
        transform: translate(-50%, -50%);
        width: min(680px, 56%);
        z-index: 0;
        pointer-events: none;
        opacity: 0.95;
      }
      .challenge-network svg {
        width: 100%;
        height: auto;
        display: block;
        overflow: visible;
      }
      @media (max-width: 1199px) {
        .challenge-network { left: 30%; width: 52%; opacity: 0.55; }
      }
      @media (max-width: 767px) {
        .challenge-network { display: none; }
      }
      /* iPad/tablet (vrátane iPad Pro): diagram viditeľný, ale stohovaný pod textom (nie absolútne cez text) */
      @media (min-width: 768px) and (max-width: 1199px) {
        .motion-sticky { justify-content: flex-start; }
        .motion-content { order: 1; padding: 0 32px; }
        .challenge-network {
          display: block !important;
          position: relative !important;
          top: auto !important;
          left: auto !important;
          transform: none !important;
          width: min(480px, 72%);
          margin: 8px auto 0;
          opacity: 1;
          order: 2;
        }
        #section-motion-2 .motion-base-text { padding: 0 8px; }
      }

      /* === Karty výziev (text-only motion) === */
      .motion-cards {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        transform: translateY(-50%);
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 26px;
        z-index: 3;
        pointer-events: none;
      }
      /* odkaz v texte (napr. CTA "Zmeňte to už dnes") musí ostať klikateľný nad kartami */
      .motion-base-text { pointer-events: none; }
      .motion-base-text a,
      .motion-base-text button { pointer-events: auto; }
      #section-motion-2 .motion-card {
        position: relative;
        text-align: left;
        padding: 34px 28px;
        border-radius: 16px;
        background: rgba(129, 62, 237, 0.045);
        border: 1px solid rgba(129, 62, 237, 0.18);
        opacity: 0;
        transform: translateY(48px);
        will-change: opacity, transform;
      }
      #section-motion-2 .motion-card-num {
        display: block;
        font-size: 0.95rem;
        font-weight: 700;
        letter-spacing: 0.12em;
        color: var(--primary-color);
        margin-bottom: 16px;
      }
      #section-motion-2 .motion-card h3 {
        font-size: 1.7rem;
        line-height: 1.15;
        margin: 0 0 18px;
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      #section-motion-2 .motion-card ul {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      #section-motion-2 .motion-card ul li {
        position: relative;
        padding-left: 30px;
        margin-bottom: 11px;
        color: rgba(26, 16, 64, 0.78);
        line-height: 1.5;
        font-size: 1.02rem;
      }
      #section-motion-2 .motion-card ul li:last-child {
        margin-bottom: 0;
      }
      #section-motion-2 .motion-card ul li::before {
        content: "→";
        position: absolute;
        left: 0;
        top: 0;
        font-weight: bold;
        color: var(--primary-color);
      }
      @media (max-width: 1199px) {
        .motion-cards { gap: 16px; }
        #section-motion-2 .motion-card { padding: 24px 20px; }
        #section-motion-2 .motion-card h3 { font-size: 1.4rem; }
        #section-motion-2 .motion-card ul li { font-size: 0.95rem; }
      }
      @media (max-width: 1199px) {
        .motion-base-text {
          position: relative !important;
          top: auto !important;
          left: auto !important;
          right: auto !important;
          transform: none !important;
          opacity: 1 !important;
          width: 100%;
          max-width: 100%;
          text-align: center;
          margin: 0 auto 32px;
        }
        .motion-cards {
          position: relative !important;
          top: auto !important;
          transform: none !important;
          grid-template-columns: 1fr;
          gap: 16px;
        }
        #section-motion-2 .motion-card {
          opacity: 1 !important;
          transform: none !important;
        }
      }

      /* === Sekcia "Súčasné výzvy" — 3 karty (bežný tok, svetlá téma) === */
      #section-challenges {
        background: transparent;
        padding-top: 30px;
        padding-bottom: 110px;
      }
      #section-challenges .challenge-card {
        height: 100%;
        text-align: left;
        padding: 34px 28px;
        border-radius: 16px;
        background: rgba(129, 62, 237, 0.045);
        border: 1px solid rgba(129, 62, 237, 0.18);
      }
      #section-challenges .challenge-card-num {
        display: block;
        font-size: 0.95rem;
        font-weight: 700;
        letter-spacing: 0.12em;
        color: var(--primary-color);
        margin-bottom: 16px;
      }
      #section-challenges .challenge-card h3 {
        font-size: 1.7rem;
        line-height: 1.15;
        margin: 0 0 18px;
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      #section-challenges .challenge-card ul {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      #section-challenges .challenge-card ul li {
        position: relative;
        padding-left: 30px;
        margin-bottom: 11px;
        color: rgba(26, 16, 64, 0.78);
        line-height: 1.5;
        font-size: 1.02rem;
      }
      #section-challenges .challenge-card ul li:last-child {
        margin-bottom: 0;
      }
      #section-challenges .challenge-card ul li::before {
        content: "→";
        position: absolute;
        left: 0;
        top: 0;
        font-weight: bold;
        color: var(--primary-color);
      }
      @media (max-width: 1199px) {
        #section-challenges .challenge-card { padding: 24px 20px; }
        #section-challenges .challenge-card h3 { font-size: 1.4rem; }
        #section-challenges .challenge-card ul li { font-size: 0.95rem; }
      }

      /* === Rastúce nároky na komplexitu IT — plávajúce otázky === */
      #section-it-complexity { position: relative; overflow: hidden; background: transparent !important; padding-top: 0; margin-top: -40px; }
      #section-it-complexity .ic-head { text-align: center; max-width: 860px; margin: 0 auto; }
      #section-it-complexity .subtitle { color: var(--color-text-strong) !important; }
      #section-it-complexity h2 {
        background: linear-gradient(180deg, var(--color-text-strong) 0%, #7c5cbf 85%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      #section-it-complexity .ic-lead {
        color: rgba(26, 16, 64, 0.62);
        margin: 16px 0 0;
        font-size: 1.05rem;
      }
      .ic-stage {
        position: relative;
        height: 420px;
        margin-top: 24px;
      }
      #section-it-complexity .ic-globe {
        position: absolute;
        inset: -8% -2%;
        z-index: 0;
        pointer-events: none;
        background: url("../../images/globe-bg.png") no-repeat center center;
        background-size: contain;
        mix-blend-mode: multiply;
        opacity: 0.45;
      }
      .ic-bubble {
        position: absolute;
        z-index: 2;
        cursor: pointer;
        top: var(--top);
        left: var(--left);
        max-width: min(40vw, 430px);
        padding: 15px 26px;
        border-radius: 50px;
        background: linear-gradient(135deg, var(--primary-color) 0%, #9d5cff 100%);
        color: #fff;
        font-weight: 600;
        font-size: var(--size, 1.05rem);
        line-height: 1.3;
        text-align: center;
        box-shadow: 0 18px 40px -12px rgba(118, 77, 240, 0.55);
        opacity: 0;
        will-change: transform, opacity;
        transform: translate(-50%, -50%) scale(0.35);
        animation: icFloat 33s linear infinite;
        animation-delay: var(--delay, 0s);
      }
      @keyframes icFloat {
        0%   { opacity: 0; transform: translate(calc(-50% + var(--fx, 0px)), calc(-50% + var(--fy, 0px))) scale(0.35); }
        3%   { opacity: 1; transform: translate(-50%, -50%) scale(1); }
        4%   { transform: translate(-50%, -50%) scale(1.05); }
        33%  { opacity: 1; transform: translate(-50%, -50%) scale(1.05); }
        37%  { opacity: 0; transform: translate(calc(-50% - var(--fx, 0px) * 0.4), calc(-50% - var(--fy, 0px) * 0.4)) scale(1.4); }
        100% { opacity: 0; transform: translate(-50%, -50%) scale(1.4); }
      }
      @media (max-width: 1199px) {
        .ic-stage { height: 560px; }
        .ic-bubble { max-width: 62vw; font-size: 0.95rem !important; padding: 12px 18px; }
      }
      /* Telefóny + iPad (vrátane iPad Pro): 3 otázky pod sebou (tri riadky), vycentrované, striedajú sa */
      @media (max-width: 1199px) {
        .ic-stage { position: relative; height: 460px; }
        .ic-bubble {
          left: 50%;
          max-width: min(84vw, 520px);
          font-size: 0.95rem !important;
          padding: 11px 18px;
          animation-name: icFloatMobile;
        }
        /* Susedné otázky idú do rôznych riadkov, aby sa neprekrývali */
        .ic-stage .ic-bubble:nth-child(3n+2) { top: 16%; }
        .ic-stage .ic-bubble:nth-child(3n)   { top: 50%; }
        .ic-stage .ic-bubble:nth-child(3n+1) { top: 84%; }
      }
      /* Mobilná verzia animácie: dlhšie okno viditeľnosti → naraz sú vidno ~3 otázky (v troch riadkoch) */
      @keyframes icFloatMobile {
        0%   { opacity: 0; transform: translate(-50%, -50%) scale(0.85); }
        3%   { opacity: 1; transform: translate(-50%, -50%) scale(1); }
        28%  { opacity: 1; transform: translate(-50%, -50%) scale(1); }
        32%  { opacity: 0; transform: translate(-50%, -50%) scale(1.06); }
        100% { opacity: 0; transform: translate(-50%, -50%) scale(1.06); }
      }
      @media (prefers-reduced-motion: reduce) {
        .ic-stage { height: auto; display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; cursor: default; }
        .ic-bubble { position: static; transform: none; opacity: 1; animation: none; max-width: 100%; }
      }

/* Vodoznak v pätičke je na blogu, prípadových štúdiách a domovskej stránke
   výraznejší než inde (0.11 proti 0.06 v css/components/footer.css) a má vlastnú
   mobilnú veľkosť. Zvyšok pätičky je v komponente. */
img.footer-watermark { opacity: 0.11; }
@media (max-width: 767px) { img.footer-watermark { width: 100vw; bottom: -11vw; } }

/* Kontaktný formulár v sekcii Spojme sa — minimalistický */
      #section-venue .contact-form-simple {
        max-width: 720px;
        margin: 0 auto;
        padding: 60px 0;
      }
      @media (max-width: 767px) {
        #section-venue .contact-form-simple {
          padding: 40px 0;
        }
      }
      #section-venue .contact-form-simple input[type="text"],
      #section-venue .contact-form-simple input[type="email"],
      #section-venue .contact-form-simple textarea {
        width: 100%;
        background: transparent;
        border: none;
        border-bottom: 1px solid rgba(26, 16, 64, 0.25);
        border-radius: 0;
        color: var(--color-text-strong) !important;
        padding: 14px 4px;
        font-size: 1rem;
        font-family: inherit;
        transition: border-color .25s ease;
      }
      #section-venue .contact-form-simple textarea {
        min-height: 110px;
        resize: vertical;
      }
      #section-venue .contact-form-simple input::placeholder,
      #section-venue .contact-form-simple textarea::placeholder {
        color: rgba(26, 16, 64, 0.65);
      }
      #section-venue .contact-form-simple input:focus,
      #section-venue .contact-form-simple textarea:focus {
        outline: none;
        border-bottom-color: var(--primary-color);
      }
      #section-venue .contact-form-simple .form-submit-row {
        margin-top: 28px;
        text-align: center;
      }
      /* CTA tlačidlo — fialové s bielym písmom (zhodné s ostatnými btn-main na stránke) */
      #section-venue .contact-form-simple button.btn-main,
      #section-venue .contact-form-simple button.btn-main:hover,
      #section-venue .contact-form-simple button.btn-main:focus {
        background: var(--primary-color);
        color: #ffffff !important;
        border: none;
        cursor: pointer;
        font-family: var(--btn-font-family);
        font-size: var(--btn-font-size);
        font-weight: var(--btn-font-weight);
        letter-spacing: var(--btn-letter-spacing);
        padding: var(--btn-padding);
        text-transform: var(--btn-text-transform);
        border-radius: var(--btn-rounded);
      }
      #section-venue .contact-form-simple button.btn-main span {
        color: #ffffff !important;
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide {
        position: relative;
        overflow: hidden;
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide span {
        display: block;
        position: relative;
        transition: all .3s ease-in-out;
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide:hover {
        background: var(--btn-hover-bg);
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide:hover span {
        transform: translate(0, 40px);
        opacity: 0;
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide:before {
        content: attr(data-hover-text);
        color: #ffffff !important;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, calc(-50% + 40px));
        opacity: 0;
        transition: all .3s ease-in-out;
      }
      #section-venue .contact-form-simple button.btn-main.fx-slide:hover:before {
        opacity: 1;
        transform: translate(-50%, -50%);
      }

      /* Rýchly CTA blok v sekcii Naše služby — text+formulár vľavo, obrázok vpravo */
      #section-why-attend .quick-cta-block {
        margin-top: 120px;
      }
      #section-why-attend .quick-cta-heading {
        font-size: 3.4rem;
        font-weight: 700;
        line-height: 1.15;
        margin: 0 0 12px;
        background: linear-gradient(180deg, #ffffff 0%, #b39fff 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }
      @media (max-width: 1199px) {
        #section-why-attend .quick-cta-heading { font-size: 2.8rem; }
      }
      @media (max-width: 1199px) {
        #section-why-attend .quick-cta-heading {
          font-size: 2rem;
          text-align: center;
        }
        #section-why-attend .quick-cta-subheading {
          text-align: center;
        }
      }
      #section-why-attend .quick-cta-subheading {
        font-size: 1.2rem;
        color: var(--color-text-strong);
        opacity: 0.75;
        margin: 0 0 32px;
        line-height: 1.4;
      }
      #section-why-attend .quick-cta-image {
        width: 100%;
        max-width: 520px;
        height: auto;
        display: block;
        margin: 0 auto;
        border-radius: 18px;
        box-shadow: 0 20px 50px rgba(118, 77, 240, 0.18);
      }
      @keyframes expertsZoomIn {
        from {
          opacity: 0;
          transform: scale(0.5);
        }
        to {
          opacity: 1;
          transform: scale(1);
        }
      }
      #section-why-attend .quick-cta-image.wow.experts-zoom-in {
        animation-name: expertsZoomIn;
        transform: scale(0.5);
        opacity: 0;
      }
      #section-why-attend .quick-cta-image.wow.experts-zoom-in.animated {
        transform: scale(1);
        opacity: 1;
      }
      #section-why-attend .quick-contact-form {
        margin: 0;
      }
      #section-why-attend .quick-contact-form input[type="email"],
      #section-why-attend .quick-contact-form input[type="tel"] {
        width: 100%;
        height: 52px;
        box-sizing: border-box;
        background: rgba(255, 255, 255, 0.55);
        border: 1px solid rgba(26, 16, 64, 0.18);
        border-radius: 10px;
        color: var(--color-text-strong);
        padding: 0 18px;
        font-size: 1rem;
        font-family: inherit;
        transition: border-color .25s ease, background .25s ease;
      }
      #section-why-attend .quick-contact-form input::placeholder {
        color: rgba(26, 16, 64, 0.65);
      }
      #section-why-attend .quick-contact-form input:focus {
        outline: none;
        border-color: var(--primary-color);
        background: rgba(255, 255, 255, 0.8);
      }
      #section-why-attend .quick-contact-form button.btn-main,
      #section-why-attend .quick-contact-form button.btn-main:hover,
      #section-why-attend .quick-contact-form button.btn-main:focus {
        width: 100%;
        height: 52px;
        background: var(--primary-color);
        color: #ffffff !important;
        border: none;
        cursor: pointer;
        font-family: var(--btn-font-family);
        font-size: var(--btn-font-size);
        font-weight: var(--btn-font-weight);
        letter-spacing: var(--btn-letter-spacing);
        padding: 0 20px;
        text-transform: var(--btn-text-transform);
        border-radius: var(--btn-rounded);
      }
      #section-why-attend .quick-contact-form button.btn-main span {
        color: #ffffff !important;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide {
        position: relative;
        overflow: hidden;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide span {
        display: block;
        position: relative;
        transition: all .3s ease-in-out;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide:hover {
        background: var(--btn-hover-bg);
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide:hover span {
        transform: translate(0, 40px);
        opacity: 0;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide:before {
        content: attr(data-hover-text);
        color: #ffffff !important;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, calc(-50% + 40px));
        opacity: 0;
        white-space: nowrap;
        transition: all .3s ease-in-out;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide span {
        white-space: nowrap;
      }
      #section-why-attend .quick-contact-form button.btn-main.fx-slide:hover:before {
        opacity: 1;
        transform: translate(-50%, -50%);
      }
      @media (max-width: 767px) {
        #section-why-attend .quick-contact-form {
          margin-top: 70px;
        }
      }
      #section-why-attend .quick-msg {
        margin-top: 22px;
        text-align: center;
        padding: 14px 18px;
        border-radius: 10px;
        font-size: 1rem;
      }
      #section-why-attend .quick-msg-ok {
        background: rgba(118, 77, 240, 0.12);
        color: var(--color-text-strong);
        border: 1px solid rgba(118, 77, 240, 0.35);
      }
      #section-why-attend .quick-msg-err {
        background: rgba(220, 53, 69, 0.10);
        color: #7a1320;
        border: 1px solid rgba(220, 53, 69, 0.35);
      }
      #section-why-attend .quick-contact-form input.error_input {
        border-color: #dc3545 !important;
        background: rgba(220, 53, 69, 0.06);
      }
      #section-why-attend .quick-contact-form button[disabled] {
        opacity: 0.6;
        cursor: wait;
      }

      /* iPad/tablet: kontaktné položky (Adresa/Telefón/E-mail) zarovnať vľavo,
         aby E-mail v 2. riadku sadol pod Adresu (nie vycentrovaný) */
      @media (min-width: 768px) and (max-width: 1199px) {
        #section-venue .d-flex.justify-content-center {
          justify-content: flex-start !important;
          padding-left: 8%;
        }
        /* certifikáty ISO — menšie na iPade (prebíja pravidlo 72 % vyššie) */
        #section-schedule .row.g-2 img {
          max-width: 45% !important;
        }
      }

      /* Pritiahnuť dvojice bližšie k stredu. Platí len pre dvojstĺpcové
         rozloženie: stĺpce sú col-lg-3 col-md-6, takže od 992px sú štyri
         v rade a zarovnanie k stredu ich zhlukne do dvojíc s dierou
         uprostred (na 1194px mala 298px). Preto max-width: 991px, nie 1199px. */
      @media (min-width: 768px) and (max-width: 991px) {
        #section-schedule .row.g-2 > [class*="col-"]:nth-child(odd) {
          text-align: right !important;
          padding-right: 16px;
        }
        #section-schedule .row.g-2 > [class*="col-"]:nth-child(even) {
          text-align: left !important;
          padding-left: 16px;
        }
      }
