
/* FlightsOK Travel Pro 6.2.14 - responsive header/hero refinement
   Keeps existing desktop design, improves 998px/tablet and mobile presentation. */

@media (max-width: 1099px) {
  /* Keep the main site header content aligned to the container edges. */
  .site-header .site-header-inner,
  .site-header .header-inner,
  .site-header .fok-header-inner,
  header .site-header-inner,
  header .header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .site-header .custom-logo-link,
  .site-header .site-branding,
  .site-header .fok-brand,
  header .custom-logo-link,
  header .site-branding {
    margin-right: auto;
    margin-left: 0;
    justify-self: start;
  }

  .site-header .header-actions,
  .site-header .fok-header-actions,
  header .header-actions {
    margin-left: auto;
  }
}

@media (max-width: 767px) {
  /* Compact mobile header. */
  .site-header,
  .fok-site-header,
  header.site-header {
    min-height: 0 !important;
  }

  .site-header .site-header-main,
  .site-header .header-main,
  .site-header .fok-header-main,
  header .site-header-main,
  header .header-main {
    min-height: 64px !important;
    height: auto !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .site-header .custom-logo,
  .site-header .site-logo img,
  .site-header .fok-logo img,
  header .custom-logo,
  header .site-logo img {
    max-width: 170px;
    width: auto;
    height: auto;
  }

  /* Prevent hero typography from becoming oversized on narrow screens. */
  .fok-hero h1,
  .hero h1,
  .site-hero h1,
  .home-hero h1 {
    font-size: clamp(40px, 10vw, 46px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.025em;
  }

  .fok-hero,
  .hero,
  .site-hero,
  .home-hero {
    min-height: 0 !important;
  }

  /* Give the hero a little breathing room without the previous excessive height. */
  .fok-hero .hero-content,
  .hero .hero-content,
  .site-hero .hero-content,
  .home-hero .hero-content {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }

  /* Keep the expert bubble clear of hero text on phones. */
  .fok-expert-float,
  .fok-talk-expert,
  .talk-to-expert,
  .fok-expert-widget {
    display: none !important;
  }

  /* Package-page sticky mobile CTA remains available if the theme already uses it. */
  .fok-tour-cta-sticky {
    display: flex !important;
  }
}

/* Tablet: keep hero comfortable at 768-1099px without affecting desktop. */
@media (min-width: 768px) and (max-width: 1099px) {
  .fok-hero h1,
  .hero h1,
  .site-hero h1,
  .home-hero h1 {
    font-size: clamp(52px, 6vw, 68px) !important;
    line-height: 1.02 !important;
  }
}

/* FlightsOK Travel Pro 6.2.17 — compact mobile travel finder */
@media (max-width:650px){
  #top-travel-search.fok-search-v5{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:6px!important;border-radius:16px!important}
  #top-travel-search .fok-tabs-v5{display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:4px!important;padding:3px!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch}
  #top-travel-search .fok-tabs-v5::-webkit-scrollbar{display:none!important}
  #top-travel-search .fok-tab-v5{flex:0 0 auto!important;width:auto!important;min-width:72px!important;min-height:40px!important;height:40px!important;padding:7px 10px!important;border-radius:10px!important;font-size:10px!important;line-height:1!important;white-space:nowrap!important}
  #top-travel-search .fok-tab-v5:last-child{grid-column:auto!important;min-width:112px!important}
  #top-travel-search .fok-panel-v5{padding:11px 7px 7px!important}
  #top-travel-search .fok-search-form-v5{gap:8px!important}
  #top-travel-search .fok-search-form-v5 label{gap:5px!important;font-size:8px!important;line-height:1.15!important;letter-spacing:.025em!important}
  #top-travel-search .fok-search-form-v5 input,#top-travel-search .fok-search-form-v5 select,#top-travel-search .fok-traveller-trigger{height:43px!important;min-height:43px!important;padding:0 10px!important;border-radius:10px!important;font-size:13px!important;line-height:43px!important}
  #top-travel-search .fok-search-form-v5 input::placeholder{font-size:12px!important}
  #top-travel-search .fok-search-form-v5 .fok-btn,#top-travel-search .fok-tour-next{min-height:43px!important;height:43px!important;padding:0 12px!important;border-radius:10px!important;font-size:11px!important}
  #top-travel-search .fok-search-form-v5 .fok-marketing-consent{gap:7px!important;font-size:9px!important}
}
@media (min-width:481px) and (max-width:650px){
  #top-travel-search .fok-search-form-v5,#top-travel-search .fok-search-form-v5.fok-tour-search,#top-travel-search .fok-lead-service-form,#top-travel-search .fok-smart-hero-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #top-travel-search .fok-search-form-v5 .full,#top-travel-search .fok-lead-service-form .full,#top-travel-search .fok-smart-hero-form .full,#top-travel-search .fok-tour-contact-step{grid-column:1/-1!important}
  #top-travel-search .fok-tour-contact-step{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:480px){
  #top-travel-search .fok-search-form-v5,#top-travel-search .fok-search-form-v5.fok-tour-search,#top-travel-search .fok-lead-service-form,#top-travel-search .fok-smart-hero-form{grid-template-columns:1fr!important}
  #top-travel-search .fok-search-form-v5 .full,#top-travel-search .fok-lead-service-form .full,#top-travel-search .fok-smart-hero-form .full{grid-column:auto!important}
  #top-travel-search .fok-tour-contact-step{grid-template-columns:1fr!important}
}


/* FlightsOK Travel Pro 6.2.17 — compact 720px mobile/tablet treatment
 * At 720px and below the homepage search becomes denser and remains two-column
 * where there is enough width. <=480px safely falls back to one column.
 */
@media (max-width:720px){
  /* Compact service tabs: one clean horizontal rail, no oversized buttons. */
  #top-travel-search.fok-search-v5{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding:5px!important;
    border-radius:16px!important;
  }
  #top-travel-search .fok-tabs-v5{
    display:flex!important;
    flex-wrap:nowrap!important;
    grid-template-columns:none!important;
    gap:4px!important;
    padding:3px!important;
    margin:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch;
  }
  #top-travel-search .fok-tabs-v5::-webkit-scrollbar{display:none!important}
  #top-travel-search .fok-tab-v5{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:68px!important;
    min-height:38px!important;
    height:38px!important;
    padding:6px 9px!important;
    border-radius:9px!important;
    font-size:10px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  #top-travel-search .fok-tab-v5:last-child{grid-column:auto!important;min-width:108px!important}

  #top-travel-search .fok-panel-v5{padding:9px 6px 6px!important}
  #top-travel-search .fok-search-form-v5{gap:7px!important}
  #top-travel-search .fok-search-form-v5 label{
    gap:4px!important;
    font-size:8px!important;
    line-height:1.1!important;
    letter-spacing:.02em!important;
  }
  #top-travel-search .fok-search-form-v5 input,
  #top-travel-search .fok-search-form-v5 select,
  #top-travel-search .fok-traveller-trigger{
    height:40px!important;
    min-height:40px!important;
    padding:0 9px!important;
    border-radius:9px!important;
    font-size:12px!important;
    line-height:40px!important;
  }
  #top-travel-search .fok-search-form-v5 input::placeholder{font-size:11px!important}
  #top-travel-search .fok-search-form-v5 .fok-btn,
  #top-travel-search .fok-tour-next{
    min-height:40px!important;
    height:40px!important;
    padding:0 11px!important;
    border-radius:9px!important;
    font-size:10px!important;
  }

  /* Make the homepage hero headline compact and intentionally two lines. */
  .fok-hero-v5 .fok-hero-copy h1{
    font-size:clamp(36px,7.5vw,40px)!important;
    line-height:.98!important;
    letter-spacing:-1.5px!important;
    max-width:100%!important;
  }
  .fok-hero-v5 .fok-hero-copy h1 br{display:block!important}
  .fok-hero-v5 .fok-hero-copy p{font-size:13px!important;line-height:1.45!important}
  .fok-hero-v5 .fok-hero-points{gap:7px!important;font-size:9px!important;flex-wrap:wrap!important}
}

