*,
*:before,
*:after {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    -ms-box-sizing: border-box !important;
    box-sizing: border-box !important
}
:root {
/* CSS HEX */
--saffron: #eac435ff;
--yinmn-blue: #345995ff;
--mint: #03cea4ff;
--tomato: #fb4d3dff;
--rose-red: #ca1551ff;
}
.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    line-height: 0;
    visibility: hidden
}

*:not(.material-symbols-outlined) {
    font-family: "Roboto", sans-serif
}

a {
    text-decoration: none !important
}

li,
ul {
    list-style-type: none !important
}

body {
    position: relative;
    background: #fcfaf9;
    overflow-x: hidden
}

body {
    font-size: 16px
}

@media(max-width:1060px) {
    body {
        font-size: 14px
    }
}

@media(max-width:600px) {
    body {
        font-size: 12px
    }
}


@media(max-width:318px) {
    body {
        min-width: 320px;
        overflow-x: scroll
    }
}

main {
    width: 100%;
    position: relative;
    padding: 0;
    margin: 0;
    margin: 0 auto;
    text-align: left;
    background: aliceblue;
}

@media(max-width:750px) {
    main {
        width: 100%
    }
}

h1 h2,
h3,
h4,
h5 {
    font-family: "Karantina",Verdana,Geneva,Tahoma,sans-serif;
}

.phone-btn {
    transition: .3s;
    cursor: pointer;
    border: 0;
    background: none;
    text-transform: capitalize;
    text-align: center;
    font-size: 1.2em;
    line-height: .75em;
    color: #ffffff;
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

.phone-btn:before{
    content: " ";
    position: absolute;
    right: -1em;
    top: -0.85em;
    width: 0.1em;
    height: 3em;
    background: #ffffff80;
}
.phone-btn:hover {
    color: skyblue
}

#phone-btn span.material-symbols-outlined {
    font-weight: bold;
    display: inline-block;
    color: #333
}

.phone-btn.active {
    position: fixed;
    color: white;
    z-index: 999;
    top: 1em;
    right: 1em
}

#phone-btn.phone-btn.active span.material-symbols-outlined {
    color: white
}

#phone-btn span.material-symbols-outlined {
    font-weight: bold;
    font-size: 1.5em;
    display: inline-block;
    color: #ffffff
}

#phone-btn span.material-symbols-outlined.close {
    display: none
}

#phone-btn span.material-symbols-outlined {
    display: inline-block;
    vertical-align: middle
}

.phone-btn:after {
    content: "Call Now!";
    display: inline-block;
    text-align: center;
    margin: 0 auto
}

.phone-btn.active:after {
    content: "close"
}

#phone-btn.active span.material-symbols-outlined.close {
    display: block
}

#phone-btn.active span.material-symbols-outlined {
    display: none
}

#phone-menu ul {
    padding: 1em
}

#phone-menu ul li {
    list-style-type: none
}

#phone-menu ul li p {
    color: white;
    font-size: 1.25em;
    text-transform: capitalize
}

a.phone {
    color: #fed702;
    padding-top: .75em;
    display: inline-block;
    font-size: 1.5em;
    font-weight: bold
}

.menu-btn {
    position: absolute;
    right: 0;
    top: -0.25em;
    width: 2.75em;
    height: 2em;
    transition: .3s;
    cursor: pointer;
    z-index: 997;
    background-color: transparent;
    border: 0;
    font-size: 1.2em;
    display: none
}

.menu-btn.active {
    position: fixed;
    top: 1.5em;
    right: 1.5em;
    z-index: 999
}

.menu-btn hr {
    display: block;
    width: 100%;
    height: 0;
    transition: .3s;
    position: absolute;
    border: 2px solid #fff
}

.menu-btn.active hr {
    border: 2px solid white;
    background-color: white
}

.menu-btn-hr-1 {
    top: 0;
    left: 50%;
    transform: translateX(-50%) rotate(0deg)
}

.menu-btn-hr-2 {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.menu-btn-hr-3 {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) rotate(0deg)
}

.menu-btn.active .menu-btn-hr-1 {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg)
}

.menu-btn.active .menu-btn-hr-2 {
    opacity: 0
}

.menu-btn.active .menu-btn-hr-3 {
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg)
}

header#header {
    width: 100%;
    margin: 0 auto;
    box-shadow: 0em 0em 2em #0000007d;
    border-bottom: 0.25em solid white;
    background: var(--yinmn-blue);
    background-image: url("../images/tapas_white.png");
    background-size: 8em;
    background-position: 50% 100%;
    z-index: 10;
}

header#header #header-content {
    position: relative;
    vertical-align: middle;
    width: 100%;
    text-align: right;
    margin: 0 auto;
    padding: 1em;
}

menu#phone-menu {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    height: 20em;
    background-color: rgba(1, 17, 62, .85);
    overflow: hidden;
    text-align: center;
    z-index: 998;
    transform: translateX(-100%);
    padding: 4em;
    max-height: 15em;
    transition: .3s
}

menu#phone-menu.active {
    transform: translateX(0)
}

#header-center img {
    height: 5em
}

#logo {
    position: absolute;
    top: 1em;
    z-index: 997;
    left: 1em;
}

#logo img {
    height: 4em;
}

menu#main-nav {
    text-align: left;
    display: inline-block;
    vertical-align: middle;
    margin-left: 2em
}

menu#main-nav ul#parent-list {
    width: 100%;
    display: table;
}

menu#main-nav li.parent-list-item {
    display: table-cell;
    padding: 2em 1em;
}

menu#main-nav a {
    color: white;
    text-transform: capitalize;
    font-size: 1.1em
}

menu#main-nav a:hover {
    color: gold;
}

ul.child-list {
    position: absolute;
    display: none;
    width: 100%;
    background: #333;
    right: 0;
    max-width: 50em;
    text-align: justify;
    top: 6.24em;
    padding: 1em;
    cursor: pointer;
    z-index: 999;
}

