/*cached @ 2026-02-11 23:19:20*/
/*loaded from file 2026-02-11 23:19:20*//*css/api2sb/structural_styles.css*/
@font-face{
    font-family: "Material Icons";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/materialicons/v38/flUhRq6tzZclQEJ-Vdg-IuiaDsNY.eot) format("eot"), url(https://fonts.gstatic.com/s/materialicons/v38/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format("woff2"), url(https://fonts.gstatic.com/s/materialicons/v38/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.woff) format("woff"), url(https://fonts.gstatic.com/s/materialicons/v38/flUhRq6tzZclQEJ-Vdg-IuiaDsNZ.ttf) format("ttf");
    font-feature-settings: "liga";
}

:root{

    --color-content-overlay-darkest: rgb(var(--color-shadow-rgb)/0.85);
    --color-content-overlay-darker: rgb(var(--color-shadow-rgb)/0.75);
    --color-content-overlay-dark: rgb(var(--color-shadow-rgb)/0.6);
    --color-content-overlay: rgb(var(--color-shadow-rgb)/0.4);
    --color-content-overlay-light: rgb(var(--color-shadow-rgb)/0.1);

    --gradient-01:linear-gradient(180deg, rgb(var(--color-shadow-rgb)/1) 0%, rgb(var(--color-shadow-rgb)/0.7) 20%, rgb(var(--color-shadow-rgb)/0.7) 80%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-02:linear-gradient(125deg, rgb(var(--color-shadow-rgb)/0) 30%, rgb(var(--color-shadow-rgb)/0.9));
    --gradient-03: radial-gradient(circle,rgb(var(--color-shadow-rgb)/0.2) 0%, rgb(var(--color-shadow-rgb)/1) 85%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-04: linear-gradient(180deg,rgb(var(--color-shadow-rgb)/0.0) 0%, rgb(var(--color-shadow-rgb)/0.25) 65%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-05: linear-gradient(45deg,rgb(var(--color-shadow-rgb)/1) 0%, rgb(var(--color-shadow-rgb)/0.5) 45%, rgb(var(--color-shadow-rgb)/0.5) 65%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-06:linear-gradient(235deg, rgb(var(--color-shadow-rgb)/0) 30%, rgb(var(--color-shadow-rgb)/0.9));
    --gradient-07:linear-gradient(180deg, rgb(var(--color-shadow-rgb)/1) 0%, rgb(var(--color-shadow-rgb)/0.65) 20%, rgb(var(--color-shadow-rgb)/0.3) 50%, rgb(var(--color-shadow-rgb)/0.65) 80%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-08: radial-gradient(circle,rgb(var(--color-shadow-rgb)/0.8) 0%, rgb(var(--color-shadow-rgb)/0.5) 85%, rgb(var(--color-shadow-rgb)/0) 100%);
    --gradient-09:linear-gradient(0deg, rgb(var(--color-shadow-rgb)/0.8) 0%, rgb(var(--color-shadow-rgb)/0.4) 20%, rgb(var(--color-shadow-rgb)/0) 100%);
    --gradient-10:linear-gradient(180deg, rgb(var(--color-shadow-rgb)/1) 0%, rgb(var(--color-shadow-rgb)/0) 20%, rgb(var(--color-shadow-rgb)/0) 80%, rgb(var(--color-shadow-rgb)/1) 100%);
    --gradient-11:linear-gradient(180deg, rgb(var(--color-shadow-rgb)/0.6) 0%, rgb(var(--color-shadow-rgb)/0) 100%);

}

/* utility */
.object-cover{object-fit: cover;}
.object-contain{object-fit: contain;}
.object-center{object-position: center;}
.bg-cover{background-size:cover;}
.bg-contain{background-size:contain;}
.mw-100{max-width: 100%;}
.mw-80{max-width: 80%;}
.mw-70{max-width: 70%;}
.w-50{width:50%;}
.w-80{width:80%;}
.w-100{width:100%;}
.h-80{height:80%;}
.h-100{height:100%;}
.mh-100{min-height: 100%;}
.vh-100{min-height:100vh};
.block{display: block;}
.inline{display: inline;}
.inline-block{display: inline-block;}
.none{display:none;}
.relative{position: relative;}
.absolute{position: absolute;}
.fixed{position:fixed;}

.flex{display: flex;}
.flex-col{flex-direction: column; display: flex;}
.flex-col-reverse{flex-direction: column-reverse; display: flex;}
.flex-row{flex-direction: row; display: flex;}
.flex-row-reverse{flex-direction: row-reverse; display: flex;}
.justify-center{justify-content: center;}
.justify-end{justify-content: flex-end;}
.justify-start{justify-content: flex-start;}
.justify-space-between{justify-content: space-between;}
.justify-space-around{justify-content: space-around;}
.align-center{align-items: center;}
.align-end{align-items: flex-end;}
.align-start{align-items: flex-start;}
.align-self-center{align-self: center;}
.flex-grow-1{flex-grow: 1;}
.wrap{flex-wrap: wrap;}
.no-wrap{flex-wrap:nowrap;}

.grid{display: grid;}
.cols-1{grid-template-columns: 1fr;}
.cols-1-1{grid-template-columns: 1fr 1fr;}
.cols-2-3{grid-template-columns: 2fr 3fr;}
.cols-2-5{grid-template-columns: 2fr 5fr;}
.cols-1-2{grid-template-columns: 1fr 2fr;}
.cols-2-1{grid-template-columns: 2fr 1fr;}
.cols-3-1{grid-template-columns: 3fr 1fr;}
.cols-3-2{grid-template-columns: 3fr 2fr;}
.cols-1-3{grid-template-columns: 1fr 3fr;}
.cols-2-1-2{grid-template-columns: 2fr 1fr 2fr;}
.cols-1-2-1{grid-template-columns:1fr 2fr 1fr;}
.cols-1-1-1{grid-template-columns: repeat(3, 1fr);}
.cols-1-1-1-1{grid-template-columns: repeat(4, minmax(1px,1fr));}
.cols-1-1-1-1-1{grid-template-columns: repeat(5, 1fr);}
.cols-2-1-1-1-1{grid-template-columns: 2fr repeat(4, 1fr);}
.cols-2-1-1-1-1-1{grid-template-columns: 2fr repeat(5, 1fr);}
.grid-first{
    order:-1;
}

.italic{font-style: italic;}
.bold{font-weight: 600;}
.text-left{text-align: left;}
.text-center{text-align: center;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}

.circle{border-radius: 50%;}
.overlay{position:absolute; inset:0;}
.has-trans{transition: var(--trans-default);}
.overflow-hidden{overflow:hidden;}
.img-absolute img, .video-absolute video{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.hover-hide{transition: var(--trans-default);}
.hover-hide-trigger:hover .hover-hide{opacity: 0;}
.hover-hide.self-trigger:hover{opacity:0;}
.pointer{cursor: pointer;}
.box-shadow{box-shadow: 0 3px 3px #00000025;}
.box-shadow-lg{box-shadow: 5px 5px 15px #00000099;}


/* columns on tablet */
@media screen and (max-width:1025px){
    .flex-row.tab-cols-1{flex-direction: column;}
    .tab-cols-1{grid-template-columns: 1fr;}
    .tab-cols-1-1{grid-template-columns: 1fr 1fr;}
    .tab-cols-1-2{grid-template-columns: 1fr 2fr;}
    .tab-cols-1-1-1{grid-template-columns: repeat(3, 1fr);}
    .tab-text-left{text-align: left;}
    .tab-text-right{text-align: right;}
    .tab-text-center{text-align: center;}
    .tab-align-center{align-items:center}
}
/* columns on mobile */
@media screen and (max-width: 769px){
    .flex-row.mob-cols-1{flex-direction: column;}
    .grid.mob-reverse{display: flex; flex-direction:column-reverse;}
    .mob-cols-1{grid-template-columns: 1fr;}
    .mob-cols-1-1{grid-template-columns: 1fr 1fr;}
    .mob-cols-1-2{grid-template-columns: 1fr 2fr;}
    .mob-cols-1-1-1{grid-template-columns: repeat(3, 1fr);}
    .mob-cols-1-1-2{grid-template-columns: 1fr 1fr 2fr;}
    .mob-display-none{display: none;}
    .mob-text-left{text-align: left;}
    .mob-text-right{text-align: right;}
    .mob-text-center{text-align: center;}  
    .mob-justify-start{justify-content: start;}
}


/* utility - spacing */
.m-xl{margin:var(--space-xl);}
.m-lg{margin:var(--space-lg);}
.m-md{margin:var(--space-md);}
.m-sm{margin:var(--space-sm);}
.m-xs{margin:var(--space-xs);}
.m-2xs{margin:var(--space-2xs);}
.mx-xl{margin-left:var(--space-xl); margin-right:var(--space-xl)}
.mx-lg{margin-left:var(--space-lg); margin-right:var(--space-lg)}
.mx-md{margin-left:var(--space-md); margin-right:var(--space-md)}
.mx-sm{margin-left:var(--space-sm); margin-right:var(--space-sm)}
.mx-xs{margin-left:var(--space-xs); margin-right:var(--space-xs)}
.mx-2xs{margin-left:var(--space-2xs); margin-right:var(--space-2xs)}
.mx-auto{margin-left:auto;margin-right:auto;}
.my-xl{margin-top:var(--space-xl); margin-bottom:var(--space-xl)}
.my-lg{margin-top:var(--space-lg); margin-bottom:var(--space-lg)}
.my-md{margin-top:var(--space-md); margin-bottom:var(--space-md)}
.my-sm{margin-top:var(--space-sm); margin-bottom:var(--space-sm)}
.my-xs{margin-top:var(--space-xs); margin-bottom:var(--space-xs)}
.my-2xs{margin-top:var(--space-2xs); margin-bottom:var(--space-2xs)}
.ml-xl{margin-left:var(--space-xl);}
.ml-lg{margin-left:var(--space-lg);}
.ml-md{margin-left:var(--space-md);}
.ml-sm{margin-left:var(--space-sm);}
.ml-xs{margin-left:var(--space-xs);}
.ml-2xs{margin-left:var(--space-2xs);}
.mr-xl{margin-right:var(--space-xl);}
.mr-lg{margin-right:var(--space-lg);}
.mr-md{margin-right:var(--space-md);}
.mr-sm{margin-right:var(--space-sm);}
.mr-xs{margin-right:var(--space-xs);}
.mr-2xs{margin-right:var(--space-2xs);}
.mt-xl{margin-top:var(--space-xl);}
.mt-lg{margin-top:var(--space-lg);}
.mt-md{margin-top:var(--space-md);}
.mt-sm{margin-top:var(--space-sm);}
.mt-xs{margin-top:var(--space-xs);}
.mt-2xs{margin-top:var(--space-2xs);}
.mb-xl{margin-bottom:var(--space-xl);}
.mb-lg{margin-bottom:var(--space-lg);}
.mb-md{margin-bottom:var(--space-md);}
.mb-sm{margin-bottom:var(--space-sm);}
.mb-xs{margin-bottom:var(--space-xs);}
.mb-2xs{margin-bottom:var(--space-2xs);}

.p-xl{padding:var(--space-xl);}
.p-lg{padding:var(--space-lg);}
.p-md{padding:var(--space-md);}
.p-sm{padding:var(--space-sm);}
.p-xs{padding:var(--space-xs);}
.p-2xs{padding:var(--space-2xs);}
.px-xl{padding-left:var(--space-xl); padding-right:var(--space-xl)}
.px-lg{padding-left:var(--space-lg); padding-right:var(--space-lg)}
.px-md{padding-left:var(--space-md); padding-right:var(--space-md)}
.px-sm{padding-left:var(--space-sm); padding-right:var(--space-sm)}
.px-xs{padding-left:var(--space-xs); padding-right:var(--space-xs)}
.px-2xs{padding-left:var(--space-2xs); padding-right:var(--space-2xs)}
.py-xl{padding-top:var(--space-xl); padding-bottom:var(--space-xl)}
.py-lg{padding-top:var(--space-lg); padding-bottom:var(--space-lg)}
.py-md{padding-top:var(--space-md); padding-bottom:var(--space-md)}
.py-sm{padding-top:var(--space-sm); padding-bottom:var(--space-sm)}
.py-xs{padding-top:var(--space-xs); padding-bottom:var(--space-xs)}
.py-2xs{padding-top:var(--space-2xs); padding-bottom:var(--space-2xs)}
.py-sec{padding-top:var(--section); padding-bottom:var(--section)}
.pl-xl{padding-left:var(--space-xl);}
.pl-lg{padding-left:var(--space-lg);}
.pl-md{padding-left:var(--space-md);}
.pl-sm{padding-left:var(--space-sm);}
.pl-xs{padding-left:var(--space-xs);}
.pl-2xs{padding-left:var(--space-2xs);}
.pr-xl{padding-right:var(--space-xl);}
.pr-lg{padding-right:var(--space-lg);}
.pr-md{padding-right:var(--space-md);}
.pr-sm{padding-right:var(--space-sm);}
.pr-xs{padding-right:var(--space-xs);}
.pr-2xs{padding-right:var(--space-2xs);}
.pt-2xl{padding-top:var(--space-2xl);}
.pt-xl{padding-top:var(--space-xl);}
.pt-lg{padding-top:var(--space-lg);}
.pt-md{padding-top:var(--space-md);}
.pt-sm{padding-top:var(--space-sm);}
.pt-xs{padding-top:var(--space-xs);}
.pt-2xs{padding-top:var(--space-2xs);}
.pb-xl{padding-bottom:var(--space-xl);}
.pb-lg{padding-bottom:var(--space-lg);}
.pb-md{padding-bottom:var(--space-md);}
.pb-sm{padding-bottom:var(--space-sm);}
.pb-xs{padding-bottom:var(--space-xs);}
.pb-2xs{padding-bottom:var(--space-2xs);}

.gap-xl{gap: var(--space-xl);}
.gap-lg{gap: var(--space-lg);}
.gap-md{gap: var(--space-md);}
.gap-sm{gap: var(--space-sm);}
.gap-xs{gap: var(--space-xs);}
.gap-2xs{gap: var(--space-2xs);}
.row-gap-xl{row-gap: var(--space-xl);}
.row-gap-lg{row-gap: var(--space-lg);}
.row-gap-md{row-gap: var(--space-md);}
.row-gap-sm{row-gap: var(--space-sm);}
.row-gap-xs{row-gap: var(--space-xs);}
.row-gap-2xs{row-gap: var(--space-2xs);}
.col-gap-xl{column-gap: var(--space-xl);}
.col-gap-lg{column-gap: var(--space-lg);}
.col-gap-md{column-gap: var(--space-md);}
.col-gap-sm{column-gap: var(--space-sm);}
.col-gap-xs{column-gap: var(--space-xs);}
.col-gap-2xs{column-gap: var(--space-2xs);}

.bt{border-top: 1px solid var(--color-content-accent);}
.bt-lt{border-top: 1px solid var(--color-content-bg);}
.bb{border-bottom: 1px solid var(--color-content-accent);}
.bb-lt{border-bottom: 1px solid var(--color-content-bg);}
.bl{border-left: 1px solid var(--color-content-accent);}
.bl-lt{border-left: 1px solid var(--color-content-bg);}
.br{border-right: 1px solid var(--color-content-accent);}
.br-lt{border-right: 1px solid var(--color-content-bg);}

/* fonts and row width */
.heading{
    font-family: var(--font-heading); 
    color: var(--color-content-heading); 
    text-transform: uppercase;
    line-height: 1;
}
.icn{
    font-family: 'Material Icons' !important;
    font-weight: normal !important;
    font-feature-settings: liga;
    text-transform: initial;
    text-indent: 0 !important;
    overflow: hidden;
}
.icn.xl{height:var(--heading-xl);min-width:var(--heading-xl)}
.icn.lg{height:var(--heading-lg);min-width:var(--heading-lg)}
.icn.md{height:var(--heading-md);min-width:var(--heading-md)}
.icn.sm{height:var(--heading-sm);min-width:var(--heading-sm)}
.icn.xs{height:var(--heading-xs);min-width:var(--heading-xs)}

.heading.nowrap{text-wrap:nowrap;}
.heading.text-2xl{font-size: var(--heading-2xl); line-height: 0.9}
.heading.xl, .text-xl, .icn.xl{font-size: var(--heading-xl); line-height: 0.9}
.heading.lg, .text-lg, .icn.lg{font-size: var(--heading-lg);}
.heading.md, .text-md, .icn.md{font-size: var(--heading-md);}
.heading.sm, .text-sm, .icn.sm{font-size: var(--heading-sm);}
.heading.xs, .text-xs, .icn.xs{font-size: var(--heading-xs);}

.body-text{
    text-transform: none;
    font-family: var(--font-body); 
    font-size: var(--body-md);
}
.body-text-sm{
    text-transform: none;
    font-family: var(--font-body); 
    font-size: var(--body-sm);}
.body-text-lg{
    text-transform: none;
    font-family: var(--font-body); 
    font-size: var(--body-lg);
}

.text-nowrap{text-wrap:nowrap}

.heading.lg,
.heading.md,
.heading.sm,
.heading.xs{font-weight: 500;}
.heading.mid-weight{font-weight:600;}
.heading.bold{font-weight: 900; letter-spacing: 0.1rem;}
/* .heading.bold{font-weight:900; letter-spacing: 0.01rem;} */

.underline::after {
    content: "";
    display: block;
    position: relative;
    margin-top: var(--space-xs);
    width: 320px;
    max-width: 100%;
    background-color: var(--color-content-accent);
    height: 5px;
    border-radius: 20px;
}
.text-center.underline::after, .text-center .underline::after{margin-left: auto;margin-right: auto;}
.text-left.underline::after, .text-left .underline::after{margin-left: 0; margin-right: auto;}
.text-right.underline::after, .text-right .underline::after{margin-left: auto; margin-right: 0}

.inline-link{
    color:var(--color-content-text);
    text-decoration: underline;
}
.inline-link.color-secondary{
    color:var(--color-content-bg);
}
.inline-link:hover{
    color:var(--color-content-accent-alt);
}

.rw01{max-width: var(--row-width-01); margin-left: auto; margin-right: auto;}
.rw02{max-width: var(--row-width-02); margin-left: auto; margin-right: auto;}
.rw03{max-width: var(--row-width-03); margin-left: auto; margin-right: auto;}
.rw03.mx-none{margin-left: 0; margin-right: 0;}
.rw04{max-width: var(--row-width-04); margin-left: auto; margin-right: auto;}

/* colours */
/* .bg-grad{background: var(--color-content-overlay-grad);}
.bg-grad-alt{background: var(--color-content-overlay-grad-alt);} */
.bg-grad-01{background: var(--gradient-01);}
.bg-grad-02{background: var(--gradient-02);}
.bg-grad-03{background: var(--gradient-03);}
.bg-grad-04{background: var(--gradient-04);}
.bg-grad-05{background: var(--gradient-05);}
.bg-grad-06{background: var(--gradient-06);}
.bg-grad-07{background: var(--gradient-07);}
.bg-grad-08{background: var(--gradient-08);}
.bg-grad-09{background: var(--gradient-09);}
.bg-grad-10{background: var(--gradient-10);}
.bg-grad-11{background: var(--gradient-11);}
.bg-overlay-darker{background:var(--color-content-overlay-darker)}
.bg-overlay-dark{background:var(--color-content-overlay-dark)}
.bg-overlay{background: var(--color-content-overlay);}
.bg-overlay-light{background: var(--color-content-overlay-light);}
.bg-content{background-color: var(--color-content-bg);}
.bg-content-alt{background-color: var(--color-alt-content-bg);}
.bg-accent{background-color: var(--color-content-accent);}
.bg-accent-alt{background-color: var(--color-content-accent-alt);}
.bg-none{background: unset;}
.bg-secondary{background-color: var(--color-content-secondary);}
.bg-header{background-color: var(--color-header-bg);}
header.sticky .bg-header{background-color: var(--color-header-sticky-bg);}

.col-alt .bg-content{background-color: var(--color-alt-content-bg);}
.col-alt .bg-content-alt{background-color: var(--color-alt-content-bg-alt);}

.color-accent, .heading.color-accent{color: var(--color-content-accent);}
.color-text, .heading.color-text{color: var(--color-content-text);}
.color-secondary{color: var(--color-brand-alt-text);}
.color-dark{color: var(--color-alt-content-text);}

.color-inherit, .heading.color-inherit{color:inherit !important;}

.col-alt{background: var(--color-alt-content-bg); color: var(--color-alt-content-text);}
.col-alt .heading:not(.color-text){color: var(--color-alt-content-heading);}

.border{border:solid 1px var(--color-content-text);}

.scroll-to{scroll-margin-top: 50px;}

.icon{display: flex; justify-content: center;}
.icon > a{width: 100%; display: flex; justify-content: center;}
.icon.w90 img{width: 90%;}
.icon.w70 img{width:70%}
.icon.invert img{filter:invert(1)}
.icon.xl{min-width: var(--space-xl); height: var(--space-xl); /*aspect-ratio: 1;*/}
.icon.lg{min-width: var(--space-lg); height: var(--space-lg); /*aspect-ratio: 1;*/}
.icon.md{min-width: var(--space-md); height: var(--space-md); /*aspect-ratio: 1;*/}
.icon.sm{min-width: var(--space-sm); height: var(--space-sm); /*aspect-ratio: 1;*/}
.icon.xs{min-width: var(--space-xs); height: var(--space-xs); /*aspect-ratio: 1;*/}

/* Shape */
.square{aspect-ratio: 1/1;}
.landscape{aspect-ratio: 16/9;}
.four3{aspect-ratio: 4/3;}
.portrait{aspect-ratio: 9/16;}

/* default styles */
*{box-sizing: border-box; margin: 0; padding: 0;}
html{
    overflow-x: hidden;
    scroll-behavior: smooth;
}
body{
    background-color: var(--color-content-bg);
    color: var(--color-content-text);
    font-family: var(--font-body);
    /*overflow-x: hidden;*/
    caret-color: transparent;
}
.content{min-height:80vh}
a{color: var(--color-content-link); transition: var(--trans-default); text-decoration: none;}
p a:hover{color: var(--color-content-link-hover);}
ul.list{margin-left: 1.5rem;}
ul:not(.list) li, ul:not(.list){list-style: none;}
#wrap{
    position:relative;
    overflow:hidden;

}

/*Bullets*/
ul.bullets li{
    list-style-type: disc;
    list-style-position: inside;
    
}

/* Header */
header.sticky, header.mobile, header.mobile .header-menu{background: var(--color-header-sticky-bg);}

header nav .menu-icons .nav-icon-link .gn-voucher-imports{
    width:fit-content;
}
header nav .menu-icons .nav-icon-link .gn-voucher-imports .voucher-cart button{
    display: flex;
    flex-direction: row;
}

header .logo img{max-height: var(--header-height);}
header .logo.scroll img{max-height: var(--header-height-scroll);}
header nav a {display: block; position: relative;}
header nav a span{color: var(--color-header-link); transition: var(--trans-default);}
/*header nav a:hover span{color: var(--color-header-link-hover);}*/

header nav li{position: relative;}
header nav li.menu-depth-1 > a > span{line-height: var(--header-height);}
header nav li.menu-depth-1{padding: var(--space-xs);}

header nav li.has-children > .submenu > ul{display: none; position: absolute;top: 100%;background: var(--color-header-bg);width: max-content; max-width: 350px; padding: var(--space-xs); gap: var(--space-xs);}
header.sticky nav li.has-children > .submenu > ul{background: var(--color-header-sticky-bg);}
header nav li.has-children:hover > .submenu > ul{display: flex;}


header.mobile nav ul.menu-depth-1{gap: var(--space-2xs)}
header.mobile nav li.menu-depth-1 > a > span{line-height: unset;}

header.mobile nav li.has-children > .submenu,
header.mobile nav li.has-children > .megamenu{display: grid;grid-template-rows: 0fr;transition: grid-template-rows var(--trans-default);overflow: hidden;}
header.mobile nav li.has-children > .submenu > ul{position: static;max-width: 100%;width: 100%;background: transparent;padding: 0;min-height: 0;visibility: hidden;transition: visibility var(--trans-default);gap: unset;}
header.mobile nav li.has-children > .megamenu > .megamenu-content{min-height: 0;visibility: hidden;transition: visibility var(--trans-default);}
header.mobile nav li.has-children > .submenu > ul > li{padding-top: var(--space-xs);}
header.mobile nav li.has-children.open > .submenu, header.mobile nav li.has-children.open > .megamenu{grid-template-rows: 1fr;}
header.mobile nav li.has-children.open > .submenu > ul{visibility: visible; display: flex;}
header.mobile nav li.has-children.open > .megamenu > .megamenu-content{visibility: visible;}


header.mobile li.has-children > a::after{
    content: "";
    position: absolute;
    right: 0;
    top:0;
    width: 1.5rem;
    height: 1.5rem;
    background: url('img/static/chevron-right.svg') center no-repeat;
    transition: var(--trans-default);
}
header.mobile li.has-children.open > a::after{transform: rotate(90deg);}


.mobile-menu-btn{width: var(--space-md); height: var(--space-md); background: var(--color-content-bg); border-radius: 0.25rem; position: relative; display: none;}
.mobile-menu-btn .line{display: block; width: calc(var(--space-md) - 0.5rem); height: 0.1rem; background: var(--color-content-bg); position: absolute; left: 0.25rem; transition: var(--trans-default);}
.mobile-menu-btn .line:nth-child(1){top: calc((var(--space-md) / 4) - 0.05rem);}
.mobile-menu-btn .line:nth-child(2){top: calc(2 * (var(--space-md) / 4) - 0.05rem);}
.mobile-menu-btn .line:nth-child(3){top: calc(3 * (var(--space-md) / 4) - 0.05rem);}

header.mobile .header-menu{display:none; position: fixed; padding: var(--space-xs); top:var(--header-height); bottom:0; left:0; right:0; transition: var(--trans-default); overflow: auto;}
header.mobile.sticky .header-menu{background: var(--color-header-sticky-bg);}
header.mobile.mobile-menu-open .header-menu{display: block;}
header.mobile .mobile-menu-btn{display: block;}

.mobile-menu-btn.open .line:nth-child(1){transform: rotate(45deg); top:calc(2 * (var(--space-md) / 4) - 0.05rem);}
.mobile-menu-btn.open .line:nth-child(2){opacity: 0;}
.mobile-menu-btn.open .line:nth-child(3){transform: rotate(-45deg); top:calc(2 * (var(--space-md) / 4) - 0.05rem);}


html.menu-open{
    overflow:hidden;
}

.megamenu-content{
    height:100%;
    padding-top:9rem;
    overflow-y: auto;
}

.divider-line-lg{
    border: 3px solid var(--color-content-accent);
}

.megamenu{
    height:100%;
    width:100%;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-color: #000000;
    transform: translateX(-110%);
    transition: transform 0.5s ease;
}

.mobile-menu-open .megamenu{
    transform:translateX(0%);
}
.nav-logo{
    max-height:4.5rem;
}

.desk-hide{display:none !important;}

.nav-logo{
    transition: max-height 0.3s ease, height 0.3s ease;
}

/*.nav-icon-link svg{fill:#fff; height:20px; width:auto}*/

/*.nav-icon-link:hover svg{fill:var(--color-content-accent);}*/
.nav-icon-link{max-width:33%;}

/*
#mobile-menu-btn:hover #menu-label{color:var(--color-content-accent)}

#mobile-menu-btn:hover .line{background: var(--color-content-accent);}
*/

.rot-90{transform:rotate(90deg);}

.feature-column{
    display:grid;
    grid-template-rows: 3fr 1fr;
    row-gap: var(--space-xs);
}

.btn-title.nav-vouch{
    height:100%;
    display:flex;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width:1025px){
    .tab-hide{display:none !important;}
    .tab-show-flex{display:flex !important;}
    .tab-show-block{display:block !important;}
    .nav-logo{max-height:5rem;}
    .megamenu-content{padding-top:5rem;}
    .feature-column{
        grid-template-rows: 3fr 1fr;
    }
    .nav-column .image{
        aspect-ratio:4/1
    }
}
@media screen and (max-width:769px){
    .mob-hide{display:none !important}
    .nav-logo{max-height:4rem;}
    .megamenu-content{padding-top:4rem;}
    .nav-column .image{
        aspect-ratio:2.25/1
    }
    .mob-bt{border-top: 1px solid var(--color-content-accent);}
}

.glass-effect{
    background: rgba(53, 53, 53, 0.30);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border:1px solid #ffffff38;
}

/*Internal nav*/
.internal-nav-wrapper{
    position: sticky;
    top: calc(100vh - 4rem);
    right:0;
    left:0;
    z-index: 998;
    height:4rem;
    margin-bottom:-4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.internal-nav{
    display:flex;
    flex-direction:row;
    justify-content: center;
    column-gap: var(--space-sm);
}
.internal-nav-link{
    transition: all 200ms;
    
    background-color: var(--color-content-text);
    color: var(--color-content-accent);
    border: 1px solid var(--color-content-accent);
    font-size: var(--heading-sm);
    padding: var(--space-2xs) var(--space-xs) var(--space-2xs) var(--space-xs);
}
.internal-nav-link:hover{
    background-color: var(--color-content-accent);
    color: var(--color-content-text);
}
.internal-nav-link:active{
    background-color: var(--color-content-text);
    color: var(--color-content-accent);
    border: 1px solid var(--color-content-text);
}
@media screen and (max-width: 769px){
    .internal-nav-wrapper{
        top: calc(100vh - 3rem);
        height:3rem;
        margin-bottom:-3rem;
    }
    .internal-nav{
        column-gap: var(--space-2xs);
    }
    .internal-nav-link{
        font-size: var(--heading-xs);
        padding: var(--space-2xs) var(--space-2xs) var(--space-2xs) var(--space-2xs);
    }  
}

/* Hide scrollbar */
.header-menu::-webkit-scrollbar {display: none;}
.header-menu {-ms-overflow-style: none; scrollbar-width: none;}

/* Widgets */
.ng-fa-icon{transition:var(--trans-default);}
.ng-fa-icon:hover{color: var(--color-content-link-hover);}

/* megamenu */
.megamenu{position: fixed; width: 100%; left: 0; display: none;}
li.has-megamenu:hover .megamenu{display: block;}

.megamenu 
.megamenu .image{position: relative;}
.megamenu .image img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.megamenu .image img.h-auto{height:auto}
.megamenu .heading.underline::after{margin-top: var(--space-2xs); width: 180px;}

.megamenu .overlay{transition: var(--trans-default);}

header.mobile .megamenu{position: relative; display: block;}
header.mobile .megamenu-content{padding-top:0;padding-bottom: 0;padding-left: 0;padding-right: 0;}
header.mobile .megamenu .bg-header{background:transparent;}
header.mobile .megamenu .mob-bg-header .nav-row .heading{color: var(--color-header-link);}
header.mobile .mob-bg-header{background: transparent;}


/* home and pages */
section, .row{position:relative;}
.tear {position: relative;}
.tear img{display: block; width: 100%; aspect-ratio:24/1}

.home-banner {min-height: 90vh; --offset: 6.25rem; display: flex; align-items: center;}
.home-banner .video-row{position: absolute; top: 0; bottom: 0; left: 50%; right: 0; clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);}
.home-banner .bg-row{position: absolute; top: 0; bottom: 0; left: 0; right: 50%;
    /*clip-path: polygon(0 0, 100% 0, calc(100% - var(--offset)) 100%, 0% 100%);*/
}
.page-banner {min-height:50rem; display:flex; flex-direction:column; justify-content:flex-end;}
.page-banner.general {height:48vh; min-height:400px; display:flex; flex-direction:column; justify-content:flex-end;}
.page-banner .banner-bg{width: 100%; /*aspect-ratio:21/9;*/}
.page-banner .banner-bg.image img.banner-image,
.page-banner .banner-bg.video video{position: absolute; inset: 0; width: 100%; height: 100%; object-fit:cover; object-position: center;}



/* Filter inputs */
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.cat-filter{
    position:relative;
}

.input-number{
    text-align:center;
    /*border-radius:var(--radius-default);
    border:solid 1px var(--color-alt-content-bg-alt);*/
    border:none;
    caret-color: var(--color-content-heading-alt);
}
.input-number:focus-visible{
    border:none;
}

.search-scroll{
    max-height:800px;
    overflow-y: scroll;
    margin-left:4rem;
    margin-right:4rem;
    padding: 0 1rem 20rem 1rem
}

.search-result{
    padding: 1rem 0 1rem 0;
}

.minus, .plus{
    transition: 250ms;
    transform: rotate(0deg);
}


/*.filter-heading{cursor: pointer;}*/

/*Information icons*/
.scale-wrapper{
    height:1rem;
    width:100%;
    border:solid 1px var(--color-content-accent);
    border-radius: 1rem;
    background-color: var(--color-content-bg);
}
.scale{
    height:100%;
    min-width:50%;
    will-change: width;
    border-radius: 1rem;
    background-image: linear-gradient(to right, var(--color-content-accent), #fc5858);
    display:block;
    position:relative;
}

@media screen and (max-width: 769px){
    .scale-wrapper{
        height:0.8rem
    }
}

.underline-sm::after{
    content: "";
    display: block;
    position: relative;
    margin-top: var(--space-xs);
    min-width: 80%;
    max-width: 100%;
    background-color: var(--color-content-accent);
    height: 5px;
    border-radius: 20px;
}

/* Search results page */

.input-number{text-align:left;}

.search-divider{border: 1px solid var(--color-content-accent);}

.search-scroll{
    border: 1px solid #fff;
}

#results-wrapper{transition: height 0.3s;}
.venue-result{
    background-color: #fff;
}
.venue-result.hidden{display:none !important}
.venue-result h3{
    color: var(--color-content-heading-alt);
}
.venue-result p{
    color:var(--color-alt-content-text);
}
.search-result{height:265px;}


@media screen and (max-width: 1420px) {
    .search-result{
        height:280px;
        align-items: stretch;
    }
}

@media screen and (max-width: 1025px) {
    .search-result{
        height:550px;
        align-items: normal;
    }
    .result-image{
        min-height:300px
    }
}


@media screen and (max-width: 769px){
    #results-wrapper{
        height:auto;
        overflow:visible;
    }
    .search-result{
        height:400px;
        align-items: normal;
    }
    .result-image{
        min-height:180px
    }
}

/* Voucher button */
/*.vouch{cursor: pointer;}
.vouch:hover{color:var(--color-content-heading-alt); background-color: var(--color-alt-content-bg);}

.button{    
    background: var(--color-content-accent);
    padding: var(--space-xs) var(--space-sm);
    transition: var(--trans-default);
    cursor: pointer;
}
.button.border{box-sizing: border-box; border:1px solid transparent;}
/*.button:hover{background: var(--color-alt-content-bg);}  
.button.border:hover{border: 1px solid var(--color-alt-content-bg-alt);} */
/*
.voucher{    
    color: var(--color-content-text);
    font-family: var(--font-heading);
    text-transform: uppercase;
    font-size: var(--heading-sm);
    font-style: italic;
    font-weight: 600;
    letter-spacing: 1px;
    text-align: center;
    display: block;
    transition: var(--trans-default);
}
.button:hover .voucher{
    color: var(--color-content-link-hover);
    transition: var(--trans-default);
}
*/

/* Swiper */
.swiper-wrapper{
    padding-bottom:15px;
}
.swiper-slide:not(.vertical){
    height: auto !important;
    display:flex !important;
    flex-direction:column !important ;
    justify-content: space-between !important;
}

.swiper-button-prev,.swiper-button-next{
        height:50px !important; 
        width:50px!important; 
        border-radius: 25px; 
        background-color:var(--color-content-secondary); 
        position:static!important;
}
.swiper-button-prev{padding-right:5px}
.swiper-button-next{padding-left:5px}
.swiper-button-prev:hover,.swiper-button-next:hover{background-color:var(--color-content-heading);}
.swiper-button-next:after, .swiper-button-prev:after{font-size:2rem !important; color:var(--color-content-heading)}
.swiper-button-prev:hover::after, .swiper-button-next:hover::after{
    color:var(--color-content-accent)
}

.swiper-btn{
    cursor: pointer;
    color: var(--color-content-text);
}
/*
.swiper-btn.next:hover {
    transform: translateX(-1rem);
}
.swiper-btn.prev:hover{
    transform: translateX(1rem);
}
    */
.swiper-pagination{
    position:relative !important;
}
.swiper-pagination-bullet{
    height:var(--body-md) !important;
    width:var(--body-md) !important;
    border: solid 1px var(--color-content-text) !important;
    background-color: var(--color-content-bg) !important;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: var(--color-content-text) !important;
}

.swiper-scrollbar{background-color:var(--color-footer-bg-alt) !important;}
.swiper-scrollbar-drag{background-color: var(--color-content-accent) !important;}

/*-swiper .swiper-slide:not(.swiper-slide-next){opacity: 0.5;}*/


/*Search Styling*/
.cnt-sel{background-color: white; color:var(--color-content-accent);}
.cnt-sel.selected{background-color:var(--color-content-accent); color:white;}

.search-more-title{
    cursor: pointer;
}
.search-more-title:hover{
    color:var(--color-content-accent);
}
.search-more-wrapper{overflow:hidden;}
.search-more-wrapper.active{overflow:unset;}

.search-more-wrapper.active .search-more-arrow{
    transform: rotate(180deg);
}
.search-more-wrapper .search-more-content{
    min-height:0; 
    visibility:hidden; 
    transition: var(--trans-default);
    display: none;
}
.search-more-wrapper.active .search-more-content{
    visibility: visible;
    display:flex;
}
.chzn-container{display:none};
.chosen-container, .search-choice, .search-field, .active-result{
    line-height: auto !important;
}
.chosen-results .highlighted{
    background-image: linear-gradient(var(--color-content-accent) 20%, var(--color-content-accent) 90%) !important;
}
button{border:none !important; cursor: pointer;}
.autocomplete2{
    position: absolute;
    z-index:100;
    background-color: #ffffff;
    padding-right:var(--space-2xs);
    padding-left:var(--space-2xs);
    max-height: 10rem;
    overflow-y: scroll;

}
.autocomplete2 a{
    color:var(--color-content-link);
    width:100%
}
.autocomplete2 li{
    padding: var(--space-2xs);
    width:100%
}
.autocomplete2 a:hover{
    color:var(--color-content-accent);
}

/*Second weird little list*/
ul.ui-menu{
    display: none !important;
}

/* Results Swiper */
.results-swiper{
    padding: var(--space-xs) var(--space-xs) var(--space-sm) var(--space-xs) !important;
}
.swiper-scrollbar-drag{
    height:0.5rem !important;
    cursor: grab;
}
.swiper-scrollbar-drag:active{
    cursor: grabbing;
}

/* Footer */
.social-icon{width:30px; aspect-ratio: 1;}
.white-icon{filter:invert(1);}

/* Voucher Basket Overrides*/
.gn-voucher-imports .gn-fixed{
    z-index: 9999 !important;
}
/*heading background color*/
.gn-voucher-imports .gn-w-full .gn-bg-gray-500{
    background-color:var(--color-alt-content-bg-alt) !important;
}
/*heading text*/
.gn-voucher-imports .gn-text-gray-700.gn-text-lg{
    color:var(--color-content-text) !important;
    font-size: var(--heading-md) !important;
    text-transform: uppercase;
    font-family: var(--font-heading) !important;
}
/*back button*/
.gn-voucher-imports .gn-flex-1 .gn-bg-blue-500{
    background-color: var(--color-alt-content-bg) !important;
    color: var(--color-content-accent) !important;
    font-family: var(--font-heading) !important ;
    font-size: var(--heading-sm) !important;
}
/*back button icon*/
.gn-voucher-imports .gn-flex-1 .gn-bg-blue-500 .ng-fa-icon{
    display:none;
}
/*wrapping and message text*/
.gn-voucher-imports .agn-flex-1 .gn-text-gray-700.gn-mb-1,
.gn-voucher-imports .agn-flex-1 .gn-text-gray-700.gn-text-sm{
    font-size: var(--heading-xs) !important;
    text-transform: uppercase;
    font-family: var(--font-heading) !important;
    color:var(--color-alt-content-heading) !important;
    font-weight:500;
}
/*empty basket text*/
.gn-voucher-imports .gn-p-5 .gn-text-gray-400{
    font-size: var(--heading-sm) !important;
    text-transform: uppercase;
    font-family: var(--font-heading) !important;
    color:var(--color-alt-content-heading) !important;
    font-weight:400;
}
/*add more vouchers text*/
.gn-voucher-imports .gn-p-5 .gn-text-xs.gn-mr-2{
    font-size: var(--body-md) !important;
    font-family: var(--font-body) !important;
    color:var(--color-alt-content-heading) !important;
}

/*Cookie prompt overrides*/
div#cookiePrompt{
    border: 1px solid var(--color-content-accent) !important
}
#cookiePrompt #privacy-prompt{
    display:flex;
    flex-direction:column;
    gap:var(--space-2xs);
}
#cookiePrompt h5.h{
    font-size: var(--heading-sm);
    font-family: var(--font-heading);
    font-weight: 500;
    text-transform: uppercase;
}
#cookiePrompt p{
    font-size: var(--body-md);
    font-family: var(--font-body);
}
#cookiePrompt li a{
    font-size: var(--heading-xs);
    font-family: var(--font-heading);
    font-weight: 500;
    text-transform: uppercase;
}
#cookiePrompt ul li button{
    border: 1px solid var(--color-alt-content-bg-alt);
    background-color: var(--color-alt-content-bg-alt);
    color:var(--color-content-heading);
    border-radius: var(--radius-sm);
    font-size: var(--heading-sm);
    font-family: var(--font-heading);
    font-weight: 500;
}
#cookiePrompt ul li button:hover{
    border: 1px solid var(--color-alt-content-bg-alt);
    background-color: var(--color-alt-content-bg);
    color:var(--color-alt-content-bg-alt);
}
#cookiePrompt ul li button span.icn{
    display:none;
}

