/* ========================================
PAGE: GLOBAL
======================================== */

/* ===== ROOT VARIABLES ===== */

:root {
    --font-primary: "Catamaran", sans-serif;
    --font-secondary: "Catamaran", sans-serif;
    --font-tertiary: "Catamaran", sans-serif;

    --bright-blue: rgba(0, 0, 255, 0.705);
    --medium-blue: #13389d;
    --light-blue: rgba(35, 50, 149, .7);
    --dark-blue: #002147;

    --dark-black: rgb(0, 0, 0);
    --medium-black: rgb(99, 99, 99);
    --light-black: rgba(124, 124, 124, 0.541);
    --extra-light-black: rgba(124, 124, 124, 0.203);

    --pure-white: rgb(255, 255, 255);
    --light-white: rgb(233, 251, 255);

    --counter-gold: #f4cf53;

    /* footer */
    --clgr: #ffffff;
    --color-black: #000;
    --color-blue: #002147;
    --color-drkblue: #00152e;
    --color-ltblue: #0cb8b6;

    /* Nav Section */
    --color-dk-black: #08080a;
    --color-lt-bk: #2a2a2a;
    --color-white: #fff;
    --color-lt-wt: #F4F1F1;
    --color-dk-blue: #20265A;
    --color-lt-blue: #1392ce;
    /* --color-yellow: #ffce13; */
    --color-gr: #EAEFEF;
    --color-dg: #758694;
}

/* ===== BASE ELEMENTS ===== */

a,
button {
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    text-decoration: none;
    background-color: transparent;
    border: 0;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
li {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    text-decoration: none;
}

/* ===== GLOBAL TYPOGRAPHY ===== */

.gn-txt {
    font-family: var(--font-primary);
    font-size: 16px;
    margin: 0px 0px 20px 0px;
    color: var(--color-lt-bk);
    text-align: justify;
}

/* ===== GLOBAL LINK STYLES ===== */

.company-content h1,
a {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 400;
    color: var(--pure-white);
    margin: 6px 0px 2px 8px;
}

/* ===== SHARED DECORATIVE ELEMENTS ===== */

.after {
    position: relative;
    display: inline-block;
}

.after::after {
    content: "";
    position: absolute;
    background-image: url(../images/shared/icons/hadding-after-1.webp);
    background-size: contain;
    background-repeat: no-repeat;
    height: 37px;
    width: 30px;
    top: -10px;
    right: -35px;
}

.decor-line {
    width: 90px;
    height: 3px;
    background: var(--counter-gold);
    margin: 0px 0px 20px 0px;
}

.decor-line {
    height: 3px;
    background: var(--counter-gold);
}

.decor-left {
    width: 90px;
    margin: 0px 0px 20px 0px;
}

.decor-center {
    width: 90px;
    margin: 0px auto;
}

/* ===== SHARED UTILITIES ===== */

.section-services-breadcrumb[id],
.services-details-section[id] {
    scroll-margin-top: 130px;
}

/* ========================================
PAGE: SHARED COMPONENTS
======================================== */

/* ===== HEADER TOP BAR ===== */

.header-top {
    background: #ffffff;
    background: linear-gradient(45deg, rgba(255, 255, 255, 0) 50%, rgba(19, 56, 157, 1) 50%);
    padding: 2px 0px;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 101;
}

.email-icon i {
    color: var(--color-white);
}

.left-content {
    display: flex;
    justify-content: flex-end;
    align-items: end;
    position: relative;
}

/* .left-content::after {
    content: "";
    position: absolute;
    height: 15px;
    width: 2px;
    background-color: var(--color-white);
    right: 19%;
    bottom: 3px;
} */

.left-content {
    display: flex;
}

.social-icons {
    margin: 0px 0px 0px 20px;
}

.social-icons i {
    color: var(--color-white);
    font-size: 13px;
    margin: 0px 5px 0px 5px;
}

.submit-button a {
    background-color: var(--medium-blue);
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 500;
    color: var(--color-white);
    padding: 12px 22px;
    border-radius: 10px;
    display: inline-block;
    transition: all 0.3s ease;
}

.submit-button a:hover {
    background-color: #1a73e8;
    /* slightly darker or lighter variant */
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.submit-parent {
    flex-shrink: 0;
}

.email-parent {
    display: flex;
}

/* ===== NAVBAR ===== */

.nav-w100 {
    position: relative;
    padding: 35px 0px 25px 0px;
}

.nav-w100 .navbar {
    align-items: center;
    gap: 16px;
}

.nav-logo {
    width: 250px;
    position: absolute;
    /* padding: 20px; */
    background-color: var(--color-white);
    top: -60px;
    left: -7%;
}

.nav-item a {
    font-family: var(--font-primary);
    font-weight: 500;
    color: var(--dark-blue);
    font-size: 18px;
    margin: 0px 10px 0px 0px;
}

.menus {
    align-items: center;
}

.menus .nav-item {
    display: flex;
    align-items: center;
}

.menus .nav-link,
.menus .rsw-drop {
    display: flex;
    align-items: center;
    min-height: 48px;
}

.rsw-drop {
    background-color: transparent;
    border: none;
    color: var(--dark-blue);
    font-family: var(--font-primary);
    font-weight: 500;
    font-size: 16px;
    margin: 0px 10px 0px 0px;
}

.rsw-drop:hover {
    color: var(--bright-blue);
    background-color: transparent;
}

.rsw-drop:focus {
    box-shadow: none;
}

.navbar-button {
    display: none;
}

.navbar-button i {
    color: var(--color-dk-blue);
    background-color: var(--color-gr);
    padding: 13px;
    border-radius: 8px;
    margin: 0px 0px 0px 15px;
}

.slide-bar img {
    width: 100px;
}

.nav-logo img {
    width: 230px !important;
    background-color: var(--color-white);

}

.sticky-nav.menu-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--color-white) !important;

    z-index: 99;
    -webkit-animation: sticky 8s;
    animation: sticky 2s;
    -webkit-box-shadow: 2px 4px 8px rgba(51, 51, 51, 0.25);
    box-shadow: 2px 4px 8px rgba(51, 51, 51, 0.25);
}

@-webkit-keyframes sticky {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    100% {
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
    }
}

