/* =======================================================
   GLOBAL.CSS
   Total Tint Solutions — Global Styles
   Mobile-first base styles, color tokens, resets & shared
   utility classes used across every page of the site.
   ======================================================= */

/* -------------------------------------------------------
   1. GLOBAL COLOR VARIABLES (4 core brand colors)
   ------------------------------------------------------- */
:root {
    --color-dark: #1E1E1E;       /* primary dark / near-black background */
    --color-orange: #F59E0B;     /* primary brand accent (buttons, highlights, labels) */
    --color-light: #FFFFFF;      /* light background / light text on dark sections */
    --color-gray: #6B6B6B;       /* body copy / secondary text on light backgrounds */
    --bs-white: #fff;
}

/* -------------------------------------------------------
   2. RESET / BASE
   ------------------------------------------------------- */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}
*{
    box-sizing: border-box;
}
body {
    /* font-family: 'Muli', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif; */
    font-family: "Mulish", sans-serif;
    background-color: var(--color-dark);
    color: var(--color-dark);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    background-image: url(../desktop-images/bg-img.png);
    background-size: cover;
    background-repeat: repeat-y;
    background-position: center;
    font-variant-numeric: lining-nums;
    margin-top: 187px;
}
img {
    max-width: 100%;
    display: block;
    height: auto;
}

a {
    text-decoration: none;
    color: inherit;
}

button {
    font-family: inherit;
    border: none;
    background: none;
    cursor: pointer;
}

ul, li {
    list-style: none;
}

input, select, textarea {
    font-family: inherit;
    font-size: 14px;
}
h1, h2, h3, h4, h5, h6 {
    font-family: "Momo Trust Display", sans-serif;
    font-weight: 400;
    line-height: 1.2;
    color: #fff;
}
.default-content h1 {
    font-size: clamp(1.75rem, 1.2rem + 2.5vw, 2.75rem);
    margin-bottom: 20px;
}
.default-content h2 {
    font-size: clamp(1.5rem, 1.1rem + 2vw, 2.25rem);
    margin-bottom: 20px;
}
.default-content h3 {
    font-size: clamp(1.3rem, 1rem + 1.5vw, 1.875rem);
    margin-bottom: 20px;
}
.default-content h4 {
    font-size: clamp(1.15rem, 0.95rem + 1vw, 1.5rem);
    margin-bottom: 20px;
}
.default-content h5 {
    font-size: clamp(1.05rem, 0.9rem + 0.6vw, 1.25rem);
    margin-bottom: 20px;
}
.default-content h6 {
    font-size: clamp(1rem, 0.9rem + 0.3vw, 1.1rem);
    margin-bottom: 20px;
}
/* -------------------------------------------------------
   3. LAYOUT CONTAINER
   ------------------------------------------------------- */
.container {
    width: 100%;
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
}

.section {
    position: relative;
    width: 100%;
}

.section--light {
    background-color: var(--color-light);
}

/*.section--dark {
    background-color: var(--color-dark);
}*/

/* -------------------------------------------------------
   4. EYEBROW / SECTION LABELS
   ------------------------------------------------------- */
.eyebrow {
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #636363;
    margin-bottom: 8px;
    font-family: "Mulish", sans-serif;
}

.section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 20px;
}

.section-title {
    font-size: 56px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--color-dark);
    font-family: "Momo Trust Display", sans-serif;
}
.section-title span {
    color: #A2A2A2;
}

.section--dark .section-title {
    color: var(--color-light);
}

.view-all {
    font-size: 13px;
    font-weight: 600;
    color: var(--color-orange);
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 4px;
}
/* -------------------------------------------------------
   5. BUTTONS (shared across pages)
   ------------------------------------------------------- */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 30px;
    cursor: pointer;
    transition: opacity 0.2s ease;

}

.btn:active {
    opacity: 0.85;
}

.btn-primary {
    display: inline-flex;
    justify-content: space-between;
    background-color: var(--color-light);
    color: var(--color-dark);
    padding: 9px 16px;
    align-items: center;
    gap: 10px;
    border-radius: 30px;
    font-weight: 700;
}
.btn-icon-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--color-orange);
    color: var(--color-light);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transform: rotate(40deg);
    transition: .5s ease;
}
.btn-primary:hover .btn-icon-circle {
    transform: rotate(0deg);
}

