@charset "UTF-8";
/* CSS Document */

/* Load Original Icon Fonts */
@font-face {
    font-family: 'fontello';
    src: url('fontello/font/fontello.eot?32974303');
    src: url('fontello/font/fontello.eot?32974303#iefix') format('embedded-opentype'), 
         url('fontello/font/fontello.woff?32974303') format('woff'), 
         url('fontello/font/fontello.ttf?32974303') format('truetype'), 
         url('fontello/font/fontello.svg?32974303#fontello') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'icon_set_1';
    src: url('fontello/font/icon_set_1.eot?55361665');
    src: url('fontello/font/icon_set_1.eot?55361665#iefix') format('embedded-opentype'), 
         url('fontello/font/icon_set_1.woff?55361665') format('woff'), 
         url('fontello/font/icon_set_1.ttf?55361665') format('truetype'), 
         url('fontello/font/icon_set_1.svg?55361665#icon_set_1') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'icon_set_2';
    src: url('fontello/font/icon_set_2.eot?40207016');
    src: url('fontello/font/icon_set_2.eot?40207016#iefix') format('embedded-opentype'), 
         url('fontello/font/icon_set_2.woff?40207016') format('woff'), 
         url('fontello/font/icon_set_2.ttf?40207016') format('truetype'), 
         url('fontello/font/icon_set_2.svg?40207016#icon_set_2') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Glyphter';
    src: url('icon_restaurant/fonts/Glyphter.eot');
    src: url('icon_restaurant/fonts/Glyphter.eot?#iefix') format('embedded-opentype'), 
         url('icon_restaurant/fonts/Glyphter.woff') format('woff'), 
         url('icon_restaurant/fonts/Glyphter.ttf') format('truetype'), 
         url('icon_restaurant/fonts/Glyphter.svg#Glyphter') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Pe-icon-7-stroke';
    src: url('new_icons/font/Pe-icon-7-stroke.eot?d7yf1v');
    src: url('new_icons/font/Pe-icon-7-stroke.eot?#iefixd7yf1v') format('embedded-opentype'), 
         url('new_icons/font/Pe-icon-7-stroke.woff?d7yf1v') format('woff'), 
         url('new_icons/font/Pe-icon-7-stroke.ttf?d7yf1v') format('truetype'), 
         url('new_icons/font/Pe-icon-7-stroke.svg?d7yf1v#Pe-icon-7-stroke') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'ElegantIcons';
    src: url('new_icons/font/ElegantIcons.eot');
    src: url('new_icons/font/ElegantIcons.eot?#iefix') format('embedded-opentype'), 
         url('new_icons/font/ElegantIcons.woff') format('woff'), 
         url('new_icons/font/ElegantIcons.ttf') format('truetype'), 
         url('new_icons/font/ElegantIcons.svg#ElegantIcons') format('svg');
    font-weight: 400;
    font-style: normal;
}

/* Custom WhatsApp Icon styling using SVG mask */
.icon-whatsapp {
    display: inline-block !important;
    width: 1.1em !important;
    height: 1.1em !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/></svg>") no-repeat 50% 50% !important;
    mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/></svg>") no-repeat 50% 50% !important;
    -webkit-mask-size: cover !important;
    mask-size: cover !important;
    vertical-align: middle !important;
}

.icon-whatsapp:before {
    content: "" !important;
}

/* Load Tajawal Fonts Locally */
@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Tajawal';
    src: url('../../Tajawal/Tajawal-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

/* Global Font Override to Unified Tajawal */
body, 
h1, h2, h3, h4, h5, h6, 
p, button, input, select, textarea, td, th, label, small, b,
a:not([class*="icon"]):not([class*="fa-"]):not([class*="fi-"]):not([class*="fi "]):not(.cart_bt):not(#wishlist_link):not(#access_link),
span:not([class*="icon"]):not([class*="fa-"]):not([class*="fi-"]):not([class*="fi "]):not(.price):not(.rating),
li:not([class*="icon"]):not([class*="fa-"]):not([class*="fi-"]):not([class*="fi "]),
strong:not([class*="icon"]):not([class*="fa-"]):not([class*="fi-"]):not([class*="fi "]),
div:not([class*="icon"]):not([class*="fa-"]):not([class*="fi-"]):not([class*="fi "]):not(.dropdown-cart):not(.rating):not(.cart_bt) {
    font-family: 'Tajawal', 'Montserrat', sans-serif !important;
}

/* Fix specific citytours template typography components */
.main-title h2, 
.main-title p, 
.box_cat_home h3, 
.box_style_1 h3, 
.box_style_2 h3, 
.feature h3, 
.box_grid h3, 
.box_grid p, 
.price, 
.rating, 
.banner h4, 
.banner p,
#logo_home h1 a, 
nav#menu ul li a,
.tour_container h3,
.hotel_container h3,
.transfer_container h3,
.activity_container h3 {
    font-family: 'Tajawal', 'Montserrat', sans-serif !important;
}

/* ==========================================================================
   🛡️ COMPLETE ICON FONT PROTECTION SYSTEM
   ========================================================================== */

/* 1. Prevent pseudo-elements from inheriting Tajawal font-family */
[class^="icon-"]:before, [class*=" icon-"]:before,
[class^="icon_set_1_"]:before, [class*=" icon_set_1_"]:before,
[class^="icon_set_2_"]:before, [class*=" icon_set_2_"]:before,
[class^="icon_"]:before, [class*=" icon_"]:before,
[class^="pe-7s-"]:before, [class*=" pe-7s-"]:before,
[class^="fi-"]:before, [class*=" fi-"]:before,
.fi:before, .fa:before, .fas:before, .far:before, .fab:before,
#wishlist_link:before, #access_link:before {
    font-family: inherit !important;
}

/* 2. Explicitly restore original icon font families with high specificity */
/* Fontello icons */
[class^="icon-"], [class*=" icon-"],
[class^="icon-"]:before, [class*=" icon-"]:before,
#wishlist_link:before, #access_link:before {
    font-family: 'fontello' !important;
}

/* icon_set_1 icons */
[class^="icon_set_1_"], [class*=" icon_set_1_"],
[class^="icon_set_1_"]:before, [class*=" icon_set_1_"]:before {
    font-family: 'icon_set_1' !important;
}