/* 481–720px: two-column forms to reduce the vertical footprint. */
@media (min-width:481px) and (max-width:720px){
  #top-travel-search .fok-search-form-v5,
  #top-travel-search .fok-search-form-v5.fok-tour-lead-form,
  #top-travel-search .fok-search-form-v5.fok-tour-search,
  #top-travel-search .fok-lead-service-form,
  #top-travel-search .fok-smart-hero-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #top-travel-search .fok-search-form-v5 .full,
  #top-travel-search .fok-lead-service-form .full,
  #top-travel-search .fok-smart-hero-form .full,
  #top-travel-search .fok-tour-contact-step{
    grid-column:1/-1!important;
  }
  #top-travel-search .fok-tour-contact-step{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* <=480px: single column keeps small phones clean and touch-friendly. */
@media (max-width:480px){
  #top-travel-search .fok-search-form-v5,
  #top-travel-search .fok-search-form-v5.fok-tour-lead-form,
  #top-travel-search .fok-search-form-v5.fok-tour-search,
  #top-travel-search .fok-lead-service-form,
  #top-travel-search .fok-smart-hero-form{
    grid-template-columns:1fr!important;
  }
  #top-travel-search .fok-search-form-v5 .full,
  #top-travel-search .fok-lead-service-form .full,
  #top-travel-search .fok-smart-hero-form .full{grid-column:auto!important}
  #top-travel-search .fok-tour-contact-step{grid-template-columns:1fr!important}
}