.btn-block {
    width: 100%;
    display: flex;
}

/* -------------------------------------------------------
   6. FORM ELEMENTS (shared across pages)
   ------------------------------------------------------- */
.form-group {
    margin-bottom: 30px;
}

.form-row, .form-desktop-row {
    display: flex;
    gap: 12px;
}

.form-row .form-group, .form-desktop-row .form-group {
    flex: 1;
}

.form-label {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: var(--color-light);
    margin-bottom: 8px;
}
.form-input, .form-select {
    width: 100%;
    padding: 17px 16px;
    border-radius: 5px;
    border: 1px solid #fff;
    background-color: rgba(217, 217, 217, 0.14);
    color: var(--color-light);
    font-size: 16px;
    appearance: none;
    height: 57px;
}
textarea.form-input {
    height: 100px;
    resize: none;
}
.form-input::placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.form-select {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 16px;
}

/* ── Checkbox row ── */
.checkbox-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:25px;
}
.form-checkbox-row {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 24px;
    margin-bottom: 0;
    font-weight: 600;
}
.form-checkbox-row input[type="checkbox"] {
    width: 40px;
    height: 40px;
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 3px;
    cursor: pointer;
    flex-shrink: 0;
}
.form-checkbox-row input[type="checkbox"]:checked {
    background-color: var(--color-orange);
    border-color: var(--color-orange);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 5l2.5 2.5 4.5-4.5' stroke='%23fff' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
}
.checkbox-btn .wpcf7-list-item {
    margin-left: 0;
}
.form-checkbox-row label {
    font-size: 13px;
    color: var(--color-light);
}
/* -------------------------------------------------------
   7. BOTTOM FIXED NAVIGATION (shared across all pages)
   ------------------------------------------------------- */
.bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background-color: var(--color-dark);
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 10px 0 18px;
    max-width: 480px;
    margin: 0 auto;
}

.bottom-nav__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 500;
    color: var(--color-gray);
    flex: 1;
    position: relative;
}

.bottom-nav__item.is-active {
    color: var(--color-orange);
}

/* Divider — short centered line between items */
.bottom-nav__item + .bottom-nav__item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 24px;
    width: 1px;
    background: rgba(255, 255, 255, 0.12);
}

.bottom-nav__icon {
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    /*    display: flex;
        align-items: center;
        justify-content: space-between;*/
    padding: 35px 50px 0;
    background-color: var(--color-dark);
    transition: background-color 0.3s ease, transform 0.3s ease;
    max-width: 100%;
    margin: 0 auto;
}

.site-header.is-hidden {
    transform: translateY(-100%);
}
.site-header.scrolled {
    background-color: var(--color-dark);
    padding: 14px 50px;
}





.menu-toggle {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.menu-toggle svg, .menu-toggle img {
    width: 26px;
    height: 19px;
}

.btn {
    background: var(--color-orange);
    padding: 15px 60px;
    font-weight: 400;
    border-radius: 5px;
    font-size: 18px;
    position: relative;
    color: #fff;
}
/*.btn::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    background:
        linear-gradient(299.21deg, #EBEBEB 7.06%, transparent 20.26%),
        linear-gradient(122.79deg, #EBEBEB 8.29%, transparent 16.09%);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}*/
@property --angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}
.btn::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: inherit;
    background: conic-gradient(from var(--angle), transparent 0%, #EBEBEB 8%, transparent 20%, transparent 50%, #EBEBEB 58%,
        transparent 70%,
        transparent 100%
        );
    -webkit-mask: linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    animation: rotate-border 4s linear infinite;
}

@keyframes rotate-border {
    to {
        --angle: 360deg;
    }
}
/* -------------------------------------------------------
   9. GENERIC HELPERS
   ------------------------------------------------------- */
.flex {
    display: flex;
}
.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}
.text-center {
    text-align: center;
}

/* -------------------------------------------------------
   10. LUCIDE ICON SIZING
   Lucide renders <i data-lucide="..."> into an inline <svg>.
   These utility classes control consistent sizing/color.
   ------------------------------------------------------- */
.icon {
    display: inline-block;
    line-height: 0;
}

.icon svg {
    width: 100%;
    height: 100%;
    stroke: currentColor;
}

