/* Extend the hero image behind the top contact strip only - navbar itself stays solid white. Applies to all 4 service pages. */
.page-template-service-airport-transfers-php header.header_area,
.page-template-service-corporate-transfers-php header.header_area,
.page-template-service-parcel-delivery-php header.header_area,
.page-template-service-weddings-events-php header.header_area{
	position:absolute !important;
	top:0;
	left:0;
	width:100%;
	z-index:10;
	background:transparent !important;
}
.page-template-service-airport-transfers-php #top-bar p,
.page-template-service-airport-transfers-php #top-bar a,
.page-template-service-corporate-transfers-php #top-bar p,
.page-template-service-corporate-transfers-php #top-bar a,
.page-template-service-parcel-delivery-php #top-bar p,
.page-template-service-parcel-delivery-php #top-bar a,
.page-template-service-weddings-events-php #top-bar p,
.page-template-service-weddings-events-php #top-bar a{
	color:#fff;
}
.page-template-service-airport-transfers-php .main_menu,
.page-template-service-corporate-transfers-php .main_menu,
.page-template-service-parcel-delivery-php .main_menu,
.page-template-service-weddings-events-php .main_menu{
	background:#fff !important;
	position:relative;
	z-index:11;
}

/* ===== Hero ===== */
.service-hero{
	position:relative;
	padding:230px 0 100px;
	min-height:520px;
	text-align:center;
	color:#fff;
	background-color:var(--tertiarycolor);
	background-size:cover;
	background-position:center;
}
/* Per-page hero background images - add one line here for each new service page */
.page-template-service-airport-transfers-php .service-hero{
	background-image:url('../images/service-hero-bg.webp');
}
.page-template-service-corporate-transfers-php .service-hero{
	background-image:url('../images/service-hero-bg.webp');
}
.page-template-service-parcel-delivery-php .service-hero{
	background-image:url('../images/service-hero-bg.webp');
}
.page-template-service-weddings-events-php .service-hero{
	background-image:url('../images/service-hero-bg.webp');
}
.service-hero:after{
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:linear-gradient(135deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.55) 100%);
	z-index:1;
}
.service-hero .container{
	position:relative;
	z-index:2;
}
.service-hero h1{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:50px;
	line-height:1.15;
	letter-spacing:1px;
	color:#fff;
	margin-bottom:22px;
}
.service-hero p{
	max-width:640px;
	margin:0 auto 28px;
	font-size:16px;
	line-height:1.8;
	color:#ccc;
}
.cta-btn{
	display:inline-block;
	background:var(--secondarycolor);
	color:#111;
	font-weight:700;
	text-transform:uppercase;
	padding:15px 34px;
	border-radius:4px;
	text-decoration:none !important;
	font-size:15px;
	letter-spacing:.5px;
	box-shadow:0 6px 18px rgba(0,0,0,0.25);
	transition:transform .2s, box-shadow .2s;
}
.cta-btn:hover{
	background:#fff;
	color:#111;
	transform:translateY(-2px);
	box-shadow:0 10px 22px rgba(0,0,0,0.3);
}

/* ===== Content sections (centered) ===== */
.service-content{
	padding:60px 0;
	text-align:center;
}
.service-content .container{
	max-width:820px;
}
.service-content h2{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:36px;
	color:var(--tertiarycolor);
	position:relative;
	padding-bottom:14px;
	margin-bottom:22px;
}
.service-content h2:after{
	content:'';
	position:absolute;
	left:50%;
	bottom:0;
	width:60px;
	height:3px;
	background:var(--secondarycolor);
	transform:translateX(-50%);
}
.service-content p{
	color:#555;
	line-height:1.8;
	margin:0 auto 16px;
	font-size:16px;
	max-width:700px;
}

/* ===== Intro split section (text left, image right) - scoped, doesn't affect other .service-content sections ===== */
.service-intro-split .container{
	max-width:1140px;
	display:flex;
	align-items:center;
	gap:50px;
	text-align:left;
}
.service-intro-split .service-intro-text{
	flex:0 0 55%;
	max-width:55%;
}
.service-intro-split .service-intro-text h2{
	text-align:left;
}
.service-intro-split .service-intro-text h2:after{
	left:0;
	transform:none;
}
.service-intro-split .service-intro-text p{
	margin:0 0 16px;
	max-width:none;
}
.service-intro-split .service-icon-list{
	margin:25px 0 0;
	display:grid;
	grid-template-columns:repeat(2,1fr);
	text-align:left;
}
.service-intro-split .service-intro-image{
	flex:1;
}
.service-intro-split .service-intro-image img{
	width:100%;
	border-radius:8px;
	display:block;
	box-shadow:0 8px 24px rgba(0,0,0,0.15);
}
@media (max-width:900px){
	.service-intro-split .container{flex-direction:column;}
	.service-intro-split .service-intro-text{flex-basis:100%;max-width:100%;}
	.service-intro-split .service-intro-text h2{text-align:center;}
	.service-intro-split .service-intro-text h2:after{left:50%;transform:translateX(-50%);}
	.service-intro-split .service-intro-text p{text-align:center;margin:0 auto 16px;max-width:700px;}
	.service-intro-split .service-icon-list{margin:25px auto 0;}
}

