/**
 * Taxi Service page (page-taxi-services-in-india.php) ONLY — enqueued
 * conditionally in inc/enqueue.php for this one page, never loaded
 * elsewhere, so these rules are safe to write unscoped/plain rather than
 * as Tailwind arbitrary-value classes (this site's Tailwind is statically
 * compiled with no client-side JIT, so brand-new bracket values wouldn't
 * exist in the compiled build — the same lesson from the homepage hero
 * fixes this session). Real site colors used directly (primary #005c55,
 * accent #F59E0B, matching tailwind-src.css's @theme tokens) rather than
 * re-deriving a separate palette — this page must look like it belongs
 * to the same site, not a bolted-on microsite.
 *
 * @package Pahadiroutes
 */

/* The site header (#pr-mega-header) is a fixed, transparent overlay with
   WHITE nav text by default — designed to sit on top of a dark hero
   PHOTO (every other page's hero). This page's hero is a light pastel
   tint instead of a dark photo, so white-on-white nav text disappeared.
   Forcing the header into its existing "scrolled" appearance (solid
   white background, dark #141b2b text — the same state mega-nav.js
   already switches to once a visitor scrolls elsewhere on the site)
   as the permanent default here, rather than inventing new header
   styling. Scoped to this page only via WordPress's automatic
   body.page-id-95 class (this theme's body_class() does not emit a
   page-{slug} class, only page-id-{ID}, confirmed live — Page ID 95
   is taxi-services-in-india). */
