/* =========================================================
   05) MOBILE
========================================================= */
@media (max-width:900px){
  .entry-content .two-col-wrap,
  .entry-content .tour-grid,
  #wi-force .wi-row,
  #wi-force .wi-grid,
  .home .wp-block-columns.trust-cards,
  .book-wow-steps,
  .home .popular-cards{
    grid-template-columns:1fr !important;
  }

  .home .gt24-book-icons{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .home .gt24-book-modal h3{font-size:34px !important;}
  .home .gt24-book-note{font-size:19px !important;}

  .book-wow-step{min-height:auto;}
  .book-wow-step h3{font-size:26px !important;}

  .book-wow-cta .wp-block-button__link,
  .book-wow-cta a.wp-block-button__link.wp-element-button{
    min-width:280px !important;
    font-size:24px !important;
    padding:14px 20px !important;
    border-radius:12px !important;
  }
}

@media (max-width:768px){
  /* mobile menu: hide category duplicates */
  .ast-mobile-popup-content li:has(a[href*="/morskie-ekskursii/"]),
  .ast-mobile-popup-content li:has(a[href*="/razvlekatelnye-ekskursii/"]),
  .ast-mobile-popup-content li:has(a[href*="/safari-ekskursii/"]),
  .ast-mobile-popup-content li:has(a[href*="/istoricheskie-ekskursii/"]){
    display:none !important;
  }

  .ast-mobile-popup-content a[href*="/morskie-ekskursii/"],
  .ast-mobile-popup-content a[href*="/razvlekatelnye-ekskursii/"],
  .ast-mobile-popup-content a[href*="/safari-ekskursii/"],
  .ast-mobile-popup-content a[href*="/istoricheskie-ekskursii/"]{
    display:none !important;
  }

  /* tour CTA */
  .entry-content .tour-cta .tour-book-btn{
    min-width:0 !important;
    width:92% !important;
    max-width:320px !important;
    font-size:16px !important;
    padding:12px 14px !important;
    border-radius:12px !important;
  }

  /* Контакты: только mobile-уменьшение */
  .gt24-c-title{
    font-size:20px !important;
    margin:8px 0 10px !important;
  }
  .gt24-c-sub{
    font-size:16px !important;
    line-height:1.35 !important;
  }
  .gt24-c-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .gt24-c-card .n{
    font-size:18px !important;
  }
  .gt24-c-card .v{
    font-size:16px !important;
    white-space:nowrap !important;
  }
}

@media (max-width:640px){
  .tour-grid,.sea-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .tour-thumb img,.sea-thumb img{height:84px !important;}
  .tour-card h3,.sea-card h3{margin:6px 6px 4px !important;font-size:11px !important;}
  .tour-card p,.sea-card p{margin:0 6px 4px !important;font-size:9px !important;}
  .tour-price,.sea-price{margin:0 6px 2px !important;font-size:11px !important;}
  .tour-days,.sea-days{margin:0 6px 6px !important;font-size:8px !important;}

  .exc-section .section-more a{
    width:92% !important;
    max-width:360px !important;
    min-height:46px !important;
    white-space:normal !important;
    font-size:14px !important;
    padding:10px 14px !important;
  }
}

@media (max-width:560px){
  /* header */
  .site-branding .site-title,
  .site-branding .site-title a{
    font-size:15px !important;
    line-height:1.14 !important;
    font-weight:700 !important;
  }
  .site-branding .site-title{max-width:175px !important;margin:0 !important;}
  .custom-logo-link img,.site-logo-img img{max-width:118px !important;height:auto !important;}

  /* hero */
  .home .wp-block-cover .has-large-font-size{
    font-size:clamp(26px,8vw,33px) !important;
    line-height:1.08 !important;
    margin-bottom:13px !important;
    white-space:nowrap !important;
  }
  .home .wp-block-cover .hero-sub{
    margin:0 auto 14px !important;
    padding:0 8px !important;
    max-width:100% !important;
  }
  .home .wp-block-cover .hero-sub .hero-l1{
    font-size:clamp(14px,4.5vw,17px) !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    gap:6px !important;
  }
  .home .wp-block-cover .hero-sub.hero-sub-price5 .hero-l1{
    display:inline-flex !important;
    gap:6px !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
    font-size:clamp(15px,4.5vw,18px) !important;
    line-height:1.18 !important;
  }
  .home .wp-block-cover .hero-sub .hero-l2{
    font-size:clamp(13px,4vw,15px) !important;
    line-height:1.22 !important;
    margin-top:7px !important;
    white-space:nowrap !important;
  }
  .home .wp-block-cover .hero-sub.hero-sub-price5 .hero-l2{
    font-size:clamp(12px,3.75vw,14px) !important;
    line-height:1.22 !important;
    white-space:nowrap !important;
  }
  .home .wp-block-cover .hero-sub .hero-l3{
    font-size:clamp(12px,3.9vw,15px) !important;
    line-height:1.2 !important;
    margin-top:7px !important;
    white-space:nowrap !important;
  }
  .home .wp-block-cover .hero-sub.hero-sub-price5 .hero-l3{
    font-size:clamp(12px,3.9vw,15px) !important;
    line-height:1.22 !important;
    white-space:nowrap !important;
  }
  .home .wp-block-cover .hero-sub .fire{
    display:inline-block !important;
    font-size:1em !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .home .hero-sub .hero-price,
  .home .wp-block-cover .has-medium-font-size .hero-price,
  .home .wp-block-cover .has-medium-font-size span[style*="-webkit-text-stroke"]{
    white-space:nowrap !important;
    display:inline-block !important;
  }
  .home .wp-block-cover .hero-sub.hero-sub-price5 .hero-price{
    font-size:1.14em !important;
    transform-origin:50% 70% !important;
    animation:gt24PriceGoldPulseMobile 1.65s ease-in-out infinite !important;
    will-change:transform, filter !important;
  }

  @keyframes gt24PriceGoldPulseMobile{
    0%,100%{transform:translateY(0) scale(1);filter:saturate(1);}
    42%{transform:translateY(-2px) scale(1.12);filter:saturate(1.25);}
  }

  /* hero buttons */
  .home .wp-block-cover .wp-block-button__link{
    min-width:0 !important;
    width:auto !important;
    max-width:94% !important;
    white-space:nowrap !important;
    font-size:15px !important;
    line-height:1.18 !important;
    padding:13px 16px !important;
    border-radius:12px !important;
  }
  .home .wp-block-cover .wp-block-buttons + .wp-block-buttons{
    margin-top:12px !important;
  }

  /* booking block */
  .book-wow-title{
    font-size:28px !important;
    line-height:1.12 !important;
    margin:22px 0 26px !important;
  }
  .book-wow-steps{
    gap:10px !important;
    margin:0 auto 12px !important;
  }
  .book-wow-step{
    padding:14px 12px 12px !important;
  }
  .book-wow-step h3{
    font-size:20px !important;
    margin:6px 0 6px !important;
  }
  .book-wow-step p{
    font-size:14px !important;
    line-height:1.35 !important;
  }
  .book-wow-cta{
    margin:14px 0 8px !important;
    text-align:center !important;
  }
  .book-wow-cta .wp-block-button__link,
  .book-wow-cta a.wp-block-button__link.wp-element-button{
    width:calc(100% - 32px) !important;
    max-width:320px !important;
    min-width:0 !important;
    margin:0 auto !important;
    padding:12px 14px !important;
    font-size:16px !important;
    line-height:1.2 !important;
    border-radius:12px !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  /* wi-force mobile text */
  #wi-force p{font-size:15px;}
  #wi-force td{font-size:14px;}
  .entry-content .col-left p,
  .entry-content .tour-desc p{font-size:15px !important;}
  .entry-content .two-col-wrap td{font-size:14px !important;}

  /* home headings visibility */
  body.home .entry-content h2.wp-block-heading,
  body.front-page .entry-content h2.wp-block-heading,
  body.home .entry-content h3.wp-block-heading,
  body.front-page .entry-content h3.wp-block-heading{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  body.home .entry-content h1.wp-block-heading.why-title,
  body.front-page .entry-content h1.wp-block-heading.why-title{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    text-align:center !important;
    color:#12335a !important;
    font-size:clamp(28px,7vw,38px) !important;
    line-height:1.15 !important;
    margin:16px 0 14px !important;
  }

  .home .pop-price-now{
    text-decoration:none !important;
    text-underline-offset:0 !important;
  }

  .book-wow-step .num{
    left:50% !important;
    transform:translateX(-50%) !important;
    top:-14px !important;
  }
  .book-wow-step{
    padding-top:30px !important;
  }
}

/* Главная: убрать служебный заголовок темы */
body.home .entry-header,
body.front-page .entry-header{
  display:none !important;
}

/* Морские экскурсии: мобильный аккуратный intro */
@media (max-width:768px){
  .page-id-296 .entry-content{
    margin-top:14px !important;
    padding-top:8px !important;
  }

  #sea-intro p{
    font-size:15px !important;
    line-height:1.45 !important;
  }

  #sea-intro strong{
    font-size:16px !important;
    font-weight:800 !important;
    color:#12335a !important;
  }

  #sea-intro div[style*="display:flex"]{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    margin-top:10px !important;
  }

  #sea-intro span{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    text-align:center !important;

    padding:10px 12px !important;
    border-radius:12px !important;
    border:1px solid #b8dcff !important;
    background:linear-gradient(180deg,#eaf6ff 0%,#d8eeff 100%) !important;

    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
    color:#12335a !important;
  }
}
