/*
Theme Name: ATL Child
Template: hello-elementor
Version: 1.0
*/

@import url("../hello-elementor/style.css");

/* =====================================================
   Custom Site-wide Button Styles
   ===================================================== */

/* Primary buttons & ride-book buttons */
a.ride-book,
.contact-us-all a.btn.btn-primary.btn-lg,
button.btn.btn-secondary.btn-lg.btn-block,
button.btn.btn-outline-secondary.btn-lg.btn-block {
    font-size: 18px !important;
    display: inline-block !important;
    background: #325c52 !important;
    color: #fff !important;
    padding: 10px 40px !important;
    border-radius: 30px !important;
    margin-top: 20px !important;
    border: 0 !important;
    transition: all 0.2s !important;
    min-width: 180px !important;
    text-align: center !important;
}

/* Hover effect for all primary buttons */
a.ride-book:hover,
.contact-us-all a.btn.btn-primary.btn-lg:hover,
button.btn.btn-secondary.btn-lg.btn-block:hover,
button.btn.btn-outline-secondary.btn-lg.btn-block:hover,
.airport_header a:hover,
a.fleet_homebook:hover,
.about-detail a:hover {
    background: #ffffff !important;
    color: #325c52 !important;
    border: 1px solid !important;
    transition: all 0.2s !important;
}

/* Specific overrides for ride-book buttons (smaller padding) */
a.ride-book {
    font-size: 16px !important;
    padding: 10px 20px !important;
    border-radius: 30px !important;
}

/* =====================================================
   Global Banner Styles – Airports Travel Ltd
   ===================================================== */

.banner-wrapper {
    position: relative;
    text-align: center;
    padding: 200px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 999;
}

.banner-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    z-index: 1;
}

.banner-wrapper .container {
    position: relative;
    z-index: 2;
}

/* Banner Heading */
.banner-wrapper h1 {
    font-size: 48px !important;
    font-family: 'Fira Sans Condensed', sans-serif;
    font-weight: 500 !important;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 15px;
}

/* Breadcrumbs */
.banner-wrapper .breadcrumb {
    display: inline-block;
    margin-top: 10px;
    font-size: 16px;
    font-family: 'Fira Sans', sans-serif;
}
.banner-wrapper .breadcrumb a {
    color: #fff !important;
    text-decoration: none;
    font-weight: 500;
}
.banner-wrapper .breadcrumb a:hover {
    color: #ffe200;
}
.banner-wrapper .breadcrumb .breadcums-light {
    color: #ffe200 !important;
}
.banner-wrapper .breadcrumb i {
    color: #fff;
    margin: 0 8px;
}

/* ===========================================
   Global Link Styles (Brand Green Consistent)
   =========================================== */
a[href] {
    color: #325c52;
    text-decoration: none;
    transition: color 0.3s ease;
}
a[href]:hover {
    color: #198754;
    text-decoration: underline;
}
a[href]:visited {
    color: #325c52;
}
a[href]:active {
    color: #198754;
}
a[href^="tel:"] {
    font-weight: 600;
}

/* =====================================================
   VALUE POINTS / CHECK LIST SECTION
   ===================================================== */
.boooking-box h3,
.value-points h2,
.all-post h2 span,
.contact-us-all h2,
.all-post h2,
.right-side h2 {
    font-size: 20px;
    margin-top: 15px;
}

.value-points {
    margin: 0;
    border: 1px solid #325c52;
    padding: 20px;
    background: #325c5212;
    border-radius: 15px;
}

.value-points .check-list li:before {
    content: "\2713";
    font-size: 21px;
    color: #325c52;
    border: 1px solid #e1e1e1;
    border-radius: 70%;
    width: 39px;
    display: inline-block;
    height: 39px;
    line-height: 26px;
    padding: 4px 11px;
    margin: 4px;
}

.value-points .check-list li {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 26px;
}

ul.check-list.check-list-primary {
    padding: 0;
    margin: 0;
}

.value-points h2 {
    margin-bottom: 26px;
}

.value-points b,
.value-points strong {
    color: #325c52 !important;
    font-weight: 600 !important;
}

/* =====================================================
   Global Typography & Content Styling
   ===================================================== */
body {
    font-family: 'Fira Sans Condensed', sans-serif;
    color: #101010;
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
}

/* ---------------- Headings ---------------- */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Fira Sans Condensed', sans-serif;
    color: #192026;
    text-transform: uppercase;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    line-height: 1.2;
}

/* Match original proportions */
h1 {
    padding: 20px 0 0 15px;
    font-size: 1.6rem !important;
    font-weight: 800 !important;
}

h2 {
    font-size: 1.3rem !important;
    font-weight: 500 !important;
    margin-bottom: 0.5rem;
}

h3 {
    font-size: 1.1rem;
    font-weight: 500;
}

/* ---------------- Paragraphs ---------------- */
p {
    font-family: 'Montserrat', sans-serif !important;
    color: #101010;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    margin-bottom: 1rem;
}

