﻿/* ============================================================
   MOBILE — proces.html responsive styles
   Breakpoint: ≤ 768px
   Tokens/gutter: index mobile | Nav/footer: vanjsko mobile
   ============================================================ */

@media (max-width: 768px) {

  /* ── BASE ── */
  body { overflow-x: hidden; }

  /* ── TOKENS (index mobile) ── */
  :root {
    --fs-h1-mont:  36px;
    --fs-h1-dutch: 40px;
    --fs-h2-mont:  27.5px;
    --fs-h2-dutch: 30.8px;
    --fs-p:        15px;
    --gutter:      20px;
  }

  .h2-anchor { display: none; }

  .h1-mont, .h1-dutch,
  .h2-mont, .h2-dutch,
  .pr-h1-mont, .pr-h1-dutch,
  .pr-h2-mont, .pr-h2-dutch,
  .te-h2-mont, .te-h2-dutch {
    word-break:    break-word;
    overflow-wrap: break-word;
  }

  /* ── CONTAINER (index gutter) ── */
  .container {
    padding-left:  20px;
    padding-right: 20px;
  }

  .pr-inner {
    padding-left:  20px;
    padding-right: 20px;
  }


  /* ══════════════════════════════════════════
     NAV (from vanjsko mobile)
     ══════════════════════════════════════════ */

  .site-header,
  .pr-hero .site-header {
    position:       fixed;
    top: 0; left: 0; right: 0;
    z-index:        1001;
    padding-top:    25px;
    padding-bottom: 16px;
    transition:     transform 0.32s cubic-bezier(0.4, 0, 0.2, 1),
                    background 0.32s ease;
  }

  .site-header--hidden   { transform: translateY(-100%); }
  .site-header--scrolled { background: #111111; }

  .site-header--scrolled .nav__brand,
  .site-header--scrolled .nav__link     { color: #ffffff; }
  .site-header--scrolled .nav__burger span { background: #ffffff; }

  .nav {
    height:  70px;
    padding: 0 20px;
  }

  .nav__left { gap: 12px; }
  .nav__logo,
  .nav__logo img { width: 44px; height: 44px; }

  .nav__links,
  .nav__cta   { display: none; }
  .nav__brand { display: none; }

  .nav__burger {
    display:         flex;
    flex-direction:  column;
    justify-content: center;
    gap:             6px;
    width: 44px; height: 44px;
    cursor:          pointer;
    background:      none;
    border:          none;
    padding:         6px;
    flex-shrink:     0;
  }

  .nav__burger span {
    display:       block;
    width:         100%;
    height:        2px;
    background:    #ffffff;
    border-radius: 2px;
    transition:    transform 0.3s ease, opacity 0.3s ease;
  }

  .nav-open .nav__burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .nav-open .nav__burger span:nth-child(2) { opacity: 0; }
  .nav-open .nav__burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

  .nav__mobile {
    display:    block;
    position:   fixed;
    inset:      0;
    background: #111111;
    z-index:    999;
    overflow:   hidden;
    transform:  translateX(100%);
    transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .nav-open .nav__mobile { transform: translateX(0); }

  .nav__mob-panel {
    position:        absolute;
    inset:           0;
    display:         flex;
    flex-direction:  column;
    padding:         220px 20px 60px;
    transition:      transform 0.36s cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y:      auto;
  }

  .nav__mob-panel--main   { transform: translateX(0); }
  .nav__mob-panel--pushed { transform: translateX(-100%) !important; }
  .nav__mob-panel--sub    { transform: translateX(100%); }
  .nav__mob-panel--sub.nav__mob-panel--active { transform: translateX(0); }

  .nav__mob-links {
    list-style:     none;
    padding:        0;
    margin:         0;
    display:        flex;
    flex-direction: column;
    flex:           1;
  }

  .nav__mob-link {
    font-family:     var(--font-mont);
    font-size:       22px;
    font-weight:     400;
    letter-spacing:  -0.04em;
    color:           #ffffff;
    text-decoration: none;
    padding:         18px 0;
    border-bottom:   1px solid rgba(255,255,255,0.08);
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    width:           100%;
    background:      none;
    border-left:     none;
    border-right:    none;
    border-top:      none;
    cursor:          pointer;
    text-align:      left;
  }

  .nav__mob-links > li:last-child .nav__mob-link { border-bottom: none; }
  .nav__mob-link svg { width: 8px; height: 14px; flex-shrink: 0; opacity: 0.45; }

  .nav__mob-back {
    display:        flex;
    align-items:    center;
    gap:            12px;
    font-family:    var(--font-mont);
    font-size:      13px;
    font-weight:    500;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color:          rgba(255,255,255,0.45);
    background:     none;
    border:         none;
    cursor:         pointer;
    padding:        0;
    margin-bottom:  40px;
  }

  .nav__mob-back svg { width: 8px; height: 14px; flex-shrink: 0; }
  .nav__mob-back:hover { color: rgba(255,255,255,0.75); }

  .nav__mob-link--cta {
    flex-direction: column;
    align-items:    flex-start;
    gap:            4px;
  }

  .nav__mob-link-inner  { display: flex; flex-direction: column; gap: 10px; }
  .nav__mob-link-title  { font-size: 22px; font-weight: 400; color: #ffffff; letter-spacing: -0.04em; }
  .nav__mob-link-sub    { font-size: 14px; font-weight: 400; color: rgba(255,255,255,0.35); letter-spacing: 0; line-height: 1.4; }

  .nav__mobile-cta {
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-family:     var(--font-mont);
    font-size:       15px;
    font-weight:     600;
    color:           #111111;
    background:      #ffffff;
    border-radius:   8px;
    padding:         16px 32px;
    text-decoration: none;
    margin-top:      40px;
    letter-spacing:  -0.02em;
    flex-shrink:     0;
  }

  /* Hide legacy flat mobile nav */
  .nav__mobile-links,
  .nav__mobile-link { display: none !important; }


  /* ══════════════════════════════════════════
     HERO
     ══════════════════════════════════════════ */

  .pr-hero {
    min-height: 100svh;
    height:     auto;
  }

  .pr-hero .site-header {
    position: fixed;
  }

  .pr-hero__content {
    padding:        200px 20px 80px;
    text-align:     left;
    align-items:    flex-start;
    justify-content: flex-start;
  }

  .pr-hero__h1 {
    text-align: left;
    margin-bottom: 20px;
  }

  .pr-hero__h1-line { display: inline; }

  .pr-hero__h1-line .pr-h1-mont {
    font-size:   28px;
    line-height: 1.15;
  }

  .pr-hero__h1-line .pr-h1-dutch {
    font-size:   31px;
    line-height: 1.15;
  }

  .pr-hero__sub {
    font-size:     var(--fs-p);
    line-height:   1.65;
    text-align:    left;
    max-width:     100%;
    margin:        0 0 28px 0;
  }

  .pr-hero__btn {
    width:           100%;
    justify-content: center;
    padding:         15px 24px;
    font-size:       14px;
  }


  /* ══════════════════════════════════════════
     TIMELINE
     ══════════════════════════════════════════ */

  .pr-timeline {
    padding-top:    60px;
    padding-bottom: 60px;
  }

  .pr-timeline__header {
    text-align: left;
    margin-bottom: 32px;
  }

  .pr-timeline__title {
    text-align: left;
    padding-bottom: 20px;
  }

  .pr-timeline__title .te-h2-mont {
    font-size:   var(--fs-h2-mont);
    line-height: 1.15;
  }

  .pr-timeline__title .te-h2-dutch {
    font-size:   var(--fs-h2-dutch);
    line-height: 1.05;
  }

  .pr-timeline__track {
    padding: 0 20px;
  }

  .pr-timeline__line {
    left:      20px;
    transform: translateX(-50%);
  }

  .pr-timeline__glow {
    left: 20px;
    transform: translate(-50%, -50%);
  }

  .pr-step {
    position:       relative;
    display:        flex;
    flex-direction: column;
    padding-left:   44px;
    margin-bottom:  48px;
  }

  .pr-step__dot-col {
    position:        absolute;
    left:            0;
    top:             calc(120px * 0.85 + 12px + 0.5 * 1.08 * 18px);
    width:           20px;
    padding-top:     0;
    transform:       translate(-50%, -50%);
    display:         flex;
    justify-content: center;
    align-items:     center;
  }

  .pr-step__dot {
    transform-origin: center center;
  }

  .pr-step__dot.is-active {
    transform: scale(1.55);
  }

  .pr-step__left::after,
  .pr-step__right::before { display: none; }

  .pr-step__left,
  .pr-step__right {
    padding:         0;
    width:           100%;
    justify-content: flex-start;
  }

  .pr-step__empty { display: none; }

  .pr-step__content {
    max-width: 100%;
    text-align: left;
  }

  .pr-step__title {
    font-size:     18px;
    line-height:   1.08;
  }

  .pr-step__desc {
    font-size:   var(--fs-p);
    line-height: 1.65;
  }


  /* ══════════════════════════════════════════
     CTA
     ══════════════════════════════════════════ */

  .pr-cta {
    padding: 60px 20px;
  }

  .pr-cta::before {
    display: none;
  }

  .pr-cta__inner {
    padding:    0;
    text-align: left;
    max-width:  100%;
  }

  .pr-cta__title {
    text-align:    left;
    margin-bottom: 20px;
    line-height:   1.15;
  }

  .pr-cta__title .pr-h2-mont {
    font-size: var(--fs-h2-mont);
    line-height: 1.15;
  }

  .pr-cta__title .pr-h2-dutch {
    font-size: var(--fs-h2-dutch);
    line-height: 1.05;
  }

  .pr-cta__sub {
    font-size:     var(--fs-p);
    line-height:   1.65;
    text-align:    left;
    max-width:     100%;
    margin:        0 0 28px 0;
  }

  .pr-cta__btn {
    width:           100%;
    justify-content: center;
    padding:         15px 24px;
    font-size:       14px;
  }


  /* ══════════════════════════════════════════
     FAQ
     ══════════════════════════════════════════ */

  .section-faq {
    padding-top:    60px;
    padding-bottom: 60px;
  }

  .faq__heading {
    margin-bottom: 36px;
    text-align:    left;
  }

  .faq__heading .h2-mont {
    font-size:   var(--fs-h2-mont);
    line-height: 1.15;
  }

  .faq__heading .h2-dutch {
    font-size:   var(--fs-h2-dutch);
    line-height: 1.05;
  }

  .faq__question      { gap: 16px; padding: 20px 0; }
  .faq__question-text { font-size: 14px; }
  .faq__answer-inner  { max-width: 100%; font-size: var(--fs-p); }

}

@media (max-width: 768px) {
  .pr-hero {
    min-height: auto;
  }

  .pr-hero__content {
    padding-bottom: 100px;
  }
}
/* Solid divider between Kompanija and Kontaktiraj nas in main mobile nav */
#mob-main .nav__mob-links > li:nth-last-child(2) .nav__mob-link {
  border-bottom-color: #ffffff;
}