@keyframes sticky {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    100% {
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
    }
}

.sticky-nav.menu-fixed .nav-logo {
    top: -13px;
    width: 150px;
    padding: 0px;
    left: 15px;
}

.sticky-nav.menu-fixed .nav-logo img {
    padding: 0;
}

/* ===== MOBILE OFFCANVAS ===== */

.navbar-link a {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 400;
    color: var(--color-dk-blue);

    display: inline-block;
}

.navbar-link .rsw-drop {
    width: 100%;
    justify-content: space-between;
    margin: 0;
}

.navbar-link ul li {
    border-bottom: 1px solid rgba(240, 240, 240, 1);
    margin: 0px 0px 40px 0px;
}

.navbar-link span {
    float: right;
}

.contact-info h1 {
    font-family: var(--font-primary);
    font-size: 25px;
    font-weight: 600;
    color: var(--color-dk-black);
    margin: 0px 0px 25px 0px;
}

.info-details {
    display: flex;
}

.info-content h2 {
    font-family: var(--font-primary);
    font-size: 20px;
    font-weight: 400;
    color: var(--color-dk-black);
    margin: 0px 0px 0px 8px;
}

.info-content a {
    color: var(--dark-black);
    font-size: 16px;
}

.info-details {
    margin: 0px 0px 18px 0px;
    align-items: center;
}

.info-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background-color: var(--medium-blue);
    border-radius: 50%;
}

.info-icon i {
    font-size: 15px;
    color: var(--pure-white);
}

.slider-icons {
    display: flex;
    justify-content: center;
    gap: 12px;
}

.slider-icons i {
    color: var(--pure-white);
    font-size: 16px;
}

.offcanvas-header button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background-color: var(--medium-blue);
    border-radius: 50%;
    border: none;
}

.close-button {
    color: var(--pure-white);
    font-size: 14px;
}

.bottom-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: var(--medium-blue);
    border-radius: 50%;
    text-decoration: none;
}

.navbar-link ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Mobile dropdown container */
.mobile-dropdown {
    width: 100%;
}

/* Toggle button */
.mobile-dropdown-toggle {
    width: 100%;
    padding: 12px 10px;
    background: none;
    border: none;
    text-align: left;
    font-size: 17px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--color-dk-blue);
}

/* Dropdown menu hidden */
.mobile-dropdown-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: #f9f9f9;
}

/* Show dropdown */
.mobile-dropdown.active .mobile-dropdown-menu {
    max-height: 500px;
}

/* Links */
.mobile-dropdown-menu a {
    display: block;
    padding: 10px 25px;
    text-decoration: none;
    color: #333;
}

/* Arrow animation */
.mobile-dropdown .arrow {
    transition: transform 0.3s ease;
}

.mobile-dropdown.active .arrow {
    transform: rotate(180deg);
}

/* Parent container */
.nav-item.dropdown {
    position: relative;
}

/* Dropdown menu */
.dropdown-menu {
    position: absolute;
    top: 100%;
    /* directly below parent */
    left: 0;

    min-width: 200px;
    background: var(--pure-white);
    border-radius: 6px;
    padding: 10px 0;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);

    /* Hide initially */
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);

    transition: all 0.3s ease;
    z-index: 1000;

    overflow: hidden;
}

/* Show on hover */
.nav-item.dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    display: block;
}

.dropdown-item {
    display: block;
    padding: 10px 20px;
    color: var(--dark-black);
    text-decoration: none;

    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        transform 0.25s ease,
        padding-left 0.25s ease;
}

/* Hover effect */
.dropdown-item:hover {
    background-color: blanchedalmond;
    color: var(--bright-blue);
    transform: translateX(5px);
    padding-left: 25px;
}

.mobile-dropdown-menu li {
    margin-bottom: 12px !important;
}

.mobile-dropdown-menu li:last-child {
    margin-bottom: 0;
}

/* ===== BREADCRUMB ===== */

.section-contact-breadcrumb {
    background-image: url(../images/shared/breadcrumbs/contact.webp);
}

.section-about-breadcrumb {
    background-image: url(../images/shared/breadcrumbs/about.webp);
}

.section-faq-breadcrumb {
    background-image: url(../images/shared/breadcrumbs/faq.webp);
}

.section-gallery-breadcrumb {
    background-image: url(../images/shared/breadcrumbs/gallery.webp);
}

.section-services-breadcrumb {
    background-image: url(../images/shared/breadcrumbs/services.webp);
}

.breadcrumb-background {
    position: relative;
    width: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.main-crumb {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 400px;
}

.crumb-h3 {
    font-family: var(--font-primary);
    font-size: 60px;
    color: var(--pure-white);
    font-weight: 700;
    margin: 0px 0px 10px 0px;
}

.crumb-p {
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--light-white);
    font-weight: 400;
    max-width: 400px;
}

/* ===== FOOTER ===== */

.main-footer {
    position: relative;
    background-image: url('../images/shared/backgrounds/footer.jpeg');
    background-size: cover;
    background-position: center;
    color: var(--clgr);
    padding: 60px 0 0 0;
    font-family: var(--font-primary);
    z-index: 1;
}

/* Shared column spacing */
.main-footer .row {
    row-gap: 24px;
}

/* Background overlay */
.main-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--medium-blue);
    z-index: -1;
}

/* Footer card layout */
.footer-box {
    margin: 0 0 20px 0;
    height: 100%;
}

/* Brand block */
.footer-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 30px;
}

.rsw-logo {
    max-width: 220px;
    height: auto;
}

.footer-brand-text {
    font-size: 17px;
    line-height: 26px;
    color: var(--pure-white);
    overflow-wrap: anywhere;
}

/* Headings + accent line */
.footer-box h4 {
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 25px 0;
    color: var(--pure-white);
    letter-spacing: 1px;
    text-transform: uppercase;
    position: relative;
}

.footer-box h4::after {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    background: var(--color-ltblue);
    margin: 8px 0 0 0;
}


.footer-spcl-h1 {
    font-family: var(--font-primary);
    font-size: 22px;
    font-weight: 600;
    color: var(--pure-white);
    margin: 0px 0px 6px 0px;
}