/* ===== Icon checklist (centered grid) ===== */
.service-icon-list{
	list-style:none;
	margin:30px auto 0;
	padding:0;
	display:inline-grid;
	grid-template-columns:repeat(3,minmax(180px,1fr));
	gap:16px 30px;
	text-align:left;
}
.service-icon-list li{
	font-size:16px;
	font-weight:600;
	color:#333;
	padding-left:30px;
	position:relative;
}
.service-icon-list li:before{
	content:"\f058";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	color:var(--secondarycolor);
	position:absolute;
	left:0;
	top:1px;
	font-size:19px;
}
@media (max-width:767px){
	.service-icon-list{grid-template-columns:repeat(2,minmax(160px,1fr));}
}
@media (max-width:500px){
	.service-icon-list{grid-template-columns:1fr;}
}

/* ===== Mini CTA band ===== */
.service-mini-cta{
	background:var(--secondarycolor);
	padding:50px 0;
	text-align:center;
}
.service-mini-cta h3{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:32px;
	color:var(--tertiarycolor);
	margin-bottom:14px;
}
.service-mini-cta p{
	max-width:600px;
	margin:0 auto 24px;
	color:#222;
	font-size:15px;
	line-height:1.7;
}
.service-mini-cta .cta-btn{
	background:var(--tertiarycolor);
	color:#fff;
	box-shadow:0 6px 18px rgba(0,0,0,0.2);
}
.service-mini-cta .cta-btn:hover{
	background:#111;
	color:#fff;
}

/* ===== Service cards ===== */
.service-cards-section{
	background:#f7f7f7;
	border-top:2px solid #fdf1d0;
}
.service-cards-section .container{
	max-width:1140px;
}
.service-cards-grid{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:28px;
	margin-top:35px;
	text-align:left;
}
.service-card{
	background:#fdf1d0;
	border-radius:8px;
	padding:32px 26px;
	box-shadow:0 3px 14px rgba(0,0,0,0.07);
	transition:transform .2s, box-shadow .2s;
	flex:0 1 calc(33.333% - 19px);
	min-width:260px;
}
.service-card:hover{
	transform:translateY(-5px);
	box-shadow:0 10px 24px rgba(0,0,0,0.12);
}
.service-card-icon{
	width:52px;
	height:52px;
	border-radius:50%;
	background:var(--secondarycolor);
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:18px;
}
.service-card-icon i{
	font-size:20px;
	color:var(--tertiarycolor);
}
.service-card h5{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:22px;
	letter-spacing:.5px;
	color:var(--tertiarycolor);
	margin:0 0 10px;
}
.service-card p{
	color:#555;
	font-size:14px;
	line-height:1.7;
	margin:0;
}
@media (max-width:900px){
	.service-card{flex-basis:calc(50% - 14px);}
}
@media (max-width:600px){
	.service-card{flex-basis:100%;}
}

/* ===== Standalone section heading (e.g. "Choose Your Taxi") ===== */
.service-mini-heading{
	padding:20px 0 0;
	text-align:center;
}
.service-mini-heading h2{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:32px;
	color:var(--tertiarycolor);
	position:relative;
	padding-bottom:14px;
	margin:0 0 10px;
}
.service-mini-heading h2:after{
	content:'';
	position:absolute;
	left:50%;
	bottom:0;
	width:60px;
	height:3px;
	background:var(--secondarycolor);
	transform:translateX(-50%);
}

