.elementor-291 .elementor-element.elementor-element-a86cfb4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px) and (min-width:768px){.elementor-291 .elementor-element.elementor-element-a86cfb4{--width:100%;}}@media(max-width:1024px){.elementor-291 .elementor-element.elementor-element-a86cfb4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-291 .elementor-element.elementor-element-a86cfb4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-66d4c3c *//* =========================================================
   SUMBAWA WHALE SHARK TOURS
   HEADER
   Elementor Safe
   ========================================================= */

.swt-header {
    --swt-primary: #2C3892;
    --swt-blue: #3871C1;
    --swt-cyan: #00ADEF;

    position: fixed;

    top: 0;
    left: 0;

    width: 100%;

    z-index: 99999;

    font-family:
        Inter,
        Poppins,
        Arial,
        sans-serif;

    background: #ffffff;

    border-bottom:
        1px solid rgba(44,56,146,.08);

    transition:
        background .3s ease,
        box-shadow .3s ease,
        border-color .3s ease,
        backdrop-filter .3s ease;
}


/* =========================================================
   SCROLLED / GLASS HEADER
   ========================================================= */

.swt-header.swt-header--scrolled {
    background:
        rgba(255,255,255,.72);

    backdrop-filter:
        blur(18px)
        saturate(150%);

    -webkit-backdrop-filter:
        blur(18px)
        saturate(150%);

    border-bottom:
        1px solid rgba(44,56,146,.12);

    box-shadow:
        0 8px 30px rgba(20,35,90,.08);
}


/* =========================================================
   CONTAINER
   ========================================================= */

.swt-header .swt-header__container {
    width:
        min(1200px, calc(100% - 48px));

    height: 82px;

    margin: 0 auto;

    display: flex;

    align-items: center;

    gap: 30px;
}


/* =========================================================
   LOGO
   ========================================================= */

.swt-header .swt-header__logo {
    display: flex;

    align-items: center;

    flex-shrink: 0;

    text-decoration: none;
}


.swt-header .swt-header__logo img {
    display: block;

    width: auto;

    max-width: 205px;
    max-height: 54px;

    object-fit: contain;
}


/* =========================================================
   DESKTOP NAV
   ========================================================= */

.swt-header .swt-header__nav {
    flex: 1;

    display: flex;

    justify-content: center;
}


.swt-header .swt-header__menu {
    display: flex;

    align-items: center;

    gap: 3px;

    margin: 0;
    padding: 0;

    list-style: none;
}


.swt-header .swt-header__item {
    position: relative;

    margin: 0;
    padding: 0;
}


.swt-header .swt-header__item > a {
    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding: 31px 12px;

    color: #1f2868;

    font-size: 12px;
    font-weight: 600;

    line-height: 1;

    white-space: nowrap;

    text-decoration: none;

    transition:
        color .25s ease;
}


/* Hover underline */

.swt-header .swt-header__item > a::after {
    content: "";

    position: absolute;

    left: 12px;
    right: 12px;
    bottom: 23px;

    height: 2px;

    border-radius: 20px;

    background:
        linear-gradient(
            90deg,
            var(--swt-cyan),
            var(--swt-blue)
        );

    transform:
        scaleX(0);

    transform-origin: center;

    transition:
        transform .25s ease;
}


.swt-header .swt-header__item:hover > a,
.swt-header .swt-header__item > a:focus {
    color: var(--swt-primary);
}


.swt-header .swt-header__item:hover > a::after {
    transform: scaleX(1);
}


/* =========================================================
   DROPDOWN ARROW
   ========================================================= */

.swt-header .swt-header__arrow {
    margin-top: -3px;

    color: var(--swt-blue);

    font-size: 12px;

    transition:
        transform .25s ease;
}


.swt-header .swt-header__item:hover
.swt-header__arrow {
    transform:
        rotate(180deg);
}


/* =========================================================
   DESKTOP DROPDOWN
   ========================================================= */

.swt-header .swt-header__dropdown {
    position: absolute;

    top: calc(100% - 8px);

    left: 50%;

    width: 230px;

    margin: 0;
    padding: 10px;

    list-style: none;

    background:
        rgba(255,255,255,.98);

    border:
        1px solid rgba(44,56,146,.09);

    border-radius: 12px;

    box-shadow:
        0 20px 45px rgba(20,35,90,.14);

    opacity: 0;

    visibility: hidden;

    transform:
        translate(-50%, 10px);

    transition:
        opacity .2s ease,
        visibility .2s ease,
        transform .2s ease;
}


/* Invisible bridge prevents dropdown disappearing */

.swt-header .swt-header__dropdown::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;

    top: -14px;

    height: 14px;
}