/* icon_set_2 icons */
[class^="icon_set_2_"], [class*=" icon_set_2_"],
[class^="icon_set_2_"]:before, [class*=" icon_set_2_"]:before {
    font-family: 'icon_set_2' !important;
}

/* ElegantIcons (underscore) */
[class^="icon_"]:not([class*="icon_set_"]), [class*=" icon_"]:not([class*="icon_set_"]),
[class^="icon_"]:not([class*="icon_set_"]):before, [class*=" icon_"]:not([class*="icon_set_"]):before,
.icon_bag_alt, .icon_bag_alt:before,
.icon_search, .icon_search:before,
.icon_heart_alt, .icon_heart_alt:before {
    font-family: 'ElegantIcons' !important;
}

/* Pe-icon-7-stroke icons */
[class^="pe-7s-"], [class*=" pe-7s-"],
[class^="pe-7s-"]:before, [class*=" pe-7s-"]:before {
    font-family: 'Pe-icon-7-stroke' !important;
}

/* Flaticon & FontAwesome */
[class^="fi-"], [class*=" fi-"],
[class^="fi-"]:before, [class*=" fi-"]:before,
.fi, .fi:before {
    font-family: 'Flaticon' !important;
}
.fa, .fas, .far, .fab,
.fa:before, .fas:before, .far:before, .fab:before {
    font-family: 'FontAwesome' !important;
}

/* ==========================================================================
   ✨ PREMIUM HEADER GLASSMORPHISM & DYNAMIC MENU BUTTONS
   ========================================================================== */

/* Glassmorphism Header when NOT scrolled (Desktop/Web view only) */
@media only screen and (min-width: 992px) {
    header:not(.sticky) {
        background-color: rgba(255, 255, 255, 0.15) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
        box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.05) !important;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }
}

/* Scrolled Header (Sticky state - Solid White, No Blur) */
header.sticky {
    background-color: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Nav alignment tweak for new pill buttons */
@media only screen and (min-width: 992px) {
    nav {
        margin-top: 15px !important;
    }
    .sticky nav {
        margin: 0 0 10px !important;
    }
}

/* Modern pill buttons for main menu links */
@media only screen and (min-width: 992px) {
    .main-menu > ul > li > a {
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        border-radius: 30px !important; /* Premium rounded pill */
        padding: 8px 18px !important;   /* Comfortable breathing room */
        margin: 0 4px !important;        /* Breathing space between elements */
        display: inline-block !important;
        text-shadow: none !important;
     }

    /* Hover & Active State when header is NOT sticky (White links on dark/blurred glass) */
    header:not(.sticky):not(#plain) .main-menu > ul > li > a {
        color: #ffffff !important;
        background-color: transparent !important;
    }
    
    header:not(.sticky):not(#plain) .main-menu > ul > li:hover > a {
        background-color: rgba(255, 255, 255, 0.25) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 15px rgba(255, 255, 255, 0.15) !important;
    }

    /* Hover & Active State when header is plain & NOT sticky (Dark links, blue hover) */
    header#plain:not(.sticky) .main-menu > ul > li > a {
        color: #333333 !important;
        background-color: transparent !important;
    }
    
    header#plain:not(.sticky) .main-menu > ul > li:hover > a {
        background-color: #09608d !important;
        color: #ffffff !important;
        box-shadow: 0 4px 15px rgba(9, 96, 141, 0.2) !important;
    }

    /* Hover & Active State when header is sticky (Dark links, theme background) */
    header.sticky .main-menu > ul > li > a {
        color: #333333 !important;
    }

    header.sticky .main-menu > ul > li:hover > a {
        background-color: #09608d !important;
        color: #ffffff !important;
        box-shadow: 0 4px 15px rgba(9, 96, 141, 0.35) !important;
    }
}

/* Tabs Container & Content Stability */
.tabs {
    min-height: 550px !important;
}

.tabs .content {
    min-height: 480px !important;
}

.content section {
    min-height: 400px !important;
}

/* Empty State Card Hover and Icon Effects */
.empty-state-card {
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.empty-state-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 45px rgba(0,0,0,0.08) !important;
    background: rgba(255, 255, 255, 0.8) !important;
    border-color: rgba(9, 96, 141, 0.2) !important;
}

.empty-state-card .empty-state-icon i {
    transition: all 0.4s ease !important;
}

.empty-state-card:hover .empty-state-icon i {
    transform: scale(1.1) rotate(5deg);
    opacity: 1 !important;
}

.empty-state-card a.btn_1:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(46, 204, 113, 0.4) !important;
}

/* ==========================================================================
   💳 PREMIUM CHECKOUT / CREATE ORDER STYLING
   ========================================================================== */

.billing-details {
    background: #ffffff !important;
    border: 1px solid rgba(9, 96, 141, 0.08) !important;
    border-radius: 20px !important;
    padding: 30px !important;
    box-shadow: var(--ct-shadow-subtle) !important;
    margin-bottom: 30px !important;
}

.your-order {
    background: #ffffff !important;
    border: 1px solid rgba(9, 96, 141, 0.08) !important;
    border-radius: 20px !important;
    padding: 25px !important;
    box-shadow: var(--ct-shadow-subtle) !important;
    margin-bottom: 25px !important;
}

.place-order {
    background: #ffffff !important;
    border: 1px solid rgba(9, 96, 141, 0.08) !important;
    border-radius: 20px !important;
    padding: 25px !important;
    box-shadow: var(--ct-shadow-subtle) !important;
}

/* Style default titles */
.billing-details .default-title,
.your-order .default-title,
.place-order .default-title {
    border-bottom: 2px solid rgba(9, 96, 141, 0.08) !important;
    padding-bottom: 15px !important;
    margin-bottom: 25px !important;
    position: relative !important;
}

.billing-details .default-title h2,
.your-order .default-title h2,
.place-order .default-title h2 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--ct-primary) !important;
    margin: 0 !important;
    letter-spacing: 0.5px !important;
}

.billing-details .default-title::after,
.your-order .default-title::after,
.place-order .default-title::after {
    content: "" !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 0 !important;
    width: 50px !important;
    height: 2px !important;
    background: var(--ct-primary) !important;
}