/* Contact list */
.footer-contact {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.footer-contact-item>div {
    flex: 1;
    min-width: 0;
}

.footer-contact-item i {
    color: var(--color-ltblue);
    font-size: 18px;
    margin: 5px 0 0 0;
    transition: 0.3s;
}

.footer-contact-item span {
    font-size: 14px;
    opacity: 0.7;
    display: block;
}

.footer-contact-item a {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: var(--pure-white);
    text-decoration: none;
    line-height: 1.5;
    /* margin: 2px 0 0 0; */
    overflow-wrap: anywhere;
    transition: 0.3s;
}

/* Contact hover states */
.footer-contact-item a:hover {
    color: var(--color-ltblue);
    transform: translateX(3px);
}

.footer-contact-item i:hover {
    transform: scale(1.2);
}

/* Footer navigation */
.footer-links {
    list-style: none;
    padding: 0;
}

.footer-links li {
    margin: 0 0 5px 0;
}

.footer-links a {
    position: relative;
    display: inline-block;
    color: var(--clgr);
    text-decoration: none;
    font-size: 17px;
    padding-left: 20px;
    transition: 0.3s ease;
}

.footer-links a::before {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    left: 0;
    transition: 0.3s;
}

.footer-links a::after {
    content: "";
    position: absolute;
    left: 20px;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: var(--color-ltblue);
    transition: 0.3s ease;
}

.footer-links a:hover {
    padding-left: 24px;
    color: var(--pure-white);
}

.footer-links a:hover::before {
    transform: translateX(4px);
}

.footer-links a:hover::after {
    width: 100%;
}

/* Working hours */
.footer-timing p {
    font-size: 17px;
    margin: 0 0 5px 0;
    color: var(--pure-white);
}

/* Bottom bar */
.footer-bottom {
    background: var(--color-drkblue);
    padding: 10px 0 10px 0;
}

.footer-bottom .row {
    row-gap: 12px;
}

.foot-para p {
    font-size: 15px;
    margin: 0 0 0 0;
    color: var(--pure-white);
}

/* Social links */
.footer-social {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.footer-social a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--pure-white);
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: 0.3s;
}

.footer-social a:hover {
    background: var(--color-ltblue);
    transform: translateY(-4px);
}


/* ========================================
PAGE: HOME
======================================== */

/* ===== HERO SECTION ===== */

.rsw-slider {
    position: relative;
}

.slider-image {
    position: relative;
    overflow: hidden;
}

.slider-image img {
    width: 100%;
    transform: scale(1);
    transform-origin: center center;
    transition: transform 0.6s ease;
}

.slider-section .owl-item.active .slider-image img {
    animation: heroZoom 8s ease-in-out infinite alternate;
}

.slider-image::after {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-color: rgba(195, 195, 195, 0.037);
    height: 100%;
    width: 100%;
}

.content-parent {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 120px;
    z-index: 2;
}

.slider-content h1 {
    font-family: var(--font-primary);
    font-size: 65px;
    font-weight: 700;
    max-width: 700px;
    color: var(--color-white);
    position: relative;
    z-index: 2;
}

.slider-content p {
    font-family: var(--font-primary);
    font-size: 20px;
    font-weight: 400;
    max-width: 700px;
    text-align: justify;
    color: var(--color-white);
    position: relative;
    z-index: 2;
}

.slider-section .owl-nav .owl-prev i {
    position: absolute;
    top: 40%;
    left: 20px;
    color: var(--color-white);
    background: rgba(255, 255, 255, 0.546);
    width: 50px;
    height: 50px;
    background-color: rgba(255, 255, 255, 0.546);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slider-section .owl-nav .owl-prev i:hover {
    background-color: var(--medium-blue);
    transition: ease-in 0.3s;
}

.slider-section .owl-nav .owl-next i {
    position: absolute;
    top: 40%;
    right: 20px;
    color: var(--color-white);
    background: rgba(255, 255, 255, 0.546);
    width: 50px;
    height: 50px;
    background-color: rgba(255, 255, 255, 0.546);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slider-section .owl-nav .owl-next i:hover {
    background-color: var(--medium-blue);
    transition: ease-in 0.3s;
}

@keyframes heroZoom {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.08);
    }
}

/* ===== CONNECT WITH US ===== */

.cws-main {
    position: relative;
    background: url(../images/home/rsw-teams.webp);
    background-attachment: fixed;
    background-size: cover;
    min-height: 500px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cws-main:after {
    content: '';
    position: absolute;
    background: rgba(95, 95, 95, 0.409);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
}

.cws-txt {
    position: relative;
    z-index: 5;
    margin: 0px auto;
    max-width: 40%;
}

.cws-txt h5 {
    font-family: var(--font-primary);
    font-size: 48px;
    font-weight: 700;
    color: var(--pure-white);
    margin: 0 0 12px 0;
    /* ~48 / 4 */
    line-height: 1.2;
}

.cws-txt p {
    font-family: var(--font-primary);
    font-size: 20px;
    font-weight: 400;
    color: var(--pure-white);
    margin: 0 0 32px 0;
    /* ~20 × 1.6 */
    line-height: 1.6;
    /* golden ratio readability */
}

.cws-txt a {
    position: relative;
    overflow: hidden;

    background: var(--pure-white);
    color: var(--medium-blue);
    border: 2px solid var(--pure-white);

    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 500;
    padding: 12px 22px;
    border-radius: 10px;
    display: inline-block;

    transition: color 0.3s ease, border 0.3s ease;
    animation: pulseGlow 2.5s infinite;
}

/* fill layer */
.cws-txt a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--medium-blue);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.4s ease;
    z-index: -1;
}

/* hover effect */
.cws-txt a:hover::before {
    transform: scaleX(1);
}

.cws-txt a:hover {
    color: var(--pure-white);
    border-color: var(--medium-blue);
    animation: none;
    /* stop pulse on hover */
}

.cws-txt a {
    z-index: 1;
}

.cws-txt a::before {
    z-index: -1;
}

/* subtle attention animation */
@keyframes pulseGlow {
    0% {
        box-shadow: 0 0 0 rgba(255, 255, 255, 0.0);
    }

    50% {
        box-shadow: 0 0 12px rgba(255, 255, 255, 0.4);
    }

    100% {
        box-shadow: 0 0 0 rgba(255, 255, 255, 0.0);
    }
}

