@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Vollkorn:ital,wght@0,400..900;1,400..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

:root {
    --primary-color: #fe872b;
    --secondary-color: #00000;
    --primary-font: "Rubik", sans-serif;
    --white: #fff;
}

body {
    width: 100%;
    overflow-x: hidden;
    top: 0 !important;
    font-family: "Poppins", sans-serif;
    background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url(../images/pattern.jpg);
    background-size: 900px;
    background-repeat: repeat;
}

.ml-auto {
    margin-left: auto !important;
}

h1,
h2,
h3,
h4 {
    font-family: var(--primary-font);
}

.navbar {

    position: fixed;
    z-index: 5;
    width: 100%;
    padding: 0px 0;
    transition: background-color 0.3s ease-in-out, padding 0.3s ease-in-out !important;
}

.nav-link {
    color: var(--white);
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 400;


}

.nav-item .nav-link:hover {
    color: var(--primary-color);
}

.navbar.scrolled {
    background: white;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
    z-index: 8;
}

.navbar.scrolled .nav-link {
    color: #000;
}

@media (max-width: 991px) {
    .navbar-toggler {
        border: 0;
        color: var(--white);
        fill: var(--primary-color);

    }

    .navbar-toggler:focus {
        box-shadow: none;
    }

    .navbar {
        background: var(--white);
    }

    .navbar-fixed .nav-link,
    .nav-link {
        color: var(--white);
    }

    .navbar-nav {
        padding: 30px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        justify-content: center;
        width: 0px;
        height: 100%;
        position: fixed !important;
        top: 0;
        right: 0;
        background: #04374d !important;
        opacity: 0;
        transition: all .1s ease-in-out;
        z-index: 5;
    }

    .navbar-fixed .nav-link,
    .nav-link {
        color: var(--white);
    }

    .navbar {
        background: #ffffff;
        padding: 5px 0 !important;
        width: 100%;
        position: fixed;
    }

    .collapse.show .navbar-nav {
        opacity: 1;
        width: 100%;

    }

    .navbar-toggler,
    .navbar-toggler:hover,
    .navbar-toggler:focus,
    .navbar-toggler:active {
        padding: 0.5rem 1rem;
        border: none !important;
        color: transparent;
        background: transparent;
    }

    .navbar-toggler-icon {

        z-index: 10;
        position: absolute;
        top: 20px;
        right: 20px;
    }


    .navbar-nav .nav-item {
        font-size: 16px;
        font-weight: 500;
        text-transform: uppercase;

    }

    .navbar-nav .nav-item:last-child {

        border-bottom: none
    }

    .navbar-collapse.show .close-icon {
        display: block;
        color: #fff;
        font-size: 1.5rem;
        cursor: pointer;
        padding: 0 1rem;
        position: absolute;
        z-index: 5;
    }

    .navbar-toggler .navbar-toggler-icon {
        transition: .5s;
    }

    .navbar-toggler[aria-expanded="false"] .navbar-toggler-icon {
        background-image: url('../images/open.png') !important;
        padding: 0;

    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
        transition: .5s;
        background-image: url('../images/close.png') !important;

    }

    .navbar.scrolled {
        background: rgb(255, 255, 255);
        padding: 0;
        padding: 5px 0;
    }

    .navbar.scrolled .nav-link {
        color: #fff;
    }
    .logo-header{
        width: 160px !important;
    }

}

.logo-header {
    width: 250px;
}

.hero-section {
    position: relative;
    height: 600px;
}

.hero-section img {
    width: 100%;
    height: 600px;
    object-fit: cover;
}

.hero-content {
    position: absolute;
    top: 50%;
    left: 48%;
    transform: translate(-50%, -50%);
    width: 80%;
    z-index: 2;
    text-align: left;
    max-width: 1200px;
}

.hero-content h1 {
    font-size: 70px;
    color: var(--white);
    font-weight: 700;
    width: 80%;
    position: relative;

}

.hero-content h3 {
    color: var(--white);
    font-weight: 200;
    font-size: 28px;



}

