/* ═══════════════════════════════════════════════════════════
   SWIFTRIDE — home.css
   Page-specific styles for index.html (homepage only)
   Global styles are in assets/css/main.css
═══════════════════════════════════════════════════════════ */


#hero {
      background: linear-gradient(135deg, var(--navy-deeper) 0%, var(--navy) 60%, #2a5a7c 100%);
      min-height: 100svh; display: flex; align-items: center;
      position: relative; padding: 6rem 0 3rem;
      /* NO overflow:hidden — was blocking clicks! */
    }
    #hero::before {
      content: ''; position: absolute; inset: 0; z-index: 0;
      background: url('../images/oneway-taxi.webp') center/cover no-repeat;
      opacity: 0.07; pointer-events: none;
    }
    .hero-pattern {
      position: absolute; inset: 0; z-index: 0; pointer-events: none;
      background-image: radial-gradient(circle at 70% 30%, rgba(244,192,45,0.08) 0%, transparent 50%);
    }
    #hero .container { position: relative; z-index: 2; }
    .hero-left { position: relative; z-index: 2; }
    .hero-badge {
      display: inline-flex; align-items: center; gap: 0.5rem;
      font-size: 0.75rem; font-weight: 700; letter-spacing: 0.15em;
      text-transform: uppercase; color: var(--gold);
      background: rgba(244,192,45,0.1); border: 1.5px solid rgba(244,192,45,0.3);
      padding: 0.4rem 1rem; border-radius: 50px; margin-bottom: 1.5rem;
    }
    .badge-pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--gold); animation: pulse 1.5s infinite; display:inline-block; }
    @keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(0.8)} }
    .hero-h1 {
        font-family: var(--ff-display);
        /* font-size: clamp(2.6rem,6vw,4rem);  */
        font-size: 3rem;
        font-weight: 800;
        color: var(--white); 
        line-height: 1.1; 
        margin-bottom: 1.2rem; 
      }
    .hero-h1 .highlight { color: var(--gold); position: relative; display: inline-block; }
    .hero-h1 .highlight::after { content: ''; position: absolute; bottom: -4px; left: 0; right: 0; height: 3px; background: var(--gold); border-radius: 2px; }
    .hero-p { font-size: 1rem; color: rgba(255,255,255,0.75); margin-bottom: 2rem; line-height: 1.8; }
    .hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 2.5rem; }
    .hero-usp { display: flex; gap: 2rem; flex-wrap: wrap; padding: 1.2rem 1.5rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: var(--radius); width: fit-content; }
    .usp-item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.78rem; color: rgba(255,255,255,0.8); }
    .usp-item i { color: var(--gold); font-size: 0.9rem; }
    .route-section { background: var(--off-white); }
    .how-section { background: var(--navy-pale); }
    .test-section { background: var(--off-white); }
    .how-step-num { font-family:var(--ff-display);font-size:3rem;font-weight:800;color:rgba(51,97,132,0.1);line-height:1;margin-bottom:0.5rem; }

    
  .check-fare-btn {
  width: 100%;
  padding: 1rem;
  background: var(--gold);
  color: var(--navy);
  border: none;
  border-radius: var(--radius);
  font-family: var(--ff-display);
  font-weight: 800;
  font-size: 1rem;
  cursor: pointer;
  margin-bottom: 0.75rem;
  transition: all 0.2s;
}
.check-fare-btn:hover {
  background: #e6b800;
  transform: translateY(-1px);
}
.check-fare-btn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
  transform: none;
}


.fare-summary-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.8rem;
  margin-bottom:1rem;
}

.fare-summary-item{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:.8rem;
}

.summary-label{
  display:block;
  font-size:.72rem;
  color:#64748b;
  margin-bottom:.25rem;
  font-weight:600;
}

.summary-value{
  font-size:.95rem;
  font-weight:700;
  color:var(--navy);
}

.fare-route{
  background:#fff;
  border:1px dashed #dbeafe;
  padding:.85rem 1rem;
  border-radius:12px;
  font-size:.95rem;
  font-weight:700;
  margin-bottom:1rem;
  color:#334155;
  line-height:1.5;
}

.fare-route i{
  color:var(--gold);
  margin-right:.45rem;
}

.fare-bottom-row{
  display:flex;
  gap:1rem;
  margin-bottom:1rem;
}

.distance-box,
.fare-price-box{
  flex:1;
  border-radius:14px;
  padding:1rem;
}

.distance-box{
  background:#f8fafc;
  border:1px solid #e2e8f0;
}

.fare-price-box{
  background:linear-gradient(135deg,#0f172a,#1e293b);
  color:#fff;
}

.distance-label,
.fare-price-label{
  font-size:.72rem;
  font-weight:600;
  opacity:.75;
  margin-bottom:.35rem;
}

.distance-value{
  font-size:1rem;
  font-weight:700;
  color:var(--navy);
}

.fare-price-value{
  font-size:1.4rem;
  font-weight:800;
  line-height:1;
}

.fare-notes{
  border-top:1px solid #e2e8f0;
  padding-top:.8rem;
}

.fare-notes p{
  margin:0 0 .35rem;
  font-size:.72rem;
  color:#64748b;
  line-height:1.5;
}


/* Terms Checkbox */
.terms-check{
  margin-top:1rem;
  margin-bottom:1rem;
}

.terms-label{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  font-size:.78rem;
  line-height:1.5;
  color:var(--text-light);
  cursor:pointer;
}

.terms-label input{
  margin-top:.2rem;
  accent-color:var(--gold);
  transform:scale(1.05);
}

.terms-label a{
  color:var(--navy);
  font-weight:700;
  text-decoration:none;
}

.terms-label a:hover{
  text-decoration:underline;
}


/* FAQ Section */
.faq-section{
  background: linear-gradient(to bottom,#f8fbff,#ffffff);
}

.faq-wrapper{
  max-width: 900px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.faq-card{
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.04);
  transition: .3s ease;
}

.faq-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(0,0,0,.08);
}

.faq-question{
  width: 100%;
  border: none;
  background: transparent;
  padding: 1.4rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
  font-family: var(--ff-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--navy);
  text-align: left;
}

.faq-question i{
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--navy-pale);
  color: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s ease;
  flex-shrink: 0;
}

.faq-answer{
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s ease;
}

.faq-answer p{
  padding: 0 1.5rem 1.5rem;
  margin: 0;
  color: var(--text);
  line-height: 1.8;
  font-size: .95rem;
}

.faq-card.active .faq-answer{
  max-height: 300px;
}

.faq-card.active .faq-question i{
  transform: rotate(45deg);
  background: var(--gold);
  color: #000;
}




@media(max-width:767px){

   .hero-badge {
    font-size: 0.60rem;
  }
   .hero-left .hero-h1 {
      font-size: 2.1rem !important;
    }
  
    .hero-p {
      font-size: 0.9rem;
      margin-bottom: 0;
    }
  
   .hero-actions {
    display: none;
    
    }

  .hero-usp{
    display:none;
  }
     .how-section {
       display: none !important;
    }

    .readyToBookSec{
      display: none !important;
    }


}

@media(max-width:576px){

 

   .hero-badge {
     margin-bottom: 0.5rem;
  }

  .hero-left .hero-h1 {
      font-size: 1.35rem !important;
    }


  .fare-bottom-row{
    flex-direction:column;
  }

}