.icon--12 {
    width: 12px;
    height: 12px;
}
.icon--14 {
    width: 14px;
    height: 14px;
}
.icon--18 {
    width: 18px;
    height: 18px;
}
.icon--20 {
    width: 20px;
    height: 20px;
}

.icon--light {
    color: var(--color-light);
}


/* slider animation */
/* ── Marquee / Infinite Slider ── */
.marquee-track {
    overflow: hidden;
    width: 100%;
}

.marquee-inner {
    display: flex;
    width: max-content;
    gap: 16px;
}
.hero__partners .marquee-inner img {
    height: 44px; /* was 28px */
}
.marquee-inner--left {
    animation: marquee-left 20s linear infinite;
}

.marquee-inner--right {
    animation: marquee-right 30s linear infinite;
}

.marquee-track:hover .marquee-inner {
    animation-play-state: paused;
}

@keyframes marquee-left {
    from {
        transform: translateX(0);
    }
    to   {
        transform: translateX(-50%);
    }
}

@keyframes marquee-right {
    from {
        transform: translateX(-50%);
    }
    to   {
        transform: translateX(0);
    }
}

.marquee-fade {
    position: relative;
}

.marquee-fade::before,
.marquee-fade::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 80px;
    z-index: 2;
    pointer-events: none;
}

.marquee-fade::before {
    left: 0;
    background: linear-gradient(to right, #111 0%, transparent 100%);
}

.marquee-fade::after {
    right: 0;
    background: linear-gradient(to left, #111 0%, transparent 100%);
}


/* Menu CSS */
body.menu-open {
    overflow: hidden;
}
.open-menu-btn{
    cursor:pointer;
}

/* --- Overlay behind the panel --- */
.desktop-menu-overlay{
    position:fixed;
    inset:0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-color: #1E1E1E;
    background-image: url(../desktop-images/menu-bg_1.webp);
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease;
    z-index:999;
}
.desktop-menu-overlay::before {
    position: absolute;
}
.desktop-menu-overlay.active{
    opacity:1;
    pointer-events:auto;
}

/* --- Slide out panel --- */
.menu-panel {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    transform: translateX(-100%);
    transition: transform .35s ease;
    z-index: 999;
    overflow-y: auto;
    /*    background: rgba(0, 0, 0, 0.3);
        backdrop-filter: blur(20px);*/
}
.menu-panel.active{
    transform:translateX(0);
}
.menu-inner{
    padding:60px 30px 30px;
    min-height:100%;
    display:flex;
    flex-direction:column;
    max-width: 1340px;
    margin: 0 auto;
}
.menu-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:50px;
}
.menu-header .menu-title {
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    font-family: "Mulish", sans-serif;
    line-height: 1;
}
.menu-close{
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.menu-close svg{
    width: 24px;
    height: 24px;
    stroke: #fff;
}

.menu-columns {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
    max-width: 85%;
    flex:1;
    justify-content: space-between;
}

.menu-label-title{
    font-size:26px;
    text-transform:capitalize;
    color: #fff;
    margin:0 0 25px;
    font-weight:700;
}
.nav-list{
    width: 250px;
}



.nav-list > li{
    margin-bottom:10px;
    position:relative;
}
.nav-link-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    cursor:pointer;
}
.nav-list li a {
    color: #fff;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 500;
}
.nav-list li:hover a {
    color: var(--color-orange);
}
.nav-list li.menu-item-has-children {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
}
.menu-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
    cursor: pointer;
    transition: transform 0.2s ease;
}

/* Flyout submenu: opens to the right of the parent item */
.nav-list .sub-menu {
    display: block;
    position: absolute;
    top: 0;
    left: 100%;
    min-width: 320px;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-8px);
    transition: opacity .22s ease, transform .22s ease, visibility .22s;
    pointer-events: none;
    z-index: 5;
}
.nav-list li.open > .sub-menu, .nav-list li.menu-item-has-children:hover > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateX(0);
    pointer-events:auto;
}
.nav-list ul.sub-menu li a{
    display:block;
    color: #fff;
    padding: 6px 10px;
    font-size: 16px;
}
.nav-list li.menu-item-has-children:hover > .menu-arrow {
    transform: rotate(-90deg);
}
.nav-list li.menu-item-has-children:hover > .menu-arrow svg path {
    stroke: var(--color-orange);
}
.nav-list li.current-menu-item > a,
.nav-list li.current-menu-parent > a,
.nav-list li.current-menu-ancestor > a {
    color: var(--color-orange);
}
.nav-list li.current-menu-item > .menu-arrow svg path,
.nav-list li.current-menu-parent > .menu-arrow svg path,
.nav-list li.current-menu-ancestor > .menu-arrow svg path {
    stroke: var(--color-orange);
}
.nav-list ul.sub-menu li.current-menu-item > a {
    color: var(--color-orange);
}