/* ===== CWS Section End===== */

/* ===== TOP DESTINATIONS ===== */

.top-destinations {
    padding: 60px 0;
    background: #f5f5f5;
    text-align: center;
    overflow: hidden;
    position: relative;
    /* prevents decorative shapes from breaking layout */
}



/* title */
.top-dest-h1 {
    font-size: 48px;
    font-weight: 700;
    margin: 0px 0px 40px 0px;
}

/* GRID LAYOUT */
.hex-layout {
    display: grid;
    grid-template-columns: repeat(4, 220px);
    justify-content: center;
    gap: 50px 40px;
    position: relative;
    padding: 10px 0px 30px 0px;
}

/* ==== Wings Animation ==== */
.wings-moving {
    content: '';
    position: absolute;
    max-width: 220px;
    top: 15% !important;
    right: 15% !important;
    pointer-events: none;
    z-index: 2;
}

.moving-logo {
    width: 100%;
    height: auto;
    display: block;
}

.img_moving_anim1 {
    -webkit-animation: glide1 2s ease-in-out alternate infinite;
    animation: glide1 2s ease-in-out alternate infinite;
}


@keyframes glide1 {

    /* Moving Up and Down */
    0%,
    100% {
        transform: translate(-50%, -50%) rotate(0deg) translateY(0);
    }

    50% {
        transform: translate(-50%, -50%) rotate(0deg) translateY(-20px);
    }
}

/* ==== ==== */



/* stagger rows (desktop only) */
.hex-card:nth-child(2),
.hex-card:nth-child(4),
.hex-card:nth-child(6),
.hex-card:nth-child(8) {
    transform: translateY(60px);
}

/* hexagon cards */
.hex-card {
    width: 220px;
    height: 200px;
    background: var(--pure-white);

    clip-path: polygon(25% 6.7%,
            75% 6.7%,
            100% 50%,
            75% 93.3%,
            25% 93.3%,
            0% 50%);

    border-radius: 7px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    box-shadow: 0 12px 25px rgba(65, 62, 62, 0.2);
    transition: 0.3s;
}

/* hover */
.hex-card:hover {
    transform: translateY(-10px) scale(1.02);
}

/* flag */
.hex-card img {
    width: 55px;
    height: 35px;
    object-fit: cover;
    margin-bottom: 10px;
}

/* country text */
.hex-card h3 {
    font-size: 18px;
    margin: 0;
}


/* Top destinations end */

/* ===== TESTIMONIALS ===== */

.testimonials {
    position: relative;
    background-image: url('../images/shared/backgrounds/testimonial-bg-2.webp');
    background-size: cover;
    background-position: center;
    padding: 60px 0px;
    z-index: 1;
}

.testimonials::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--light-blue);
    /* blue overlay */
    z-index: -1;
}

.testimonials-top {
    margin: 0px 0px 20px 0px;
}

.testimonials-top h4 {
    text-align: center;
    font-family: var(--font-primary);
    font-size: 48px;
    font-weight: 800;
    color: var(--pure-white);
    margin: 0px 0px 20px 0px;
}

.testimonials-top p {
    font-family: var(--font-primary);
    color: var(--pure-white);
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    max-width: 800px;
    margin: 0px auto;

}

.testimonial-item1 {
    text-align: center;
    background-color: var(--pure-white);
    padding: 30px 20px;
    margin: 0px 0px 20px 0px;
    /* max-width: 400px; */
    border-radius: 3px;
    min-height: 280px;
}

.testimonial-item1 h5 {
    font-family: var(--font-primary);
    color: var(--dark-black);
    font-size: 18px;
    font-weight: 800;
    margin: 0px 0px 10px 0px;
}

.testimonial-item1 h6 {
    font-family: var(--font-primary);
    color: var(--dark-black);
    font-size: 14px;
    font-weight: 600;
}

.testimonial-item1 p {
    font-family: var(--font-primary);
    color: var(--dark-black);
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    text-align: justify;
    margin: 0px 0px 10px 0px;
}

.owl-nav {
    display: block !important;
}

.simple-carousal {
    position: relative;
}

.simple-carousal .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);

    background: var(--light-blue) !important;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.simple-carousal .owl-nav .owl-prev {
    left: -50px;
}

.simple-carousal .owl-nav .owl-next {
    right: -50px;
}

/* ========================================
PAGE: ABOUT
======================================== */

/* ===== CONTENT SECTION ===== */

.asl-button a {
    margin: 0px;
}

.about-section {
    background-color: var(--pure-white);
}

.about-section-main {
    padding: 50px 0px;
    max-width: 1360px;
    margin: 0px auto;
}

.asl-mini-title {
    display: flex;
    margin: 0px 0px 10px 0px;
}

.asl-mini-title h5 {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 5px;
    color: var(--dark-black);
}

.asl-mini-title i {
    margin: 0px 15px 0px 0px;
    font-size: 22px;
    color: var(--medium-blue);
}

.asl-main-title {
    margin: 0px 0px 20px 0px;
}

.asl-main-title h3 {
    font-family: var(--font-primary);
    font-size: 48px;
    font-weight: 700;
    color: var(--dark-black);
}

.asl-mini-para {
    margin: 0px 0px 30px 0px;
}

.asl-mini-para p {
    font-family: var(--font-secondary);
    font-size: 16px;
    font-weight: 400;
    color: var(--medium-black);
    max-width: 600px;
}

.txt-highlight {
    color: var(--medium-blue);
    font-weight: 700;
}

.asl-button a {
    background-color: var(--medium-blue);
    border-radius: 10px;
    padding: 12px;
    font-family: var(--font-secondary);
    text-decoration: none;
    color: var(--pure-white);
}

/* About section right side */
.about-section-right {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    min-width: 0;
}

.asr-img-sec1 {
    flex: 0 1 calc(48% - 15px);
    display: flex;
    flex-direction: column;
    gap: 30px;
    min-width: 0;
}

.asr-img-sec2 {
    flex: 0 1 calc(52% - 15px);
    margin: 80px 0px 0px 0px;
    min-width: 0;
}

.asr-img-1 {
    width: 100%;
    display: block;
    border-radius: 20px;
}

/* hover effects */
.img-divs {
    position: relative;
    overflow: hidden;
}

