/**
 * Theme Name:     Astra Child
 * Author:         Brainstorm Force
 * Template:       astra
 * Text Domain:	   Astra Child
 * Description:    The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
 */


/* Header Start */

/* =========================================
   Language Switcher - G Translate
========================================= */
.language_switcher div#gt_float_wrapper {
    height: 38px;
}

.language_switcher .gt_float_switcher {
    background-color: transparent;
    border-radius: 8px;
    box-shadow: none;
}

.language_switcher .gt_float_switcher .gt-selected {
    background-color: transparent;
    border-radius: 8px;
    border: 1px solid #fff;
}

.language_switcher .gt_float_switcher .gt-selected .gt-current-lang {
    padding: 8px 16px;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    display: inline-flex;
    gap: 8px;
}

.language_switcher .gt_float_switcher img {
    width: 20px;
    margin: 0;
}

.language_switcher .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
    background-image: url("https://myairlinepolicy.com/wp-content/uploads/2026/11/icons_chevron-down-small.svg");
    height: 20px;
    width: 20px;
    background-size: 20px;
}

.language_switcher .gt_float_switcher .gt_options {
    max-width: 100% !important;
}

.language_switcher .gt_float_switcher .gt_options a {
    padding: 8px 16px;
    color: #000B49 !important;
    border-radius: 8px;
    border: 1px solid #ffffff;
    background: #ffffff !important;
    margin-top: 5px;
    font-size: 16px;
    display: inline-flex;
    gap: 8px;
}


/* =========================================
   Language Switcher - G Translate End
========================================= */

.header_menu {
    width: calc(100% - 530px);
}

.header_btn svg {
    width: 24px;
}

.header_btn span.elementor-button-content-wrapper {
    align-items: center;
}

@media screen and (min-width: 1025px) {
    .header_menu nav ul li a {
        font-size: clamp(12px, 1vw, 16px) !important;
        padding-left: clamp(8px, 1vw, 18px) !important;
        padding-right: clamp(8px, 1vw, 18px) !important;
    }
}

@media screen and (max-width: 1024px) {
    .header_menu nav ul li .sub-menu li a {
        padding: 12px 30px !important;
        font-size: 13px !important;
    }
}

@media screen and (max-width: 767px) {
    .header_menu {
        width: 50px;
    }

    .header_menu nav {
        overflow-x: hidden;
    }
}

/* Header End */

/* Home Page Start */
.highlight_color {
    color: #05BFB9;
}

.home_banner:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background-image: url("https://myairlinepolicy.com/wp-content/uploads/2026/10/banner_shadow.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom;
    max-width: 1012px;
}

@media screen and (max-width: 1300px) {
    .home_banner:before {
        max-width: 800px;
    }
}

@media screen and (max-width: 1024px) {
    .home_banner:before {
        max-width: 650px;
    }
}

@media screen and (max-width: 767px) {
    .home_banner:before {
        display: none;
    }
}




/* Flight Deal Card CSS  */

.flight-deals-grid,
.tfr-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.flight-deal-card,
.travel-blog-card,
.tfr-card {
    position: relative;
    overflow: hidden;
    background: #fff;
    border-radius: 12px;
    box-shadow: 2px 2px 10px 0px #0000001A;
}

.flight-deal-card .flight-deal-image-link {
    display: block;
    line-height: 0;
}

.flight-deal-card .flight-deal-image {
    display: block;
    width: 100%;
    aspect-ratio: 2 / 1;
    object-fit: cover;
}

.flight-deal-card .flight-deal-badge {
    position: absolute;
    top: 16px;
    right: 16px;
    max-width: 90px;
    padding: 8px 16px;
    border-radius: 24px;
    background: #56CFD0;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 3%;
    text-align: center;
}

.flight-deal-card .flight-deal-content {
    padding: 12px;
}

.flight-deal-card .flight-deal-title {
    margin: 0 0 6px;
    font-size: 16px;
    line-height: 19px;
    color: #0B1342;
    letter-spacing: 3%;
}