/* ---------------- Lists ---------------- */
ul, ol {
    margin-left: 20px;
    padding-left: 0;
}
ul li, ol li {
    list-style: none;
    margin-bottom: 10px;
}

/* ---------------- Alignment ---------------- */
.right-content p,
.right-content h2,
.left-side p {
    text-align: left;
}

/* ---------------- Images ---------------- */
.right-content img,
.all-post img {
    width: 100%;
    height: auto;
    border-radius: 0;
}

/* =====================================================
   Form Card Containers (Drivers, Registration, etc.)
   ===================================================== */
.driver-main-page .card,
.create-account .card,
.membership-reuired .card,
.registration .card,
.forgot-password .card,
.login-dashboard .card {
    background: #325c5214;
    border-radius: 16px !important;
    border: 2px solid #325c52;
    padding: 40px 20px !important;
    position: relative;
}

/* =====================================================
   Responsive Adjustments
   ===================================================== */
@media (max-width: 991px) {
    .banner-wrapper {
        padding: 120px 0;
    }
    .banner-wrapper h1 {
        font-size: 36px !important;
    }
}
@media (max-width: 767px) {
    .banner-wrapper {
        padding: 100px 0;
    }
    .banner-wrapper h1 {
        font-size: 28px !important;
    }
    .banner-wrapper .breadcrumb {
        font-size: 14px;
    }
}

/* =====================================================
   Missing Original Site Styles Added
   ===================================================== */

.passenger-details .card-body, .fare-details .card-body {
    padding: 40px;
}

.header-top .row .col-md-4:first-child {
    display: none;
}

.header-top .row {
    justify-content: space-between;
    align-items: center;
}

.col-12.form-heading:first-child{
    margin: 0px;
    margin-bottom: 30px;
}

.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,
.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,
.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,
.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,
.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
}

.row-cols-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

.row-cols-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}

.row-cols-3 > * {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.row-cols-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}

.row-cols-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}

.row-cols-6 > * {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.col-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.col-1 {-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%;}
.col-2 {-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%;}
.col-3 {-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%;}
.col-4 {-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%;}
.col-5 {-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%;}
.col-6 {-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%;}
.col-7 {-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%;}
.col-8 {-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%;}
.col-9 {-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%;}
.col-10 {-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%;}
.col-11 {-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%;}
.col-12 {-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%;}

.highlighter, .col-12.form-heading {
    font-size: 20px;
}

.col-12.form-heading {
    background: #325c52;
    padding: 10px 12px;
    color: #fff;
    font-size: 24px;
    font-family: 'Fira Sans Condensed';
    line-height: 30px;
    margin: 30px 0px;
    border-radius: 40px;
    padding: 14px 26px;
}
/* ============================================
   FORGOT PASSWORD PAGE — FULL CLEAN CSS
   ============================================ */

/* White banner text under title */
.banner-desc {
    color: #ffffff !important;
    font-size: 18px;
    opacity: 0.95;
    margin-top: 10px;
}

/* Outer container (the grey box) */
.forgot-password-page .card {
    background: #f1f3f2;
    border: 2px solid #325c52;
    border-radius: 22px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}

/* Card padding */
.forgot-password-page .card-body {
    padding: 40px;
}

/* Field Labels */
.forgot-password-page label {
    font-size: 20px;
    font-weight: 600;
    color: #000;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Input fields */
.forgot-password-page .form-control {
    height: 55px;
    font-size: 18px;
    padding: 14px 22px;
    border-radius: 40px;
    border: 1px solid #325c52;
    background: #fff;
    color: #333;
}

/* Placeholder styling */
.forgot-password-page .form-control::placeholder {
    color: #bbb;
    opacity: 1;
}

/* Submit button */
.forgot-password-page .btn-submit {
    background: #325c52;
    color: #fff;
    height: 58px;
    width: 100%;
    font-size: 22px;
    font-weight: 700;
    border-radius: 40px;
    border: none;
    margin-top: 20px;
    transition: 0.2s ease-in-out;
}

.forgot-password-page .btn-submit:hover {
    background: #fff;
    color: #325c52;
    border: 2px solid #325c52;
}

/* Status message */
.forgot-password-page .forgot-msg {
    padding: 12px 18px;
    border-radius: 6px;
    margin-bottom: 20px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
}

.forgot-password-page .forgot-msg.success {
    background: #d5f5e3;
    color: #1e7e34;
    border: 1px solid #a3e4b3;
}

.forgot-password-page .forgot-msg.error {
    background: #f8d7da;
    color: #842029;
    border: 1px solid #f5c2c7;
}

/* Bottom navigation links */
.forgot-password-page .bottom-links {
    margin-top: 25px;
    font-size: 18px;
    color: #325c52;
}

.forgot-password-page .bottom-links a {
    color: #325c52;
    text-decoration: none;
    font-weight: 600;
}

.forgot-password-page .bottom-links a:hover {
    text-decoration: underline;
}

.forgot-password-page .bottom-links .sep {
    margin: 0 10px;
    color: #888;
}

/* Center align links (Home | Login) */
.forgot-password-page .bottom-links {
    text-align: left;
    padding-left: 6px;
}