.hero-content p {
    color: var(--white);
    width: 60%;

}


@media (max-width: 991px) {

    .hero-content p {
        width: 100%;
    }

    .hero-content h1 {
        font-size: 31px;
        width: 100%;
    }
    .hero-section img{
        height: 500px !important;
    }
    .hero-section{
        height: 500px !important;
    }
}

.btn-fill {
    background-color: var(--primary-color);
    color: var(--white);
    padding: 10px 20px;
    border-radius: 100px;
    border: 1px solid var(--primary-color);
    transition: .5s;
}

.btn-fill:hover {
    background-color: var(--white);
    color: var(--primary-color);
    border: 1px solid var(--white);
}

.btn-white {
    background-color: var(--primary-color);
    color: var(--white);
    padding: 5px 20px;
    border-radius: 0;
    border: 2px solid var(--white);
}

.btn-white:hover {
    background: var(--white);
    color: var(--primary-color);
    border: 2px solid var(--white);
}

.over-layer {
	position: absolute;
	width: 100%;
	height: 100%;
	content: "";
	left: 0;
	top: 0;
	background: linear-gradient(to top, rgb(5, 54, 83), rgba(0, 0, 0, 0));
	z-index: 2;
}

#heroSplide .splide__arrow {
    background-color: transparent;
    border-radius: 0;
    font-size: 40px;

}

#heroSplide .splide__arrow svg {
    fill: var(--white);

}

.dark-bg {
    background-color: #04374d;
    padding: 40px 0;
}

.call-now-section {
    color: #fff;
}

.contact-social-1 {
    display: flex;

    flex-wrap: wrap;
}

.contact-social-1 a {
    text-decoration: none;
    margin-bottom: 10px;
}

.contact-social-1 a i {
    margin-right: 10px;
    font-size: 20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    color: #fff;
    border-radius: 50px;
    display: block;

}

.contact-social-1 a .bi-facebook {
    background-color: #3b5998;
}

.contact-social-1 a .bi-whatsapp {
    background-color: #25d366;
}

.contact-social-1 a .bi-google {
    background-color: #ea4335;
}

.contact-social-1 a .bi-instagram {
    background-color: #c32aa3;
}

.contact-social-1 a .bi-tiktok {
    background-color: #222222;
}

.contact-social-1 a .bi-twitter-x {
    background-color: #222222;
}

.contact-social-1 a .bi-threads {
    background-color: #222222;
}

.contact-social-1 a .bi-youtube {
    background-color: #FF0000;
}

.contact-social-1 a .fa-tripadvisor {
    background-color: #00af87;
}

.call-now-section {
    text-transform: uppercase;
}

.call-btn .btn-fill {
    margin-right: 10px;
}

.page-pd {
    padding: 60px 0;
}

.call-btn {
    text-align: center;
}

.header-section {
    text-align: center;
    text-transform: uppercase;
    padding-bottom: 30px;
}

.header-section h1 {
    position: relative;
    padding-bottom: 5px;


}

.header-section h1::before {
    position: absolute;
    width: 12%;
    height: 3px;
    bottom: 0;
    left: auto;
  
    content: "";

}

.bg-line {
    background-color: var(--primary-color);
    width: 400px;
    padding: 0px 10px;

}
@media (max-width: 991px) {
    .bg-line {
        background-color: transparent;
        width: 100% !important;
        padding: 0px 0px !important;
    
    }
    .bg-line h3{
        font-size: 20px !important;
    }
    .contact-social-1{
        margin-top: 30px;
        text-align: center;
        justify-content: center;
    }
    .call-now-section{
        text-align: center;
    }
    .hero-content{
        text-align: center;
    }
    .driver-permit{
        text-align: center;
        margin-bottom: 30px;
    }
    .hero-content{
        top: 58% !important;
    }
    .vehicle-box{
        margin-bottom: 10px;
    }
    .service-box{
        margin-bottom: 10px;
    }
    .brdr-side{
        border-left: 0 !important;
        padding-left: 10px !important;
        padding-top: 20px !important;
    }
    .pd-places{
        text-align: center;
    }
    .pd-locations p i{

        margin-right: 0px !important;
    
    }
    .contact-details {
        flex-direction: column;
    }
    .contact-form{
        margin-bottom: 30px;
    }
    .contact-form {
        padding: 10px 15px !important;
        border-radius: 0 !important;

    
    }
    .contact-form h4{
        text-align: center;
      
    }
    .ftr-information{
        text-align: center;
    }
    .ftr-information .contact-social-1{
        justify-content: center !important;
    }
    .contact-section .contact-us{
        text-align: center;
    }
    .contact-details{
        display: none !important;
    }
    .map-mark{
        margin-top: 20px;
    }

}