.flight-deal-card .flight-deal-description {
    margin: 0 0 12px;
    color: #0B1342;
    font-size: 14px;
    line-height: 1.2;
}

.flight-deal-card .flight-deal-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #56CFD0;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 3%;
    height: 24px;
}

.flight-deal-card .flight-deal-button:hover {
    letter-spacing: 7%;
}


.flight-deal-card .flight-deal-button .flight_btn_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.elementor-widget-shortcode {
    width: 100%;
}

@media (max-width: 1024px) {
    .flight-deals-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .flight-deals-grid {
        grid-template-columns: 1fr;
    }
}

/* Spanish Language */
html[lang="es"] .flight-deal-card .flight-deal-badge {
    max-width: 150px;
}




/* Flight Deal Card CSS End  */


/* Blog Section */

.travel-blog-card .travel-blog-image img {
    display: block;
    width: 100%;
    aspect-ratio: 5 / 3;
    object-fit: cover;
}

.travel-blog-card .travel-blog-body {
    padding: 16px;
}

.travel-blog-card .travel-blog-label {
    background-color: #EDFFFF;
    color: #5BD0D0;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    border-radius: 50px;
    padding: 4px 12px;
    text-transform: uppercase;
}

.travel-blog-card .travel-blog-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 8px;
    margin-top: 8px;
    letter-spacing: 3%;
}

.travel-blog-card .travel-blog-title a {
    color: #000B49;
    text-decoration: none;
}

.travel-blog-card .travel-blog-title a:hover {
    color: #56CFD0;
}

.travel-blog-card .travel-blog-meta {
    font-size: 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    color: #0B1342;
    margin-top: 16px;
}

.travel-blog-card .travel-blog-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 1;
}

.travel-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.travel-blog-grid .travel-blog-description {
    margin-bottom: 16px !important;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .travel-blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .travel-blog-grid {
        grid-template-columns: 1fr;
    }
}


/* Flight Booking Page */
.tfr-card .tfr-media {
    position: relative;
}

.tfr-card .tfr-image {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.tfr-card span.tfr-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 8px 16px;
    border-radius: 100px;
    background: #05BFB9;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    display: inline-flex;
    gap: 8px;
    align-items: center;
    line-height: 1;
    height: 34px;
}

.tfr-card span.tfr-route {
    position: absolute;
    bottom: 18px;
    right: 16px;
    left: 16px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    display: inline-flex;
    gap: 8px;
    align-items: center;
}

.tfr-card .tfr-foot {
    padding: 16px;
}

.tfr-card a.tfr-details-link {
    font-size: 16px;
    font-weight: 600;
    color: #05BFB9;
    text-decoration: none !important;
    display: inline-flex;
    gap: 8px;
}


@media screen and (max-width: 1100px) {
    .tfr-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 900px) {
    .tfr-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 600px) {
    .tfr-grid {
        grid-template-columns: 1fr;
    }
}



/* FAQs Start */

.custom_faqs details {
    border-radius: 12px;
    overflow: hidden;
    border: 0.5px solid #00000033;
}


/* Travel Deals Page Start */

.flight-deals-grid.travel-deals-main {
    grid-template-columns: repeat(3, 1fr);
}

.travel-deals-main .flight-deal-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.travel-deals-main .flight-deal-button .flight_btn_text {
    display: none;
}

.travel-deals-main .flight-deal-button .flight_btn_icon img {
    filter: brightness(100);
}

.travel-deals-main .flight-deal-button .flight_btn_icon {
    width: 30px;
    height: 30px;
    background: #56CFD0;
    border-radius: 50%;
}

@media screen and (max-width: 1024px) {
    .flight-deals-grid.travel-deals-main {
        grid-template-columns: repeat(2, 1fr);
    }
}


@media screen and (max-width: 600px) {
    .flight-deals-grid.travel-deals-main {
        grid-template-columns: 1fr;
    }
}





/* =========================================
   BLOG MAIN PAGE - ARCHIVE STYLING
========================================= */

/* Heading */