.img-divs img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.img-divs::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}

.img-divs:hover::before {
    -webkit-animation: shine .75s;
    animation: shine .75s;
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

/* ===== STATS SECTION ===== */

.stats {
    padding: 60px 0px;
    background: var(--medium-blue);
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

.stats-container {
    max-width: 1400px;
    margin: 0 auto;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 3rem;
    text-align: center;
}

.stat-item {
    position: relative;
}

.stat-number {
    font-size: 4rem;
    font-weight: 900;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: var(--pure-white);
    display: block;
    margin-bottom: 0.5rem;
}

.stat-label {
    font-size: 1.1rem;
    color: var(--pure-white);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.stat-stars {
    font-size: 14px;
    color: var(--pure-white);
}

/* STAR CONTAINER */

.stat-stars {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

/* base star */

.star {
    display: block;
    background: var(--pure-white);
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%,
            68% 57%, 79% 91%,
            50% 70%, 21% 91%,
            32% 57%, 2% 35%,
            39% 35%);
    animation: starFlicker 3s infinite ease-in-out;
}

/* side stars */

.star.small {
    width: 14px;
    height: 14px;
    opacity: 0.8;
}

/* center star */

.star.big {
    width: 22px;
    height: 22px;
    animation-delay: 0.5s;
}

.stat-number {
    font-size: 4rem;
    font-weight: 900;
    -webkit-text-fill-color: var(--pure-white);
    display: block;
    position: relative;
    margin-bottom: 0.5rem;
    z-index: 2;
}

/* LAUREL */

.stat-number::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 160%;
    height: 160%;
    max-width: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
    pointer-events: none;
}

/* subtle flicker */

@keyframes starFlicker {

    0% {
        opacity: 0.6;
        transform: scale(1);
    }

    40% {
        opacity: 1;
        transform: scale(1.08);
    }

    70% {
        opacity: 0.7;
        transform: scale(0.95);
    }

    100% {
        opacity: 0.9;
        transform: scale(1);
    }
}

/* ===== TEAM MEMBERS ===== */

.team-members-section {
    padding: 60px 0px 60px 0px;
}

.section-heading {
    position: relative;
    margin: 0px 0px 30px 0px;
}

.section-heading h3 {
    font-family: var(--font-primary);
    font-size: 48px;
    font-weight: 800;
    text-align: center;
}

.section-heading p {
    font-family: var(--font-primary);
    font-size: 20px;
    font-weight: 400;
    color: var(--medium-black);
    text-align: center;
    max-width: 750px;
    margin: 0px auto;
}

.team-member-boxes1 {
    text-align: center;
    display: inline-block;
    padding: 15px;
    border-radius: 10px;
    border: solid 1px rgba(228, 227, 227, 0.829);
    margin: 0px 0px 10px 0px;
}

.team-member-img1 img {
    border-radius: 10px;
}

.team-member-txts1 {
    padding: 10px 10px;
    min-height: 270px;
}

.team-member-txts1 h3 {
    font-family: var(--font-primary);
    font-size: 24px;
    font-weight: 700;
    color: var(--dark-black);
    margin: 0px 0px 10px 0px;
}

.team-member-txts1 h5 {
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 500;
    color: var(--dark-black);
    margin: 0px 0px 8px 0px;

}

.team-member-txts1 p {
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 400;
    color: var(--medium-black);
    text-align: justify;
}

/* ========================================
PAGE: SERVICES
======================================== */

/* ===== CONTENT SECTION ===== */

.services-section {
    padding: 30px 0px;
}

.sb-main-heading h1 {
    text-align: center;
    font-family: var(--font-primary);
    color: var(--dark-black);
    font-size: 48px;
    font-weight: 700;
    padding: 20px 0px;
    max-width: 700px;
    margin: auto;
}

.sb-ourservice {
    text-align: center;
}

/* Our service */
.service-label {
    background-color: var(--bright-blue);
    color: var(--pure-white);
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 10px 15px;
}

.service-boxes {
    border: 1px solid rgba(128, 128, 128, 0.473);
    border-bottom: 5px solid var(--medium-blue);
    border-radius: 5px;
    margin: 0px 0px 30px 0px;
    position: relative;
}

.service-icon {
    position: absolute;
    top: 45%;
    right: 30px;
    transform: translateY(-50%);
    background-color: var(--pure-white);
    padding: 20px;
    border-radius: 5px;
    border-bottom: 4px solid var(--medium-blue);
    overflow: hidden;
}

.service-icon::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0%;
    background: var(--medium-blue);
    transition: height 0.4s ease;
    z-index: 0;
}

.ss-img {
    box-shadow: 0px 0px 10px 7px rgb(221, 226, 255);
    transition: box-shadow 0.5s ease;
}

.ss-img:hover {
    box-shadow: 0px 0px 23px 20px rgb(221, 226, 255);
}

.service-boxes:hover .service-icon::before {
    height: 100%;
}

.service-boxes:hover .service-icon img {
    filter: brightness(0) invert(1);
}

.service-icon img {
    width: 40px;
    position: relative;
    z-index: 2;
    transition: 0.3s;
}

.service-img img {
    width: 100%;
    display: block;
}

.service-txts {
    padding: 10px 15px;
    font-family: var(--font-primary);
    position: relative;
    overflow: hidden;
    background: var(--white-color);
    z-index: 1;
    min-height: 230px;
}

.service-txts::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0%;
    background: var(--medium-blue);
    transition: height 0.4s ease;
    z-index: -1;
}

.service-boxes:hover .service-txts::before {
    height: 100%;
}

.service-boxes:hover .service-txts h3,
.service-boxes:hover .service-txts p,
.service-boxes:hover .service-txts a {
    color: var(--pure-white);
    transition: 0.6s;
}

.service-txts h3 {
    text-decoration: none;
    color: var(--dark-black);
    font-size: 24px;
    font-weight: 700;
    text-align: left;
    margin: 15px 0px;
}

.service-txts a {
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    margin: 10px 0px;
    color: var(--dark-black);
}

.service-txts p {
    font-size: 16px;
    font-weight: 300;
    color: var(--medium-black);
    text-align: justify;
    margin: 0px 0px 12px 0px;
}

.read-arrow {
    font-size: 14px;
    margin-left: 6px;
}