html[dir="rtl"] .billing-details .default-title::after,
html[dir="rtl"] .your-order .default-title::after,
html[dir="rtl"] .place-order .default-title::after {
    left: auto !important;
    right: 0 !important;
}

/* Form inputs and labels styling */
.billing-details .form-group label {
    font-weight: 700 !important;
    color: var(--ct-text-dark) !important;
    font-size: 13.5px !important;
    margin-bottom: 8px !important;
    display: inline-block !important;
}

.billing-details .form-group label sup {
    color: #ff3366 !important;
    font-weight: bold !important;
    font-size: 14px !important;
    top: -2px !important;
}

.billing-details .form-control {
    border-radius: 12px !important;
    border: 1px solid rgba(9, 96, 141, 0.18) !important;
    padding: 12px 18px !important;
    height: auto !important;
    font-size: 14px !important;
    background: #ffffff !important;
    transition: all 0.3s ease !important;
    color: var(--ct-text-dark) !important;
}

.billing-details .form-control:focus {
    border-color: var(--ct-primary) !important;
    box-shadow: 0 0 0 4px rgba(9, 96, 141, 0.1) !important;
    outline: none !important;
}

/* Custom styled Select dropdown */
.billing-details select.form-control {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2309608d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 15px center !important;
    background-size: 16px !important;
    padding-right: 40px !important;
}

html[dir="rtl"] .billing-details select.form-control {
    background-position: left 15px center !important;
    padding-left: 40px !important;
    padding-right: 18px !important;
}

/* Passport upload input */
.billing-details input[type="file"] {
    background: #ffffff !important;
    border: 1px dashed rgba(9, 96, 141, 0.3) !important;
    border-radius: 12px !important;
    padding: 10px 14px !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    color: var(--ct-text-muted) !important;
}

.billing-details input[type="file"]:hover {
    border-color: var(--ct-primary) !important;
    background: rgba(9, 96, 141, 0.02) !important;
}

/* Payment Options */
.payment-options ul {
    display: flex !important;
    gap: 15px !important;
    padding: 0 !important;
    margin: 20px 0 !important;
}

.payment-options li {
    flex: 1 !important;
    list-style-type: none !important;
}

.radio-option {
    position: relative !important;
}

.radio-option input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.radio-option label {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px !important;
    border: 2px solid rgba(9, 96, 141, 0.12) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-align: center !important;
    font-weight: 700 !important;
    color: var(--ct-text-dark) !important;
    margin: 0 !important;
}

.radio-option label img {
    margin: 10px 0 0 0 !important;
    max-width: 80% !important;
    height: 35px !important;
    object-fit: contain !important;
    transition: transform 0.3s ease !important;
    filter: grayscale(20%) !important;
}

.radio-option label:hover {
    border-color: var(--ct-primary) !important;
    background: rgba(9, 96, 141, 0.02) !important;
}

.radio-option label:hover img {
    transform: scale(1.05) !important;
    filter: none !important;
}

.radio-option input[type="radio"]:checked + label {
    border-color: var(--ct-primary) !important;
    background: rgba(9, 96, 141, 0.05) !important;
    box-shadow: 0 8px 24px rgba(9, 96, 141, 0.12) !important;
}

.radio-option input[type="radio"]:checked + label img {
    filter: none !important;
}

/* Receipt / Your Order Table styling */
.orders-table {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

.orders-table li.total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-top: 15px !important;
    border-top: 2px dashed rgba(9, 96, 141, 0.15) !important;
    margin-top: 15px !important;
}

.orders-table li.total::before {
    content: "Grand Total / الإجمالي" !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    color: var(--ct-text-dark) !important;
}

html[dir="rtl"] .orders-table li.total::before {
    content: "الإجمالي الكلي" !important;
}

.orders-table li.total .col.second strong {
    font-size: 24px !important;
    font-weight: 900 !important;
    color: var(--ct-primary) !important;
}

/* Agreement Policy Switch & Table */
.options_cart {
    background: transparent !important;
    border: none !important;
    margin: 20px 0 !important;
}

.options_cart td {
    border: none !important;
    padding: 10px 0 !important;
    vertical-align: middle !important;
    background: transparent !important;
}

.options_cart td span, 
.options_cart td a {
    font-size: 13.5px !important;
    font-weight: 600 !important;
}

.options_cart td a {
    color: var(--ct-primary) !important;
    text-decoration: underline !important;
}

.switch-ios {
    margin: 0 !important;
}

/* Place Order Submit Button */
.place-order .btn_full {
    background: linear-gradient(135deg, #2ecc71, #27ae60) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 14px 20px !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    box-shadow: 0 6px 20px rgba(46, 204, 113, 0.25) !important;
    transition: all 0.3s ease !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
}

.place-order .btn_full:hover {
    background: linear-gradient(135deg, #27ae60, #219653) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(46, 204, 113, 0.4) !important;
    color: #ffffff !important;
}

/* Alert styles */
form .alert-danger {
    border-radius: 12px !important;
    border: none !important;
    background-color: rgba(255, 51, 102, 0.1) !important;
    color: #ff3366 !important;
    font-weight: 700 !important;
    padding: 15px 20px !important;
    margin-bottom: 25px !important;
}

/* Center Recaptcha */
.g-recaptcha {
    margin: 20px 0 !important;
    display: flex !important;
    justify-content: center !important;
}

/* ==========================================================================
   ✨ PREMIUM CLEAN DETAILS HEADER & SECTIONS DESIGN
   ========================================================================== */

/* Clean, Premium Header Design */
.tour-header-clean {
    position: relative;
    background: linear-gradient(135deg, #09608d 0%, #053c5a 100%) !important;
    padding-top: 130px !important;
    padding-bottom: 50px !important;
    color: #ffffff !important;
    overflow: hidden;
}

.tour-header-clean::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: radial-gradient(circle at 80% 20%, rgba(0, 132, 137, 0.2) 0%, transparent 50%),
                radial-gradient(circle at 20% 80%, rgba(9, 96, 141, 0.35) 0%, transparent 65%),
                radial-gradient(circle at 50% 50%, rgba(245, 158, 11, 0.12) 0%, transparent 50%) !important; /* Subtle golden glow matching the brand's logo accent */
    pointer-events: none !important;
    z-index: 1 !important;
}

.tour-header-clean .container {
    position: relative !important;
    z-index: 2 !important;
}

/* Fix header absolute overlap: prevent it from hiding the title by setting relative position and removing black gradient background */
.tour-header-clean .parallax-content-2 {
    position: relative !important;
    background: transparent !important;
    padding: 0 !important;
    z-index: 2 !important;
    left: auto !important;
    bottom: auto !important;
}

.tour-header-clean h1 {
    font-size: 38px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin-bottom: 15px !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.25) !important;
    line-height: 1.3 !important;
}

.tour-header-clean span.subtitle-clean {
    font-size: 15px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    padding: 6px 18px !important;
    border-radius: 30px !important;
    display: inline-block !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    margin-bottom: 20px !important;
}

.tour-header-clean .rating {
    margin-top: 10px !important;
}

.tour-header-clean .rating ul {
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    gap: 4px !important;
    list-style: none !important;
}

.tour-header-clean .rating ul li {
    font-size: 22px !important;
    padding: 0 !important;
}

.tour-header-clean .rating ul li i.voted {
    color: #f9d71c !important;
    text-shadow: 0 0 10px rgba(249, 215, 28, 0.4) !important;
}

.tour-header-clean .rating ul li i.icon-star-empty {
    color: rgba(255, 255, 255, 0.3) !important;
}

.tour-header-clean #price_single_main {
    background: rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 20px !important;
    padding: 25px 20px !important;
    text-align: center !important;
    color: #ffffff !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15) !important;
    transition: all 0.3s ease !important;
    margin-top: 10px !important;
}