.blog-archive-heading .blog_sub_heading {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.blog-archive-heading span.blog_highlight_line {
    border: 2px solid #05BFB9;
    width: 40px;
    display: inline-block;
    border-radius: 5px;
}

.blog-archive-heading span.blog_high_heading {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 12%;
    color: #05BFB9;
}

.blog-archive-heading p {
    line-height: 1.25;
    margin-bottom: 24px;
}

/* Category tabs */

.travel-blog-archive .travel-archive-tabs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
    margin: 0 0 64px;
    position: relative;
    z-index: 5;
}

.travel-blog-archive .travel-archive-tab,
.travel-blog-archive .travel-archive-more-toggle,
.travel-blog-archive .travel-archive-dropdown-item {
    border: none;
    background: transparent;
    padding: 0;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    padding-left: 15px;
    position: relative;
    border-radius: 0;
    box-shadow: none;
    text-transform: capitalize;
}

.travel-blog-archive .travel-archive-tab::before,
.travel-blog-archive .travel-archive-more-toggle::before {
    content: "";
    background: #000;
    position: absolute;
    bottom: 6px;
    left: 0;
    border-radius: 100%;
    width: 5px;
    height: 5px;
}

.travel-blog-archive .travel-archive-tab.is-active {
    color: #05BFB9;
}

.travel-blog-archive .travel-archive-tab.is-active::before {
    background: #05BFB9;
}

.travel-blog-archive .travel-archive-tab:hover,
.travel-blog-archive .travel-archive-tab:focus,
.travel-blog-archive .travel-archive-more-toggle:hover,
.travel-blog-archive .travel-archive-more-toggle:focus {
    background: transparent;
}

/* More dropdown */

.travel-blog-archive .travel-archive-more {
    position: relative;
    width: 170px;
}