div#chat-widget-container{
    z-index:1011 !important;
}

#rezbot-chatbot2 .z-200{
    z-index:
}

/* responsive */
.mob-show{display: none;}


@media screen and (max-width: 1024px){
    .tear{overflow-x: hidden;}
    .tear img{min-width: 1024px;}
    .home-banner{--offset: 3rem;}

    .tab-text-center.underline::after, .tab-text-center .underline::after{margin-left: auto;margin-right: auto;}
    .tab-text-left.underline::after, .tab-text-left .underline::after{margin-left: 0; margin-right: auto;}
    .tab-text-right.underline::after, .tab-text-right .underline::after{margin-left: auto; margin-right: 0}

    .cat-filter{
        display:flex;
        flex-direction:row;
        gap:var(--space-2xs);
    }
}

@media screen and (max-width: 767px){
    .home-banner{height: 100vh; min-height: 600px;}
    .home-banner .bg-row{left: 0; right: 0; /*clip-path: unset;*/ background: transparent;}
    header{position: sticky;}
    .home-banner .video-row{position: static; clip-path: unset;}
    /*.home-banner .video-row video{position: static; aspect-ratio: 9/16;}*/
    .home-banner .banner-content{position: absolute; bottom: 0;}

    .page-banner{height:70vh; min-height:500px}

    .page-banner .banner-bg{height:100%; /*aspect-ratio: 9/16;*/}
    .swiper-button-prev,.swiper-button-next{bottom: -1rem;}

    .mob-text-center.underline::after, .mob-text-center .underline::after{margin-left: auto;margin-right: auto;}
    .mob-text-left.underline::after, .mob-text-left .underline::after{margin-left: 0; margin-right: auto;}
    .mob-text-right.underline::after, .mob-text-right .underline::after{margin-left: auto; margin-right: 0}
    .mob-show{display: block;}
    .mob-hide{display: none;}
}