.vehicle-box img {
    width: 100%;
    height: 250px;
    object-fit: cover;

}

.vehicle-box {

    padding: 15px;
}

.vehicle-content {
    color:black;
    padding: 15px 0px;
    text-transform: uppercase;
    text-align: center;

}

.vehicle-book .btn-fill {
    width: 100%;
    text-transform: uppercase;
}

.vehicle-content h4 {
    margin: 0;
}
.vehicle-content p{
    margin-bottom: 0;
    color: rgb(0, 0, 0);
    font-size: 14px;
    padding: 0 5px;
    border: 1px solid var(--white);
    display: inline-block;
    margin-top: 3px;


}

.vehicle-book a {
    font-weight: bold;

}
.dr-bg {
    background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7)), url(../images/bg.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed; /* makes image stay fixed */
    padding: 50px 0;
}

.driver-permit {
    color: black;
}

.permit img {
    width: 250px;
    height: 380px;
    border: 2px solid var(--primary-color);
}

.permit {
    text-align: center;
}

.ch-box {
    display: flex;
    align-items: center;
    background-color: #fff;
    margin-bottom: 20px;
}

.icon-bg {
    margin-right: 20px;
    padding: 10px 15px;
    background-color: var(--primary-color);
    border-radius: 100px;

}

.icon-bg i {
    font-size: 30px;
    color: #fff;
}

.ch-content h3 {
    margin: 0;
    font-size: 25px;
}

.service-section {

    margin-top: -30px;
}

.service-box {
    overflow: hidden;
    border-radius: 30px;
    position: relative;

}

.service-box img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform: scale(1.08);
}

.service-box img:hover {
    transform: scale(1);
    opacity: 0.9;
}

.service-content {
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 10px;
    background-color: var(--primary-color);
    width: 100%;
}
.service-content h4{
   margin-bottom: 0;
   font-size: 18px;
   color: var(--white);
   font-weight: 500;
}
.pickup-section {
    background-color: #04374d;
    background-position: center center; /* ensures vertical + horizontal centering */
    background-size: cover;             /* makes sure the image covers the entire section */
    background-repeat: no-repeat;
    background-attachment: fixed;       /* optional: makes parallax effect */
    padding: 40px 0;
    color: #fff;                        /* shorter hex for white */
}

.pd-places{
    color: #fff;

}
.pd-locations p{
    font-size: 16px;

}
.brdr-side{
    border-left: 3px solid var(--white);
    padding-left: 30px;
    padding-top: 30px;
}
.contact-section{
    padding: 60px 0;
}

.contact-form {
    background: white;
    padding: 30px 40px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);

}
.contact-form h2 {
    text-align: center;
    margin-bottom: 20px;
}
.contact-form label {
    font-weight: bold;
    display: block;
    margin-top: 10px;
}
.contact-form select, .contact-form input {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
    border: 1px solid #ccc;
    border-radius: 0;
}
.contact-form .btn-submit {
    background: var(--primary-color);
    color: white;
    border: none;
    padding: 10px;
    width: 100%;
    border-radius: 100px;
    cursor: pointer;
    margin-top: 15px;
    font-size: 16px;
}

.contact-form input, .contact-form select{
    margin-bottom: 10px;
    border-radius: 0;
    background-color: var(--white);
}
.contact-form h4{
    
    padding: 10px 0;

    
}
.contact-form h2{
    margin-bottom: 0;
    padding: 10px;
}