.travel-blog-archive .travel-archive-more-toggle {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.travel-blog-archive .travel-archive-dropdown {
    position: absolute;
    top: 36px;
    left: -5px;
    width: 180px;
    overflow-y: auto;
    padding: 16px;
    z-index: 20;
    background: #fff;
    border-radius: 12px;
    box-shadow: 2px 2px 10px 0px #0000001A;
    display: grid;
    gap: 12px;
}

.travel-blog-archive .travel-archive-dropdown[hidden],
.travel-blog-archive .travel-blog-card[hidden],
.travel-blog-archive .travel-archive-no-results[hidden],
.travel-blog-archive .travel-archive-load-wrap[hidden] {
    display: none !important;
}

.travel-blog-archive .travel-archive-dropdown-item {
    text-align: left;
    padding: 0;
    border-radius: 0;
    font-size: 14px;
    font-weight: 500;
}

.travel-blog-archive .travel-archive-dropdown-item:hover,
.travel-blog-archive .travel-archive-dropdown-item.is-active {
    color: #05BFB9;
    background: transparent;
}

.travel-blog-archive .travel-archive-more:has(.travel-archive-dropdown-item.is-active) .travel-archive-more-toggle {
    color: #05BFB9;
    background: transparent;
}

.travel-blog-archive .travel-archive-more:has(.travel-archive-dropdown-item.is-active) .travel-archive-more-toggle img {
    filter: brightness(0) saturate(100%) invert(63%) sepia(85%) saturate(1200%) hue-rotate(128deg) brightness(95%) contrast(105%);
}

/* No matching posts */

.travel-blog-archive .travel-archive-no-results {
    padding: 20px 0;
    color: #6d7789;
    font-size: 14px;
}

/* Load More button */

.travel-blog-archive .travel-archive-load-wrap {
    text-align: center;
    margin-top: 48px;
}

.travel-blog-archive .travel-archive-load-more {
    border-radius: 12px;
    background: #08b9b2;
    color: #fff;
    padding: 12px 16px 12px 16px;
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    line-height: 1;
}

/* Mobile responsive */

@media screen and (max-width: 1024px) {
    .travel-blog-archive .travel-archive-tabs {
        margin: 0 0 48px;
        gap: 16px;
    }


}

@media screen and (max-width: 767px) {
    .travel-blog-archive .travel-archive-tabs {
        margin: 0 0 30px;
    }
}

/* =========================================
   BLOG MAIN PAGE - ARCHIVE STYLING
========================================= */



/* =========================================
   BLOG MAIN PAGE - Search Styling
========================================= */

.blog-only-search {
    width: 100%;
    max-width: 570px;
}

.blog-search-form {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 48px;
    padding: 12px 16px;
    background: #fff;
    border-radius: 12px;
    width: 100%;
}

.blog-search-form:focus-within {
    border-color: #05BFB9;
}

.blog-search-icon {
    display: flex;
    align-items: center;
    color: #05BFB9;
    flex-shrink: 0;
}

.blog-search-form .blog-search-input {
    padding: 0 !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    color: #6B7280;
    font-size: 16px;
}

.blog-search-input::placeholder {
    color: #6B7280;
    opacity: 1;
}

.blog-search-submit {
    display: none !important;
}

.blog-search-results {
    margin-top: 14px;
}

.blog-search-results .blog-result {
    color: #000B49;
    text-decoration: none;
    display: block;
    margin-bottom: 10px;
    padding: 8px 12px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 2px 2px 10px 0px #0000001A;
    width: 100%;
}

.blog-search-results .blog-result:hover {
    border-color: #05BFB9;
}

.blog-result-title {
    font-weight: 600;
}

.blog-result-excerpt {
    color: #666;
    font-size: 13px;
    line-height: 1.6;
}

.blog-search-message {
    padding: 12px 4px;
    color: #555;
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .blog-result-title {
        font-size: 14px;
    }
}

/* =========================================
   BLOG MAIN PAGE - Search Styling
========================================= */



/* =========================================
   Flight Routes PAGE
========================================= */

.flight-heading .flight_sub_heading {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.flight-heading .flight_highlight_line {
    border: 2px solid #05BFB9;
    width: 40px;
    display: inline-block;
    border-radius: 5px;
}

.flight-heading .flight_high_heading {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 12%;
    color: #05BFB9;
}

.flight-heading p {
    line-height: 1.25;
    margin-bottom: 24px;
    margin-top: 8px;
    max-width: 525px;
}

/* =========================================
   Flight Routes PAGE
========================================= */


/* =========================================
   Privacy Policy PAGE - Start
========================================= */
.custom_breadcrumb ul.hfe-breadcrumbs {
    display: inline-flex;
    align-items: center;
}

.custom_breadcrumb ul.hfe-breadcrumbs li a {
    text-decoration: none;
}

.custom_breadcrumb span.hfe-breadcrumbs-home-icon {
    margin: 0;
}

.privacy_policy_content ul {
    margin: 12px 0 0;
}

.privacy_policy_content p:empty {
    display: none;
}

.pricay_contact a.privacy_phone,
.pricay_contact .privacy_add {
    font-size: 16px;
    letter-spacing: 3%;
    color: #6B7280;
    text-decoration: none;
    display: flex;
    gap: 8px;
    align-items: center;
}

.pricay_contact {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    line-height: 1.25;
    max-width: 310px;
}


.contact_details_box p.elementor-icon-box-description a {
    color: #07B5B2;
    text-decoration: none;
    padding-bottom: 4px;
    display: inline-block;
}

/* =========================================
   Privacy Policy PAGE - End
========================================= */


/* =========================================
   Contact PAGE - Start
========================================= */
.contact_form form.forminator-custom-form {
    margin-bottom: 0 !important;
}

.contact_form .forminator-row:has(.forminator-field-name),
.contact_form .forminator-row:has(.forminator-field-phone) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.contact_form input[type="text"],
.contact_form input[type="email"],
.contact_form textarea {
    background-color: #FFFFFF;
    border: 0.78px solid #929292;
    border-radius: 6px !important;
    padding: 9px 12px !important;
    font-weight: 600 !important;
    font-size: 12.45px !important;
    line-height: 100% !important;
    color: #6D7380 !important;
}

.contact_form textarea {
    line-height: 1.25 !important;
}

.contact_form .forminator-field label {
    display: none !important;
}

.contact_form .forminator-ui.forminator-custom-form[data-grid=open] .forminator-col:not(:last-child) {
    margin-bottom: 0;
}

.contact_form .forminator-row {
    margin-bottom: 16px !important;
}

.contact_form .forminator-row:last-child {
    margin-bottom: 0 !important;
}

.contact_form button.forminator-button.forminator-button-submit {
    background-color: #05BFB9;
    font-weight: 600;
    font-size: 12.45px;
    line-height: 100%;
    width: 100% !important;
    border-radius: 7px !important;
}

.contact_form button.forminator-button.forminator-button-submit:hover {
    box-shadow: none !important;
}

.contact_form .forminator-error-message {
    line-height: 1.25 !important;
    font-size: 11px;
}

@media screen and (max-width: 767px) {

    .contact_form .forminator-row:has(.forminator-field-name),
    .contact_form .forminator-row:has(.forminator-field-phone) {
        grid-template-columns: 1fr;
    }
}


/* =========================================
   Contact PAGE - End
========================================= */


/* =========================================
   Sitemap PAGE - Start
========================================= */

.sitemap_btn_group span.xpro-elementor-button-inner {
    width: 100%;
    justify-content: space-between;
}

.sitemap_btn_group .elementor-widget-xpro-button {
    display: grid;
}

@media screen and (max-width: 1160px) {
    .sitemap_btn_group {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media screen and (max-width: 1024px) {
    .sitemap_btn_group {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media screen and (max-width: 767px) {
    .sitemap_btn_group {
        grid-template-columns: 1fr !important;
    }
}

.mas-head {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #E5F5F8;
    padding: 16px;
}

.mas-box {
    border-radius: 12px;
    margin-bottom: 24px;
    overflow: hidden;
    background: #fff;
    border: 0.5px solid #07B5B2;
}

.mas-box:last-child {
    margin-bottom: 0;
}

.mas-head h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
    color: #0E2C2A;
}

.mas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    padding: 16px
}

.mas-box:first-child .mas-grid,
.mas-box:nth-child(2) .mas-grid,
.mas-box:nth-child(3) .mas-grid {
    grid-template-columns: repeat(3, 1fr);
}

.mas-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #e6f4f9;
    border-radius: 8px;
    padding: 8px 16px;
    color: #6D707D;
    text-decoration: none !important;
    font-size: 16px;
    transition: .2s;
    gap: 12px;
}

.mas-item:hover {
    background: #d3eef0;
    color: #0a1f44
}

.mas-icon img {
    width: 24px;
}

.mas-arrow {
    flex: 0 0 24px;
    height: 24px;
    border-radius: 50%;
    background: #07B5B2;
    position: relative;
    background-image: url("https://myairlinepolicy.com/wp-content/uploads/2026/11/akar-icons_chevron-left-small.svg");
    background-position: center;
}


@media(max-width:1024px) {
    .mas-grid {
        grid-template-columns: 1fr;
    }

    .mas-box:first-child .mas-grid,
    .mas-box:nth-child(2) .mas-grid,
    .mas-box:nth-child(3) .mas-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media(max-width: 767px) {
    .mas-grid {
        grid-template-columns: 1fr
    }

    .mas-box:first-child .mas-grid,
    .mas-box:nth-child(2) .mas-grid,
    .mas-box:nth-child(3) .mas-grid {
        grid-template-columns: 1fr;
    }

    .mas-head h3 {
        font-size: 20px;
    }

    .mas-icon img {
        width: 20px;
    }

    .mas-item {
        font-size: 14px;
        gap: 8px;
    }
}

/* =========================================
   Sitemap PAGE - End
========================================= */

/* Sticky Header */

.custom_header.is-sticky .language_switcher .gt_float_switcher .gt-selected{
	border: 1px solid #05BFB9;
}

.custom_header.is-sticky .language_switcher .gt_float_switcher .gt-selected .gt-current-lang {
	color: #05BFB9;
}

.custom_header.is-sticky .language_switcher .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
	filter: invert(1);
}

.custom_header.is-sticky .language_switcher .gt_float_switcher .gt_options a {
	border: 1px solid #05BFB9;
    background: #05BFB9 !important;
	color: #fff !important;
}