﻿/* ============================================================
   MOBILE — vanjsko-oglasavanje.html responsive styles
   Breakpoint: ≤ 768px
   Tokens/gutter: index mobile | Nav: usluge-marketing 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 {
    word-break:    break-word;
    overflow-wrap: break-word;
  }

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


  /* ══════════════════════════════════════════
     NAV (from mobile-usluge-marketing.css)
     ══════════════════════════════════════════ */

  .site-header,
  .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;
  }


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

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

  .hero--vanjsko .hero__content {
    position:       relative;
    top:            auto;
    left:           auto;
    transform:      none;
    width:          100%;
    padding:        160px 20px 80px;
    box-sizing:     border-box;
    display:        block;
    align-items:    flex-start;
  }

  .hero--vanjsko .hero__heading {
    margin-top:    20px;
    display:       block;
    text-align:    left;
    align-items:   flex-start;
    max-width:     100%;
    margin-left:   0;
    margin-right:  0;
  }

  .hero__heading-line { display: inline; }
  .hero__heading-line .h1-mont  { font-size: 28px; line-height: 1.15; }
  .hero__heading-line .h1-dutch { font-size: 31px; line-height: 1.15; }

  .hero--vanjsko .hero__sub {
    text-align:   left;
    max-width:    100%;
    margin-left:  0;
    margin-right: 0;
    margin-top:   20px;
    font-size:    var(--fs-p);
    line-height:  1.65;
    color:        rgba(255,255,255,0.8);
  }

  .port-filters {
    margin-top:     28px;
    flex-direction: row;
    flex-wrap:      wrap;
    align-items:    flex-start;
    gap:            8px;
  }

  .port-filters__row { display: contents; }

  .port-filter {
    font-size: calc(var(--fs-nav) * 0.96 * 1.15 * 0.8);
    padding:   7.4px 18.4px;
  }


  /* ══════════════════════════════════════════
     THREE PILLARS
     ══════════════════════════════════════════ */

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

  .vanjsko-pillars__inner {
    width:                 100%;
    max-width:             100%;
    margin:                0;
    padding:               0 20px;
    box-sizing:            border-box;
    display:               flex;
    flex-direction:        column;
    gap:                   12px;
    grid-template-columns: none;
    background:            transparent;
    border:                none;
    border-radius:         0;
    overflow:              visible;
  }

  .vanjsko-pillar {
    width:         100%;
    padding:       28px 24px 32px;
    border-radius: 12px;
    background:    #1c1c1c;
    border:        none;
  }

  .vanjsko-pillar--mid {
    border-left:  none;
    border-right: none;
  }

  .vanjsko-pillar__title {
    font-size:     20px;
    line-height:   1.25;
    margin-bottom: 12px;
  }

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


  /* ══════════════════════════════════════════
     PROCESS
     ══════════════════════════════════════════ */

  .vanjsko-curtain-wrap { position: static !important; }

  .section-vanjsko-process {
    position:       static;
    padding-top:    60px;
    padding-bottom: 60px;
  }

  .vanjsko-process__head {
    width:         100%;
    padding:       0 20px 36px;
    box-sizing:    border-box;
    margin-bottom: 0;
    text-align:    left;
  }

  .vanjsko-process__head h2 {
    text-align:    left;
    margin-bottom: 20px;
    line-height:   1.15;
  }

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

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

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

  .vanjsko-process__steps {
    width:                 100%;
    padding:               0 20px;
    box-sizing:            border-box;
    display:               flex;
    flex-direction:        column;
    gap:                   12px;
    grid-template-columns: none;
  }

  .vanjsko-process__steps::before { display: none; }

  .vanjsko-process__step {
    padding:       24px 20px;
    border-radius: 12px;
    background:    #1c1c1c;
    border-bottom: none;
    gap:           8px;
  }

  .vanjsko-process__num   { font-size: 12px; margin-bottom: 16px; }
  .vanjsko-process__title { font-size: 18px; }
  .vanjsko-process__desc  {
    font-size:   var(--fs-p);
    line-height: 1.65;
  }


  /* ══════════════════════════════════════════
     COVERAGE
     ══════════════════════════════════════════ */

  .section-vanjsko-coverage {
    position:       static;
    padding-top:    60px;
    padding-bottom: 60px;
  }

  .vanjsko-coverage__inner {
    width:      100%;
    padding:    0 20px;
    box-sizing: border-box;
    border-top: none;
  }

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

  .vanjsko-coverage__head h2 {
    text-align:    left;
    margin-bottom: 20px;
    line-height:   1.15;
  }

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

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

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

  .vanjsko-coverage__cols {
    display:        flex;
    flex-direction: column;
    gap:            12px;
    grid-template-columns: none;
  }

  .vanjsko-coverage__col {
    width:         100%;
    padding:       28px 24px 32px;
    border-radius: 12px;
  }

  .vanjsko-coverage__col-title {
    font-size:     18px;
    margin-bottom: 12px;
  }

  .vanjsko-coverage__col-text {
    font-size:     var(--fs-p);
    line-height:   1.65;
    margin-bottom: 20px;
  }

  .vanjsko-coverage__list {
    margin-top: 16px;
    padding-top: 20px;
  }

  .vanjsko-coverage__list li {
    font-size:   var(--fs-p);
    line-height: 1.6;
  }


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

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

  .vanjsko-pricing__inner {
    width:         100%;
    max-width:     100%;
    margin:        0;
    padding:       36px 20px;
    box-sizing:    border-box;
    border-radius: 12px;
    text-align:    left;
    align-items:   flex-start;
  }

  .vanjsko-pricing__text h2 {
    font-size:     var(--fs-h2-mont);
    line-height:   1.15;
    text-align:    left;
    margin-bottom: 20px;
  }

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

  .vanjsko-pricing__text p {
    font-size:   var(--fs-p);
    line-height: 1.65;
    margin-top:  20px;
    text-align:  left;
    max-width:   100%;
  }

  .vanjsko-pricing__btns {
    flex-direction: column;
    gap:            12px;
    margin-top:     24px;
    width:          100%;
  }

  .vanjsko-btn-outline,
  .vanjsko-btn-solid {
    width:           100%;
    justify-content: center;
    text-align:      center;
    display:         flex;
    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) {
  .hero--vanjsko {
    min-height: auto;
  }

  .hero--vanjsko .hero__content {
    padding-bottom: 140px;
  }

  .section-vanjsko-process,
  .section-vanjsko-coverage {
    position:   relative;
    margin-top: -2px;
    box-shadow: 0 -1px 0 #0a0a0a;
  }

  .section-vanjsko-pricing,
  .section-faq {
    position:   relative;
    margin-top: -2px;
    box-shadow: 0 -1px 0 #f5f5f5;
  }
}
/* 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;
}