/* ===== SERVICE DETAILS ===== */

.services-details-section {
    padding: 60px 0px 60px 0px;
}

.service-details-txt h3 {
    font-family: var(--font-primary);
    font-size: 48px;
    color: var(--dark-black);
    font-weight: 700;
    margin: 0px 0px 0px 0px;
}

.service-details-txt h5 {
    font-family: var(--font-primary);
    font-size: 22px;
    color: var(--dark-black);
    font-weight: 600;
    margin: 0px 0px 8px 0px;
}

.service-details-txt li,
.service-details-txt p {
    font-family: var(--font-primary);
    font-size: 18px;
    color: var(--medium-black);
    font-weight: 400;
    margin: 0px 0px 30px 0px;
    text-align: justify;
}

.spcl-txt {
    font-family: var(--font-primary);
    font-size: 22px;
    color: var(--dark-black);
    font-weight: 600;
    margin: 0px 0px 8px 0px;
}

.spcl-txt1 {
    font-family: var(--font-primary);
    font-size: 18px;
    color: var(--medium-black);
    font-weight: 500;
    margin: 0px 0px 8px 0px;
}

/* Service Boxes In Staffing Solutions */
.service-details-boxes {
    padding: 20px;
    min-height: 320px;
    height: 95%;
    box-shadow: 0px 0px 20px 15px rgb(18 18 168 / 5%);
    border-radius: 3px;
    margin-bottom: 20px;
    transition: box-shadow 0.6s ease-out;
}

.alt-service-img img,
.services-staffing-right img {
    width: 100%;
    border-radius: 12px;
}

.service-details-boxes:hover {
    box-shadow: 5px 5px 0px var(--medium-blue);
}

.service-details-boxes img {
    max-width: 60px;
    margin: 0px 0px 10px 0px;
}

.service-details-boxes h5 {
    font-family: var(--font-primary);
    font-size: 20px;
    color: var(--dark-black);
    font-weight: 700;
    margin: 0px 0px 10px 0px;
}

.service-details-boxes p {
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--medium-black);
    font-weight: 400;
    margin: 0px 0px 10px 0px;
    text-align: justify;
}

.service-overseas-box {
    padding: 20px 22px 20px 22px;
    border-radius: 5px;
    border: solid 1px var(--extra-light-black);
    box-shadow: 5px 3px 36px -6px rgb(205, 210, 255);
}

.invest-circles {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0px 40px 0px;
    text-align: center;
}

.invest-circle-img {
    padding: 10px;
    border-radius: 500px;
    border: 2px solid rgba(235, 228, 228, 0.445);
    box-shadow: 5px 3px 36px -6px rgb(205, 210, 255);
    margin: 0px 0px 10px 0px;
    max-width: 200px;
}

.invest-circle h5 {
    font-family: var(--font-primary);
    font-size: 22px;
    color: var(--medium-black);
    font-weight: 600;
}

/* ========================================
PAGE: PROJECT GALLERY
======================================== */

/* ===== GALLERY SECTION ===== */

.project-gallery {
    padding: 90px 0;
}

.main-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.project-gallery-img {
    flex: 1 1 200px;
    height: 350px;
}

.project-img {
    height: 100%;
    overflow: hidden;
}

.project-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0px;
    display: block;
    transition: transform 0.5s ease;
}

.project-img:hover img {
    transform: scale(1.06);
}

.project-small-heading h5 {
    font-family: var(--font-primary);
    font-size: 20px;
    color: var(--medium-blue);
}

.project-heading h3 {
    font-family: var(--font-primary);
    font-size: 48px;
    font-weight: 700;
    color: var(--dark-black);
}

.project-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: 0px 0px 10px 0px;
}

.project-btn {
    background: linear-gradient(90deg, #3c6df0, #2c57d4);
    color: var(--pure-white);
    border: none;
    padding: 14px 30px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    letter-spacing: 1px;
    cursor: pointer;
    transition: 0.3s ease;
}

.project-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.15);
}

/* ========================================
PAGE: GALLERY
======================================== */

/* ===== GALLERY SECTION ===== */

.gallery-section {
    padding: 80px 0px;
}

.gallery-section .row {
    margin-left: 0;
    margin-right: 0;
}

.gallery-img {
    cursor: pointer;
    transition: 0.3s;
    border-radius: 15px;
    margin: 0px 0px 20px 0px;
    overflow: hidden;
}

.gallery-img:hover {
    box-shadow: 0px 0px 16px 12px rgb(76 91 109 / 17%);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    transform: scale(1.05);
}

.gallery-img a {
    margin: 0px;
}

/* ========================================
PAGE: FAQ
======================================== */

/* ===== CONTENT SECTION ===== */

.faq-section {
    padding: 60px 0px 80px 0px;
}

.faq-image-side {
    position: relative;
}

.faq-img {
    border-radius: 5px;
    overflow: hidden;
}

.accordian-question {
    background-color: var(--color-gr);
    border-radius: 8px;
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 600;
    color: var(--color-dk-blue);
}

.accordian-bar {
    border-radius: 8px;
    overflow: hidden;
    margin: 0px 0px 20px 0px;
    background-color: var(--medium-blue);
    padding: 10px;
    font-weight: 400;
    border-radius: 20px;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
}

.accordian-question:not(.collapsed) {
    background-color: var(--color-gr);
    color: var(--color-dk-blue);
    box-shadow: none;
    border-radius: 20%;
}

.accordian-content {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 400;
    color: var(--pure-white);
}

.accordion-item:last-of-type {
    border-radius: 20px;
}

.accordion-button {
    color: var(--pure-white);
}

.accordion-button.accordian-question {
    background-color: var(--pure) !important;
    color: var(--pure-white);
}

.accordion-button.accordian-question:not(.collapsed) {
    background-color: var(--medium-blue) !important;
    color: var(--pure-white);
    box-shadow: none;
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-button::after {
    filter: invert(1);
    /* adjust depending on bg */
}

.accordion-body.accordian-content {
    padding: 0px 20px;
}

.accordion-button.accordian-question {
    padding: 10px 20px !important;
}

.spcl-txt-yellow a {
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 400;
    color: var(--counter-gold);
}

/* ========================================
PAGE: CONTACT
======================================== */

/* ===== CONTENT SECTION ===== */

.abhi-contact {
    padding: 60px 0px 60px 0px;
}

.abhi-contact-label {
    margin: 0px 0px 20px 0px;
}

/* Span class */
.abhi-c-label {
    background-color: var(--medium-blue);
    color: var(--pure-white);
    padding: 5px 10px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
}

.abhi-contact-txts h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    color: var(--dark-black);
    font-size: 48px;
    max-width: 70%;
}

