@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@600;700&family=Poppins:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant:wght@300&display=swap');



* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

:root {
    --main-color: rgba(251,191,22,1);
	--header-color: rgba(70,70,70,1.0);
	--dropmenu-color: rgba(119,119,119,1.0);
	--background-color: rgba(251,191,22,0.1);
	--navtext-color: rgba(255,255,255,1);
	--doc-width: 80%;
	--maintext-color: rgba(38,38,38,1.00);
    --narrow-width: 70%;
    --normal-width: 90%;
}

html {
    font-size: 10px;
}

body {
    background-image: none;
}

header {
    position: fixed;
    top: 0;
    height: 100px;
    z-index: 100;
}

main {
	margin-top: 110px;
	padding: 0px;
	display: block;
	height: auto;
	font-size: 1.5rem;
	width: 100%;
}

a {
    text-decoration: none;
}

ul {
    list-style: none;
}

header {
    width: 100%;
    /*position: absolute;*/
	background: var(--header-color);
	margin: 0;
	padding: 10px 0px 0px 0px;
	border-bottom: 2px solid black;
}

.logoline {
	margin: auto;
	width: var(--doc-width);
	height: 50px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
    align-content: center;
}

.logolineitems {
    width: 30%;
    height: 50px;
}

.logolineitems.left{text-align: left;}
.logolineitems.center{text-align: center;}
.logolineitems.right{text-align: right; padding-top: 15px}

.block {
	background: purple;
	display: block;
	height: 500px;
	width: 500px;
}

.material-symbols-outlined {
    color: #FBBF16;
    font-size: 45px;
    position: absolute;
}


/*---------------- HAMBURGER ICON ----------------*/

.hamburger {
	width: auto;
	cursor: pointer;
	visibility: hidden;
}

.hamicon {
	width: 30px;
	height: auto;
	
}

/*div.homebutton {
    position: relative;
    display: inline;
	width: 100px;
    height: 100%;
	cursor: pointer;
    }
*/


a.homelink {
	height: 100%;
    position: absolute;
}

.bar1, .bar2, .bar3 {
  width: 30px;
  height: 3px;
  background-color: var(--main-color);
  margin: 6px 0;
  transition: 0.4s;
}

/* Rotate first bar */
.change .bar1 {
  transform: translate(0, 9px) rotate(-45deg);
}

/* Fade out the second bar */
.change .bar2 {opacity: 0;}

/* Rotate last bar */
.change .bar3 {
  transform: translate(0, -9px) rotate(45deg);
}

/*---------------- HEADER AND NAVIGATION ----------------*/

.logoline a img {
	width: 170px;
}

/*.contactbtn {
	width: 33%;
	text-align: right;
}*/

a.contactbtn {
	padding: 0.5rem 1rem;
    width: 100px;
    border: 2px solid var(--main-color);
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -ms-border-radius: 0.5rem;
    -o-border-radius: 0.5rem;
    color: var(--navtext-color);
    font-size: 1.4rem;
    text-transform: uppercase;
}

.contactbtn a:hover {
    color: var(--main-color);
	transition: color 650ms;
    -webkit-transition: color 650ms;
    -moz-transition: color 650ms;
    -ms-transition: color 650ms;
    -o-transition: color 650ms;
}

nav {
    width: 100%;
	height: 40px;
    margin: 0;
	padding: 0;
}

nav ul {
    display: flex;
	flex-direction: row;
	justify-content: center;
    align-items: center;
	line-height: 4rem;
}

nav a {
	color: var(--navtext-color);
    padding: 0 2.0rem;
    font-size: 1.4rem;
	line-height: 2rem;
    text-transform: uppercase;
}

nav ul a:hover {
    color: var(--main-color);
}

nav a:hover,
nav a:focus,
nav a:active,
nav a:focus:hover,
nav a:active:hover {
    color: var(--main-color);
}

nav ul li:hover>.category-menu {
	display: flex;
}

.category-menu {
	display: none;
	position: absolute;
	flex-direction: row;
    justify-content: space-around;
	align-items: flex-start;
	flex-wrap: nowrap;
	width: 80%;
	height: auto;
	left: 10%;
	margin: 0px;
	padding: 5px 0px;
    background-color: var(--header-color);
	border: 1px solid black;
}