li.child-list-item {
    display: inline-block;
    margin: 1em 1.5em;
}

li.parent-list-item:hover > ul.child-list{
    display: block;
}
@media(max-width:975px) {

    #logo img{
        height: 4em;
    }
}
#dd-list-activity,
#dd-list-tour{
    display: none;
}

@media(max-width: 920px) {
    #dd-list-activity,
	#dd-list-tour{
        display: inline-block;
    }
li.parent-list-item:hover > ul#activity-list{
    display: none;
} 

#dd-list-activity span.material-symbols-outlined.arrow-down,
#dd-list-tour span.material-symbols-outlined.arrow-down{
	display: block;
	font-size: 2.25em;
}
#dd-list-activity span.material-symbols-outlined.arrow-up,
#dd-list-tour span.material-symbols-outlined.arrow-up
	{
	display: none;
	font-size: 2.25em;
}

#dd-list-activity.active span.material-symbols-outlined.arrow-down,
	#dd-list-tour.active span.material-symbols-outlined.arrow-down{
	display: none;
}
#dd-list-activity.active span.material-symbols-outlined.arrow-up,
	#dd-list-tour.active span.material-symbols-outlined.arrow-up{
	display: block;
}
ul#activity-list,
ul#tour-list{
	display: none !important;
}
ul#activity-list.active,
ul#tour-list.active{
	display: block !important;
}    
    
#dd-list-activity,
#dd-list-tour{
	display: inline-block;
	vertical-align: middle;
	background: white;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	margin-left: 1em;
}
    header#header {
    padding: 2em 2em 2em 2em;
    }

    .menu-btn {
        display: block;
        top: 0;
    }

    .phone-btn {
        right: 5em;
        position: absolute;
        top: 0;
        font-size: 1.5em;
    }

    menu#main-nav {
        width: 100%;
        position: fixed;
        right: 0;
        top: 0;
        height: 100%;
        text-align: center;
        z-index: 998;
        transform: translateX(100%);
        transition: .3s;
        transform-origin: right;
        padding:0;
        overflow-y: scroll;
        overflow-x: hidden;
    }

    menu#main-nav.active {
        transform: translateX(0);
        padding: 0;
        border-left: 0;
        height: 100vh;
        background: #345995eb;
    }

    menu#main-nav ul#parent-list {
        padding: 1em;
        display: block !important;
        padding: 0;
    }

    menu#main-nav li.parent-list-item {
        padding: 1em;
        list-style-type: none;
        display: block;
        padding: 1.5em 0em;
    }

    #main-nav ul li a {
        color: white;
        font-size: 1.5em;
        text-transform: capitalize;
        line-height: 2em;
        display: inline-block;
        vertical-align: middle;
    }
        ul.child-list{
            display: block;
            position: relative;
            right: auto;
            top: auto;
            max-width: 100%;
            width: 100%;
            margin-top: 1em;
            padding: 1em 0em;
        }
        li.child-list-item{
                display: block;
                width: 100%;
                text-align: center;
                margin: 0em 0em;
                padding: 1em 0em;
        }
}

@media(max-width:650px) {
    #logo{
        left: 0.5em;
        top: 1em;
    }
    #logo img{
        height: 3.5em;
    }
    menu#phone-menu,
    menu#main-nav {
        text-align: center
    }
}

@media(max-width:500px) {
    header#header {
        font-size: .9em
    }
}

@media(max-width:450px) {
    #header-center img {
        margin-top: .75em
    }

    header#header {
        font-size: .8em
    }
}

aside#aside-contact {
    padding: 4em 1em;
    background: url(../images/bluebg.jpg);
    background-size: contain
}

aside#aside-contact p {
    max-width: 25em;
    margin: 0 auto;
    font-size: 1.5em;
    line-height: 1.5em;
    color: #fff
}

aside#aside-contact a {
    color: skyblue
}

aside#aside-contact h2 {
    font-size: 2em;
    margin-bottom: .5em;
    color: #fff;
    text-align: center;
    font-family: "Roboto Condensed"
}

#why-book-with {
    width: 100%;
    margin: 0 auto;
    display: block;
    position: relative;
    background-size: 100%;
    padding-bottom: 0.5em;
    background: url("../images/tapas_white.png"),#03CEA4;
    background-size: 8em;
}

#why-book-with h2 {
    font-size: 3em;
    width: 100%;
    padding: 4em 0 2em 0;
    text-transform: capitalize;
    border-top: 0.25em solid aliceblue;
    background-image: url(../images/design/blue_oahu.jpg);
    background-size: cover;
    background-attachment: fixed;
    text-align: center;
    background-position: center;
    color: white;
    text-shadow: 0em 0em 1em black;
    font-family: 'PACIFICO';
}

@media (max-width:650px) {
    #why-book-with {
        width: 100%;
        /* display: none; */
    }

    #why-book-with h2 {
        background-attachment: local;
        background-size: 150%;
        background-position: 50% 66%;
    }
}

#why-book-with h3 {
    text-transform: capitalize;
    font-size: 2em;
    margin-bottom: 2em;
    width: 100%;
    text-align: center;
    color: #692600;
    font-family: "Roboto Condensed"
}

#why-book-with h3 br {
    display: none
}

#why-book-with ul {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 3em;
    border-top: 0.5em solid #f0f8ff;
    padding-top: 2em;
}

#why-book-with ul li {
    display: inline-block;
    width: 33.3%;
    text-align: center;
    vertical-align: top;
    padding: 1em;
    max-width: 25em;
}

.booking-details {
    width: 100%;
    border-radius: 2em;
    position: relative;
    text-align: center;
    padding: 2em 1em 2em 1em;
    background-size: 55em;
    background-position: center;
    background: aliceblue;
}

.booking-details img {
    position: absolute;
    height: 100%
}

.booking-details p {
    color: #333;
    line-height: 1.5em;
    font-size: 1.25em
}

