/* ==========================================================================
   Taxi Services page — page-specific styles
   ========================================================================== */

/* Hero */
.taxi-hero{
  position:relative;min-height:640px;display:flex;align-items:flex-end;
  background:linear-gradient(to top,rgba(11,29,51,.55),rgba(11,29,51,.15) 55%),
             url('../images/taxi-hero.jpg') center/cover no-repeat;
  color:#fff;padding:70px 48px;
}
.taxi-hero-inner{max-width:780px;}
.taxi-hero h1{font-size:4rem;font-weight:normal;margin-bottom:18px;}
.taxi-hero p{font-size:1.05rem;color:#e9e6dc;line-height:1.6;margin-bottom:34px;max-width:640px;}

@media(max-width:960px){
  .taxi-hero{padding:50px 22px;min-height:520px;}
  .taxi-hero h1{font-size:2.4rem;}
}

/* Fleet & services intro */
.fleet-intro{text-align:center;max-width:640px;margin:0 auto 50px;}
.fleet-intro h2{font-size:2.2rem;}
.fleet-intro p{color:var(--muted);margin-top:12px;}

/* Fleet grid */
.fleet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.fleet-card{border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.06);}
.fleet-card .thumb{position:relative;height:170px;}
.fleet-card .thumb img{width:100%;height:100%;object-fit:cover;}
.fleet-card .tag{position:absolute;top:14px;left:14px;background:var(--gold);color:#2b2205;font-size:.65rem;text-transform:uppercase;letter-spacing:1px;font-weight:bold;padding:4px 10px;border-radius:3px;}
.fleet-card .body{padding:20px;}
.fleet-card .body h3{font-size:1.2rem;margin-bottom:8px;}
.fleet-card .body p{font-size:.85rem;color:var(--muted);line-height:1.5;}

@media(max-width:960px){
  .fleet-grid{grid-template-columns:1fr;}
}

/* Royal Standard (feature strip) */
.royal-standard{background:var(--sand);}
.royal-standard h2{text-align:center;font-size:2.2rem;margin-bottom:50px;}
.standard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.standard-card{background:#fff;border-radius:8px;padding:36px 26px;text-align:center;}
.standard-card .icon{font-size:2rem;color:var(--gold);margin-bottom:16px;}
.standard-card h3{font-size:1.2rem;margin-bottom:10px;}
.standard-card p{font-size:.88rem;color:var(--muted);line-height:1.5;}

@media(max-width:960px){
  .standard-grid{grid-template-columns:1fr;}
}

/* Request a vehicle form */
.request-form-wrap{background:var(--sand);border-radius:10px;padding:60px;max-width:900px;margin:0 auto;}
.request-form-wrap h2{text-align:center;font-size:2rem;}
.request-form-wrap > p{text-align:center;color:var(--muted);margin-top:10px;margin-bottom:36px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.form-field{grid-column:span 1;}
.form-field.full{grid-column:span 2;}
.form-field label{display:block;font-size:.72rem;letter-spacing:1px;text-transform:uppercase;color:var(--heritage-ink);font-weight:bold;margin-bottom:8px;}
.form-field input,
.form-field select,
.form-field textarea{
  width:100%;border:none;border-bottom:1px solid #d8d1bd;background:transparent;
  padding:8px 2px;font-size:.95rem;color:var(--text);font-family:inherit;
}
.form-field input::placeholder,
.form-field textarea::placeholder{color:#b3ac97;}
.form-field textarea{resize:vertical;min-height:70px;}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{outline:none;border-bottom-color:var(--palace-red);}
.form-submit{grid-column:span 2;text-align:center;margin-top:10px;}
.form-submit .btn{width:100%;padding:16px;font-size:.85rem;}

@media(max-width:700px){
  .request-form-wrap{padding:34px 22px;}
  .form-grid{grid-template-columns:1fr;}
  .form-field.full,.form-submit{grid-column:span 1;}
}