.menu-footer-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    align-items: center;
    margin-top: 50px;
}
.menu-footer-grid .footer-pay img {
    height: 58px;
    object-fit: contain;
}
.menu-footer-grid .footer__badges img {
    height: 58px;
    object-fit: contain;
}
/* Social row */
.menu-overlay__social-label {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 17px;
}
.menu-overlay__social-icons {
    display: flex;
    gap: 14px;
}
.social-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background 0.2s, transform 0.15s;
}
.social-btn:active {
    background: #d48f1a;
    transform: scale(0.93);
}
.social-btn svg {
    width: 20px;
    height: 20px;
    stroke: #1a1a1a;
}





/* ── Custom Select Dropdown ── */
.custom-select {
    position: relative;
    width: 100%;
}

.custom-select__trigger {
    width: 100%;
    padding: 15px 15px;
    border-radius: 5px;
    border: 1px solid #fff;
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    font-family: inherit;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: border-color 0.2s ease;
    background: rgba(217, 217, 217, 0.14);
    height: 57px;
}

.custom-select__trigger.has-value {
    color: var(--color-light);
}

.custom-select__trigger svg {
    width: 14px;
    height: 14px;
    stroke: rgba(255,255,255,0.45);
    flex-shrink: 0;
    transition: transform 0.25s ease;
}

.custom-select.is-open .custom-select__trigger {
    border-color: var(--color-orange);
}

.custom-select.is-open .custom-select__trigger svg {
    transform: rotate(180deg);
}

.custom-select__dropdown {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background: #222222;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    overflow: hidden;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;

    max-height: 450px;
    overflow-y: auto;
    overflow-x: hidden;
}

.custom-select.is-open .custom-select__dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.custom-select__option {
    padding: 12px 16px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
    font-family: inherit;
}

.custom-select__option:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.custom-select__option:hover {
    background: rgba(255, 255, 255, 0.06);
    color: var(--color-light);
}

.custom-select__option.is-selected {
    color: var(--color-orange);
}

/* hidden real select for form submission */
.custom-select select {
    display: none;
}

/* -------------------------------------------------------
   FOOTER
   ------------------------------------------------------- */
.site-footer {
    background-color: #1a1a1a;
    padding: 85px 0 40px;
    font-family: "Mulish", sans-serif;
    /* margin-top: 3rem; */
    position: relative;
}

.footer-bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.95;
}

.footer-about {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    max-width: 380px;
    margin-top: 75px;
    line-height: 1.8;
}
.footer-about span, .footer-about a {
    color: #A2A2A2;
}
/* ── Top two-column links ── */
.footer-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.footer-links__col-title {
    font-size: 16px;
    font-weight: 100;
    color: var(--color-orange);
    margin-bottom: 14px;
}

.footer-links__col ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-links__col ul li a {
    font-size: 14px;
    color: #ffffff;
    text-decoration: none;
    line-height: 1.4;
    transition: color 0.2s;
}

.footer-links__col ul li a:hover, .footer-links__col li.current-menu-item a {
    opacity: 0.7;
}
/* ── Opening Hours ── */
.footer-hours {
    margin-bottom: 28px;
}

.footer-section-title {
    font-size: 16px;
    font-weight: 300;
    color: var(--color-orange);
    line-height: 1;
}

.footer-hours__row {
    font-size: 13px;
    color: #ffffff;
    line-height: 1.7;
}

.footer-hours__row strong {
    font-weight: 700;
}

/* ── Contact Info — 3 Cards ── */
.footer-contact {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 28px;

}

.footer-contact__card {
    display: flex;
    align-items: center;
    gap: 19px;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s;
}

.footer-contact__card:active {

    border-color: var(--color-orange);
}

.footer-contact__card-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.footer-contact__card-icon img {
    width: 20px;
    height: 20px;
    object-fit: contain;
    display: block;

}