.booking-img-container {
    background: #345995;
    border: .25em solid white;
    height: 6em;
    width: 6em;
    position: absolute;
    overflow: hidden;
    border-radius: 50%;
    left: 50%;
    transform: translateX(-50%);
    top: -4em;
    font-size: 1.25em;
}

.booking-img-container:after {
    content: "";
    position: relative
}

.booking-details h4 {
    text-align: center;
    font-size: 1.75em;
    text-transform: capitalize;
    margin-bottom: 1em;
    line-height: 1em;
    margin-top: 1em;
    font-weight: 700;
    color: #CA1551;
    font-family: "Pacifico";
}

#book-with-cta {
    background: blanchedalmond;
    width: 92%;
    display: block;
    max-width: 11.35em;
    margin: 0 auto;
    margin-top: 0;
    padding: .5em;
    font-size: 1.5em;
    border-radius: 1em;
    margin-top: 1em;
    color: darkblue;
    text-transform: capitalize
}

@media(max-width:900px) {
    #why-book-with ul {
        display: block;
        text-align: center;
    }

    #why-book-with ul li {
        display: block;
        width: 100%;
        margin: 2em auto;
    }

    .booking-details {
        max-width: 20em;
        margin: 2em auto
    }
}

.footer {
    width: 100%;
    padding: 4em 0 2em 0;
    font-size: 1em;
    background-size: cover;
    text-align: center;
    background-size: cover;
    background-position: top center;
    background: #345995;
    background-size: 150%;
}

#logo-footer img {
    width: 20em;
}

#logo-footer b {
    font-size: 2.25em;
    font-weight: lighter;
    line-height: 1em;
    text-transform: capitalize
}

.social {
    width: 100%;
    text-align: center;
    margin-bottom: 3em;
    margin-top: 2em
}

.social p {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 2em;
    text-transform: capitalize;
    color: #fff;
    padding: .5em;
}

.social ul {
    display: table;
    width: 8em;
    margin: 0 auto
}

.social ul li {
    display: table-cell;
    width: 25%;
    padding: .25em
}

.social ul li a {
    width: 100%;
    display: block;
    background-color: #fff;
    border-radius: 2em;
    padding: .25em
}

.social ul li img {
    width: 100%;
    display: block;
    opacity: .8
}

.footer-section {
    width: 100%;
    padding: 1em
}

.footer section ul {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    margin-left: -5px;
    text-align: center
}

.footer section ul li {
    width: 100%;
    list-style-type: none;
    line-height: 2em
}

.footer section ul li b {
    font-size: 1.3em;
    color: #fff;
    text-transform: capitalize
}

.footer section ul li a {
    display: inline-block;
    color: white !important;
    padding: .25em;
    text-transform: capitalize
}

@media(max-width:700px) {
    .footer section ul {
        padding: 2em
    }

    .footer section ul li a {
        font-size: 1.2em
    }
}
.product-full {
    width: 28em;
    position: relative;
    margin: 2em auto;
    display: inline-block;
    vertical-align: top;
    margin: 0.5em;
    background: white;
    border-radius: 1em;
    overflow: hidden;
    border: 0.5em solid white;
    box-shadow: 0em .5em 2em #00000073;
    font-size: 1em;
}

.product-full .img-container {
    width: 100%;
    height: 20em;
    position: relative !important;
    background: #000;
    overflow: hidden;
}

.product-full .img-container img {
    position: absolute;
    right: 0;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
    z-index: 1
}

.product-full article {
    width: 100%;
    margin: 2em auto;
    text-align: left;
    padding: 0em 2em;
}

.product-full h2 {
    font-weight: bold;
    font-size: 2em;
    color: var(--rose-red);
    text-transform: capitalize;
    line-height: 0.8em;
    height: 2em;
}
.product-full h2 span{
	font-size: 0.6em;
	line-height: 0;
	color: #333;
}
.product-full h3 {
    padding: 0;
    color: white
}

.product-full p {
    font-weight: normal;
    color: #333;
    line-height: 1.75em;
    margin: 1em 0;
    font-size: 1.15em;
    height: 7em;
    overflow: hidden;
}

.product-full ul {
    width: 100%;
    display: table;
    text-align: right
}

.product-full ul li {
    width: 100%;
    display: block
}

.product-full .before-price,
.product-full .after-price {
    color: #333;
    display: block;
    line-height: 1.25em
}

.product-full .before-price {
    font-size: 1.5em;
    opacity: .75;
    text-decoration: line-through;
    opacity: .5
}

.product-full .after-price {
    font-size: 1.5em;
    display: inline-block;
    vertical-align: bottom;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.product-full .after-price::before {
    content: "from ";
    font-size: .6em;
    display: inline-block;
    vertical-align: baseline;
    text-transform: capitalize;
    margin-right: .5em
}

.learn-more {
    display: inline-block;
    color: var(--rose-red);
    padding: .25em .25em;
    margin-top: .25em;
    border-radius: 2em;
    text-transform: capitalize;
    font-size: 1.25em;
    background: var(--saffron);
    text-align: center;
    width: 11em;
    font-family: 'Pacifico';
}
.learn-more span:not(.material-symbols-outlined) {
    display: inline-block;
    vertical-align: middle;
    color: var(--rose-red);
    text-transform: capitalize;
    padding-left: .5em;
    line-height: 1em;
    font-size: 1em;
    font-family: 'Pacifico';
    font-weight: bold;
    margin-bottom: 0.25em;
}
@media(max-width:750px){
	#cta .learn-more{
	width: auto;
	text-align: center;
	padding: 0.5em 2em;
}
#cta .learn-more span:not(.material-symbols-outlined){
	font-size: 1.5em;
}
}

.learn-more span.material-symbols-outlined {
    color: var(--yinmn-blue);
    font-size: 1.5em;
    display: inline-block;
    vertical-align: middle;
    font-weight: bold
}


/* product details */

#product-entry {
    width: 100%;
    margin: 0 auto;
}

@media(max-width: 450px) {
    #product-entry {
    }
}