.tour-header-clean #price_single_main:hover {
    transform: translateY(-4px) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(255, 255, 255, 0.25) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2) !important;
}

.tour-header-clean #price_single_main span {
    display: block !important;
    font-size: 36px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    margin-top: 8px !important;
}

.tour-header-clean #price_single_main span sup {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.8) !important;
    top: -6px !important;
}

/* Premium Section Cards */
.premium-details-card {
    background: #ffffff !important;
    border: 1px solid rgba(9, 96, 141, 0.08) !important;
    border-top: 3px solid #09608d !important; /* Brand deep blue top border anchor */
    border-radius: 16px !important;
    padding: 30px !important;
    box-shadow: 0 10px 30px rgba(9, 96, 141, 0.03) !important;
    margin-bottom: 25px !important;
    transition: all 0.3s ease !important;
}

.premium-details-card:hover {
    box-shadow: 0 15px 35px rgba(9, 96, 141, 0.06) !important;
    border-color: rgba(9, 96, 141, 0.15) !important;
    border-top-color: #f59e0b !important; /* Transitions to brand gold on hover */
}

.premium-details-card:hover .card-header-premium i {
    color: #f59e0b !important; /* Icon turns golden on hover */
    background: rgba(245, 158, 11, 0.1) !important; /* Background glows golden */
}

.premium-details-card .card-header-premium {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    border-bottom: 2px solid rgba(9, 96, 141, 0.06) !important;
    padding-bottom: 15px !important;
    margin-bottom: 20px !important;
}

.premium-details-card .card-header-premium i {
    font-size: 24px !important;
    color: #09608d !important;
    background: rgba(9, 96, 141, 0.08) !important;
    width: 45px !important;
    height: 45px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 12px !important;
}

.premium-details-card .card-header-premium h3 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #09608d !important;
    margin: 0 !important;
}

.premium-details-card .card-body-premium {
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #444444 !important;
}

/* Beautiful styling for HTML editor output inside description/notes */
.premium-details-card .card-body-premium ul {
    padding-left: 20px !important;
    margin-bottom: 15px !important;
}

html[dir="rtl"] .premium-details-card .card-body-premium ul {
    padding-left: 0 !important;
    padding-right: 20px !important;
}

.premium-details-card .card-body-premium ul li {
    margin-bottom: 8px !important;
}

/* Inclusions & Exclusions specific markup helpers */
.card-body-premium.inclusions-content ul,
.card-body-premium.exclusions-content ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.card-body-premium.inclusions-content ul li,
.card-body-premium.exclusions-content ul li {
    position: relative !important;
    padding-left: 30px !important;
    margin-bottom: 12px !important;
    font-size: 15px !important;
}

html[dir="rtl"] .card-body-premium.inclusions-content ul li,
html[dir="rtl"] .card-body-premium.exclusions-content ul li {
    padding-left: 0 !important;
    padding-right: 30px !important;
}

.card-body-premium.inclusions-content ul li::before {
    content: "\e89d" !important;
    font-family: "fontello" !important;
    position: absolute !important;
    left: 0 !important;
    color: #2ecc71 !important;
    font-weight: bold !important;
}

html[dir="rtl"] .card-body-premium.inclusions-content ul li::before {
    left: auto !important;
    right: 0 !important;
}

.card-body-premium.exclusions-content ul li::before {
    content: "\e89a" !important;
    font-family: "fontello" !important;
    position: absolute !important;
    left: 0 !important;
    color: #e74c3c !important;
    font-weight: bold !important;
}

html[dir="rtl"] .card-body-premium.exclusions-content ul li::before {
    left: auto !important;
    right: 0 !important;
}

/* Timeline */
.timeline-modern {
    position: relative !important;
    padding: 10px 0 !important;
    margin-top: 10px !important;
}

.timeline-modern::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 20px !important;
    width: 2px !important;
    background: rgba(9, 96, 141, 0.15) !important;
}

html[dir="rtl"] .timeline-modern::before {
    left: auto !important;
    right: 20px !important;
}

.timeline-item-modern {
    position: relative !important;
    margin-bottom: 30px !important;
    padding-left: 45px !important;
}

html[dir="rtl"] .timeline-item-modern {
    padding-left: 0 !important;
    padding-right: 45px !important;
}

.timeline-item-modern:last-child {
    margin-bottom: 0 !important;
}

.timeline-badge-modern {
    position: absolute !important;
    top: 2px !important;
    left: 10px !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 3px solid #09608d !important;
    z-index: 10 !important;
    box-shadow: 0 0 0 4px rgba(9, 96, 141, 0.1) !important;
    transition: all 0.3s ease !important;
}