/*HOVER EFFECTS*/
@media (hover: hover) and (pointer: fine) {

    .link-hover:hover .btn{background: var(--color-alt-content-bg);}
    .link-hover:hover .btn-title{color: var(--color-content-accent);}
    .link-hover:hover{background-color: var(--color-footer-bg)}
    .col-alt .btn:hover{background: var(--color-content-bg);}
    .col-alt .btn:hover .btn-title{color: var(--color-content-heading);}

    a:hover .btn-small{
        background-color: white;
    }

    .venue-result:hover p, .venue-result:hover h3{
        color:var(--color-content-heading);
    }

    .minus:hover, .plus:hover{
        transform: rotate(180deg);
    }

    /*
    .filter-button:hover .filter-control{
        background-color:var(--color-alt-content-bg-alt);
        color:var(--color-content-heading);
    }
    */

    .filter-button:hover .control > .line{background: var(--color-alt-content-bg);}

    .filter-button:hover + .filter-acts
    /*, .filter-acts:hover*/{
        display:block;
    }
    
    .clear-filter:hover{color:var(--color-content-accent)}

    
    .shadow:hover{ box-shadow: #BB1616 0px 13px 27px -5px, #BB1616 0px 8px 16px -8px;}

    .cat-link:hover{color:transparent !important; text-shadow: -4px 4px 0 var(--color-content-heading);}
    
    .megamenu:has(.image:hover) .image:not(:has(:hover)) .overlay {
        background: var(--color-content-overlay);
    }
    .megamenu .image:hover .overlay{background: transparent;}
}


/*TOUCH SCREEN TOUCH EFFECTS*/
@media (hover: none) and (pointer: coarse) {
    .swiper-btn.next:active {
        transform: translateX(-1rem);
    }
    .swiper-btn.prev:active{
        transform: translateX(1rem);
    }

    .minus:active, .plus:active{
        transform: rotate(180deg);
    }

    .cat-link:active{color:transparent !important; text-shadow: -4px 4px 0 var(--color-content-heading);}

    .btn:active{background: var(--color-alt-content-bg);}
    .btn:active .btn-title{color: var(--color-content-accent);}
    .link-hover:active .btn{background: var(--color-alt-content-bg);}
    .link-hover:active .btn-title{color: var(--color-content-accent);}
    .link-hover:active{background-color: var(--color-footer-bg)}
    a:active .btn-small{
        background-color: white;
    }
    .venue-result:active p, .venue-result:active h3{
        color:var(--color-content-heading);
    }
}
/*css/api2sb/templateThemes/theme_one.css*/
/*THE PLACE FOR THEME SPECIFIC STYLING*/

/* site styles - font */
:root{
    --heading-2xl: 8rem;
    --heading-xl: 4rem;
    --heading-lg: 2.5rem;
    --heading-md: 2rem;
    --heading-sm: 1.25rem;
    --heading-xs: 1.125rem;
    --body-md: 1.1rem;
    --body-sm: 0.75rem;
    --body-lg: 1.25rem;

    /*site styles - spaces */
    --space-2xl: 10rem;
    --space-xl: 8rem;
    --section:6rem;
    --space-lg: 4rem;
    --space-md: 2rem;
    --space-sm: 1.5rem;
    --space-xs: 0.75rem;
    --space-2xs: 0.25rem;

    /* max widths */
    --row-width-01: 1420px;
    --row-width-02: 1180px;
    --row-width-03: 950px;
    --row-width-04: 1650px;

    /* site styles - misc */
    --trans-default: 0.2s;
    --radius-large: 2.5rem;
    --radius-default: 1.5rem;
    --radius-sm: 0.75rem;
    --swiper-theme-color: var(--color-content-accent);
    /* --swiper-navigation-sides-offset: -1rem; */

    /* header height (not including padding) */
    --header-height: 4.75rem;
    --header-height-scroll: 4rem;
    --gradient-tile-left:linear-gradient(90deg, rgb(var(--color-content-bg-rgb)/1) 0%, rgb(var(--color-content-bg-rgb)/1) 75%, rgb(var(--color-content-bg-rgb)/0.3) 100%);
    --gradient-tile-right:linear-gradient(270deg, rgb(var(--color-content-bg-rgb)/1) 0%, rgb(var(--color-content-bg-rgb)/1) 75%, rgb(var(--color-content-bg-rgb)/0.3) 100%);
    --gradient-footer:linear-gradient(180deg, rgb(var(--color-content-bg-rgb)/1) 0%, rgb(var(--color-content-bg-rgb)/0.7) 75%, rgb(var(--color-content-bg-rgb)/0) 100%);
}

/* headings ans spacings responsive */
@media screen and (max-width:1441px){

    :root{
        --heading-2xl: 6.5rem;
        --heading-xl: 3rem;
        --heading-lg: 2.25rem;
        --heading-md: 1.5rem;
        --space-2xl: 11rem;
        --space-xl: 6rem;
    }
}
@media screen and (max-width:1025px){

    :root{
        --heading-2xl: 4rem;
        --heading-lg: 2rem;
        --heading-md: 1.5rem;
        --heading-sm: 1.125rem;
        --heading-xs: 0.9rem;
        --space-2xl: 10rem;
        --space-xl: 5rem;
        --section: 4rem;
        --header-height: 4.5rem;
        --header-height-scroll: 3.75rem;
    }
}

@media screen and (max-width: 769px){
    :root{
        --heading-2xl: 2.5rem;
        --heading-xl: 2rem;
        --heading-lg: 1.75rem;
        --heading-md: 1.25rem;
        --body-lg: 1.1rem;
        --body-md: 1.0rem;
        --body-sm: 0.8rem;
        --space-2xl: 3.5rem;
        --space-xl: 4rem;
        --section:3.25rem;
        --space-lg:2.5rem;
        --space-md: 1.5rem;
        --space-sm: 1rem;
        --space-xs: 0.5rem;
        --header-height: 3.5rem;
        --header-height-scroll: 3rem;
    }
}

.bg-grad-tile-l{background:var(--gradient-tile-left)}
.bg-grad-tile-r{background:var(--gradient-tile-right)}
.bg-grad-footer{background:var(--gradient-footer)}

/*headings*/
.heading.xl, .heading.text-2xl{
    font-weight: var(--font-heading-bold); 
    text-shadow: 1px 1px 5px rgba(0,0,0,0.3);
}
.heading{
    font-weight: var(--font-heading-bold);
}

/*Utility*/
.rounded{
    border-radius:0.5rem;
}
.rounded-lg{
    border-radius: 1.5rem;
}
.horizontal-divider{
    height:1px; 
    width:100%; 
    background-color: rgb(var(--color-shadow-rgb)/0.15);
}

.divider{
    height:2px;
    background-color: var(--color-content-accent);
}
.divider.light{
    background-color: var(--color-content-bg);
}
.divider.thick{
    height:3px;
}

.sticky{
    position:sticky; 
    top:0; 
    z-index:1;
    transition: box-shadow 250ms;
}
.sticky.is-stuck{
    box-shadow: 0px 3px 3px #00000025;
}

/* Nav */
header{
    position:absolute; 
    background:transparent; 
    /*border-bottom:1px solid #fff; */
    top:0; 
    left: 0; 
    right: 0; 
    z-index: 190; 
}
#wrap{
    overflow:visible;
}
#mobile-menu-btn{
    display:none;
}
header .tear.nav{
    margin-top:calc(var(--space-xs) * -1);
}

