/*=========================
Hero Section
==========================*/

.hero-section{

	padding:100px 0;

	background:linear-gradient(135deg,#fff7fb,#f4f8ff);

}

.hero-content h1{

	font-size:52px;

	font-weight:700;

	line-height:1.2;

	margin-bottom:20px;

	color:#111827;

}

.hero-content p{

	font-size:18px;

	color:#6B7280;

	margin-bottom:30px;

}

.hero-badge{

	display:inline-block;

	background:#ffe5f0;

	color:#E91E63;

	padding:8px 18px;

	border-radius:30px;

	font-weight:600;

	margin-bottom:20px;

}

.hero-buttons{

	display:flex;

	gap:15px;

	margin-bottom:40px;

	flex-wrap:wrap;

}

.hero-search{

	background:#fff;

	padding:25px;

	border-radius:18px;

	box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.hero-image img{

	width:100%;

	border-radius:24px;

	box-shadow:0 20px 50px rgba(0,0,0,.12);

}

@media(max-width:991px){

.hero-section{

	text-align:center;

	padding:70px 0;

}

.hero-content h1{

	font-size:38px;

}

.hero-buttons{

	justify-content:center;

}

.hero-image{

	margin-top:40px;

}

}

@media(max-width:576px){

.hero-content h1{

	font-size:30px;

}

.hero-search{

	padding:20px;

}

}

/*====================================
Booking Search
====================================*/

.booking-search-section{

    margin-top:-70px;

    position:relative;

    z-index:20;

}

.booking-search-card{

    background:#fff;

    border-radius:24px;

    padding:40px;

    box-shadow:0 20px 60px rgba(0,0,0,.08);

}

.booking-heading h3{

    font-size:32px;

    font-weight:700;

    margin-bottom:10px;

}

.booking-heading p{

    color:#6B7280;

    margin:0;

}

.booking-search-card .form-control,
.booking-search-card .form-select{

    height:58px;

    border-radius:14px;

    border:1px solid #E5E7EB;

}

.booking-search-card .form-control:focus,
.booking-search-card .form-select:focus{

    border-color:#E91E63;

    box-shadow:0 0 0 .2rem rgba(233,30,99,.15);

}

.booking-search-card .btn{

    height:58px;

    border-radius:14px;

    font-weight:600;

}

.booking-search-card .btn i{

    margin-right:8px;

}

@media(max-width:991px){

.booking-search-section{

    margin-top:40px;

}

.booking-search-card{

    padding:25px;

}

.booking-heading{

    text-align:center;

    margin-bottom:30px;

}

}

@media(max-width:576px){

.booking-search-card{

    padding:20px;

}

.booking-heading h3{

    font-size:26px;

}

}

/*=====================================
Service Categories
======================================*/

.service-categories{

	background:#fff;

}

.category-card{

	background:#fff;

	border-radius:20px;

	overflow:hidden;

	box-shadow:0 12px 40px rgba(0,0,0,.08);

	transition:.35s;

	height:100%;

}

.category-card:hover{

	transform:translateY(-10px);

	box-shadow:0 20px 50px rgba(0,0,0,.15);

}

.category-image{

	position:relative;

	height:220px;

	overflow:hidden;

}

.category-image img{

	width:100%;

	height:100%;

	object-fit:cover;

	transition:.4s;

}

.category-card:hover img{

	transform:scale(1.08);

}

.category-icon{

	position:absolute;

	right:20px;

	bottom:-25px;

	width:60px;

	height:60px;

	background:#E91E63;

	color:#fff;

	border-radius:50%;

	display:flex;

	align-items:center;

	justify-content:center;

	font-size:24px;

	box-shadow:0 10px 25px rgba(0,0,0,.15);

}

.category-content{

	padding:35px 25px 25px;

	text-align:center;

}

.category-content h4{

	font-size:22px;

	font-weight:700;

	margin-bottom:10px;

	color:#111827;

}

.category-content p{

	color:#6B7280;

	margin:0;

}

.section-subtitle{

	display:inline-block;

	padding:8px 18px;

	background:#FFE5F1;

	color:#E91E63;

	border-radius:30px;

	font-weight:600;

	margin-bottom:15px;

}