html[dir="rtl"] .timeline-badge-modern {
    left: auto !important;
    right: 10px !important;
}

.timeline-item-modern:hover .timeline-badge-modern {
    background: #f59e0b !important;
    border-color: #f59e0b !important;
    box-shadow: 0 0 0 6px rgba(245, 158, 11, 0.15) !important;
    transform: scale(1.1) !important;
}

.timeline-content-modern {
    background: #fdfdfd !important;
    border: 1px solid rgba(9, 96, 141, 0.06) !important;
    border-radius: 12px !important;
    padding: 20px !important;
    transition: all 0.3s ease !important;
}

.timeline-item-modern:hover .timeline-content-modern {
    background: #ffffff !important;
    border-color: rgba(9, 96, 141, 0.15) !important;
    box-shadow: 0 8px 25px rgba(9, 96, 141, 0.05) !important;
}

.timeline-content-modern h4 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #09608d !important;
    margin: 0 0 8px 0 !important;
    transition: color 0.3s ease !important;
}

.timeline-item-modern:hover .timeline-content-modern h4 {
    color: #008489 !important; /* Turns to brand teal on hover */
}

.timeline-content-modern p {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #666666 !important;
    margin: 0 !important;
}

/* Card Lists for items */
.cards-list-modern {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 15px !important;
    margin-top: 10px !important;
}

.card-item-modern {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    background: #fcfcfc !important;
    border: 1px solid rgba(9, 96, 141, 0.06) !important;
    border-radius: 12px !important;
    padding: 15px !important;
    transition: all 0.3s ease !important;
}

.card-item-modern:hover {
    background: #ffffff !important;
    border-color: rgba(0, 132, 137, 0.2) !important; /* Brand teal hover border */
    box-shadow: 0 10px 25px rgba(0, 132, 137, 0.06) !important;
    transform: translateY(-3px) !important;
}

.card-item-icon-modern {
    background: rgba(9, 96, 141, 0.08) !important;
    color: #09608d !important;
    width: 45px !important;
    height: 45px !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    flex-shrink: 0 !important;
    transition: all 0.3s ease !important;
}

.card-item-modern:hover .card-item-icon-modern {
    background: rgba(245, 158, 11, 0.1) !important; /* Gold background glow */
    color: #f59e0b !important; /* Icon turns gold */
}

.card-item-details-modern {
    flex-grow: 1 !important;
}

.card-item-details-modern h5 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    margin: 0 0 4px 0 !important;
}

.card-item-details-modern p {
    font-size: 13px !important;
    color: #777777 !important;
    margin: 0 !important;
}

/* Premium Sidebar & Booking Box Design */
#booking_box {
    background: #ffffff !important;
    border: 1px solid rgba(9, 96, 141, 0.08) !important;
    border-top: 4px solid #09608d !important; /* Premium brand blue anchor */
    border-radius: 16px !important;
    padding: 30px !important;
    box-shadow: 0 15px 40px rgba(9, 96, 141, 0.06) !important;
    transition: all 0.3s ease !important;
}

#booking_box:hover {
    box-shadow: 0 20px 50px rgba(9, 96, 141, 0.12) !important;
    border-color: rgba(9, 96, 141, 0.15) !important;
    border-top-color: #f59e0b !important; /* Gold transition on hover */
}

/* Booking Header Inner Text */
#booking_box h3.inner {
    background: linear-gradient(135deg, #09608d 0%, #053c5a 100%) !important;
    color: #ffffff !important;
    padding: 15px 20px !important;
    margin: -30px -30px 25px -30px !important;
    border-radius: 15px 15px 0 0 !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    text-align: center !important;
    border: none !important;
    position: relative !important;
    box-shadow: 0 4px 10px rgba(9, 96, 141, 0.15) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

#booking_box:hover h3.inner {
    background: linear-gradient(135deg, #09608d 0%, #008489 100%) !important; /* Subtle shift on hover */
}

/* Inputs & Form styling */
#booking_box .form-group {
    margin-bottom: 20px !important;
}

#booking_box label {
    font-weight: 600 !important;
    color: #333333 !important;
    font-size: 14px !important;
    margin-bottom: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

#booking_box label i {
    color: #09608d !important;
    font-size: 16px !important;
}

#booking_box .form-control {
    border: 1px solid rgba(9, 96, 141, 0.15) !important;
    border-radius: 8px !important;
    padding: 10px 15px !important;
    font-size: 14px !important;
    background-color: #fafafa !important;
    color: #333333 !important;
    transition: all 0.3s ease !important;
}

#booking_box .form-control:focus {
    background-color: #ffffff !important;
    border-color: #008489 !important;
    box-shadow: 0 0 0 3px rgba(0, 132, 137, 0.15) !important;
    outline: none !important;
}

/* Booking Tables */
#booking_box .table-responsive {
    border: none !important;
    margin-bottom: 15px !important;
}

#booking_box table {
    width: 100% !important;
    margin-bottom: 15px !important;
    border-collapse: separate !important;
    border-spacing: 0 5px !important;
}

#booking_box table tr {
    background: #fafafa !important;
    transition: background 0.3s ease !important;
}

#booking_box table tr:hover {
    background: #f0f7fa !important;
}

#booking_box table thead tr {
    background: transparent !important;
}

#booking_box table td {
    padding: 10px 12px !important;
    border: none !important;
    font-size: 13.5px !important;
    color: #444444 !important;
    font-weight: 500 !important;
    vertical-align: middle !important;
}

#booking_box table thead td {
    font-weight: 700 !important;
    color: #09608d !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
    border-bottom: 2px solid rgba(9, 96, 141, 0.08) !important;
}

#booking_box table.table_summary tr.total {
    background: transparent !important;
}

#booking_box table.table_summary tr.total td {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #09608d !important;
    border-top: 2px solid rgba(9, 96, 141, 0.1) !important;
    padding-top: 15px !important;
}

/* Numeric Row buttons */
#booking_box .numbers-row {
    position: relative !important;
    width: 100px !important;
    height: 35px !important;
}

#booking_box .numbers-row input {
    text-align: center !important;
    padding: 5px !important;
    height: 35px !important;
    font-weight: bold !important;
}