@media screen and (max-width: 1024px) {
    #mobile-menu-btn{
        display:flex;
    }
    #desk-menu{
        display: none;
    }
    .logo{
        justify-content: center;
    }
}

.back-to-top{
    position:fixed;
    right:var(--space-xs);
    bottom:var(--space-xs);
    z-index:1000;
    aspect-ratio:1;
    height:var(--heading-lg);
    background-color: var(--color-content-bg);
    border-radius: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .back-to-top:hover{
        background-color:var(--color-alt-content-bg-alt);
    }
}
@media (hover: none) and (pointer: coarse) {
    .back-to-top:active{
        background-color:var(--color-alt-content-bg-alt);
    }
}

/* Footer */
footer{
    position:relative; 
    z-index:999;
}
footer section{
    background: var(--color-footer-bg);
}
footer section.bg-content-alt{
    background: var(--color-footer-bg-alt);
}
.footer-menu ul, 
.footer-menu li{
    list-style: none;
}
.footer-menu li a{
    line-height: 1.5;
}
.footer-logo{
    display:flex;
}
.footer-logo img{
    width:100%;
    max-width:30rem;
    margin:0 auto;
}

/*Hero Section - Home Page*/
.bg-vid-wrapper.full{
    display:flex;
    flex-direction:column;
    align-items: center;
    justify-content: start;
    min-height:calc(100vh - 50px);
    width:100%;
}
.bg-vid-wrapper.full .banner-bg{
    width: 100%;
    height:calc(100vh - 50px);
    min-height:40rem;
    position:relative;
    display:flex;
    flex-direction:column;
    align-items: flex-start;
}
.bg-vid-wrapper.auto{
    display:flex;
    flex-direction:column;
    align-items: center;
    justify-content: start;
    /*min-height:100vh;*/
    width:100%;
}
.bg-vid-wrapper.auto .banner-bg{
    width: 100%;
    /*height:100vh;
    min-height:40rem;*/
    position:relative;
    display:flex;
    flex-direction:column;
    align-items: flex-start;
}
.bg-vid-wrapper .banner-bg.image img.banner-image,
.bg-vid-wrapper .banner-bg.video video{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit:cover;
    object-position: center;
}
.bg-vid-wrapper .video-wrapper{
    position: absolute; 
    inset: 0; 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    object-position: center;
}
.bg-vid-wrapper.auto .video-wrapper{
    position:relative;
}
.bg-vid-wrapper .search-form-hero{
    display:grid;
    grid-template-columns: 2fr 2fr 1fr;
}
.container{
    container-type: inline-size;
}
@media screen and (max-width: 1024px) {
    /*#content{
        padding:var(--header-height) 0 0 0;
    }*/
    .bg-vid-wrapper .video-wrapper{
        overflow:hidden;
    }
    .bg-vid-wrapper.full{
        margin-bottom:var(--space-md);
        height:auto;
        min-height:auto;
        justify-content: flex-start;
    }
    .bg-vid-wrapper .banner-bg{
        height:auto;
    }
    .bg-vid-wrapper{
        height:auto;
    }
    .bg-vid-wrapper.full .video-wrapper{
        position: relative; 
        aspect-ratio:3/2;
    }
    .bg-vid-wrapper.full .banner-bg{
        background-color: var(--color-content-accent);
        height:auto;
        position:relative;
        min-height:auto;
    }
}