.footer-contact__text {
    font-size: 14px;
    color: #ffffff;
    line-height: 1.55;
}

/* ── Pay With ── */
.footer-pay {
    display: flex;
    gap: 25px;
    align-items: center;
}
.footer-pay img {
    height: auto;
    width: auto;
}


/* ── Follow Us ── */
.footer-social {
    margin-bottom: 8px;
}

.footer-social__icons {
    display: flex;
    gap: 17px;
    margin-top: 17px;
}

.footer-social__btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--color-orange);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background 0.2s, transform 0.15s;
    flex-shrink: 0;
}

.footer-social__btn:active {
    background: #d48f1a;
    transform: scale(0.93);
}
.footer-social__btn img {
    width: 17px;
    height: 17px;
    object-fit: contain;
    display: block;
}
.copyright {
    margin-top: 100px;
}
.copyright p {
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    text-align: center;
}


.footer-social-badge-row {
    margin-top: 58px;
}
.footer-social-badge {
    display: flex;
    gap: 0;
    flex-flow: wrap;
    align-items: flex-end;
}
.footer-social-badge .footer-social {
    width: 30%;
}
.footer-social-badge .footer__badges {
    width: 70%;
    margin-top: 10px;
}
.footer__badge-item img {
    height: 50px;
    object-fit: contain;
}
.footer__badges {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-shrink: 0;
}