.contact-us p {
    margin-bottom: 5px;
}

.cntct-box {
    border-left: 3px solid var(--primary-color);
    padding-left: 10px;
    margin: 15px 0;
    margin-right: 20px;
}

.contact-details {
    display: flex;
}

.cntct-box h3 {
    font-size: 24px;
}

.location {
    margin-top: 35px;
}
.contact-details{
    margin-bottom: 10px;
}
.ftr-dark{
    background-color: #04374d;
    padding: 90px 0 20px 0;
}
.ftr-information{
    color: var(--white);
    margin-bottom: 40px;

}
.ftr-information ul{
    padding: 0;


}
.ftr-information ul li{
    list-style: none;
    margin-bottom: 10px;
}
.ftr-information ul li a{
    color: var(--white);
    text-decoration: none;

}
.brdr-btm{
    border-bottom: 2px solid var(--white);

}
.copy-right{
    color: var(--white);
    text-align: center;
    padding-top: 30px;
}
.copy-right p a{
    color: var(--white);
    text-decoration: none;
    transition: 0.3s ease;
}
.copy-right p a:hover{
    color: var(--primary-color);
}
.ftr-information h3{
    margin-bottom: 15px;
    padding-bottom: 10px;
    position: relative;
}
.ftr-information h3::before{
    position: absolute;
    width: 13%;
    height: 3px;
    content: "";
    bottom: 0;
    left: auto;
    background-color: var(--white);
}
@media (max-width: 991px) {
    .ftr-information h3 {
        text-align: center;
    }

    .ftr-information h3::before {
        left: 50%;
        transform: translateX(-50%);
        width: 23%;
    }
}

.pd-places h1{
    font-size: 40px;
}
#vehicleSplide .splide__pagination {
    bottom: -25px;
}

#vehicleSplide .splide__pagination__page.is-active {
    background: var(--primary-color) !important;

}

.splide__pagination__page{
    background-color: #000000 !important;
}
.whatsapp img {
    position: fixed;
    bottom: 30px;
    right: 50px;
    z-index: 3;
    transition: transform .6s ease-in-out;

}

.whatsapp:hover img {
    transform: scale(1.1);

}

@media (max-width: 768px) {
    .whatsapp img {
        right: 20px;
        width: 130px !important;

    }
}
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
}

.spinner {
    width: 50px;
    height: 50px;
    border: 5px solid #ccc;
    border-top: 5px solid var(--primary-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}
.mobile-label {
    display: none !important; /* Hide by default */
}
.input-group{
    width: 100% !important;
}
@media (max-width: 991px) { /* Show only on mobile */
    .mobile-label {
        display: block !important;
        font-size: 14px;
        font-weight: bold;
        margin-bottom: 5px;
    }
    .input-group {
        width: 100% !important;
        
    }

    .input-group input {
        width: 100% !important;
    }
}

.boxh{
    background-color: var(--primary-color);
    border-radius: 50px;
}


    .booking-section {
      background: url('your-elephant-image.jpg') no-repeat center center/cover;
      margin-top: -80px;
      position: relative;
    }
    .booking-card {
      background: #fff;
      border-radius: 8px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      padding: 20px;
    }
    .btn-submit {
      background-color: var(--primary-color);
      color: #fff;
      font-weight: bold;
      border-radius: 100px;
    }
    .btn-submit:hover {
      background-color: var(--primary-color);
    }


    .form-control {
	display: block;
	width: 100%;
	padding: .375rem .75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 257.4rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}


.form-select {
	display: block;
	width: 100%;
	padding: .375rem 2.25rem .375rem .75rem;
	-moz-padding-start: calc(0.75rem - 3px);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .75rem center;
	background-size: 16px 12px;
	border: 1px solid #ced4da;
	border-radius: 406.4rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.footer-logo {
    width: 270px;   /* adjust as needed */
    height: auto;   /* keeps aspect ratio */
}