#activity-header {
    width: 100%;
    overflow: hidden;
    text-align: center;
    position: relative;
    background: gainsboro;
    height: 20em;
}

#activity-header img {
    position: absolute;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%)
}

@media(max-width: 1095px) {
    #activity-header img {
        width:auto;
        height: 100%
    }
}

#product-content {
    text-align: center;
    width: 100%;
    
}

#player-wrapper {
    width: 49%;
    text-align: center;
    padding: 1em;
    display: inline-block;
    vertical-align: middle;
}

#product-main {
    vertical-align: top;
    width: 50%;
    padding-top: 1em;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
    border-left: 0.15em solid purple;
}

#player-wrapper iframe {
    width: 95%;
    height: 20em;
    max-width: 30em
}

#product-header {
    text-transform: capitalize;
    color: var(--rose-red);
    font-size: 2em;
    margin-top: 1em;
}

#product-subtitle {
    text-transform: capitalize;
    color: #333;
    font-size: 1.15em;
    margin-bottom: .75em;
    margin-top: .5em;
    margin-bottom: 1em;
}

img#img-alt {
    max-width: 30em;
    width: 100%
}

#product-features {
    display: none;
}

div#ai-summary {
    width: 49%;
    display: inline-block;
    max-width: 35em;
    padding: 2em;
    vertical-align: middle;
    position: relative;
}

div#product-summary {
    display: inline-block;
    max-width: 40em;
    width: 50%;
    padding: 2em 0em;
    border-left: 0.15em solid rgba(0,0,0,0.25);
    vertical-align: middle;
}

div#ai-summary-content {
    background: white;
    padding: 2em 2em;
    border-radius: 1em;
    box-shadow: 0em 0.5em 1em rgba(0,0,0,0.3);
    line-height: 1.5em;
    color: #333;
    border: 0.25em solid #57335b17;
    font-size: 1.15em;
}
#ai-summary img {
    position: absolute;
    right: 0.5em;
    top: 0.5em;
    width: 5em;
}
.product-duration {
    color: #333;
    margin: 1em auto
}
p#price-attributes{
		max-width: 25em;
	margin: 0 auto;
}
.product-duration span {
    display: inline-block;
    vertical-align: middle
}

#product-prices {
    display: inline-table;
    width: 50%;
    margin-top: 1em;
    vertical-align: middle
}

#product-prices li {
    display: table-cell;
    text-align: left;
    padding-right: 1em;
    width: 50%;
}

#before-price {
    font-size: 1.25em;
    text-transform: capitalize;
    color: #bbb
}

#before-price span {
    font-size: 1.5em;
    text-decoration: line-through;
    font-weight: bold;
    display: block
}

#after-price {
    font-size: 1.25em;
    text-transform: capitalize;
    color: #333;
}

#after-price span {
    font-size: 1.5em;
    font-weight: bold;
    display: block;
    color: var(--yinmn-blue);
}

#product-buttons {
    display: inline-block;
    vertical-align: middle;
    margin-top: 1em
}

#product-button {
    background: var(--saffron);
    display: inline-block;
    border-radius: 2em;
    padding: .5em .5em .5em 1em;
    text-align: center;
    border: 0;
    font-size: 1.2em;
    vertical-align: middle;
    cursor: pointer;
    border: 0.15em solid var(--yinmn-blue);
}

#product-button p {
    text-transform: capitalize;
    font-weight: bold;
    color: var(--yinmn-blue);
    display: inline-block;
    vertical-align: middle;
    font-size: 1.15em;
    font-family: "Pacifico";
    line-height: 1.15em;
}

#product-button .material-symbols-outlined {
    color: gold;
    background: var(--yinmn-blue);
    border-radius: 1em;
    font-weight: bold;
    display: inline-block;
    font-size: 1.5em;
    vertical-align: bottom
}

#seating {
    display: block;
    border-radius: 5em;
    vertical-align: middle;
    font-size: 1.1em;
    border: .15em solid #032541;
    color: #042342;
    text-align: center;
    padding: .5em 0;
    max-width: 10em;
    margin: 1em auto
}

#book-now-alt {
    position: fixed;
    bottom: .5em;
    left: .5em;
    z-index: 988;
    background: #dfbc00;
    border: 0;
    font-size: 1.25em;
    text-transform: capitalize;
    color: #1d1d1d;
    padding: .75em;
    font-weight: bold;
    cursor: pointer
}

#book-now-alt.hidden {
    display: none
}

#book-now-alt.visible {
    display: block
}

#book-now-alt span {
    display: inline-block;
    vertical-align: text-top
}

.activity-details {
  margin: 0 auto;
  display: block;
  font-size: 1.2em;
  background: url(../images/tapas_white.png), var(--mint);
  background-size: 8em;
  padding: 2em 0em;
}
div#activity-article {
    background: aliceblue;
    padding: 2em;
    border-radius: 1em;
    max-width: 60em;
    width: 90%;
    margin: 0em auto;
    box-shadow: 0em 0.5em 1em rgba(0,0,0,0.3);
}
.bulletpoint-row {
    column-count: 2;
    padding: 2em;
    column-fill: balance
}

@media(max-width: 800px) {
    .bulletpoint-row {
        column-count:1;
        text-align: center;
        list-style-position: inside
    }
}

.bulletpoint-header {
    margin: 1em auto;
    color: #790052
}

.bulletpointstyles li {
    line-height: 2em
}

#activity-article p {
    margin-bottom: 1em;
    line-height: 1.5em;
    color: #333
}

#activity-aside {
    width: 100%;
    position: relative;
    background-size: cover;
    background-position: bottom;
    overflow: hidden;
    padding: 2em 0;
    background: url("../images/tapas_white.png"),var(--yinmn-blue);
    background-size: 8em;
    border-top: 0.5em solid aliceblue;
}

#activity-aside article {
    margin: 0 auto;
    width: 90%;
    padding: 2em;
    max-width: 72em;
    background: aliceblue;
    border-radius: 1em;
    box-shadow: 0em 0.5em 1em rgba(0,0,0,0.3);
}