/* ===== Why choose us ===== */
.service-why{
	padding:60px 0;
	text-align:center;
	border-top:2px solid #fdf1d0;
}
.service-why .container{
	max-width:1140px;
}
.service-why h2{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:36px;
	color:var(--tertiarycolor);
	position:relative;
	padding-bottom:14px;
	margin-bottom:22px;
}
.service-why h2:after{
	content:'';
	position:absolute;
	left:50%;
	bottom:0;
	width:60px;
	height:3px;
	background:var(--secondarycolor);
	transform:translateX(-50%);
}
.service-why > .container > p{
	color:#555;
	line-height:1.8;
	font-size:16px;
	max-width:700px;
	margin:0 auto 10px;
}
.service-why-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:24px;
	margin-top:35px;
}
.why-card{
	text-align:center;
	padding:32px 20px;
	background:#fdf1d0;
	border-radius:8px;
	border-bottom:3px solid var(--secondarycolor);
	transition:transform .2s, box-shadow .2s;
}
.why-card:hover{
	transform:translateY(-5px);
	box-shadow:0 8px 20px rgba(0,0,0,0.08);
}
.why-card-icon{
	width:48px;
	height:48px;
	border-radius:50%;
	background:var(--tertiarycolor);
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto 16px;
}
.why-card-icon i{
	font-size:19px;
	color:var(--secondarycolor);
}
.why-card h5{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:20px;
	color:var(--tertiarycolor);
	margin:0 0 8px;
}
.why-card p{
	color:#555;
	font-size:13.5px;
	margin:0;
}
@media (max-width:900px){
	.service-why-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:500px){
	.service-why-grid{grid-template-columns:1fr;}
}

/* ===== Final CTA band ===== */
.service-final-cta{
	position:relative;
	background-color:var(--tertiarycolor);
	background-size:cover;
	background-position:center;
	padding:60px 0;
	text-align:center;
}
/* Per-page final CTA background images - add one line here for each new service page */
.page-template-service-airport-transfers-php .service-final-cta{
	background-image:url('../images/final-cta-bg.webp');
}
.page-template-service-corporate-transfers-php .service-final-cta{
	background-image:url('../images/final-cta-bg.webp');
}
.page-template-service-parcel-delivery-php .service-final-cta{
	background-image:url('../images/final-cta-bg.webp');
}
.page-template-service-weddings-events-php .service-final-cta{
	background-image:url('../images/final-cta-bg.webp');
}
.service-final-cta:after{
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:linear-gradient(135deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.55) 100%);
	z-index:0;
}
.service-final-cta .container{
	position:relative;
	z-index:1;
}
.service-final-cta h3{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:34px;
	color:#fff;
	margin-bottom:14px;
}
.service-final-cta p{
	max-width:600px;
	margin:0 auto 24px;
	color:#ccc;
	font-size:15px;
	line-height:1.7;
}
.service-final-cta .call-line{
	margin:20px 0 0;
	color:#fff;
	font-size:15px;
	max-width:none;
}
.service-final-cta .call-line a{
	color:var(--secondarycolor);
	font-weight:700;
	text-decoration:none;
}
.service-final-cta .call-line a:hover{
	text-decoration:underline;
}

/* ===== FAQ accordion ===== */
.service-faq{
	padding:60px 0;
}
.service-faq .container{
	max-width:820px;
}
.service-faq h2{
	font-family:'Teko', sans-serif;
	text-transform:uppercase;
	font-size:36px;
	color:var(--tertiarycolor);
	position:relative;
	padding-bottom:14px;
	margin-bottom:30px;
	text-align:center;
}
.service-faq h2:after{
	content:'';
	position:absolute;
	left:50%;
	bottom:0;
	width:60px;
	height:3px;
	background:var(--secondarycolor);
	transform:translateX(-50%);
}
.faq-item{
	border:1px solid #e5e5e5;
	border-radius:6px;
	padding:18px 22px;
	margin-bottom:14px;
	transition:border-color .2s, box-shadow .2s;
}
.faq-item:hover{
	border-color:var(--secondarycolor);
	box-shadow:0 3px 12px rgba(0,0,0,0.06);
}
.faq-item summary{
	font-family:'Teko', sans-serif;
	font-size:20px;
	letter-spacing:.3px;
	color:var(--tertiarycolor);
	cursor:pointer;
	list-style:none;
	position:relative;
	padding-right:28px;
}
.faq-item summary::-webkit-details-marker{
	display:none;
}
.faq-item summary:after{
	content:"\f078";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	font-size:14px;
	color:var(--secondarycolor);
	position:absolute;
	right:0;
	top:4px;
	transition:transform .25s;
}
.faq-item[open] summary:after{
	transform:rotate(180deg);
}
.faq-item p{
	color:#555;
	font-size:15px;
	line-height:1.7;
	margin:14px 0 0;
}

@media (max-width:767px){
	.service-hero h1{font-size:34px;}
}