/* ========================================
   Home Responsive
   Xuan Xiang Travel Enterprise v20
======================================== */

/* Tablet */
@media (max-width:980px){

  .hero-grid,
  .intro-grid,
  .news-card,
  .news-review-inner,
  .third-bind-card,
  .process-grid,
  .vehicle-scene-grid{
    grid-template-columns:1fr;
  }

  .hero-grid{
    margin:-60px auto 0;
    gap:28px;
  }

  .hero-content{
    padding:28px;
  }

  .hero-card{
    max-width:100%;
  }

  .hero-card img{
    min-height:340px;
  }

  .hero-kpis{
    grid-template-columns:repeat(2,1fr);
  }

  .news-video video{
    min-height:720px;
    object-fit:cover;
  }

  .carousel-arrow{
    display:none;
  }

  .xx-menu{
    max-height:calc(100vh - 76px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }

  .drop-list,
  .xx-sub-list{
    max-height:none;
    overflow:visible;
  }

  body:has(#xx-nav-toggle:checked){
    overflow:hidden;
  }

}

/* Mobile */
@media (max-width:768px){

  .container,
  .wrap,
  .content,
  .main{
    width:92% !important;
    max-width:92% !important;
  }

  h1{
    font-size:2.8rem !important;
    line-height:1.15 !important;
  }

  h2{
    font-size:2rem !important;
    line-height:1.25 !important;
  }

  h3{
    font-size:1.35rem !important;
  }

  p,
  li,
  a,
  span{
    font-size:1.05rem !important;
    line-height:1.9 !important;
  }

  .hero-content p{
    font-size:1.2rem !important;
  }

  .btn{
    font-size:.95rem !important;
  }

  .hero-kpis{
    grid-template-columns:1fr 1fr;
  }

  .process-grid,
  .vehicle-scene-grid{
    grid-template-columns:1fr;
  }

  .quote-estimator{
    grid-template-columns:1fr;
  }

}

/* Small Mobile */
@media (max-width:640px){

  .hero-card img{
    min-height:280px;
  }

  .hero-card .caption{
    padding:22px;
  }

  .hero-content{
    padding:22px;
  }

  .hero-kpis{
    grid-template-columns:1fr;
  }

  .hero-kpi{
    padding:16px;
  }

  .news-section{
    padding:18px 0 54px;
  }

  .news-copy{
    padding:24px 20px;
  }

  .news-video video{
    min-height:360px;
  }

  .news-actions .btn{
    width:100%;
  }

  .news-review-inner{
    padding:20px;
  }

  .third-bind-copy,
  .third-bind-panel{
    padding:24px 20px;
  }

  .third-bind-panel{
    min-height:320px;
  }

  .review-badge-card{
    min-height:280px;
  }

  .review-card{
    min-width:85vw;
    flex:0 0 85vw;
  }

  .tour-card{
    min-width:85vw;
    flex:0 0 85vw;
  }

  .ai-quote-float{
    right:16px;
    bottom:16px;
    padding:14px 18px;
    font-size:14px;
  }

}

/* Ultra Small */
@media (max-width:480px){

  h1{
    font-size:2.2rem !important;
  }

  h2{
    font-size:1.7rem !important;
  }

  .hero-content{
    padding:18px;
  }

  .hero-quote-entry{
    padding:20px;
  }

  .hero-actions{
    display:grid;
    gap:12px;
  }

  .hero-actions .btn{
    width:100%;
  }

  .hero-ai-entry{
    flex-direction:column;
  }

  .hero-ai-entry .btn{
    width:100%;
  }

}