#activity-aside article h3 {
    width: 100%;
    text-align: center;
    text-transform: capitalize;
    font-size: 2em;
    color: #333
}

#activity-aside article ul {
    margin-top: 2em
}

#activity-aside article ul li {
    display: table;
    width: 100%;
    margin-bottom: 1em
}

#activity-aside article b {
    display: table-cell;
    width: 20%;
    color: var(--yinmn-blue);
    vertical-align: top
}

#activity-aside article p {
    display: table-cell;
    width: 60%;
    line-height: 1.5em;
    vertical-align: top;
    text-align: left
}

#activity-aside article p b {
    display: block;
    width: auto;
    color: #333
}
.ai-summary-box{background:#ffe9e9;padding:1.25em;margin:2em 0;width:100%;font-family:"Montserrat",sans-serif;font-size:1em;color:#333;line-height:1.5em;}

@media(max-width: 600px) {
    #activity-aside article ul li,#activity-aside article b,#activity-aside article p {
        display:block;
        width: 100%;
        padding: .5em
    }
}

div#activity-gallery {
    width: 100%;
    text-align: center;
    margin: 1em auto;
    padding: 0.5em;
    background: url("../images/tapas_white.png"),var(--yinmn-blue);
    background-size: 8em;
}

#activity-gallery li {
    display: inline-block;
    width: 30%;
    overflow: hidden;
    height: 16em;
    margin: 0.5em;
    border: 0.25em solid white;
    border-radius: 1em;
    box-shadow: 0em 0.5em 1em rgba(0,0,0,0.3);
    background: black;
}
@media(max-width:750px){
	#activity-gallery li{
		min-width: 16em;
	}
}
.gallery-image {
    display: block;
    height: 100%;
    width: 100%;
    position: relative
}

.gallery-image img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    height: 100%
}

div#activity-video {
    display: inline-block;
    width: 40%;
    vertical-align: top;
    border: 0.5em solid white;
    background: black;
    max-width: 50em;
    border-radius: 1em;
    overflow: hidden;
    box-shadow: 0em 0.5em 1em rgba(0,0,0,0.3);
    vertical-align: middle;
}

ul#activity-gallery {
    display: inline-block;
    width: 59%;
    max-width: 60em;
    vertical-align: middle;
    min-height: 38em;
    overflow-y: scroll;
    overflow-x: hidden;
}

#activity-video iframe {
    width: 100%;
    min-height: 24em;
    border: 0;
}

@media (max-width: 850px) {
    #book-now-alt {
        left:0;
        bottom: 0;
        width: 100%
    }
div#ai-summary,
div#product-summary{
	width: 100%;
	display: block;
	margin: 0 auto;
	border: 0;
	max-width: 50em;
}


    #product-prices {
        display: table;
        width: 100%;
        text-align: center
    }

    #product-prices li {
        text-align: center;
        padding: 1em
    }

    #product-buttons {
        display: block;
        width: 100%;
        text-align: center
    }

    div#activity-video {
        width: 100%;
        max-width: 32em;
    }
    div#activity-video iframe{
        max-width: 30em;
    }
    #activity-gallery ul {
        width: 100%;
    }

    
}


#bread-crumbs {
    width: 100%;
    text-align: center;
    background: #333;
    padding: 0.5em;
}

#bread-crumbs li {
    display: inline-block;
    vertical-align: middle
}

#bread-crumbs a {
    display: inline-block;
    vertical-align: middle;
    font-size: 1em;
    color: white;
    text-transform: capitalize
}

#bread-crumbs .material-symbols-outlined {
    display: inline-block;
    vertical-align: middle;
    font-weight: normal;
    color: white;
}

@media (max-width: 750px) {
    #bread-crumbs {
        text-align:center
    }
}





















#gallery-modal {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 999;
    background: #000000a8
}

#gallery-modal.modal-gallery-window {
    display: none
}

#gallery-modal.modal-gallery-window.active {
    display: block
}

.gallery-slide {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 50em
}

.gallery-slide {}

#gallery-button-prev,
#gallery-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    line-height: 0;
    letter-spacing: 0;
    word-spacing: 0;
    border: 0
}

#gallery-button-prev {
    left: 0
}

#gallery-button-next {
    right: 0
}

#gallery-button-prev .material-symbols-outlined,
#gallery-button-next .material-symbols-outlined {
    color: whitesmoke;
    font-size: 5em
}

#gallery-button-prev .material-symbols-outlined {
    margin-left: -.2em
}

#gallery-button-next .material-symbols-outlined {
    margin-right: -.2em
}

.gallery-slide {
    display: none
}

.gallery-slide.active {
    display: block
}

#close-modal-gallery {
    position: absolute;
    right: 1em;
    top: 1em;
    font-size: 1em;
    background: none;
    border: none
}

#close-modal-gallery .material-symbols-outlined {
    font-size: 2.5em;
    color: white;
    border: 2px solid;
    border-radius: 50%
}

div#modal-gallery-nav {
    position: absolute;
    bottom: 1em;
    width: 100%;
    text-align: center
}

button.gallery-nav-btn {
    margin: .25em;
    height: 1.5em;
    width: 1.5em;
    border-radius: 1em;
    border: 0;
    opacity: .5
}

button.gallery-nav-btn.active {
    opacity: 1
}

div#empty-cart {
    text-align: center;
    padding: 10em 2em 10em 2em;
    margin: 0 auto;
    margin-top: 0;
    background-size: 8em
}

div#empty-cart .material-symbols-outlined {
    color: var(--rose-red);
    font-size: 4em
}

div#empty-cart h3 {
    text-transform: capitalize;
    color: var(--yinmn-blue);
    font-size: 2.5em;
    font-family: 'Pacifico';
}

div#empty-cart p {
    color: var(--yinmn-blue);
    line-height: 1.5em;
    max-width: 25em;
    margin: 0 auto;
    font-size: 1.5em;
    text-transform: capitalize;
}