.category-menu li {
    line-height: auto;
	padding-top: 0px;
	width: 200px;
}

.category-menu a {
	color: var(--main-color);
    font-size: 1.7rem;
	font-weight: Normal;
}

.category-menu a:hover {
	color: var(--navtext-color);
	
}

nav ul li:hover>.collections-menu {
	display:flex;
}

.collections-menu {
	display: none;
	position: absolute;
	flex-direction: column;
    justify-content: flex-start;
	align-items: flex-start;
	align-content: space-between;
	flex-wrap: wrap;
	width: 50%;
	height: 30vh;
	left: 25%;
	margin: 0px;
	padding: 5px 0px;
    background-color: var(--header-color);
	border: 1px solid black;
}


.collections-menu li {
    line-height: 3rem;
	padding-top: 0px;
}

.collections-menu a {
	color: var(--main-color);
    font-size: 1.5rem;
	font-weight: normal;
}

.collections-menu a:hover {
	color: var(--navtext-color);
}

nav ul li:hover>.subcat-menu {
	color: var(--navtext-color);
}


.subcat-menu {
	display: block;
	margin: 0px;
	padding: 0px;
	height: auto;
    background-color: var(--header-color);
    z-index: 100;
}

.subcat-menu li {
    line-height: 2rem;
	width: 200%;
	padding-left: 0px;
}

.subcat-menu a {
	color: var(--navtext-color);
    font-size: 1.5rem;
	font-weight: normal;
}

.subcat-menu a:hover {
    color: var(--main-color);
}

/*.responsiveimage{
	max-width: 50%;
	height: auto;
}
*/

/*-------------------------------------------- MAIN SECTION STYLES --------------------------------------------*/

h1 {
    text-align: center;
    padding-top: 3vh;
    text-transform: uppercase;
}


h1.cattitle {
	/*font-family: 'Cormorant', serif;*/
	/*font-family: 'EB Garamond', serif;*/
	text-align: center;
	text-transform: uppercase;
	font-size: 5rem;
    line-height: 80%;
	color: var(--maintext-color);
}

.narrow {
    width: 70%;
    margin: 0px auto;
}

.normal {
    width: 90%;
}


.maincontainer {
	position: relative;
	display: block;
	background: ivory;
	width: 80%;
	border: 3px solid green;
	height: auto;
	margin: 3vh auto;
	
}


/*-------------------------------------------- HIGHLIGHT BANNER (HB) SECTION STYLES --------------------------------------------*/

.hban{
    /*border: 3px solid red;*/
    padding: 20px 0px;
    margin: auto;
    width: 90vw;
    height: auto;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 2vw;
}

.hbox {
    border: 3px solid var(--header-color);
    width: 40vh;
    height: 40vh;
    position: relative;
    text-align: center;
    color: var(--main-color);
    overflow: hidden;  
}

.hbox-h1 { /*highlight box H1 Title Text*/
    /*font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, "serif";*/
    font-size: 3rem;
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 10px;
    background-color: var(--header-color);
    border: 1px solid black;
    z-index: 50;
}

.hbox-h2 {
    
}


.hbox img {
    width: auto;
    height: 100%;
    z-index: 0;
}

.hbox img:hover {
    transform: scale(1.5);
    transition-duration: 4s;
}


.hbox-discover {
    position: absolute;
    top: 0px;
    left: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    /*background-color: var(--main-color);*/
    opacity: 0%;
}

.hbox-discover a {
    display: flex; 
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transform: scale(0);
    transition: 0.8s;
    font-size: 5rem;
    color: white;
}

.hbox-discover:hover {
    box-shadow: 0 0 0 250px rgba(0,0,0,0.8) inset;
    opacity: 1;
    transition-duration: 1s;
}

.hbox-discover:hover a {
    opacity: 1;
    transform: scale(1);
}

.hbox-discover:hover img.hbox {
    transform: scale(1.5);
    transition-duration: 4s;
}