/* Booking Buttons */
#booking_box .btn_full {
    background: linear-gradient(135deg, #008489 0%, #09608d 100%) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 12px 25px !important;
    border-radius: 30px !important;
    text-align: center !important;
    display: block !important;
    margin-top: 20px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 20px rgba(0, 132, 137, 0.2) !important;
    cursor: pointer !important;
    border: none !important;
    text-decoration: none !important;
}

#booking_box .btn_full:hover {
    background: linear-gradient(135deg, #f59e0b 0%, #ff9800 100%) !important; /* Gold gradient hover */
    box-shadow: 0 8px 25px rgba(245, 158, 11, 0.3) !important;
    transform: translateY(-2px) !important;
}

#booking_box .btn_full_outline {
    background: transparent !important;
    color: #09608d !important;
    border: 2px solid #09608d !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    padding: 10px 20px !important;
    border-radius: 30px !important;
    text-align: center !important;
    display: block !important;
    margin-top: 12px !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    text-decoration: none !important;
}

#booking_box .btn_full_outline:hover {
    background: rgba(9, 96, 141, 0.05) !important;
    color: #008489 !important;
    border-color: #008489 !important;
}

/* Map Button */
.btn_map {
    background: linear-gradient(135deg, #09608d 0%, #008489 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    padding: 14px 25px !important;
    box-shadow: 0 6px 20px rgba(9, 96, 141, 0.15) !important;
    transition: all 0.3s ease !important;
    display: block !important;
    text-align: center !important;
    text-decoration: none !important;
    margin-bottom: 20px !important;
}

.btn_map:hover {
    background: linear-gradient(135deg, #008489 0%, #f59e0b 100%) !important;
    box-shadow: 0 8px 25px rgba(245, 158, 11, 0.25) !important;
    transform: translateY(-2px) !important;
    color: #ffffff !important;
}

/* Fix car/boat/hotel carousel image overflow in SliderPro */
.slider-pro img.sp-image,
.slider-pro img.sp-thumbnail {
    max-width: 100% !important;
}

/* ==========================================================================
   ✨ PREMIUM STATIC FOOTER DESIGN (LTR)
   ========================================================================== */

/* Force static positioning and premium gradient background */
footer.site-footer {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    width: 100% !important;
    z-index: 99 !important;
    background: #0b111e !important;
    color: #94a3b8 !important;
    padding: 0 !important;
    border-top: 3px solid #f59e0b !important;
    box-shadow: 0 -15px 40px rgba(0,0,0,0.15) !important;
}

body {
    margin-bottom: 0 !important;
}

/* Footer Newsletter Bar */
.footer-newsletter {
    background: #0e1726 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding: 35px 0 !important;
}

.newsletter-info {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
}

.newsletter-icon-box {
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: #09608d !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 24px !important;
    box-shadow: 0 4px 15px rgba(9, 96, 141, 0.3) !important;
    flex-shrink: 0 !important;
}

.newsletter-text h3 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 5px 0 !important;
    border: none !important;
    padding: 0 !important;
}

.newsletter-text h3::after {
    display: none !important;
}

.newsletter-text p {
    font-size: 13.5px !important;
    color: #94a3b8 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

@media (max-width: 991px) {
    .newsletter-info {
        margin-bottom: 25px !important;
    }
}

/* Newsletter Input Group Pill */
.newsletter-field {
    display: flex !important;
    align-items: center !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 50px !important;
    padding: 5px 5px 5px 15px !important; /* LTR padding: left side has input, right has button */
    transition: all 0.3s ease !important;
    width: 100% !important;
}

.newsletter-field:focus-within {
    border-color: #f59e0b !important;
    box-shadow: 0 0 15px rgba(245, 158, 11, 0.15) !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

.newsletter-field .form-control {
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    padding: 8px 10px !important;
    font-size: 14px !important;
    box-shadow: none !important;
    outline: none !important;
    height: auto !important;
}

.newsletter-field .form-control::placeholder {
    color: #64748b !important;
}

.newsletter-field .btn-subscribe {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #0b111e !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 10px 24px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.newsletter-field .btn-subscribe:hover {
    transform: scale(1.02) translateY(-1px) !important;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.35) !important;
}

/* Footer Columns */
.footer-main {
    padding: 60px 0 45px 0 !important;
}

.footer-heading {
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 25px !important;
    position: relative !important;
    padding-bottom: 10px !important;
}

.footer-heading::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    width: 30px !important;
    height: 2px !important;
    background: #f59e0b !important;
    border-radius: 2px !important;
    left: 0 !important; /* LTR align left */
}

/* Footer Lists Links */
.footer-menu {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-menu li {
    margin-bottom: 12px !important;
    padding: 0 !important;
}

.footer-menu li a {
    color: #94a3b8 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
    padding-left: 0 !important;
}

.footer-menu li a::before {
    content: "→" !important; /* Arrow points right in LTR */
    color: #f59e0b !important;
    position: absolute !important;
    left: 0 !important;
    opacity: 0 !important;
    transition: all 0.3s ease !important;
}

.footer-menu li a:hover {
    color: #ffffff !important;
    padding-left: 12px !important;
}

.footer-menu li a:hover::before {
    opacity: 1 !important;
}

/* Logo Column */
.footer-brand {
    margin-bottom: 20px !important;
}

.site-footer .footer-logo {
    max-height: 48px !important;
    width: auto !important;
    margin-bottom: 0 !important;
    display: block !important;
    transition: transform 0.3s ease !important;
}

.site-footer .footer-logo:hover {
    transform: scale(1.02) !important;
}

.site-footer p.footer-about {
    font-size: 13.5px !important;
    line-height: 1.8 !important;
    color: #94a3b8 !important;
    margin-bottom: 25px !important;
}

/* Social media labels & links */
.footer-social-wrapper {
    margin-top: 25px !important;
}

.social-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 12px !important;
    display: block !important;
}

.footer-social-links {
    display: flex !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.social-btn {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    color: #94a3b8 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-decoration: none !important;
}

.social-btn:hover {
    color: #ffffff !important;
    transform: translateY(-3px) !important;
}

.social-btn.facebook:hover {
    background: #1877f2 !important;
    border-color: #1877f2 !important;
    box-shadow: 0 4px 12px rgba(24, 119, 242, 0.3) !important;
}

.social-btn.twitter:hover {
    background: #1da1f2 !important;
    border-color: #1da1f2 !important;
    box-shadow: 0 4px 12px rgba(29, 161, 242, 0.3) !important;
}

.social-btn.instagram:hover {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
    border-color: #e6683c !important;
    box-shadow: 0 4px 12px rgba(220, 39, 67, 0.3) !important;
}

.social-btn.youtube:hover {
    background: #ff0000 !important;
    border-color: #ff0000 !important;
    box-shadow: 0 4px 12px rgba(255, 0, 0, 0.3) !important;
}

/* Premium Contact List */
.footer-contact-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

.contact-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 15px !important;
}

.contact-item .contact-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    background: rgba(245, 158, 11, 0.08) !important;
    color: #f59e0b !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    flex-shrink: 0 !important;
    transition: all 0.3s ease !important;
}