div#empty-cart a {
    display: inline-block;
    border-radius: 5em;
    background-color: var(--saffron);
    text-align: right;
    margin-top: .5em;
    border: .15em solid;
    vertical-align: middle;
    color: var(--yinmn-blue);
    text-transform: capitalize;
    font-size: 1.25em;
    font-weight: bold;
    padding: .5em 2em;
    line-height: 1em
}

#contact-us p {
    line-height: 2em;
    max-width: 45em;
    margin: 0 auto;
    width: 95%
}

#contact-us h1.title {
    color: #18243f
}

div#contact-us {
    text-align: center
}

#contact-us {
    background-position: center;
    padding-bottom: 2em
}

#contact-us h3.title {
    font-size: 2em;
    text-transform: capitalize;
    padding: 1.5em 0;
    margin: 0 auto;
    display: block;
    text-align: center;
    color: white;
    font-weight: normal;
    font-size: 2em;
    font-weight: lighter;
    color: #333;
    font-family: inherit
}

#contact-form {
    margin: 1em auto;
    text-align: center;
    background-position: center;
    background: aliceblue;
    break-inside: avoid;
    padding: 3em;
    width: 90%;
    border-radius: 0;
    border-radius: 1em;
    max-width: 60em;
}

@media(max-width:900px) {
    #contact-form {
        column-count: 0
    }
}

#contact-form .form-control {
    padding: 1em;
    width: 100%;
    max-width: 25em;
    margin: 1em auto;
    border-radius: .75em;
    text-transform: capitalize;
    transform: scaleY(-1);
    border: none;
    border: .12em solid
}

#contact-form .row {
    break-inside: avoid
}

#contact-form .md-form label {
    display: block;
    color: var(--yinmn-blue);
    font-size: 1em;
    font-weight: bold;
    transform: scaleY(-1)
}

#contact-form .container {
    text-align: center;
    padding: 2em 0
}

#contact-form .md-form.mb-0 {
    transform: scaleY(-1)
}

#contact-form .md-form {
    transform: scaleY(-1)
}

div#contact-us {
    text-align: center
}

div#contact-us {
    padding-top: 12em;
    background-size: 100%
}

div#contact-us iframe {
    margin: 0 auto;
    display: block
}

.g-recaptcha {
    text-align: center;
    margin: 0 auto;
    display: block
}

.g-recaptcha div {
    margin: 0 auto
}

#contact-us h3.title {
    font-weight: 400;
    color: #145586;
    margin-top: 3em;
    font-weight: bold
}

div#contact-us input[type="submit"] {
    display: inline-block;
    padding: .5em 2em;
    text-transform: capitalize;
    font-size: 1.15em;
    background: #dcb14c;
    color: #1a1f1b;
    border: .15em solid white;
    transition: .3s
}

div#contact-greeting {
    background: white;
    padding: 4em;
    text-align: center
}

#contact-greeting span.material-symbols-outlined {
    font-size: 3em
}

#contact-greeting p {
    font-size: 2em;
    text-transform: capitalize;
    color: #333
}

#contact-form.visible,
#contact-greeting.visible {
    display: block
}

#contact-form.hidden,
#contact-greeting.hidden {
    display: none
}

div#about {
    background-size: 8em;
    text-align: left;
}

#about-content {
    background-size: 100%
}

@media(max-width:500px) {
    #about-content {
        background-size: 15em, 15em, auto
    }
}

#about div#hero {
    padding-top: 5em;
    position: relative;
    text-align: center;
    height: auto;
    background: var(--yinmn-blue);
    overflow: hidden;
}
#about div#hero img{
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    z-index: 1;
}

#about #hero h1 {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    font-size: 3em;
    color: white;
    padding: 2em 0 2em 0;
    text-transform: capitalize;
    text-shadow: 0 0 1em black;
    font-family: "Pacifico";
    z-index: 9;
}

div#about-content {
    padding: 5em 0;
    text-align: center;
    border-top: .5em solid white;
    background-size: 100%;
    background-position: top center;
    padding-bottom: 5em;
    background: url("../images/tapas_white.png"), var(--mint);
    background-size: 8em;
}

#about-content article {
    display: block;
    margin: 0 auto;
    max-width: 60em;
    width: 90%;
    border-radius: 1em;
    position: relative;
    text-align: center;
    padding: 3em;
    background-position: center;
    background: aliceblue;
}

#about-content article p {
    line-height: 2em;
    margin-bottom: 1em;
    text-align: left
}

@media (max-width:950px) {
    #product-options {
        display: block;
        width: 100%;
        text-align: center;
        margin-top: 1em
    }

    #product-main {
        display: block;
        width: 100%;
        padding: 0 1em;
        text-align: center
    }

    #product-features {
        margin: 1em auto
    }

    #product-prices {
        display: table;
        width: 100%;
        text-align: center
    }

    #product-prices li {
        text-align: center;
        padding: 0
    }

    #product-buttons {
        display: block;
        width: 100%;
        text-align: center
    }

    #video-alt-wrapper {
        width: 100%
    }

    #video-alt-wrapper section img {
        height: 100%;
        width: auto
    }
}

div#seating-window {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
    background-color: rgba(0, 0, 0, .5);
    height: 100%;
    width: 100%
}

div#seating-window img {
    width: 95%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 40em
}

div#seating-window button {
    position: absolute;
    right: 1em;
    top: 1em;
    background: none;
    color: white;
    border: none;
    font-size: 1.25em
}

div#seating-window button .material-symbols-outlined {
    font-size: 2.5em !important;
    font-weight: bold
}

div#seating-window {
    display: none
}

div#seating-window.visible {
    display: block
}

a.footer-logo.alt img {
    width: 12em
}

h2.info {
    font-size: 2em;
    font-family: "Roboto Condensed";
    text-align: center;
    color: #2c0100;
    text-transform: capitalize;
    margin: 1.5em auto 1em auto;
    line-height: 1.2em;
    max-width: 90%
}