.swt-header .swt-header__item:hover
.swt-header__dropdown {
    opacity: 1;

    visibility: visible;

    transform:
        translate(-50%, 0);
}


.swt-header .swt-header__dropdown li {
    margin: 0;
    padding: 0;
}


.swt-header .swt-header__dropdown li a {
    display: flex;

    align-items: center;

    width: 100%;

    box-sizing: border-box;

    padding: 11px 12px;

    border-radius: 7px;

    color: #273064;

    font-size: 11px;
    font-weight: 500;

    text-decoration: none;

    transition:
        background .2s ease,
        color .2s ease,
        padding .2s ease;
}


.swt-header .swt-header__dropdown li a:hover {
    background:
        rgba(0,173,239,.07);

    color: var(--swt-primary);

    padding-left: 16px;
}


/* =========================================================
   CTA
   ========================================================= */

.swt-header .swt-header__cta {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    flex-shrink: 0;

    min-height: 40px;

    padding: 0 15px;

    border-radius: 7px;

    background:
        linear-gradient(
            135deg,
            var(--swt-primary),
            var(--swt-blue)
        );

    color: #fff;

    font-size: 10px;
    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 7px 20px rgba(44,56,146,.15);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}


.swt-header .swt-header__cta span {
    font-size: 15px;

    transition:
        transform .25s ease;
}


.swt-header .swt-header__cta:hover {
    color: #fff;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(44,56,146,.25);
}


.swt-header .swt-header__cta:hover span {
    transform: translateX(4px);
}


/* =========================================================
   MOBILE TOGGLE
   ========================================================= */

.swt-header .swt-header__toggle {
    display: none;

    width: 42px;
    height: 42px;

    margin-left: auto;

    padding: 0;

    border: 0;

    background: transparent;

    cursor: pointer;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 5px;
}


.swt-header .swt-header__toggle span {
    display: block;

    width: 22px;
    height: 2px;

    border-radius: 20px;

    background:
        var(--swt-primary);

    transition:
        transform .3s ease,
        opacity .3s ease,
        width .3s ease;
}


/* X */

.swt-header.swt-header--menu-open
.swt-header__toggle span:nth-child(1) {
    transform:
        translateY(7px)
        rotate(45deg);
}


.swt-header.swt-header--menu-open
.swt-header__toggle span:nth-child(2) {
    opacity: 0;

    width: 0;
}


.swt-header.swt-header--menu-open
.swt-header__toggle span:nth-child(3) {
    transform:
        translateY(-7px)
        rotate(-45deg);
}


/* =========================================================
   MOBILE MENU
   ========================================================= */

.swt-header .swt-header__mobile {
    display: none;

    position: absolute;

    top: 100%;
    left: 0;

    width: 100%;

    max-height:
        calc(100vh - 82px);

    overflow-y: auto;

    background:
        rgba(255,255,255,.98);

    border-top:
        1px solid rgba(44,56,146,.08);

    box-shadow:
        0 20px 40px rgba(20,35,90,.12);
}


.swt-header .swt-header__mobile-menu {
    margin: 0;
    padding: 12px 20px 10px;

    list-style: none;
}


.swt-header .swt-header__mobile-menu > li {
    margin: 0;
    padding: 0;

    border-bottom:
        1px solid rgba(44,56,146,.07);
}