/* ============================================================
   FlightsOK Travel Pro 6.2.18 — final mobile polish
   - Balanced mobile header/logo
   - Compact, scrollable service tabs
   - Two-column mobile forms from 481–720px
   - Prevent hero/search clipping
   - Hide homepage Reviews + FAQ on mobile
   Desktop/tablet >720px intentionally unchanged.
   ============================================================ */

@media (max-width:720px){
  .fok-header{top:0!important;position:relative!important;min-height:0!important}
  .fok-header-inner{position:relative!important;box-sizing:border-box!important;width:100%!important;min-height:72px!important;height:72px!important;padding:0 12px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
  .fok-logo{position:static!important;transform:none!important;left:auto!important;top:auto!important;height:72px!important;max-width:calc(100% - 54px)!important;min-width:0!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:1 1 auto!important;overflow:visible!important}
  .fok-logo,.fok-logo a,.fok-logo .custom-logo-link{line-height:0!important}
  .fok-logo a,.fok-logo .custom-logo-link{display:flex!important;align-items:center!important;justify-content:flex-start!important;height:auto!important;margin:0!important;padding:0!important}
  .fok-logo img,.fok-logo .custom-logo{display:block!important;width:auto!important;height:auto!important;max-width:145px!important;max-height:44px!important;margin:0!important;padding:0!important;object-fit:contain!important;object-position:left center!important}
  .fok-header-actions{position:static!important;transform:none!important;width:auto!important;height:72px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex:0 0 auto!important}
  .fok-header-actions .fok-b2b-header-link,.fok-header-actions .fok-expert,.fok-header-actions .fok-check{display:none!important}
  .fok-mobile-menu{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;margin:0!important;padding:0!important}

  .fok-hero-v5{min-height:0!important;height:auto!important;overflow:visible!important}
  .fok-hero-v5-inner{width:100%!important;min-height:0!important;height:auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important;box-sizing:border-box!important;padding:32px 12px 30px!important}
  .fok-hero-copy{width:100%!important;max-width:none!important;margin:0!important}
  .fok-hero-v5 .fok-hero-copy h1{font-size:36px!important;line-height:.98!important;letter-spacing:-1.2px!important;max-width:100%!important;margin-bottom:14px!important}
  .fok-hero-v5 .fok-hero-copy h1 br{display:block!important}
  .fok-hero-v5 .fok-hero-copy p{font-size:14px!important;line-height:1.45!important;margin-bottom:14px!important}
  .fok-hero-v5 .fok-hero-points{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px 12px!important;font-size:10px!important;line-height:1.25!important}
  .fok-hero-v5 .fok-hero-points span:last-child{grid-column:1/-1!important}

  #top-travel-search.fok-search-v5{width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;max-height:none!important;overflow:visible!important;box-sizing:border-box!important;margin:0!important;padding:6px!important;border-radius:20px!important}
  #top-travel-search .fok-panel-v5{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:10px 7px 12px!important}

  #top-travel-search .fok-tabs-v5{display:flex!important;flex-wrap:nowrap!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;gap:3px!important;padding:3px!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  #top-travel-search .fok-tabs-v5::-webkit-scrollbar{display:none!important}
  #top-travel-search .fok-tab-v5{flex:0 0 auto!important;width:auto!important;min-width:67px!important;height:38px!important;min-height:38px!important;padding:6px 9px!important;border-radius:9px!important;font-size:10px!important;line-height:1!important;white-space:nowrap!important;scroll-snap-align:start}
  #top-travel-search .fok-tab-v5:last-child{min-width:108px!important}

  #top-travel-search .fok-search-form-v5{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;gap:8px!important}
  #top-travel-search .fok-search-form-v5 label{min-width:0!important;gap:4px!important;font-size:8px!important;line-height:1.15!important}
  #top-travel-search .fok-search-form-v5 input,#top-travel-search .fok-search-form-v5 select,#top-travel-search .fok-traveller-trigger{width:100%!important;min-width:0!important;height:41px!important;min-height:41px!important;padding:0 9px!important;border-radius:9px!important;font-size:12px!important;line-height:41px!important;box-sizing:border-box!important}
  #top-travel-search .fok-search-form-v5 input::placeholder{font-size:11px!important}
  #top-travel-search .fok-search-form-v5 .fok-btn,#top-travel-search .fok-tour-next{width:100%!important;min-height:41px!important;height:41px!important;padding:0 10px!important;border-radius:9px!important;font-size:10px!important}
}

@media (min-width:481px) and (max-width:720px){
  #top-travel-search .fok-search-form-v5,#top-travel-search .fok-search-form-v5.fok-tour-lead-form,#top-travel-search .fok-search-form-v5.fok-tour-search,#top-travel-search .fok-lead-service-form,#top-travel-search .fok-smart-hero-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #top-travel-search .fok-flight-form-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #top-travel-search .fok-flight-form-v5 > label:nth-of-type(1),#top-travel-search .fok-flight-form-v5 > label:nth-of-type(2),#top-travel-search .fok-flight-form-v5 > label:nth-of-type(5),#top-travel-search .fok-flight-form-v5 > .fok-btn{grid-column:1/-1!important}
  #top-travel-search .fok-search-form-v5 .full,#top-travel-search .fok-lead-service-form .full,#top-travel-search .fok-smart-hero-form .full,#top-travel-search .fok-tour-contact-step{grid-column:1/-1!important}
  #top-travel-search .fok-tour-contact-step{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media (max-width:480px){
  .fok-header-inner{min-height:68px!important;height:68px!important}
  .fok-logo{height:68px!important}
  .fok-header-actions{height:68px!important}
  .fok-logo img,.fok-logo .custom-logo{max-width:132px!important;max-height:42px!important}
  .fok-hero-v5-inner{padding-top:28px!important;padding-bottom:26px!important;gap:16px!important}
  .fok-hero-v5 .fok-hero-copy h1{font-size:32px!important;line-height:1!important;letter-spacing:-1px!important;margin-bottom:12px!important}
  .fok-hero-v5 .fok-hero-copy p{font-size:13px!important}
  .fok-hero-v5 .fok-hero-points{font-size:9px!important;gap:6px 9px!important}
  #top-travel-search .fok-search-form-v5,#top-travel-search .fok-search-form-v5.fok-tour-lead-form,#top-travel-search .fok-search-form-v5.fok-tour-search,#top-travel-search .fok-lead-service-form,#top-travel-search .fok-smart-hero-form,#top-travel-search .fok-flight-form-v5{grid-template-columns:1fr!important}
  #top-travel-search .fok-search-form-v5 .full{grid-column:auto!important}
  #top-travel-search .fok-flight-form-v5 > label:nth-of-type(1),#top-travel-search .fok-flight-form-v5 > label:nth-of-type(2),#top-travel-search .fok-flight-form-v5 > label:nth-of-type(5),#top-travel-search .fok-flight-form-v5 > .fok-btn{grid-column:auto!important}
  #top-travel-search .fok-tour-contact-step{grid-template-columns:1fr!important}
}

@media (max-width:720px){
  body.home .fok-reviews-section,body.home .fok-faq-home-section{display:none!important}
}

/* FlightsOK Travel Pro 6.2.19 — final mobile header + review/FAQ correction */
@media (max-width:720px){
  /* Full-width header container: brand is anchored to the actual left edge. */
  .fok-header{position:relative!important;top:0!important;width:100%!important;min-height:0!important}
  .fok-header-inner{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-height:72px!important;
    height:72px!important;
    margin:0!important;
    padding:0 10px!important;
    box-sizing:border-box!important;
  }
  .fok-logo{
    position:absolute!important;
    left:10px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:auto!important;
    max-width:calc(100% - 60px)!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:left!important;
    line-height:0!important;
    overflow:visible!important;
  }
  .fok-logo a,.fok-logo .custom-logo-link{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    line-height:0!important;
  }
  .fok-logo img,.fok-logo .custom-logo{
    display:block!important;
    width:auto!important;
    max-width:142px!important;
    max-height:42px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .fok-header-actions{
    position:absolute!important;
    right:10px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
  }
  .fok-header-actions .fok-b2b-header-link,
  .fok-header-actions .fok-expert,
  .fok-header-actions .fok-check{display:none!important}
  .fok-mobile-menu{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    margin:0!important;
    padding:0!important;
    flex:0 0 40px!important;
  }

  /* Mobile: reviews and homepage FAQ are intentionally removed. */
  .fok-reviews-section,
  .fok-faq-home-section,
  .fok-faq-home{display:none!important}
}
@media (max-width:380px){
  .fok-header-inner{min-height:68px!important;height:68px!important;padding:0 9px!important}
  .fok-logo{left:9px!important;max-width:calc(100% - 56px)!important}
  .fok-logo img,.fok-logo .custom-logo{max-width:132px!important;max-height:40px!important}
  .fok-header-actions{right:9px!important}
  .fok-mobile-menu{width:38px!important;min-width:38px!important;height:40px!important;flex-basis:38px!important}
}

/* Desktop/tablet: keep the review card bottom border fully inside the carousel viewport. */
.fok-review-slider{padding-bottom:3px!important;box-sizing:border-box!important}
.fok-review-viewport{padding-bottom:3px!important;box-sizing:border-box!important}
.fok-review-slide{margin-bottom:2px!important}