h3.info {
    font-size: 1.5em;
    font-family: "Roboto Condensed";
    text-align: left;
    color: #145586;
    margin: 1.5em 0 1em 0;
    text-transform: capitalize;
    line-height: 1.3em
}

h4.info {
    font-size: 1.25em;
    font-family: "Roboto Condensed";
    color: #692600;
    text-align: left;
    margin: 1em 0 .75em 0;
    text-transform: capitalize;
    line-height: 1.4em
}

#faq.accordion {
    width: 95%;
    padding: 0;
    margin: 0 auto;
    padding: 0 0 0 1em;
    background: none;
    max-width: 60em
}

@media(max-width:600px) {
    #faq.accordion {
        padding: 0;
        width: 100%
    }

    #faq.accordion h4 {
        font-size: .8em;
        max-width: 25em;
        vertical-align: middle;
        display: inline-block
    }
}

#faq.accordion .tab {
    width: 100%;
    background: aliceblue;
    list-style-type: none
}

p.tab-icon {
    position: absolute;
    right: .5em;
    top: .75em;
    font-size: 1.5em
}

#faq.accordion li.tab .close-icon {
    display: none
}

#faq.accordion li.tab .open-icon {
    display: block;
    color: skyblue
}

#faq.accordion li.tab.active .close-icon {
    display: block
}

#faq.accordion li.tab.active .open-icon {
    display: none
}

#faq.accordion .tab .tab-header {
    padding: 1em;
    text-align: center;
    text-transform: capitalize;
    font-weight: 100;
    cursor: pointer;
    transition: .3s;
    font-size: 1.25em;
    font-weight: 700;
    font-family: "Roboto Condensed", "Montserrat", sans-serif;
    position: relative;
    color: skyblue;
    background: #18243f;
    border-bottom: 2px solid #87ceeb
}

#faq.accordion .tab.active .tab-header {
    background: #d0ecff;
    border-bottom: 2px solid #18243f;
    color: #18243f
}

#faq.accordion .tab .content {
    width: 100%;
    text-align: center;
    transform-origin: top
}

#faq.accordion .tab .content p {
    font-size: 1.2em;
    font-weight: 300;
    line-height: 2em;
    max-width: 40em;
    margin: 0 auto;
    width: 90%
}

#faq.accordion .tab .content {
    display: none
}

@@-webkit-keyframes fadeIn {
    0% {
        transform: scaleY(0)
    }

    100% {
        transform: scaleY(1)
    }
}

@@-moz-keyframes fadeIn {
    0% {
        transform: scaleY(0)
    }

    100% {
        transform: scaleY(1)
    }
}

#faq.accordion .tab.active .content {
    display: block;
    height: auto;
    -webkit-animation: fadeIn .3s ease-out;
    -moz-animation: fadeIn .3s ease-out;
    padding: 2em
}
/* activity index */
.hero-alt {
    height: 20em;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
    background-color: #333;
}
@media(max-width:650px){
	.hero-alt {
		height: 15em;
	}
}

.hero-alt h1 {
    position: absolute;
    left: 50%;
    top: 45%;
    color: white;
    transform: translateX(-50%);
    text-shadow: 0em 0em 1em black;
    font-family: 'Pacifico';
    line-height: 1em;
    z-index: 2;
    text-align: center;
    font-size: 3em;
    width: 100%;
    display: block;
}
.hero-alt img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1;
    text-align: center;
}
@media(max-width:1400px){
    img#hero-img{
        height: 100%;
        width: auto;
    }
}
#activity-reading {
    width: 100%;
    padding: 2em;
    text-align: center;
    position: relative;
    max-width: 60em;
    margin: 1em auto 3em auto;
}

#activity-reading.hidden {
    height: 18em;
    overflow: hidden
}

#activity-reading.expand {
    height: auto
}

.activity-article {
    text-align: left;
    height: 0;
    overflow: hidden;
    padding: 0;
    display: inline-block;
    vertical-align: top;
    line-height: 2em
}

.activity-article h2 {
    font-size: 2em;
    text-transform: capitalize;
    margin-bottom: 1em;
    color: #b91382;
    text-align: center;
    font-family: "Pacifico";
}

.activity-article.active {
    height: auto;
    padding: 2em;
}

.activity-article p {
    line-height: 1.75em;
    margin-bottom: 1.5em;
}

.activity-article a {
    font-size: 1.15em;
    text-transform: capitalize;
    background: #b40d7a;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    margin-bottom: 1em;
    color: gold;
    border-radius: 1em;
    padding: .25em .5em
}

.article-buttons button {
    display: inline-block;
    background-color: gainsboro;
    border: 0;
    border-radius: 2em;
    padding: .25em 1em;
    font-size: 1em
}

.article-buttons span {
    display: inline-block;
    vertical-align: middle
}

#expand {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0
}

#expand-more {
    width: 100%;
    background: linear-gradient(180deg,rgb(240 248 255 / .25) 0%,rgb(240 248 255 / .75) 33%,rgb(240 248 255) 100%);
    border: 0;
    cursor: pointer;
    padding: 5em 0 1em 0;
}
#expand-less {
    width: 100%;
    background: none;
    border: 0;
    cursor: pointer
}

#expand-more .material-symbols-outlined,#expand-less .material-symbols-outlined {
    font-size: 2em
}

#expand-more span,#expand-less span {
    display: inline-block;
    vertical-align: middle;
    text-transform: capitalize;
    font-size: 1.5em;
    font-weight: 700;
    color: #00438b
}
#catalog-list{
	background: url(../images/tapas_white.png), var(--mint);
	background-size: 8em;
	padding: 0em 0em 4em 0em;
}
#catalog-list h3{    
 text-align: center;
		font-size: 2em;
	color: #333;
	padding-top: 1em;
	padding-bottom: 1em;
}

