html{
  -webkit-text-size-adjust:100%;
}

body{
  overflow-x:hidden;
  font-family:'Manrope','Segoe UI',sans-serif;
  color:#382931;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

button,
input,
select,
textarea{
  font:inherit;
}

img,
video,
iframe,
svg{
  max-width:100%;
  height:auto;
}

table{
  max-width:100%;
}

@media (max-width:900px){
  .blog-container,
  .video-section,
  .ta-section,
  .partner-section,
  .career-section,
  .container,
  .wrapper{
    margin:32px auto !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .featured-blog{
    flex-direction:column;
  }

  .featured-blog img{
    max-width:none;
    height:220px;
  }

  .topbar{
    flex-direction:column;
    align-items:flex-start !important;
    gap:12px;
  }

  .topbar > div:last-child{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    width:100%;
  }
}

@media (max-width:640px){
  .shell,
  .page-shell{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .layout,
  .hero-grid,
  .content,
  .section,
  .smart-card,
  .booking-wrap,
  .route-grid,
  .content-grid,
  .fleet-grid,
  .routes-grid,
  .services-grid,
  .explore-grid,
  .seo-content-grid,
  .policy-grid,
  .faq-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .hero,
  .card,
  .booking-panel,
  .smart-card,
  .map-card,
  .section-card,
  .form-card,
  .summary,
  .payment-card,
  .panel{
    padding:16px !important;
    border-radius:22px !important;
  }

  .vehicle-card{
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  .vehicle-card img{
    width:100% !important;
    max-width:220px !important;
    height:auto !important;
  }

  .price-box .value,
  .amount-box .value,
  .total-box .value{
    font-size:28px !important;
  }

  .submit-row,
  .actions,
  .cta-actions,
  .filter-actions,
  .coupon-box,
  .input-row{
    flex-direction:column !important;
    align-items:stretch !important;
  }

  .submit-row .copy{
    max-width:none !important;
  }

  .primary-btn,
  .pay-btn,
  .coupon-box button,
  .cta-actions a,
  .card-link,
  .actions a{
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
  }

  .brand-copy small,
  .section-copy,
  .sub,
  .notice,
  .summary-note,
  .assist,
  .helper{
    font-size:12px !important;
    line-height:1.55 !important;
  }

  .fleet-meta,
  .route-meta,
  .quote-meta{
    display:grid !important;
    gap:6px !important;
  }

  .detail-grid .detail{
    padding:12px !important;
    border-radius:16px !important;
  }

  .summary-breakdown{
    padding:14px !important;
    border-radius:18px !important;
  }

  .summary-row,
  .summary-row strong{
    font-size:12px !important;
  }

  .table,
  .table-wrap{
    border-radius:18px !important;
  }

  .blog-hero,
  .media-hero,
  .ta-hero,
  .partner-hero,
  .career-hero{
    height:auto !important;
    padding:48px 16px !important;
  }

  .blog-hero h1,
  .media-hero h1,
  .ta-hero h1,
  .partner-hero h1,
  .career-hero h1{
    font-size:28px !important;
    line-height:1.15;
  }

  .blog-hero p,
  .media-hero p,
  .ta-hero p,
  .partner-hero p,
  .career-hero p{
    font-size:14px !important;
  }

  .featured-content,
  .video-content,
  .ta-card-content,
  .partner-form,
  .career-form,
  .glass{
    padding:20px !important;
  }

  .ta-cta{
    padding:42px 16px !important;
  }

  .ta-cta a,
  .partner-form button,
  .career-form button,
  .read-btn,
  .book{
    display:inline-flex !important;
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .topbar button{
    border:none;
    background:#e0e7ff;
    color:#163a70;
    padding:10px 14px;
    border-radius:999px;
    font-weight:700;
  }

  .home-btn{
    position:static !important;
    display:inline-flex;
    margin-bottom:16px;
  }
}

@media (max-width:480px){
  .blog-grid,
  .video-grid,
  .ta-grid,
  .ta-why-grid{
    grid-template-columns:1fr !important;
  }

  .blog-card img,
  .video-card video,
  .ta-card img{
    height:200px !important;
  }

  .offer-title{
    font-size:16px !important;
  }

  .section-title{
    font-size:20px !important;
  }

  .featured-content h2,
  .ta-card h3,
  .career-info h2,
  .partner-info h2{
    font-size:22px !important;
  }
}