.contact-item:hover .contact-icon {
    background: #f59e0b !important;
    color: #0b111e !important;
    box-shadow: 0 0 10px rgba(245, 158, 11, 0.3) !important;
}

.contact-item .contact-content {
    display: flex !important;
    flex-direction: column !important;
}

.contact-item .contact-title {
    font-size: 11px !important;
    text-transform: uppercase !important;
    color: #64748b !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 2px !important;
}

.contact-item .contact-link,
.contact-item .contact-text {
    font-size: 14px !important;
    color: #e2e8f0 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    line-height: 1.4 !important;
}

.contact-item .contact-link:hover {
    color: #f59e0b !important;
}

/* Bottom Copyright Bar */
.footer-bottom {
    background: #080c14 !important;
    padding: 25px 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.bottom-wrapper {
    width: 100% !important;
}

.copyright-text {
    font-size: 13px !important;
    color: #64748b !important;
    margin: 0 !important;
}

.copyright-text a {
    color: #94a3b8 !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
    font-weight: 500 !important;
}

.copyright-text a:hover {
    color: #ffffff !important;
}

/* Payment Badges */
.payment-badges {
    display: flex !important;
    gap: 8px !important;
    justify-content: flex-end !important; /* LTR align right */
}

.payment-badge {
    opacity: 0.45 !important;
    transition: all 0.3s ease !important;
    border-radius: 4px !important;
}

.payment-badge:hover {
    opacity: 1 !important;
    transform: translateY(-1px) !important;
}


/* ==========================================================================
   ✨ PREMIUM ABOUT US PAGE STYLING (LTR)
   ========================================================================== */
.premium-about-us {
    font-family: sans-serif !important;
}

.text-gold {
    color: #f59e0b !important;
}

.premium-about-us .sub-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    display: inline-block !important;
    margin-bottom: 10px !important;
}

.premium-about-us .main-title {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #0b111e !important;
    line-height: 1.3 !important;
}

.premium-about-us .section-title {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #0b111e !important;
}

.premium-about-us .lead-text {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #64748b !important;
}

/* Image Wrapper and badge */
.about-image-wrapper {
    position: relative !important;
    display: inline-block !important;
    width: 100% !important;
}

.about-image-wrapper .main-about-img {
    width: 100% !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.4s ease !important;
}

.about-image-wrapper:hover .main-about-img {
    transform: scale(1.02) !important;
}

.experience-badge {
    position: absolute !important;
    bottom: -20px !important;
    left: -20px !important; /* LTR left aligned */
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #0b111e !important;
    padding: 20px 25px !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 25px rgba(245, 158, 11, 0.3) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    z-index: 10 !important;
}

.experience-badge .num {
    font-size: 32px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin-bottom: 5px !important;
}

.experience-badge .txt {
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

/* Points */
.about-points .point-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #334155 !important;
}

.about-points .point-item i {
    font-size: 18px !important;
}

/* Pillars Cards */
.pillar-card {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.pillar-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08) !important;
    border-color: rgba(9, 96, 141, 0.15) !important;
}

.pillar-card.active {
    background: #09608d !important;
    color: #ffffff !important;
    border-color: #09608d !important;
}

.pillar-card.active h3 {
    color: #ffffff !important;
}

.pillar-card.active p {
    color: rgba(255, 255, 255, 0.8) !important;
}

.pillar-card.active .pillar-icon {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #f59e0b !important;
}

.pillar-icon {
    width: 65px !important;
    height: 65px !important;
    border-radius: 50% !important;
    background: rgba(9, 96, 141, 0.06) !important;
    color: #09608d !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 32px !important;
    transition: all 0.4s ease !important;
}

.pillar-card:hover .pillar-icon {
    transform: rotateY(180deg) !important;
}

.pillar-card h3 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #0d1b2a !important;
    margin-bottom: 15px !important;
}

.pillar-card p {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #64748b !important;
    margin-bottom: 0 !important;
}

/* Feature Box */
.feature-box {
    border: 1px solid rgba(0, 0, 0, 0.03) !important;
    transition: all 0.3s ease !important;
    background: #ffffff !important;
}

.feature-box:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
    border-color: rgba(245, 158, 11, 0.2) !important;
}

.feature-icon {
    width: 50px !important;
    height: 50px !important;
    border-radius: 12px !important;
    background: rgba(245, 158, 11, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 24px !important;
}

.feature-box h4 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0d1b2a !important;
    margin-bottom: 10px !important;
}

.feature-box p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    color: #64748b !important;
    margin-bottom: 0 !important;
}

/* Gold Button */
.btn-modern-gold {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #0b111e !important;
    padding: 12px 30px !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    display: inline-block !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 5px 15px rgba(245, 158, 11, 0.25) !important;
}

.btn-modern-gold:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.4) !important;
    color: #0b111e !important;
}

/* Counters section */
.counters-section {
    padding: 50px 20px !important;
}

.counter-item .counter-num {
    font-size: 36px !important;
    font-weight: 800 !important;
    margin-bottom: 5px !important;
}

.counter-item .counter-label {
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* Modern Blog Cards Redesign */
.modern-blog-card {
    display: flex !important;
    flex-direction: row !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    margin-bottom: 24px !important;
    text-decoration: none !important;
    color: inherit !important;
}

.modern-blog-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08) !important;
    border-color: rgba(245, 158, 11, 0.2) !important;
}