/* Hero Section Other Page */
.page-hero{
    min-height:45svh;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content: end;
}
.bc-text a{color:#fff};
@media screen and (max-width: 1024px) {
    .page-hero{
        min-height:25svh;
    }
}

/* Voucher Widget */
/* Activity Voucher*/
.act-vouch{
    border:1px solid var(--color-brand-2);
}

.filter-input{
    background-color: transparent;
    border-radius:0;
    padding: var(--space-xs) var(--space-sm) var(--space-2xs) var(--space-sm);
    border-bottom:solid 1px var(--color-content-accent);
    overflow: hidden;
}
.filter-input input{
    background-color: transparent;
}
.filter-input .control{
    width: 20px;
    height: 20px;
    position: relative;
    min-width: 20px;
    cursor: pointer;
    
}
.filter-input .control > .line{
    background: var(--color-content-heading);
}
.filter-input .control > .line:nth-child(1){
    width: 100%;
    height: 4px;
    position: absolute;
    top: calc(50% - 2px);

}
.filter-input .control > .line:nth-child(2){
    width: 4px;
    height: 100%;
    position: absolute;
    left: calc(50% - 2px);
}

/* Filter Button */
.filter-button{
    overflow: hidden;
    cursor: pointer;
}
.filter-button .control{
    width: 20px;
    height: 20px;
    position: relative;
    /*margin-left: 10px;*/
    min-width: 20px;
    transition: var(--trans-default);
}
.filter-button .control > .line{
    background: var(--color-content-heading-alt);
}
.filter-button .control > .line:nth-child(1){
    width: 100%;
    height: 4px;
    position: absolute;
    top: calc(50% - 2px);

}
.filter-button .control > .line:nth-child(2){
    width: 4px;
    height: 100%;
    position: absolute;
    left: calc(50% - 2px);
}
.act-filter{
    position:relative;
}
@media screen and (max-width: 1024px){
    .act-filter{
        display:flex;
        flex-direction:row;
        gap:var(--space-2xs);
    }
}

.filter-tick{
    height:var(--heading-sm);
    aspect-ratio:1;
    /*border-radius: 4rem;*/
    border-radius: 0.1rem;
    border: solid 1px var(--color-content-accent);
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.filter-button{
    border: solid 1px #fff;
}

.filter-button.active .filter-tick{
    background-color: var(--color-content-accent);
    /*box-shadow: #BB161666 3px 3px 5px, #BB161666 -3px 3px 5px, #BB161666 3px -3px 5px, #BB161666 -3px -3px 5px;*/
}

.clear-filter{cursor: pointer;}

.input-button{border-left: 1px solid var(--color-brand-2);}
.input-button.active{
    color: var(--color-content-bg);
    background-color: var(--color-content-heading-alt);
}
.input-button:hover{
    background-color:var(--color-alt-content-bg-alt);
    color:var(--color-content-bg);
    cursor: pointer;
}


/* Search Styling */
.search-input{
    border:unset
}
.select2-search__field{
    font-size: var(--body-md);
}
.select2-selection, .search-input, #groups input{
    width:100%;
    padding:var(--space-xs) var(--space-sm) !important;
    border-radius:10rem !important;
    border:1px solid #aaa;
    caret-color: #000000;
}
#groups input{
    border:1px solid var(--color-content-heading);
}
#groups input:focus-visible{
    border:2px solid var(--color-content-accent) !important;
}
.select2-dropdown{
    border-radius:1rem !important;
    padding:0.5rem !important;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{
    color:var(--color-content-accent) !important;
}

/* Venue Tile*/
.venue-tile{
    /*border: 1px solid var(--color-content-secondary);*/
    transition: opacity 0.3s ease;
}
.swiper-button-disabled{
    opacity:30%;
}

.venue-card{
    background: var(--color-card);
    display: grid;
    grid-template-columns: 1fr 1fr;
    box-shadow:1px 1px 3px rgba(0,0,0,0.2);
}
.venue-card.sm{
    background: var(--color-card);
    display:flex;
}
.venue-card.is-link{
    cursor: pointer;
}
.venue-card:hover{
    box-shadow:2px 2px 6px rgba(0,0,0,0.3);
}
@container (max-width: 850px){
    .venue-card{
        background: var(--color-card);
        display: grid;
        grid-template-columns: 1fr;
    }
    .venue-card .image{
        aspect-ratio:16/9;
    }
}

.tile{
    /*(padding:var(--space-sm);*/
    border-radius:var(--radius-default);
    background: var(--color-card);
    box-shadow:2px 2px 6px rgba(0,0,0,0.3);
}
.tile.def-rad{
    border-radius:var(--radius-default);
}

/*Background accent*/
.bg-accent{
    background:var(--color-brand-3);
}
.bg-accent p, .bg-accent h3, .bg-accent .heading{
    color:var(--color-brand-1)
}
.bg-accent .bb{
    border-color:var(--color-brand-1);
}
.bg-accent .btn.secondary{
    background:var(--color-brand-1);
    border:1px solid var(--color-brand-2);
}
.bg-accent .btn.secondary .btn-title{
    color:var(--color-brand-2);
}
.bg-accent .btn.secondary:hover .btn-title{
    color:var(--color-brand-2) !important;
}

/* bg accent map*/
.bg-accent .map-wrapper svg{
    fill: var(--color-content-bg);
}
.bg-accent .map-wrapper svg g:hover,
.bg-accent .map-wrapper svg g.map-region.active{
    fill:var(--color-content-accent-alt);
}
.bg-accent .accordion .accordion-title span,
.bg-accent .accordion .accordion-title.active span,
.bg-accent .accordion .active .accordion-title span{
    color: var(--color-content-bg);
}
.bg-accent .accordion .map-rel.hover .accordion-title span,
.bg-accent .accordion .accordion-title:hover span,
.bg-accent .accordion li a:hover{
    color:var(--color-content-accent-alt);
}
.bg-accent .accordion .control > .line,
.bg-accent .accordion .active .control > .line, 
.bg-accent .accordion .accordion-title:hover .control > .line{
    background-color: var(--color-content-bg);
}
.bg-accent .accordion .accordion-item:not(:last-child){
    border-bottom: 1px solid var(--color-content-bg);
}

/* Packages */
.tab-link{
    cursor:pointer;
}
.tab-link span{
    text-wrap: nowrap;
}
.tab-link.package:hover{
    opacity:1 !important;
}
.tab-link.package.active{
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
    background-color:var(--color-content-accent);
}
.tab-link.package.active h4.heading,
.tab-link.package.active p.body-text{
    color:var(--color-brand-alt-text) !important;
}
.tab-content-wrapper.package{
    position:sticky;
    top:var(--space-lg);
    overflow:hidden;
}
.tab-link-wrapper.sticky-tabs{
    top:var(--space-lg);
    position:sticky;
}
.tab-link-wrapper.scroll{
    overflow-x:auto;
}
.tab-content{
    z-index:-1;
    min-width:100%;
    position:absolute;
    top:0;
    opacity:0%;
    transition: all 500ms;
    transform:translateX(30rem)
}
.tab-content.active{
    z-index:10;
    position:relative;
    opacity:100%;
    transform:translateX(0%)
}
.tab-content.inactive{
    z-index:-1 !important;
    position:absolute !important;
    top:0;
    opacity:0% !important;
    transform:translateX(-30rem) !important;
}
.age-wrapper{
    justify-self:end;
    display: flex;
    aspect-ratio: 1;
    height: var(--heading-lg);
    border-radius: 100%;
    border: 4px solid red;
    background-color: white;
    align-items: center;
    justify-content: center;
}
.age-wrapper.lg{
    height: calc(var(--heading-xl));
}
.scroll-fade-right{
    height:100%;
    width:var(--space-md);
    background: linear-gradient(to left, var(--color-content-bg), transparent);
    position:absolute;
    right:0;
    z-index:100;
}
.scroll-fade-left{
    height:100%;
    width:var(--space-md);
    background: linear-gradient(to right, var(--color-content-bg), transparent);
    position:absolute;
    left:0;
    z-index:100;
}
.tab-link-wrapper.scroll{
    padding: 0 var(--space-lg) var(--space-2xs) var(--space-sm);
    overflow-x:auto;/* Hide scrollbar (WebKit browsers) */
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;     /* Firefox */
}

.tab-link-wrapper.scroll::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

.tab-link{
    opacity: 0.5;
}
.tab-link.active{
    opacity: 1;
}

@media screen and (max-width: 1024px){
    .tab-link-wrapper.sticky{
        max-height: 10rem;
        overflow-y: scroll;
    }
    .age-wrapper{
        border: 2px solid red;
    }
}

/* interactive SVG Map */
.map-wrapper svg{
    min-width: 100%;
    display: block;
    stroke: var( --color-content-accent-alt);
    fill: var(--color-content-accent);
    stroke-width: 1px;
}
.map-wrapper svg g{transition: 0.2s;}
.map-wrapper svg g:hover .marker, 
.map-wrapper svg g.active .marker, 
.map-wrapper svg .marker.active{fill: var(--color-content-text);}
.map-wrapper svg g:hover, 
.map-wrapper svg g.map-region.active{fill: var(--color-content-secondary);}
.map-wrapper svg g a{color:unset};
.accordion .map-rel.hover .accordion-title{
    background: var(--color-alt-content-bg);
}
.accordion .map-rel.hover .control > .line{
    background: var(--color-content-heading-alt);
}
.accordion .map-rel.hover .accordion-title span{
    color: var(--color-content-heading-alt);
}
/* accordion */
.accordion-item{
    /*border-radius: var(--radius-default); */
    overflow: hidden;
}
.accordion-item + .accordion-item{
    margin-top: var(--space-xs);
}
.accordion .accordion-item:not(:last-child){
    border-bottom:1px solid var(--color-content-heading);
}
.accordion.gap-sm .accordion-item + .accordion-item{
    margin-top: var(--space-sm);
}
.accordion-title{
    /*background: var(--color-alt-content-bg-alt); */
    cursor: pointer;
    column-gap:var(--space-sm);
}
.accordion .accordion-title span{
    color: var(--color-content-heading);
}
.accordion-content{
    /*background: var(--color-content-secondary); */
    display: grid; 
    grid-template-rows: 0fr; 
    overflow: hidden; 
    transition: grid-template-rows var(--trans-default);}
.accordion-content .content{
    min-height: 0; 
    visibility: hidden; 
    transition: var(--trans-default);
}
.accordion .control{
    width: 20px;
    height: 20px;
    position: relative;
    /*margin-left: 10px;*/
    min-width: 20px;
    transition: var(--trans-default);
}
.accordion .control > .line{
    background: var(--color-content-text);
}
.accordion .control > .line:nth-child(1){
    width: 100%;
    height: 4px;
    position: absolute;
    top: calc(50% - 2px);

}
.accordion .control > .line:nth-child(2){
    width: 4px;
    height: 100%;
    position: absolute;
    left: calc(50% - 2px);
}
.accordion .active .accordion-content{
    grid-template-rows: 1fr;
    padding-bottom: var(--space-2xs);
}
.accordion .active .accordion-content .content{
    visibility: visible;
}
.accordion .active .accordion-title .control{
    transform: rotate(45deg);
}
/*.accordion .active .accordion-title,
.accordion .accordion-title:hover{background: var(--color-alt-content-bg);}*/
.accordion .active .control > .line,
.accordion .accordion-title:hover .control > .line{background: var(--color-content-heading-alt);}
.accordion .active .accordion-title span,
.accordion .accordion-title:hover span{color: var(--color-content-heading-alt)}
.accordion li a:hover{color: var(--color-content-link-hover)}

/* butttons */
.btn .btn-title{
    color:var(--color-brand-alt-text);
}

.btn.secondary .btn-title{
    color:var(--color-content-secondary);
}

.button .btn-title{
    color:var(--color-brand-alt-text);
}
.btn{
    background: var(--color-alt-content-bg-alt);
    border:1px solid var(--color-alt-content-bg-alt); 
    padding: var(--space-xs) var(--space-md); 
    transition: unset
}
.btn.small{
    padding: var(--space-2xs) var(--space-sm);
}
.btn-title{
    color: var(--color-content-text); 
    font-family: var(--font-heading); 
    text-transform: uppercase; 
    font-size: var(--heading-sm); 
    font-style: italic; 
    font-weight: var(--font-heading-default); 
    letter-spacing: 1px; 
    text-align: center; 
    display: block; 
    transition: var(--trans-default);
}
.btn.sm .btn-title{
    font-size: var(--heading-xs);
}
.btn:not(.w-100){
    display: inline-block; 
    width:fit-content; 
    max-width: 100%;
}
.btn.w-100{
    display: block;
}

.btn.secondary{
    background-color:var(--color-content-bg);
    color:var(--color-content-secondary);
    border:1px solid var(--color-content-bg);
}
.btn.secondary.border{
    border:1px solid var(--color-content-secondary);
    box-shadow: inset 0px 0px 0px 1px var(--color-content-secondary);
    background-color: transparent;
}
.btn.white{
    background-color:var(--color-alt-content-bg);
    border:1px solid var(--color-content-accent);
}
.btn.white .btn-title{
    color:var(--color-content-accent);
}
.btn-small{
    padding: 0.5rem 0 0.5rem 0;
    background-color: var(--color-content-accent);
}
.btn-small .btn-title{
    font-size: 1rem;
}

.btn.rounded{
    border-radius: 10rem;
}

@media (hover: hover) and (pointer: fine) {
    .btn:hover{
        outline: 2px solid var(--color-alt-content-bg-alt);
        outline-offset: 2px;
        /*
        opacity: 90%;
        box-shadow:2px 2px 8px rgba(0,0,0,0.6);
        */
    }
    .btn.secondary:hover, #wrap div#cookiePrompt #cookies-continue-button:hover{
        outline: 2px solid var(--color-content-bg);
        outline-offset: 2px;
    }
    .btn.secondary.border:hover{
        outline:2px solid var(--color-content-secondary);
        outline-offset: 2px;
    }
    .btn.white:hover{
        outline: 2px solid var(--color-content-accent);
        outline-offset: 2px;
    }
    /*.btn:not(.venue-tile > .btn):hover .btn-title{
        color:var(--color-content-bg);
    }*/
}