.reveal {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 0.55s ease, transform 0.55s ease;
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.hero-reveal {
    animation: heroFadeUp 0.7s ease forwards;
}

@keyframes heroFadeUp {
    from {
        opacity: 0;
        transform: translateY(28px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}




.hero-inner-page {
    position: relative;
    min-height: 100vh;
    padding-top: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding-bottom: 100px;
    background-size: cover;
    background-position: center;
}
.hero-inner-page::before {
    position: absolute;
    content: "";
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}
.hero-inner-page .hero-inner-content {
    max-width: 1050px;
    margin-left: 90px;
}
.hero-inner-page .hero-inner-tagline {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: var(--color-orange);
    margin-bottom: 12px;
    line-height: 1;
    letter-spacing: 0.45px;
}
.hero-inner-page .hero-heading {
    font-size: clamp(32px, 8vw, 72px);
    font-weight: 400;
    line-height: 1.2;
    color: var(--color-light);
    font-family: "Momo Trust Display", sans-serif;
}
.hero-inner-page .hero-heading .yellow-text {
    display: block;
    color: #F59E0B;
}
.hero-inner-page .green-text {
    color: #34F200;
}
.single-location .hero-inner-page .hero-heading {
    text-transform: capitalize;
}
.hero-inner-page .hero-inner-des {
    color: #fff;
    font-size: 18px;
    margin-top: 25px;
    max-width: 650px;
}
.hero-inner-page .hero-inner-cta {
    margin-top: 52px;
    display: flex;
    gap: 10px;
    flex-flow: wrap;
}
.hero-inner-page .hero-inner-cta .btn {
    padding: 15px 70px;
}
.hero-inner-page .hero-inner-cta .btn-two {
    background: none;
    padding: 15px 30px;
}
.hero-inner-page .btn-two::before {
    display: none;
}


.banner-highlight-grid {
    display: flex;
    gap: 60px;
    margin-top: 30px;
    flex-flow: wrap;
}
.banner-highlight-col {
    background: rgba(0, 0, 0, 0.4);
    padding: 25px 30px;
}
.banner-highlight-title {
    font-size: 32px;
    color: #fff;
    font-weight: 700;
}
.banner-highlight-tagline {
    color: #fff;
    font-size: 22px;
}
.page-template-offers-template .hero-inner-tagline {
    color: #fff;
}
.page-template-offers-template .hero-inner-tagline span {
    background: #F59E0B;
    padding: 10px 12px;
    border-radius: 3px;
    display: inline-block;
}

p {
    margin-bottom: 22px;
}
p:empty {
    display: none
}
p:last-child {
    margin-bottom: 0;
}

.list-style ul {
    color: rgb(209, 209, 209);
    padding-left: 20px;
    margin-bottom: 22px;
}
.list-style ul:last-child {
    margin-bottom: 0;
}
.list-style ul li {
    display: block;
    position: relative;
    margin-bottom: 5px;
    padding-left: 20px;
}
.list-style ul li::before {
    position: absolute;
    content: "";
    left: 0px;
    top: 9px;
    width: 8px;
    height: 8px;
    background: rgb(209, 209, 209);
    border-radius: 50%;
}
.text-center .list-style ul, .text-center .list-style ul li {
    padding-left: 0;
}
.text-center .list-style ul li::before {
    position: static;
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 3px;
}
.yellow-ul ul li {
    color: var(--color-orange) !important;
}
.yellow-ul ul li::before {
    background: var(--color-orange) !important;
}

.list-style ol {
    list-style-position: inside;
    counter-reset: list-counter
}
.list-style ol li {
    position: relative;
    padding-left: 25px;
    counter-increment: list-counter;
    margin-bottom: 30px;
    display: block
}
.list-style ol li:last-child {
    margin-bottom: 0
}
.list-style ol li::before {
    content: counter(list-counter) ". ";
    position: absolute;
    left: 0;
    top: 0px;
    font-size: 18px;
    font-weight: 700;
}



.learn-more-btn {
    display: inline-flex;
    align-items: center;
    margin-top: 20px;
    gap: 15px;
    padding: 13px 10px;
    color: var(--color-orange);
    text-decoration: underline;
    transition: 0.5s;
}
.learn-more-btn svg, .learn-more-btn img {
    width: 12px;
    transition: 0.5s;
    height: 12px;
}
.learn-more-btn:hover svg {
    transform: rotate(60deg);
}



.header-logo-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/*========= Nav Multiple CSS =========*/
.header-main-menu.menu-header {
    margin: 20px 0 0;
    justify-content: center;
}
.menu-top {
    display: flex;
    justify-content: center;
    align-items: center;
}
ul.menu-top li {
    color: var(--bs-white);
    /*    position: relative;*/
    padding: 0px 18px;
    line-height: normal;
}
ul.menu-top li:last-child {
    padding-right: 0;
}
ul.menu-top>li.menu-item-has-children a {
    padding-right: 22px;
}
ul.menu-top li:first-child {
    padding-left: 0;
}
ul.menu-top li ul {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    transition: all ease-in-out 0.6s;
    transform: translateY(1.50em);
}
.menu-top li a {
    color: var(--bs-white);
    position: relative;
    display: flex;
    align-items: center;
    font-size: 18px;
    height: 100%;
    font-weight: 300;
    text-transform: capitalize;
    padding: 10px 0 30px;
    transition: all ease-in-out 0.5s;
}
.menu-top li:hover a {
    color: var(--color-orange);
}
.menu-header ul > li.current_page_item > a,
.menu-header ul > li.current_page_ancestor>a,
.menu-header ul > li.current-menu-parent > a,
.menu-header ul > li.current-menu-item > a,
.single-post .menu-header ul > li.current_page_parent > a {
    color: var(--color-orange);
}
.menu-header #mainNav > li.menu-item-has-children .sidebar-menu-arrow {
    transition: all ease-in-out 0.5s;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(135deg) scaleX(-1);
    display: block;
    height: 8px;
    border-top: 2px solid #bfbfbf;
    border-left: 2px solid #bfbfbf;
    right: 0;
    width: 8px;
    transform-origin: 0px 0px;
}
.menu-header #mainNav li:hover .sidebar-menu-arrow,
.menu-header #mainNav > li.current_page_item .sidebar-menu-arrow,
.menu-header #mainNav > li.current_page_ancestor .sidebar-menu-arrow,
.menu-header #mainNav > li.current-menu-parent .sidebar-menu-arrow {
    border-top: 2px solid var(--color-orange);
    border-left: 2px solid var(--color-orange);
}
.menu-header #mainNav li .sub-menu > li.menu-item-has-children .sidebar-menu-arrow {
    transform: rotate(-90deg) translateY(-50%);
    transform-origin: 10px -5px;
    right: 18px;
    background: var(--bs-white);
}
.menu-header #mainNav li .sub-menu > li.current_page_item .sidebar-menu-arrow,
.menu-header #mainNav li .sub-menu > li.current_page_ancestor .sidebar-menu-arrow {
    background: var(--bs-white);
}
.small-header .menu-top::before {
    display: none;
}
.sub-menu li.menu-item-has-children {
    position: relative;
}
ul.menu-top li:hover>ul {
    visibility: visible;
    position: absolute;
    bottom: auto;
    opacity: 1;
    transform: translateY(0);
}
ul.menu-top li:hover li {
    float: none;
}
header .sub-menu li ul.sub-menu {
    position: absolute;
    background-color: var(--color-dark);
    z-index: 99;
    top: 0 !important;
}
.menu-top li ul li {
    border-top: 0;
    display: block;
    margin: 0;
}
ul.menu-top li .sub-menu li ul.sub-menu li > a {
    /*    background-color: var(--color-dark);*/
    color: var(--color-orange);
}
ul.menu-top li:hover li a:hover, ul.menu-top li .sub-menu li ul.sub-menu li>a:hover{
    /*    background: var(--color-orange);*/
    color: var(--color-orange);
}
.menu-top ul.sub-menu li.current_page_item a,
.menu-top ul.sub-menu li.current-menu-item a,
ul.menu-top li .sub-menu li ul.sub-menu li.current-menu-item > a,
.menu-top ul.sub-menu li.current_page_item a:hover,
.menu-top li.current-menu-parent ul.sub-menu li.menu-item-object-team_post.current-menu-item a,
.single-post .menu-top .menu-item-has-children li.current_page_parent > a{
    /*    background: var(--color-orange);*/
    color: var(--color-orange);
}
.menu-top ul.sub-menu li.current_page_item::after{
    border-right: 2px solid var(--color-white);
    border-bottom: 2px solid var(--color-white);
}
ul.menu-top ul ul {
    left: 100%;
}
/*.menu-header .sub-menu {
    background-color: var(--color-dark);
    min-width: 240px;
    z-index: 9;
    text-align: left;
    border-radius: 4px;
    box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.25);
}*/
.menu-header .sub-menu {
    background-color: var(--color-dark);
    z-index: 10;
    box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.25);
    left: 0;
    right: 0;
    display: flex;
    padding: 10px 20px 150px;
    justify-content: center;
    flex-flow: wrap;
}
ul.menu-top li .sub-menu li {
    padding: 0;
    /*    border-bottom: 1px solid #eee2d7;*/
}
ul.menu-top li .sub-menu li:last-child {
    border-bottom: none;
}
ul.menu-top li .sub-menu li a {
    margin: 0;
    color: var(--bs-white);
    border: none;
    display: block;
    font-weight: 400;
    padding: 12px 20px;
    line-height: 1.3;
    text-transform: capitalize;
    font-size: 16px;
}
ul.menu-top li .sub-menu li a:hover {
    border: none;
}
ul.menu-top li .sub-menu li a:hover::before,
ul.menu-top li .sub-menu li a:hover::after {
    display: none;
}
.submenu-scroll > .sub-menu {
    overflow-y: scroll;
    height: 450px;
}
.submenu-scroll .sub-menu::-webkit-scrollbar-track {
    background-color: var(--bs-white);
}
.submenu-scroll .sub-menu::-webkit-scrollbar {
    width: 4px;
    background-color: var(--bs-white);
}
.submenu-scroll .sub-menu::-webkit-scrollbar-thumb {
    background-color: var(--color-orange);
}
.submenu-open {
    display: block !important;
}
.menu-header .sub-menu li .sub-menu li:only-child a {
    border-radius: 4px;
}
.menu-header .sub-menu li .sub-menu li:first-child:not(:only-child) a {
    border-radius: 4px 4px 0 0;
}
.menu-header .sub-menu li .sub-menu li:last-child:not(:only-child) a {
    border-radius: 0 0 4px 4px;
}

figure.wp-block-gallery.has-nested-images {
    margin-bottom: 20px;
    align-items: normal;
}

.wp-block-gallery.has-nested-images figure.wp-block-image {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    max-width: 100%;
    position: relative;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) {
    align-self: inherit;
}
.wp-block-image img {
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
}
.wp-block-gallery.has-nested-images figure.wp-block-image img {
    display: block;
    height: auto;
    max-width: 100%!important;
    width: auto;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a, .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img {
    flex: 1 0 0%;
    height: 100%;
    object-fit: cover;
    width: 100%;
}
@media (min-width:600px){
    .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
        width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px)*.66667);
    }
}

.has-luminous-vivid-amber-background-color {
    background-color: var(--color-orange) !important;
    color: #fff !important;
}
.wp-block-columns h3{
    margin-bottom: 12px;
}