.swt-header .swt-header__mobile-menu > li:last-child {
    border-bottom: 0;
}


.swt-header .swt-header__mobile-menu > li > a {
    display: flex;

    align-items: center;

    min-height: 50px;

    color: #20295f;

    font-size: 13px;
    font-weight: 600;

    text-decoration: none;
}


/* =========================================================
   MOBILE DROPDOWN
   ========================================================= */

.swt-header .swt-header__mobile-dropdown-toggle {
    display: flex;

    align-items: center;
    justify-content: space-between;

    width: 100%;

    min-height: 50px;

    padding: 0;

    border: 0;

    background: transparent;

    color: #20295f;

    font-family: inherit;

    font-size: 13px;
    font-weight: 600;

    text-align: left;

    cursor: pointer;
}


.swt-header .swt-header__mobile-arrow {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 25px;
    height: 25px;

    border-radius: 50%;

    background:
        rgba(0,173,239,.08);

    color: var(--swt-primary);

    font-size: 17px;

    transition:
        transform .25s ease,
        background .25s ease;
}


.swt-header .swt-header__mobile-item.swt-mobile-open
.swt-header__mobile-arrow {
    transform: rotate(45deg);

    background:
        rgba(0,173,239,.15);
}


.swt-header .swt-header__mobile-dropdown {
    max-height: 0;

    overflow: hidden;

    margin: 0;
    padding: 0;

    list-style: none;

    transition:
        max-height .3s ease;
}


.swt-header .swt-header__mobile-item.swt-mobile-open
.swt-header__mobile-dropdown {
    max-height: 400px;

    padding-bottom: 8px;
}


.swt-header .swt-header__mobile-dropdown li {
    margin: 0;
    padding: 0;
}


.swt-header .swt-header__mobile-dropdown li a {
    display: block;

    padding: 9px 10px 9px 15px;

    border-left:
        2px solid rgba(0,173,239,.25);

    color: #626b91;

    font-size: 11px;
    font-weight: 500;

    text-decoration: none;

    transition:
        color .2s ease,
        border-color .2s ease,
        padding .2s ease;
}


.swt-header .swt-header__mobile-dropdown li a:hover {
    color: var(--swt-primary);

    border-color:
        var(--swt-cyan);

    padding-left: 19px;
}


/* =========================================================
   MOBILE CTA
   ========================================================= */

.swt-header .swt-header__mobile-cta {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    width: calc(100% - 40px);

    min-height: 47px;

    margin: 5px 20px 20px;

    border-radius: 8px;

    background:
        linear-gradient(
            135deg,
            var(--swt-primary),
            var(--swt-blue)
        );

    color: #fff;

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;
}


.swt-header .swt-header__mobile-cta span {
    font-size: 16px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {

    .swt-header .swt-header__container {
        width: calc(100% - 40px);

        height: 74px;
    }


    .swt-header .swt-header__nav,
    .swt-header .swt-header__cta {
        display: none;
    }


    .swt-header .swt-header__toggle {
        display: flex;
    }


    .swt-header .swt-header__mobile {
        display: block;

        opacity: 0;

        visibility: hidden;

        transform:
            translateY(-8px);

        pointer-events: none;

        transition:
            opacity .25s ease,
            visibility .25s ease,
            transform .25s ease;
    }


    .swt-header.swt-header--menu-open
    .swt-header__mobile {
        opacity: 1;

        visibility: visible;

        transform:
            translateY(0);

        pointer-events: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .swt-header .swt-header__container {
        width: calc(100% - 28px);

        height: 68px;
    }


    .swt-header .swt-header__logo img {
        max-width: 170px;

        max-height: 48px;
    }


    .swt-header .swt-header__mobile {
        max-height:
            calc(100vh - 68px);
    }


    .swt-header .swt-header__mobile-menu {
        padding-left: 15px;
        padding-right: 15px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .swt-header .swt-header__logo img {
        max-width: 150px;
    }


    .swt-header .swt-header__container {
        width: calc(100% - 24px);
    }

}/* End custom CSS */