body.page-id-95 #pr-mega-header{
	background: rgba(255,255,255,0.92) !important;
	border-bottom-color: rgba(20,27,43,0.08);
	box-shadow: 0 8px 30px rgba(20,27,43,0.08);
}
body.page-id-95 .pr-nav-link{ color:#141b2b !important; }
body.page-id-95 .pr-nav-link[aria-current="page"]{ color:#F59E0B !important; }
body.page-id-95 .pr-icon-btn{ color:#141b2b !important; background: rgba(20,27,43,0.06); }
body.page-id-95 #pr-mega-header .pr-brand{ text-shadow:none; }

.pr-taxi-page{ --t-primary:#005c55; --t-primary-dark:#00201d; --t-primary-tint:#e6f5f3; --t-accent:#F59E0B; --t-accent-dark:#D97706; --t-bg:#f9f9ff; --t-surface:#ffffff; --t-surface-alt:#f1f3ff; --t-text:#141b2b; --t-text-muted:#3e4947; --t-text-faint:#6e7977; --t-border:#dce2f7; --t-success:#16803c; --t-success-bg:#e7f7ec; --t-radius:20px; --t-radius-sm:12px; }
.pr-taxi-page{ background:var(--t-bg); color:var(--t-text); font-family:'Inter',sans-serif; }
.pr-taxi-page h1, .pr-taxi-page h2, .pr-taxi-page h3, .pr-taxi-page h4{ font-family:'Poppins',sans-serif; font-weight:700; margin:0; letter-spacing:-.01em; }
.pr-taxi-page p{ margin:0; }
.pr-taxi-page img{ max-width:100%; }
.pr-taxi-wrap{ max-width:1180px; margin:0 auto; padding:0 24px; }
@media (max-width:640px){ .pr-taxi-wrap{ padding:0 18px; } }

.pr-taxi-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:'Inter',sans-serif; font-weight:700; font-size:14px; border-radius:var(--t-radius-sm); padding:13px 24px; cursor:pointer; border:none; transition:transform .15s,box-shadow .15s,background .15s; white-space:nowrap; text-decoration:none; }
.pr-taxi-btn:active{ transform:translateY(1px); }
.pr-taxi-btn-primary{ background:var(--t-accent); color:#2a1700; box-shadow:0 12px 24px -10px rgba(245,158,11,.45); }
.pr-taxi-btn-primary:hover{ background:var(--t-accent-dark); }
.pr-taxi-btn-ghost{ background:transparent; color:var(--t-text); border:1.5px solid var(--t-border); }
.pr-taxi-btn-ghost:hover{ border-color:var(--t-primary); color:var(--t-primary); }
.pr-taxi-btn-block{ width:100%; }

.pr-taxi-hero{ position:relative; overflow:hidden; padding:64px 0 84px; background:linear-gradient(180deg,var(--t-primary-tint) 0%, var(--t-bg) 68%); }
.pr-taxi-ridge{ position:absolute; left:0; right:0; bottom:0; height:180px; opacity:.5; }
.pr-taxi-hero-grid{ position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:start; }
.pr-taxi-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--t-primary); background:var(--t-primary-tint); border:1px solid rgba(0,92,85,.25); padding:7px 14px 7px 10px; border-radius:999px; margin-bottom:22px; }
.pr-taxi-eyebrow svg{ width:15px; height:15px; }
.pr-taxi-hero h1{ font-size:clamp(2rem,1.5rem + 2.2vw,3rem); line-height:1.08; color:var(--t-text); margin-bottom:18px; }
.pr-taxi-hero h1 em{ font-style:normal; color:var(--t-primary); }
.pr-taxi-hero p.pr-taxi-lede{ font-size:17px; line-height:1.6; color:var(--t-text-muted); max-width:46ch; margin-bottom:0; }
.pr-taxi-trust-row{ display:flex; flex-wrap:wrap; gap:22px 28px; margin-top:34px; padding-top:26px; border-top:1px solid var(--t-border); }
.pr-taxi-trust-item{ display:flex; align-items:center; gap:10px; font-size:13.5px; font-weight:600; color:var(--t-text-muted); }
.pr-taxi-trust-item svg{ width:19px; height:19px; color:var(--t-primary); flex-shrink:0; }

.pr-taxi-fare-card{ background:var(--t-surface); border:1px solid var(--t-border); border-radius:var(--t-radius); box-shadow:0 1px 2px rgba(20,27,43,.06), 0 8px 24px -12px rgba(20,27,43,.12); padding:26px; }
.pr-taxi-fare-head{ margin-bottom:18px; }
.pr-taxi-fare-head h3{ font-size:16.5px; }
.pr-taxi-trip-tabs{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; background:var(--t-surface-alt); border-radius:var(--t-radius-sm); padding:5px; margin-bottom:18px; }
.pr-taxi-trip-tab{ border:none; background:transparent; padding:9px 6px; border-radius:9px; font-family:'Inter',sans-serif; font-weight:600; font-size:12.5px; color:var(--t-text-muted); cursor:pointer; transition:.15s; }
.pr-taxi-trip-tab.active{ background:var(--t-surface); color:var(--t-primary); box-shadow:0 1px 3px rgba(20,27,43,.12); }
.pr-taxi-field-group{ display:flex; flex-direction:column; gap:5px; margin-bottom:14px; }
.pr-taxi-field-group label{ font-size:11.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--t-text-faint); }
.pr-taxi-field-row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pr-taxi-input-wrap{ position:relative; }
.pr-taxi-input-wrap svg.pr-taxi-leading{ position:absolute; left:13px; top:50%; transform:translateY(-50%); width:17px; height:17px; color:var(--t-primary); pointer-events:none; }
.pr-taxi-page input, .pr-taxi-page select{ width:100%; font-family:'Inter',sans-serif; font-size:14px; color:var(--t-text); background:var(--t-surface-alt); border:1.5px solid transparent; border-radius:var(--t-radius-sm); padding:11px 13px 11px 38px; transition:border-color .15s,background .15s; }
.pr-taxi-page input:focus, .pr-taxi-page select:focus{ outline:none; border-color:var(--t-primary); background:var(--t-surface); }
.pr-taxi-page input.pr-taxi-err, .pr-taxi-page select.pr-taxi-err{ border-color:#e04848; }
.pr-taxi-field-error{ font-size:12px; color:#e04848; min-height:15px; margin-top:2px; font-weight:500; }
.pr-taxi-swap-row{ display:flex; align-items:center; gap:8px; }
.pr-taxi-swap-btn{ flex-shrink:0; width:34px; height:34px; border-radius:999px; border:1.5px solid var(--t-border); background:var(--t-surface); color:var(--t-primary); display:flex; align-items:center; justify-content:center; cursor:pointer; margin-top:20px; }
.pr-taxi-swap-btn:hover{ border-color:var(--t-primary); }
.pr-taxi-swap-btn svg{ width:16px; height:16px; }
.pr-taxi-fare-note{ font-size:12px; color:var(--t-text-faint); text-align:center; margin-top:12px; line-height:1.5; }
#pr-taxi-fareResult{ display:none; margin-top:16px; padding:14px; border-radius:var(--t-radius-sm); background:var(--t-success-bg); border:1px solid rgba(22,128,60,.3); }
#pr-taxi-fareResult.show{ display:block; }
#pr-taxi-fareResult .pr-taxi-fr-top{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:4px; }
#pr-taxi-fareResult .pr-taxi-fr-amt{ font-family:'Poppins',sans-serif; font-weight:800; font-size:22px; color:var(--t-success); }
#pr-taxi-fareResult .pr-taxi-fr-label{ font-size:12.5px; color:var(--t-text-muted); }

.pr-taxi-block{ padding:76px 0; }
.pr-taxi-block.pr-taxi-alt{ background:var(--t-surface-alt); }
.pr-taxi-section-head{ max-width:640px; margin:0 auto 44px; text-align:center; }
.pr-taxi-section-head .pr-taxi-eyebrow{ margin-bottom:14px; }
.pr-taxi-section-head h2{ font-size:clamp(1.6rem,1.3rem + 1.2vw,2.15rem); margin-bottom:12px; }
.pr-taxi-section-head p{ color:var(--t-text-muted); font-size:15.5px; line-height:1.6; }

.pr-taxi-trip-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.pr-taxi-trip-card{ background:var(--t-surface); border:1px solid var(--t-border); border-radius:var(--t-radius-sm); padding:22px 18px; text-align:left; }
.pr-taxi-trip-card .pr-taxi-ic{ width:42px; height:42px; border-radius:11px; background:var(--t-primary-tint); color:var(--t-primary); display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.pr-taxi-trip-card .pr-taxi-ic svg{ width:22px; height:22px; }
.pr-taxi-trip-card h4{ font-size:15px; margin-bottom:6px; }
.pr-taxi-trip-card p{ font-size:13px; color:var(--t-text-muted); line-height:1.5; }

/* Fleet slider — horizontal scroll-snap track (same pattern as the trek
   gallery slider, assets/css/main.css .pr-gallery-*) rather than a static
   grid, so all three vehicle cards are reachable by swipe/arrow on any
   screen size instead of being cramped into columns on mobile. */
.pr-taxi-fleet-nav{ display:flex; justify-content:flex-end; gap:8px; margin:-8px 0 18px; }
.pr-taxi-fleet-arrow{ width:38px; height:38px; border-radius:999px; border:1.5px solid var(--t-border); background:var(--t-surface); color:var(--t-primary); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background-color .15s ease, color .15s ease; }
.pr-taxi-fleet-arrow:hover{ background:var(--t-primary); color:#fff; border-color:var(--t-primary); }
.pr-taxi-fleet-viewport{ overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.pr-taxi-fleet-viewport::-webkit-scrollbar{ display:none; }
.pr-taxi-fleet-grid{ display:flex; gap:22px; width:max-content; }
.pr-taxi-fleet-card{ background:var(--t-surface); border:1px solid var(--t-border); border-radius:var(--t-radius); overflow:hidden; box-shadow:0 1px 2px rgba(20,27,43,.06), 0 8px 24px -12px rgba(20,27,43,.12); display:flex; flex-direction:column; flex:0 0 auto; width:320px; scroll-snap-align:start; }
@media (max-width:640px){ .pr-taxi-fleet-card{ width:82vw; } }
.pr-taxi-fleet-art{ height:150px; background:linear-gradient(160deg,var(--t-primary-tint),var(--t-surface-alt)); display:flex; align-items:center; justify-content:center; position:relative; }
.pr-taxi-fleet-art svg{ width:104px; height:auto; color:var(--t-primary); }
.pr-taxi-fleet-tag{ position:absolute; top:14px; left:14px; background:var(--t-surface); border:1px solid var(--t-border); font-size:11px; font-weight:700; padding:4px 10px; border-radius:999px; color:var(--t-text-muted); }
.pr-taxi-fleet-body{ padding:20px; display:flex; flex-direction:column; gap:10px; flex:1; }
.pr-taxi-fleet-body h3{ font-size:17px; }
.pr-taxi-fleet-meta{ display:flex; gap:14px; font-size:12.5px; color:var(--t-text-muted); font-weight:600; }
.pr-taxi-fleet-meta span{ display:flex; align-items:center; gap:5px; }
.pr-taxi-fleet-meta svg{ width:14px; height:14px; color:var(--t-primary); }
.pr-taxi-fleet-body p.pr-taxi-desc{ font-size:13.5px; color:var(--t-text-muted); line-height:1.55; flex:1; }
.pr-taxi-fleet-price{ display:flex; justify-content:space-between; align-items:baseline; padding-top:12px; border-top:1px solid var(--t-border); }
.pr-taxi-fleet-price .pr-taxi-amt{ font-family:'Poppins',sans-serif; font-weight:800; font-size:19px; }
.pr-taxi-fleet-price .pr-taxi-per{ font-size:11.5px; color:var(--t-text-faint); }

.pr-taxi-routes-table{ border:1px solid var(--t-border); border-radius:var(--t-radius); overflow:hidden; background:var(--t-surface); }
.pr-taxi-route-row{ display:grid; grid-template-columns:1.4fr auto 1fr auto; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid var(--t-border); }
.pr-taxi-route-row:last-child{ border-bottom:none; }
.pr-taxi-route-row:nth-child(even){ background:var(--t-surface-alt); }
.pr-taxi-route-pair{ display:flex; align-items:center; gap:10px; font-weight:700; font-size:14.5px; }
.pr-taxi-route-pair svg{ width:16px; height:16px; color:var(--t-primary); flex-shrink:0; }
.pr-taxi-route-dist{ font-size:12.5px; color:var(--t-text-faint); font-weight:600; white-space:nowrap; }
.pr-taxi-route-fare{ font-family:'Poppins',sans-serif; font-weight:800; font-size:15.5px; text-align:right; }
.pr-taxi-route-fare small{ display:block; font-family:'Inter',sans-serif; font-weight:500; font-size:11px; color:var(--t-text-faint); }
@media (max-width:720px){
	.pr-taxi-route-row{ grid-template-columns:1fr; text-align:left; gap:8px; }
	.pr-taxi-route-fare{ text-align:left; }
}

.pr-taxi-process-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; position:relative; }
.pr-taxi-process-step{ padding:0 26px; position:relative; }
.pr-taxi-process-step:not(:last-child)::after{ content:""; position:absolute; top:26px; right:-2px; width:calc(100% - 52px); height:1.5px; background:repeating-linear-gradient(90deg,var(--t-border) 0 8px,transparent 8px 14px); }
.pr-taxi-process-num{ font-family:'Poppins',sans-serif; font-weight:800; font-size:13px; color:var(--t-primary); background:var(--t-primary-tint); width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center; margin-bottom:20px; position:relative; z-index:1; }
.pr-taxi-process-step h3{ font-size:17px; margin-bottom:8px; }
.pr-taxi-process-step p{ font-size:13.5px; color:var(--t-text-muted); line-height:1.6; }
@media (max-width:780px){
	.pr-taxi-process-grid{ grid-template-columns:1fr; gap:32px; }
	.pr-taxi-process-step:not(:last-child)::after{ display:none; }
}

.pr-taxi-faq-list{ max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:10px; }
.pr-taxi-faq-item{ background:var(--t-surface); border:1px solid var(--t-border); border-radius:var(--t-radius-sm); overflow:hidden; }
.pr-taxi-faq-q{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 20px; background:none; border:none; text-align:left; font-family:'Poppins',sans-serif; font-weight:600; font-size:14.5px; color:var(--t-text); cursor:pointer; }
.pr-taxi-faq-q svg{ width:18px; height:18px; color:var(--t-primary); flex-shrink:0; transition:transform .2s; }
.pr-taxi-faq-item.open .pr-taxi-faq-q svg{ transform:rotate(45deg); }
.pr-taxi-faq-a{ max-height:0; overflow:hidden; transition:max-height .25s ease; }
.pr-taxi-faq-a p{ padding:0 20px 18px; font-size:13.5px; line-height:1.6; color:var(--t-text-muted); }
.pr-taxi-faq-item.open .pr-taxi-faq-a{ max-height:220px; }

.pr-taxi-cta-band{ background:linear-gradient(120deg,var(--t-primary-dark),var(--t-primary)); border-radius:28px; padding:52px 44px; display:flex; align-items:center; justify-content:space-between; gap:32px; color:#eafffb; }
.pr-taxi-cta-band h2{ color:#fff; font-size:clamp(1.4rem,1.1rem + 1.2vw,1.9rem); margin-bottom:10px; }
.pr-taxi-cta-band p{ color:#d6f5ef; font-size:14.5px; max-width:46ch; }
.pr-taxi-cta-actions{ display:flex; gap:12px; flex-shrink:0; }
@media (max-width:760px){ .pr-taxi-cta-band{ flex-direction:column; text-align:center; padding:38px 26px; } .pr-taxi-cta-actions{ flex-direction:column; width:100%; } }

@media (max-width:900px){ .pr-taxi-hero-grid{ grid-template-columns:1fr; } }
@media (max-width:780px){ .pr-taxi-trip-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .pr-taxi-field-row{ grid-template-columns:1fr; } .pr-taxi-cta-band{ border-radius:20px; } }

/* Mobile optimization — phones. Tighter section padding (76px desktop
   block padding reads as dead space on a 375-430px screen), single-column
   trip grid, a smaller hero so the fare-card is reachable without an
   extra scroll, and full-width tap targets on the trust row/route rows. */
@media (max-width:600px){
	.pr-taxi-hero{ padding:32px 0 48px; }
	.pr-taxi-ridge{ height:110px; }
	.pr-taxi-hero-grid{ gap:32px; }
	.pr-taxi-trust-row{ gap:14px 20px; margin-top:24px; padding-top:20px; }
	.pr-taxi-fare-card{ padding:18px; }
	.pr-taxi-block{ padding:48px 0; }
	.pr-taxi-section-head{ margin-bottom:30px; }
	.pr-taxi-trip-grid{ grid-template-columns:1fr 1fr; gap:12px; }
	.pr-taxi-fleet-body{ padding:16px; }
	.pr-taxi-route-row{ padding:14px 16px; }
	.pr-taxi-process-step{ padding:0 6px; }
	.pr-taxi-cta-band{ padding:32px 20px; }
}
@media (max-width:420px){
	.pr-taxi-trip-grid{ grid-template-columns:1fr; }
}