.product-index-full {
    max-width: 60em;
    position: relative;
    margin: 2em auto;
    display: block;
    vertical-align: top;
    margin: 1em auto;
    background: aliceblue;
    border: 1em solid aliceblue;
    box-shadow: 0em 0.5em 2em rgba(0,0,0,0.3);
}

.product-index-full .img-container {
    width: 50%;
    height: 20em;
    position: relative !important;
    background: #000;
    overflow: hidden;
    display: inline-block;
    vertical-align: middle;
}

.product-index-full .img-container img {
    position: absolute;
    right: 0;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
    z-index: 1;
}

.product-index-full article {
    width: 49%;
    margin: 2em auto;
    text-align: left;
    padding: 0em 2em;
    display: inline-block;
    vertical-align: middle;
}
@media(max-width:900px){
	.product-index-full{
		width: 100%;
		max-width: 30em;
	}
	.product-index-full .img-container,
	.product-index-full article{
		width: 100%;
	}
}
#catalog-list .product-index-full h2 {
    font-weight: bold;
    font-size: 1.75em;
    color: var(--rose-red);
    margin-bottom: 1em;
}
.product-index-full h2 span{
	color: #333;
	display: block;
	font-size: 0.8em;
	line-height: 1.5em;
}
.product-index-full h3 {
    padding: 0;
    color: white
}

#catalog-list .product-index-full p {
    font-weight: normal;
    color: #333;
    line-height: 1.75em;
    font-size: 1em;
    margin-bottom: 0.5em;
    width: auto;
}
li.duration-li {
    text-align: left;
}
.product-index-full ul {
    width: 100%;
    display: table;
    text-align: right
}

.product-index-full ul li {
    width: 49%;
    display: inline-block;
    vertical-align: middle;
}

.product-index-full .before-price,
.product-index-full .after-price {
    color: #333;
    display: block;
    line-height: 1.25em
}

.product-index-full .before-price {
    font-size: 1.5em;
    opacity: .75;
    text-decoration: line-through;
    opacity: .5
}

.product-index-full .after-price {
    font-size: 1.5em;
    display: inline-block;
    vertical-align: bottom;
    font-weight: bold;
}

.product-index-full .after-price::before {
    content: "from ";
    font-size: .6em;
    display: inline-block;
    vertical-align: baseline;
    text-transform: capitalize;
    margin-right: .5em
}

.learn-more {
}

.learn-more span:not(.material-symbols-outlined) {
}

.learn-more span.material-symbols-outlined {
}
/* activities home */

#catalog {
  text-align: center;
  background: var(--mint);
  background-image: url("../images/tapas_white.png");
  background-size: 8em;
}
#catalog h2 {
  padding: 2em;
  text-transform: capitalize;
  color: #333;
  font-size: 2em;
}
.products.activites {
  width: 100%;
  max-width: 85em;
  margin: 0 auto;
}
#activities-menu a {
  display: inline-block;
  background: black;
  color: white;
  padding: 1em;
  width: 20em;
  height: 20em;
  margin: 0.5em;
  border-radius: 1em;
  position: relative;
  overflow: hidden;
  border: 0.5em solid aliceblue;
  box-shadow: 0em 0.5em 1em rgba(0,0,0,0.33);
}
#activities-menu {
  text-align: center;
  padding-bottom: 4em;
}
.activity-icon {
  width: 3em;
  display: block;
  margin: 0 auto;
}
#activities-menu span {
  line-height: 1em !important;
  display: block;
}
.activity-preview {
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  transform: translate(-50%,-50%) scale(1);
  opacity: 0.7;
  transition: 0.3s;
}
/* #activities-menu a::after {
  content: " ";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  z-index: 3;
  background-image: url("../images/icons/dots.png");
} */
#activities-menu h3 {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
  text-shadow: 0em 0em 1em black;
  font-size: 1.5em;
}
.activity-icon {
  width: 3em;
  display: block;
  margin: 0 auto;
}
#activities-menu span {
  line-height: 1em !important;
  display: block;
}
#activities-menu a:hover .activity-preview{
      transform: translate(-50%,-50%) scale(1.1);
}
#activity-nav {
  max-width: 60em;
  margin: 0 auto;
  padding-bottom: 4em;
  text-align: center;
}
#activity-nav ul {
  width: 100%;
  text-align: center;
}
#activity-nav ul li {
  display: inline-block;
  padding: 1em;
}
#activity-nav ul li a{
  font-size: 1.15em;
  background: var(--yinmn-blue);
  padding: 0.5em 1em;
  color: white;
  border-radius: 2em;
}
#activity-list h3 {
  text-align: center;
  padding: 1em;
  font-size: 1.5em;
  text-transform: capitalize;
  color: #333;
}
input.anchor-gold {
    display: inline-block;
    color: var(--yinmn-blue);
    padding: .75em 0.5em;
    text-align: right;
    margin-top: .25em;
    border-radius: 2em;
    text-transform: capitalize;
    font-size: 1.15em;
    background: gold;
    border: 0.15em solid;
    text-align: center;
    width: 11em;
    font-weight: bold;
}

aside#luau-help {
    padding: 4em 1em;
    background: var(--saffron);
    background-size: contain;
    border-top: 0.75em solid aliceblue;
}

aside#luau-help p {
    max-width: 25em;
    margin: 0 auto;
    font-size: 1.5em;
    line-height: 1.5em;
    color: var(--yinmn-blue);
    text-align: center;
    width: 90%;
}

aside#luau-help a {
    color: var(--yinmn-blue);
    font-weight: bold;
}

aside#luau-help h2 {
    font-size: 2.5em;
    margin-bottom: .5em;
    color: var(--rose-red);
    text-align: center;
    font-family: 'Pacifico';
}
div#catalog-list {
    text-align: center;
    padding: 3em;
}

#catalog-list h2 {
    color: #333;
    font-family: 'Pacifico';
    text-transform: capitalize;
    font-size: 2.5em;
    margin-bottom: 0.5em;
}

#catalog-list p {
    width: 20em;
    margin: 0 auto;
    font-size: 1.5em;
}