.blog-card-media {
    position: relative !important;
    width: 200px !important;
    min-width: 200px !important;
    overflow: hidden !important;
}

.blog-card-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.modern-blog-card:hover .blog-card-img {
    transform: scale(1.08) !important;
}

.blog-card-date-badge {
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    right: auto !important;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
    text-align: center !important;
    min-width: 55px !important;
    box-shadow: 0 4px 10px rgba(245, 158, 11, 0.3) !important;
    display: flex !important;
    flex-direction: column !important;
    line-height: 1.1 !important;
}

.blog-card-date-badge .day {
    font-size: 18px !important;
    font-weight: 800 !important;
    display: block !important;
}

.blog-card-date-badge .month {
    font-size: 11px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    display: block !important;
    opacity: 0.9 !important;
}

.blog-card-body {
    padding: 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    flex-grow: 1 !important;
    text-align: left !important;
}

.blog-card-meta {
    font-size: 13px !important;
    color: #8c98a5 !important;
    margin-bottom: 12px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.blog-meta-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.blog-meta-item i {
    font-size: 14px !important;
    color: #f59e0b !important;
}

.blog-meta-separator {
    color: #e2e8f0 !important;
    margin: 0 4px !important;
}

.blog-card-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0d1b2a !important;
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    line-height: 1.5 !important;
    transition: color 0.2s ease !important;
}

.modern-blog-card:hover .blog-card-title {
    color: #09608d !important;
}

.blog-card-excerpt {
    font-size: 13.5px !important;
    line-height: 1.7 !important;
    color: #5a6e85 !important;
    margin-bottom: 16px !important;
    flex-grow: 1 !important;
}

.blog-card-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

.read-more-btn {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #09608d !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    transition: color 0.2s ease, gap 0.2s ease !important;
}

.read-more-icon {
    font-size: 11px !important;
    transition: transform 0.2s ease !important;
}

.modern-blog-card:hover .read-more-btn {
    color: #f59e0b !important;
}

.modern-blog-card:hover .read-more-btn .read-more-icon {
    transform: translateX(4px) !important;
}

/* Modern View All Button */
.btn-modern-articles {
    background: linear-gradient(135deg, #09608d 0%, #054060 100%) !important;
    color: #ffffff !important;
    padding: 12px 35px !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    display: inline-block !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 5px 15px rgba(9, 96, 141, 0.2) !important;
    border: none !important;
}

.btn-modern-articles:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(9, 96, 141, 0.35) !important;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
}

/* Responsiveness for cards */
@media (max-width: 767px) {
    .modern-blog-card {
        flex-direction: column !important;
    }
    .blog-card-media {
        width: 100% !important;
        min-width: 100% !important;
        height: 200px !important;
    }
    .blog-card-body {
        padding: 20px !important;
    }
}

/* Premium About Us Styling */
.premium-about-us {
    font-family: 'Inter', sans-serif !important;
}

.text-gold {
    color: #f59e0b !important;
}

.sub-title {
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.experience-badge {
    position: absolute;
    bottom: -20px;
    right: -20px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #fff;
    padding: 15px 25px;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(245, 158, 11, 0.3);
    text-align: center;
    z-index: 2;
}
.experience-badge .num {
    display: block;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}
.experience-badge .txt {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    margin-top: 5px;
}

.about-image-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}
.main-about-img {
    transition: transform 0.5s ease;
}
.main-about-img:hover {
    transform: scale(1.02);
}

.about-points .point-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    font-weight: 600;
}
.about-points .point-item i {
    font-size: 18px;
}

/* Pillar Cards */
.pillar-card {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.4s ease;
}
.pillar-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.08) !important;
    border-color: rgba(245, 158, 11, 0.2);
}
.pillar-card.active {
    background: linear-gradient(135deg, #09608d 0%, #032b40 100%);
    color: #ffffff;
}
.pillar-card.active .pillar-icon i {
    color: #ffffff;
}
.pillar-icon i {
    font-size: 45px;
    color: #f59e0b;
    display: inline-block;
    transition: transform 0.3s ease;
}
.pillar-card:hover .pillar-icon i {
    transform: scale(1.1);
}
.pillar-card h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
}
.pillar-card p {
    font-size: 14px;
    line-height: 1.6;
    color: inherit;
    opacity: 0.85;
}

/* Video Promo Banner */
.video-promo-banner {
    position: relative;
    background-size: cover !important;
    background-position: center center !important;
    background-attachment: fixed !important;
    border-radius: 20px;
    overflow: hidden;
    margin: 50px 0;
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

.video-banner-overlay {
    background: rgba(3, 43, 64, 0.7);
    padding: 80px 20px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.btn-play-pulse {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 90px;
    background: #f59e0b;
    border-radius: 50%;
    color: #ffffff !important;
    font-size: 32px;
    text-decoration: none !important;
    box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.7);
    animation: pulse-orange 2s infinite;
    transition: all 0.3s ease;
    margin-top: 20px;
}

.btn-play-pulse:hover {
    background: #ffffff;
    color: #f59e0b !important;
    transform: scale(1.05);
}

@keyframes pulse-orange {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 20px rgba(245, 158, 11, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0);
    }
}

/* Why Choose Us Feature Boxes */
.feature-box {
    border: 1px solid rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
}
.feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.06) !important;
    border-color: rgba(245, 158, 11, 0.15);
}
.feature-icon i {
    font-size: 36px;
}
.feature-box h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
.feature-box p {
    font-size: 13.5px;
    line-height: 1.6;
    color: #777;
    margin-bottom: 0;
}

.btn-modern-gold {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
    padding: 12px 35px !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    display: inline-block !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 5px 15px rgba(245, 158, 11, 0.2) !important;
    border: none !important;
}

.btn-modern-gold:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.35) !important;
    background: linear-gradient(135deg, #09608d 0%, #054060 100%) !important;
}

/* Counters */
.counter-item .counter-num {
    font-size: 36px;
    margin-bottom: 5px;
}
.counter-item .counter-label {
    font-size: 14px;
    font-weight: 600;
}