/* Text Links */

.img-absolute-hov{
    position:absolute;
    /*transform:rotate(-15deg);*/
    height:250px;
    /*display:none;*/
    opacity:0%;
    transform:translateX(200px);
    transition: all 250ms;
    top:calc(50% - 125px);
    right:0;
    z-index:10;
    width:0;
}
.links-wrapper:hover .img-absolute-hov{
    transform:translateX(0px);
    height:250px;
    /*display:block;*/
    opacity:100%;
    width:auto;
}
.text-link{
    transition: all 250ms;
}
.link-texts.lg{
    height:var(--heading-lg);
    overflow:hidden;
}
.links-wrapper:hover .text-link.lg,
.links-wrapper.active .text-link.lg{
    transform: translateY(calc(var(--heading-lg) * -1));
}
.link-texts.md{
    height:var(--heading-md);
    overflow:hidden;
}
.links-wrapper:hover .text-link.md,
.links-wrapper.active .text-link.md{
    transform: translateY(calc(var(--heading-md) * -1));
}
.link-texts.sm{
    height:var(--heading-sm);
    overflow:hidden;
}
.links-wrapper:hover .text-link.sm,
.links-wrapper.active .text-link.sm{
    transform: translateY(calc(var(--heading-sm) * -1));
}


/* Autocomplete and Select */