.abhi-contact-txts p {
    font-family: var(--font-primary);
    color: var(--medium-black);
    font-size: 16px;
    font-weight: 400;
}

.abhi-form-label {
    height: 50px;
    margin: 0px 0px 20px 0px;
    border: none;
    background-color: var(--extra-light-black);
    padding: 10px 15px;
    border-radius: 6px;
}

.contact-para {
    margin: 0px 0px 20px 0px;
}

.abhi-contact-heading {
    margin: 0px 0px 10px 0px;
}

.abhi-form-label-message {
    background-color: var(--extra-light-black);
    border: none;
    padding: 12px 15px;
    border-radius: 6px;
    margin: 0px 0px 10px 0px;
}

.abhi-img {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    margin: 0px 0px 0px 0px;
}

.abhi-img img {
    max-width: 100%;
    height: auto;
    border-radius: 5px;
}

.abhi-chat-btn {
    background-color: var(--medium-blue);
    color: white;
    border: none;
    padding: 14px 28px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.abhi-chat-btn:hover {
    background-color: var(--bright-blue);
}

.abhi-arrow {
    background: white;
    color: var(--medium-blue);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

/* ===== MAP ===== */

.googpemap iframe {
    width: 100%;
    height: 400px;
    filter: grayscale(80%);
    transition: filter 0.4s ease;
}

.googpemap iframe:hover {
    filter: grayscale(0%);
}

.map-section {
    padding: 0px 0px 0px 0px;
}

/* ===== Map end ===== */

/* ====== brand trust sec start =======*/
.brand-trust {
    padding: 60px 0px;
}

.brand-trust-right {}

.brand-trust-right h5 {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 700;
    padding: 0px 0px 20px 0px;
    color: var(--dark-black);
}

.brand-trust-right h5 {
    display: inline-block;
    animation: presentPulse 2.8s ease-in-out infinite;
}


/* ===== LETTER ROTATION EFFECT ===== */
.brand-animated span {
    display: inline-block;
    animation: letterRotate 3s ease-in-out infinite;
}

.brand-animated span {
    display: inline-block;
    transform-origin: center;
    animation: letterWave 3.5s ease-in-out infinite;
}

.brand-animated {
    display: inline-block;
    perspective: 600px;
}

.brand-animated span {
    display: inline-block;
    transform-origin: center;
    backface-visibility: hidden;
    animation: letterFlip360 4s ease-in-out infinite;
}

/* ===== STAGGER ===== */
.brand-animated span:nth-child(1) {
    animation-delay: 0s;
}

.brand-animated span:nth-child(2) {
    animation-delay: 0.15s;
}

.brand-animated span:nth-child(3) {
    animation-delay: 0.3s;
}

.brand-animated span:nth-child(4) {
    animation-delay: 0.45s;
}

.brand-animated span:nth-child(5) {
    animation-delay: 0.6s;
}

.brand-animated span:nth-child(6) {
    animation-delay: 0.75s;
}

.brand-animated span:nth-child(7) {
    animation-delay: 0.9s;
}

.brand-animated span:nth-child(8) {
    animation-delay: 1.05s;
}

.brand-animated span:nth-child(9) {
    animation-delay: 1.2s;
}

.brand-animated span:nth-child(10) {
    animation-delay: 1.35s;
}

/* ===== 360 FLIP (FAST + CLEAN) ===== */
@keyframes letterFlip360 {
    0% {
        transform: rotateY(0deg);
    }

    /* quick flip happens here */
    20% {
        transform: rotateY(360deg);
    }

    /* stays readable most of the time */
    100% {
        transform: rotateY(360deg);
    }
}

/*======= Effect end ======= */

.brand-trust-right {
    font-family: var(--font-primary);
}

.brand-trust-right h3 {
    font-size: 48px;
    font-weight: 600;
    padding-bottom: 20px;
    color: var(--dark-black);
    max-width: 550px;
}

.brand-trust-right p {
    font-size: 18px;
    font-weight: 400;
    color: var(--medium-black);
    margin: 0;
}

.brand-text-right {
    display: flex;
    align-items: left;
}

.brand-text-right i {
    margin-right: 10px;
}

.brand-main-para {
    padding-bottom: 20px;
}

.brand-trust-right li {
    font-size: 18px;
    font-weight: 400;
    color: var(--medium-black);
    margin-bottom: 10px;
}

.brand-trust-bottom-right {
    display: flex;
    align-items: center;
}

.btb-call-icon {
    background-color: var(--medium-blue);
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    margin-right: 15px;
}

.btb-call-icon i {
    font-size: 24px;
    color: var(--pure-white);
}

.brand-bottom {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-top: 30px;
}

.brand-call {
    display: flex;
    align-items: center;
}

.btb-text span {
    font-size: 14px;
    color: var(--medium-black);
}

.btb-text h4 {
    font-size: 22px;
    font-weight: 600;
    margin: 0;
    color: var(--dark-black);
}

.brand-divider {
    width: 1px;
    height: 60px;
    background-color: #ddd;
}

.brand-signature {
    font-family: 'Brush Script MT', cursive;
    font-size: 32px;
    color: var(--dark-black);
}

/* right side finished */

.brand-trust-left {
    position: relative;
}

.btl-main-img {
    max-width: 550px;
}

.btl-sub-img {
    max-width: 200px;
    position: absolute;
    right: 20px;
    bottom: 40px;

    animation: floatImage 3s ease-in-out infinite;
}

@keyframes floatImage {
    0% {
        transform: translateY(0px) scale(1);
    }

    50% {
        transform: translateY(-10px) scale(1.03);
    }

    100% {
        transform: translateY(0px) scale(1);
    }
}

.btl-sub-div {
    background: linear-gradient(135deg, var(--medium-blue), #1e3a8a);
    color: var(--pure-white);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: clamp(140px, 18vw, 200px);
    aspect-ratio: 1 / 1;
    /* perfect square */

    border-radius: 20px;
    text-align: center;

    position: absolute;
    top: 50px;
    left: -60px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}

.btl-sub-div:hover {
    transform: translateY(-8px) scale(1.03);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

.btl-sub-div .counter {
    font-family: var(--primary);
    font-size: 60px;
    font-weight: 600;
    color: var(--pure-white);
}

.btl-sub-div p {
    font-family: var(--primary);
    font-size: 14px;
    font-weight: 400;
    color: var(--pure-white);
}

/* ===== brand trust carousal section =====*/

.brand-trust-carousal-section {
    padding: 30px 0px;
    background-image: url(../images/shared/backgrounds/brand-trust-bg.webp);
}

.brand-trust-carousal-item {
    display: flex;
    align-items: center;
    justify-content: center;
    /* border-left: solid 1px rgb(220, 220, 220); */
}

.brand-trust-carousal img {
    max-width: 200px;
}

.brand-trust-carousal {
    position: relative;
}

.brand-trust-carousal .owl-nav .owl-prev {
    position: absolute;
    left: 10px;
    top: 30%;
}

.brand-trust-carousal .owl-nav .owl-next {
    position: absolute;
    right: 10px;
    top: 30%;
}

.brand-trust-carousel .owl-nav button {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--pure-white) !important;

    display: flex;
    align-items: center;
    justify-content: center;

    transition: all 0.3s ease;
}

.brand-trust-carousal .owl-nav i {
    display: flex;
    /* FIX: allows width/height */
    align-items: center;
    justify-content: center;

    width: 40px;
    height: 40px;

    background-color: var(--pure-white);
    border-radius: 50%;

    color: var(--dark-black);
    transition: all 0.3s ease;
}

.brand-trust-carousal .owl-nav i:hover {
    background-color: var(--dark-black);
    color: --var();

    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.brand-trust-carousal .owl-nav button {
    background: transparent !important;
    border: none;
}

.brand-trust-carousel .owl-nav button:hover i {
    color: #fff;
}

.brand-trust-carousel-item {
    text-align: center;
    padding: 40px 20px;
}

.brand-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 15px;
}

.brand-header img {
    width: 80px;
    /* increase this */
    height: auto;
    /* keep aspect ratio */
    object-fit: contain;
}

.brand-trust-carousel-item h5 {
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 20px;
    color: var(--dark-blue);
    margin: 0px 0px 10px 0px;
}

.brand-review {
    font-size: 18px;
    color: #666;
    margin: 0px 0px 10px 0px;
}

.brand-stars {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin: 0px 0px 5px 0px;
}

.brand-stars i {
    color: var(--counter-gold);
    font-size: 20px;
}

/* make full card clickable */
.brand-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

/* ensure item behaves properly */
.brand-trust-carousel-item {
    height: 100%;
}

/* hover effect */
.brand-card-link:hover {
    transform: translateY(-8px);
    transition: 0.3s ease;
}

.read-more-spcl {
    font-family: var(--font-primary);
    color: var(--dark-black);
    font-weight: 600;
    font-size: 22px;
}

/* ===== Brand trust end ===== */

/* ===============================
   BRAND RSW SECTION
================================= */
.brand-rsw-section {
    padding: 60px 0;
    font-family: var(--font-primary);
}

/* ===============================
   IMAGE GRID (STAGGERED)
================================= */
.rsw-images {
    display: flex;
    gap: 20px;
}

/* common image */
.rsw-images img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

/* LEFT COLUMN */
.img-left {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* RIGHT IMAGE */
.img-right {
    width: 50%;
    transform: translateY(40px);
}

/* height control */
.img-left-top img {
    height: 220px;
}

.img-left-bottom img {
    height: 320px;
}

.img-right img {
    height: 460px;
}

/* ===============================
   RIGHT CONTENT
================================= */
.brand-rsw-right {
    padding-left: 40px;
}

/* subtitle */
.section-subtitle {
    color: var(--color-lt-blue);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

/* title */
.section-title {
    font-size: 40px;
    font-weight: 700;
    color: var(--dark-black);
    margin-bottom: 20px;
    line-height: 1.2;
}

/* text */
.section-text {
    font-family: var(--font-primary);
    color: var(--medium-black);
    line-height: auto;
    margin-bottom: 20px;
    text-align: justify;
    max-width: 600px;
}

/* smooth image motion */
.rsw-images img {
    transition: transform 0.5s ease;
}

.rsw-images img:hover {
    transform: scale(1.05);
}


/* Modals */
/* Modal container */
.modal-content {
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}

/* Header */
.modal-header {
    display: flex;
    border-bottom: none;
    padding: 10px 10px;
    text-align: center;
    align-items: center;
    background-color: var(--medium-blue);
}

.modal-title {
    font-weight: 700;
    font-size: 30px;
    color: var(--pure-white);
    /* danger */
    letter-spacing: 0.5px;
}

/* Body */
.modal-body {
    padding: 10px 30px 0 30px;
}

.modal-body h1 {
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 10px;
    color: #111;
    text-align: center;
}

.modal-body p {
    text-align: justify;
    font-size: 18px;
    color: #555;
    line-height: 1.6;
    margin-bottom: 10px;
}

/* Highlight last line */
.modal-body p:last-child {
    font-weight: 600;
    color: #000;
}

/* Button */
.modal-body .pre-order-btn,
.modal-footer .btn {
    background: linear-gradient(24deg,rgba(12, 49, 154, 0.811) 0%, rgba(19, 56, 157, 1) 53%);
    color: var(--pure-white);
    border: none;
    border-radius: 10px;
    padding: 15px 20px;
    font-weight: 600;
    font-size: 18px;
    transition: all 0.25s ease;
    display: inline-block;
}

.modal-body .pre-order-btn:hover,
.modal-footer .btn:hover {
    background: #000;
    color: #ffcc00;
    transform: translateY(-2px);
}

/* Footer */
.modal-footer {
    border-top: none;
    justify-content: center;
    padding: 0 0 10px 0;
}

/* Close button tweak */
.btn-close {
    opacity: 0.6;
}

.btn-close:hover {
    opacity: 1;
}