/*-------------------------------------------- SIDE BY SIDE (SBS) SECTION STYLES --------------------------------------------*/


.sbscontainer {
	position: relative;
	display: inline-block;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	background: ivory;
	width: 90%;
	border: 1px solid black;
	height: auto;
	padding: 0px;
	margin: 3vh auto;
}

.sbsbox {
	width: 50%;
	min-width: 350px;
	height: 100%;
	/*border: 3px solid red;*/
	padding: 0;
	margin: 0;
	overflow: hidden;
	text-align: center;
}

.sbsbox h2 {
	text-transform: uppercase;
    margin: 5% auto;
}

.sbsbox img {
	position: relative;
	display: block;
	width: 100%;
	min-width: 350px;
	height: auto;
	border: 1px solid black;
	
}


.sbsbox p {
    width: 100%;
    font-size: 1.8rem;
    text-align: left;
    /*overflow-x: auto;
    white-space: pre-wrap;
    word-wrap: break-word;*/
    padding: 0 5% 5%;
}

img.sbslogo {
    width: 30%;
    margin: 0 auto 20px;
    border: none;
    min-width: 200px;
}

div.contact {
    width: 50%;
    height: auto;
    background-image: url("../images/Contact/US_Map_Boca_02.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size:contain;
    /*background-color: aqua;*/
}

/*--------------------------------------------STAND ALONE (SA) STYLES--------------------------------------------*/

div.sa {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 70%;
    margin: auto;
    height: auto;
}


div.sa div {
    position: relative;
    margin: 1vh auto;
    text-align: center;
    width: auto;
    height: auto;
    padding: 0;
    border: 3px solid var(--header-color);
}

div.sa img {
    display: block;
    object-fit: contain;
}

div.sa h2 {
    position: absolute;
    padding: 5px;
    background: var(--header-color);
    color: var(--main-color);
    top: 0;
    left: 0;
    border: 2px solid var(--header-color);
}

div.sa a {
    font-size: 2em;
    font-style: italic;
    text-transform: capitalize;
    position: absolute;
    padding: 0 20px;
    background: var(--header-color);
    color: var(--main-color);
    bottom: 1vh;
    right: 1vw;
    border: 2px solid var(--main-color);
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
}

div.sa a:hover {
    color: var(--navtext-color);
    background: var(--header-color);
    border: 2px solid var(--navtext-color);
}


/*--------------------------------------------UNDER CONSTRUCTION STYLE--------------------------------------------*/

.underconstruction {
	display: block;
	margin: 0px auto;
	padding: 0;
	width: 100%;
	height: auto;
}

.underconstruction img {
	display: block;
	margin: 0px auto;
	max-width: 10%;
	height: auto;
}

img.mini {
	max-width: 20%;
}

/*--------------------------------------------END UNDER CONSTRUCTION STYLE--------------------------------------------*/






/*--------------------------------------------TITLE CONTAINER 01 STYLE--------------------------------------------*/

.titlecontainer01 {
	display: block;
	margin: 0px auto;
	width: 100%;
	height: auto;
}

.titlecontainer01 img {
	display: block;
	margin: 0px auto;
	max-width: 100%;
	min-width: 400px;
	height: auto;
}





/*--------------------------------------------STATIC CONTAINER 01 STYLE--------------------------------------------*/
.staticcontainer01 {
	position: relative;
	/*text-align: center;*/
	color: black;
	display: block;
	background: ivory;
	width: 60%;
	border: 3px solid var(--header-color);
	height: auto;
	margin: 0 auto;
	padding: 0;
}

.sc01text {
    display: inline-block;
	position: absolute;
	width: 50%;
}

.sc01titletext {
    position: absolute;
	top: 3vh;
	left: 20%;
	color: var(--header-color);
	font-size: 5rem;
}

.sc01description{
    position: absolute;
	top: 10vh;
	left: 10%;
	color: var(--header-color);
	font-size: 3rem;
}

.sc01explore {
	position: absolute;
	top: 20vh;
	left: 10%;
	color: var(--header-color);
	font-size: 3rem;
	border-bottom: 1px solid var(--header-color);
}

.sc01img01 {
	border-right: 3px solid var(--header-color);
	width: 50%;
}

.staticcontainer01 img {
	/*border: 5px solid red;*/
}



/*--------------------------------------------STATIC CONTAINER 02 (SC02) STYLE--------------------------------------------*/
.staticcontainer02 {
	position: relative;
	color: black;
	display: flex;
	background: ivory;
	width: 70%;
	border: 3px solid var(--header-color);
	height: auto;
	margin: 1vh auto 0;
	padding: 0;
}

.sc02img01 {
	border-right: 3px solid var(--header-color);
	width: 50%;
    height: auto;
    object-fit: contain;
}

.sc02textbox {
	width: 50%;
    padding: 0 0 3vh 2vw;
    /*border: 5px solid green;*/
}

.sc02textbox p {
    position: relative;
    left: 0;
    top: 0;
    color: var(--header-color);
    width: 90%;
    /*border: 1px solid red;*/
}

p.sc02titletext {
    margin-top: 3vh;
	font-size: 4rem;
    text-transform: uppercase;
    /*font-variant: small-caps;*/
}

p.sc02description{
    margin-top: 2vh;
    font-size: 2.5rem;
}

p.sc02sectiontitle{
    margin-top: 2vh;
    font-size: 2.3rem;
    text-transform: uppercase;
    width: 50%;
    border-bottom: 1px solid var(--header-color);
}

p.sc02sectiondetails{
    left: 5%;
    margin-top: 1vh;
    font-size: 2rem;
    width: 70%;
}

.sc02explore {
	font-size: 3rem;
	border-bottom: 1px solid var(--header-color);
}







/*--------------------------------------------DYNAMIC CONTAINER 01 STYLE--------------------------------------------*/


/*--------------------------------------------END DYNAMIC CONTAINER 01 STYLE--------------------------------------------*/





/*--------------------------------------------VIDEO CONTAINER 01 STYLE--------------------------------------------*/
video{
    width: 100%;
    height: auto;
    border: 3px solid var(--header-color);
    
}

.videocontainer01 {
	position: relative;
	/*display: block;*/
	/*display: none;*/
	/*background: ivory;*/
    background: white;
	width: 70%;
	/*border: 3px solid var(--header-color);*/
    border: none;
	height: auto;
	margin: 1vh auto;
	padding: 3vh 0 3vh 0;
}
.videocontainer{
	margin: 0 auto;
    width: 80%;
    height: auto;
    position: relative;
    /*display: flex;
    justify-content: center;
    align-items: center;*/
}
.videocontainer .slider{
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.videocontainer ul{
    position: relative;
	display: flex;
	flex-direction: row;
	justify-content: center;
    align-items: center;
    text-align: center;
    /*bottom: 80px;*/
    /*left: 50%;
    transform: translateX(-50%);*/
    z-index: 20;
}
.videocontainer ul li{
    list-style: none;
    cursor: pointer;
    margin: 10px;
}
.videocontainer ul li video{
	width: 9vw;
    transition: all 0.3s;
}
.videocontainer ul li video:hover{
    transform: scale(1.1);
}

/*--------------------------------------------END VIDEO CONTAINER 01 STYLE--------------------------------------------*/






























/*--------------------------------------------END MAIN SECTION STYLES--------------------------------------------*/


footer {
	width: 100%;
	margin: 0;
    margin-top: 20px;
	padding: 0;
	height: auto;
	background-color: var(--header-color);
	font-size: 1.4rem;
    text-transform: uppercase;
    transition: color 650ms;
    -webkit-transition: color 650ms;
    -moz-transition: color 650ms;
    -ms-transition: color 650ms;
    -o-transition: color 650ms;
}

footer ul li a {
	color: var(--navtext-color);
	font-size: 1.4rem;
}

footer ul li a:hover {
    color: var(--main-color);
	transition: color 650ms;
    -webkit-transition: color 650ms;
    -moz-transition: color 650ms;
    -ms-transition: color 650ms;
    -o-transition: color 650ms;
}

.signup {
	display: block;
	text-align: center;
	margin: 3rem;
	font-size: 1.4rem;
    text-transform: uppercase;
	color: var(--navtext-color);
	line-height: .5rem;
}

.footerhr {
    display: block;
	border: none;
	height: 1px;
	width: 100%;
    background-color: var(--navtext-color);
}

.footercontainer0{
	margin: auto;
	padding: 0px 0px 10px;
	width: var(--doc-width);
	display: flex;
	flex-direction: row;
	align-items: flex-start;
    justify-content: space-around;
}

.footercontainer {
	padding-left: 20px;
	height: auto;
	width: 300px;
	text-align: left;
	line-height: 2.5rem;
}

.footercontainer ul li{
}

.footertitle {
	font-size: 1.8rem;
	color: var(--main-color);
	line-height: 3;
}

.copyright {
	text-align: center;
	padding: 10px 0 0;
	color: var(--navtext-color);
}

.footeraddress {
	text-align: center;
	padding: 0 0;
	color: var(--navtext-color);
}


/*--------------------------------------------MEDIA STYLES--------------------------------------------*/

@media screen  and (max-width: 1090px) {
	main {
		width: 100%;
	}
    
	.logoline {
	width: 90%;
	}
    
    .logolineitems.right{padding-top: 10px}
	
	.logoline a img {
	width: 130px;
	}
	
	
	/*.hamburger {
		visibility: visible;
	}*/
	
	.hamicon {
		visibility: visible;
	}
    
    a.homelink {
        display: none;
    }
	
	.contactbtn a {
    padding: 0.3rem 0.5rem;
    border: 2px solid var(--main-color);
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -ms-border-radius: 0.5rem;
    -o-border-radius: 0.5rem;
    color: var(--navtext-color);
    font-size: 1.0rem;
    text-transform: uppercase;
	}
	
    .contactbtn {
        margin: 0 auto;
        line-height: initial;
    }
    
   	footer ul {
		width: 60%;
    }
	.footercontainer0 {
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	
	.footercontainer {
		width: 100%;
		margin: 1rem 0;
	}
	
    nav {
		display: none;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        /*display:flex;
        flex-direction: row;
        justify-content: center;*/
    }

	nav.active {
		/*position: absolute;*/
		display: flex;
	}
	
    nav ul {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
		/*border: 5px solid red;*/
    }

    nav ul li {

    }

    nav a {
        color: var(--navtext-color);
        padding: 0 2.0rem;
        font-size: 1.7rem;
        line-height: 3rem;
        text-transform: uppercase;
    }
	
    nav ul li:hover>.category-menu {
        display: flex;
    }

    .category-menu {
        display: none;
        position: relative;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        align-content: space-around;
        flex-wrap: nowrap;
        width: 100%;
        height: auto;
        left: 25%;
        margin: 0px;
        padding: 5px 0px;
        background-color: inherit;
        border: none;
    }

    .category-menu li {
        line-height: auto;
        /*padding-top: 0px;*/
    }

    .category-menu a {
        color: var(--main-color);
        font-size: 1.7rem;
        font-weight: normal;
    }

    nav ul li:hover>.subcat-menu {
        color: var(--main-color);
    }

    .subcat-menu {
        position: relative;
        display: block;
        margin: 0px;
        padding: 0px;
        width: 100%;
        height: auto;
        left: 25%;
        background-color: inherit;
        z-index: 0;
    }

    .subcat-menu a {
        color: var(--navtext-color);
        font-size: 1.5rem;
        font-weight: normal;
    }

    nav ul li:hover>.collections-menu {
        display:flex;
    }

    .collections-menu {
        display: none;
        position: relative;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        align-content: space-around;
        flex-wrap: nowrap;
        width: 100%;
        height: auto;
        left: 25%;
        margin: 0px;
        padding: 5px 0px;
        background-color: inherit;
        border: none;
    }

    .collections-menu li {
        line-height: 3rem;
        padding-top: 0px;
    }

    .collections-menu a {
        color: var(--main-color);
        font-size: 1.7rem;
        font-weight: normal;
    }
    
    .narrow {
    width: 100%;
    }
}