ul.autocomplete2{
    border-radius:1rem;
    box-shadow:2px 2px 4px rgba(0, 0, 0, .3);
}

ul.autocomplete2 li {
    padding:0.5rem 1rem;
    font-size: var(--body-md);
}
ul.autocomplete2 li a:first-of-type {
    padding-top:1rem;
}
ul.autocomplete2 li a:last-of-type {
    padding-bottom:1rem;
}
ul.autocomplete2 li a:hover {
    color:var(--color-content-accent-alt)
}

/* Cookies */
.cookieChoice.cookieDisp{
    opacity:60%;
    background-color: var(--color-content-bg);
}
.cookieChoice.cookieDisp:hover{
    opacity:100%;
}
.cookieChoice.active, .cookieChoice.red, .cookieChoice.green{
    opacity:100%;
    background-color: var(--color-content-accent);
    color: var(--color-content-bg);
}
/* banner at bottom */
#wrap div#cookiePrompt{
    background-color: var(--color-content-accent);
    padding:var(--space-md);
    box-shadow: 0px -3px 5px rgba(0, 0, 0, 0.3);
}
#wrap div#cookiePrompt p a, #wrap div#cookiePrompt li a{
    color:var(--color-content-bg);
}
#wrap div#cookiePrompt p a:hover, #wrap div#cookiePrompt li a:hover{
    opacity:0.7;
}
#wrap div#cookiePrompt .orb-banner-options{
    margin-top:var(--space-xs);
}
#wrap div#cookiePrompt #cookies-continue-button{
    border-radius:5rem;
    padding:var(--space-2xs) var(--space-sm);
    background-color:var(--color-content-bg);
    color:var(--color-content-text);
    border:1px solid var(--color-content-bg);
}

/* MAP */
.map-wrapper svg{
    -webkit-filter: drop-shadow( 3px 3px 3px rgba(0, 0, 0, .3));
}

/* Carousel */
.carousel-wrapper{
    width:max-content;
}
.carousel, .carousel-content{
    display:flex;
    position:relative;
    flex-direction:row;
}
.carousel .carousel-content .carousel-image{
    height:18rem;
}
@media screen and (max-width: 1024px){
    .carousel .carousel-content .carousel-image{
        height:14rem;
    }
}
@media screen and (max-width: 767px){
    .carousel .carousel-content .carousel-image{
        height:12rem;
    }
}

/* --- CHATBOT & LIVECHAT --- */
.outer-wrapper{
    position:relative;
    z-index:1010;
}