/* prefixed by https://autoprefixer.github.io (PostCSS: v7.0.26, autoprefixer: v9.7.3) */

/*
@Theme Name: Auluxe79
@Author: Adnan el-Bedawi
@Description: Main theme for Auluxe79 site
@Version: 1.1.0
@11/6/2019
@Updated: 2/18/2019
*/
/* enables smooth scrolling for entire page */
/* designed for mobile screen sizes first */
@media screen and (max-width: 768px) {

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.desktop-only { /* assign to elements that need to be hidden on mobile displays*/
	display:none;
}
	

.topBar { /* top logo & separator bar */
	font-family: montserrat;
    color:black;
    background-color:white;
    font-size:30pt;
    font-weight:1000;
	text-align:center;
	margin:auto;
	vertical-align:top;
}
.topBar a{
	color:black;
    text-decoration:none;
	
}
.topBar sup{
    color:gold;
}

.header {
	background-color:white;
	padding:0px;
    position:fixed;
    top:0%;
    z-index:10;
    width:100%;
}
.navigation {
	background-color:black;
    padding:0px;
}
.navbar {
	padding:0px;
	margin:0 0;
	display:inline-block;
}
.navbar a {
	text-decoration:none;
	color:white;
}
.navcontent {
	display:inline-block;
	margin:auto;
	vertical-align:top;
	cursor:pointer;
    font-size:8pt;
    padding:0.5em 0.25em;
    background-color:black;
}

body {
    font-family:lora;
    padding:0px;
    margin:0px;
}
/* Main container div class */
div.main-container {
	text-align: center;
	background-color: white;
	padding:0px;
	padding-bottom: 0px;
    margin:0px;
    width:100%;
}


.vertical-center {
	margin: 0;
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.howitworks {
    padding:30px;
    padding-top:140px;
    font-family:montserrat;
    text-align:center;
    font-size:16pt;
    width:80%;
    margin:auto;
}
.howitworks a {
    color:gold;
    text-decoration:underline;
    font-weight:bold;
}
.howitworks img {
    width:120px;
    padding:10px;
}
.howitworks:before{
    content: "";
	display:inline-block;
    margin: 0 auto;
    width: 60%;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}
	
.section { /* section padding determined to allow for content with relative positioning, such as pictures & info on home page. */
	width: 100%;
	padding-top: 0;
    margin-top:40%;
	padding-bottom: 5%;
	padding-left:5%;
	padding-right:5%
}

.section-2 { /* same as "section", but with less restrictive padding */
	max-width: 100%;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-right: 15%;
	padding-left: 15%;
}

.section-3 { /* same as section 2, but wider (smaller padding). used for content that needs to take up whole section, like contact info/form on home page. */
	max-width: 100%;
	padding-top: 40%;
	padding-bottom: 30px;
	padding-right: 1%;
	padding-left: 1%;
}

.cornflower {
	max-width: 100%;
	background-color: #f9f9f9;
}

.white {
	background-color: white;
}

/* slideshow on welcome page, pos relative for other css elements on top (like arrows) */ 
.slideshow-container {
    display:block;
	margin:auto;
    margin-bottom:200px;
	position: relative;
}

/* hide slideshow images by default (FOR 'BOXES' PAGE) */
.box-slides-container {
  display:none;
  overflow:hidden;
}

/* hide slideshow images by default (FOR 'HOME' PAGE) */
.slides-container {
  position:absolute;
  top:0%;
  display:block;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 0s, opacity 0.5s linear;
  -o-transition: visibility 0s, opacity 0.5s linear;
  transition: visibility 0s, opacity 0.5s linear;
  height:0px;
}
.slides-container:after {
	content: "";
	display: table;
	clear: both;
}
.slides {
	height:40%;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	border:1px solid #f9f9f9;
    width:90%;
    -o-object-fit:cover;
       object-fit:cover;
}

/* home page image "collage" div for tall pictures */
.left-section {
	width:100%;
	padding:0px;
	margin:0px;
	text-align:left;
	display:inline-block;
	float:left;
}
.right-section {
    display:none; /* hide on mobile */
}
.travel-2 {
}
.travel img {
	width:100%;
}
.travel-2 img {
	width:100%;
	-o-object-fit:fill;
	   object-fit:fill;
}
.hidden_details{
    display:none;
    text-align:center;
    color:white;
    background-color:rgba(18, 18, 15, 0.7);
    width:100%;
    position:absolute;
    bottom:1%;
    font-size:9pt;
    padding:0px;
}
.hidden_details p{
    padding:5px;
    margin:0px;
}
.travel-2-left {
	width:48%;
    display:inline-block;
    float:left;
    margin:0 auto;
    margin-right:2%;
}
.travel-2-right {
        width:48%;
        display:inline-block;
        float:left;
        margin:0 auto;
        margin-left:2%;
}
.products {
	max-width:100%;
	max-height:100%;
}
.products img {
	width:50%;
	-o-object-fit:cover;
	   object-fit:cover;
}
.products a{
	text-decoration:none;
	color:black;
}
.products text {
	text-decoration:underline;
}
.travel, .travel-2-left, .travel-2-right, .products, .featured_item {
    position:relative;
}
.featured-carousel .hidden_details {
    bottom:0%;
    width:95%;
    left:2.5%;
    cursor:pointer;
    font-size:10pt;
}
.featured-carousel {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
	position:relative;
}
.featured-carousel img {
	width:95%;
	height:120px;
	-o-object-fit:cover;
	   object-fit:cover;
	margin:auto;
	cursor:pointer;
}
.featured-carousel div:focus, .featured-carousel div:active, .featured-carousel img {
	outline:none;
}

.featured-carousel-brands {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
	position:relative;
}
.featured-carousel-brands img {
	width:70%;
	height:100px;
	-o-object-fit:contain;
	   object-fit:contain;
	margin:auto;
	cursor:default;
}
.featured-carousel-brands div:focus, .featured-carousel-brands div:active, .featured-carousel-brands img {
	outline:none;
}
/* previous & next buttons (arrows on slideshow) */
.prev, .next {
	z-index:5;
	text-decoration:none;
	position:absolute;
	bottom:40%;
	vertical-align:center;
	width:30px;
	cursor:pointer;
    display:none;
}
/* position "next" button to the right */
.next {
	left:100%;
}
/* pos "prev" button to the left */
.prev {
	left:-8%;
}
.prev > img, .next > img {
	width:100%;
	cursor:pointer;
        display:none;
}

.caption-container {
	text-align: center;
	background-color: #222;
	padding: 2px 17px;
	color: white;
}

/* 5 evenly divisible columns, used for thumbnails. decrease width % for more columns. */
.column {
	float: left;
	width: 20%;
}
/* thumbnails are see-through */
.thumbnail {
	max-height: 100px;
	opacity: 0.7;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	border:1px solid #f9f9f9;
    width:100%;
    cursor:pointer;
}
.active, .thumbnail:hover {
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	opacity: 1;
}
.sub-container { /* div for other centered content, which go inside of main page sections */
	text-align: center;
	max-width: 100%;
	position: relative;
	margin-left:5%;
	margin-right:5%;
}
.sub-container:before{
    content: "";
	display:inline-block;
    margin: 0 auto;
    width: 60%;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}
.sub-container-large { /* same as above, but taller*/
	text-align: center;
	max-width: 100%;
	position: relative;
	height: 500px;
}

ul.wrapper { /* For wrapping ul elements, similar to navigation class. Only difference are attribute properties. */
	list-style-type: none;
	background-color: white;
	display: inline-block;
	margin: 0px auto;
	padding: 0px;
    width:auto;
}
.wrapper li {
	float: left;
	padding: 0px;
	margin: 5px;
	height: 170px;
	max-width: 220px;
}
.wrapper li img {
    height:100%;
    width:100%;
    -o-object-fit:cover;
       object-fit:cover;
}

ul.wrapper-2 { /* For wrapping ul elements, specifically "plans" section of home page. */
	list-style-type: none;
	display: inline-block;
	margin: 0px;
	padding: 0px;
}
.wrapper-2 li {
	display:inline-block;
	text-align: left;
	background-color: white;
	border:1px solid black;
	white-space: wrap;
	overflow: hidden;
	width:30%;
    margin:1%;
    font-size:8pt;
    padding:0.2em;
}
.wrapper-2 li > p + p { /* Description for each custom box tier. Set height & overflow scrollbar. */
    height:100px;
    font-size:6pt;
    padding:0.2em;
    overflow:auto;
}
.wrapper-2 li > p + p::-webkit-scrollbar{ /* custom scrollbar for items div (does not work in firefox / edge */
	width:4px;
}
.wrapper-2 li > p + p::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius:5px;
}
/* Handle */
.wrapper-2 li > p + p::-webkit-scrollbar-thumb {
	background: gold;
	border-radius:5px; 
	-webkit-transition:0.2s; 
	transition:0.2s;
}
.plansButton {
	color: white;
	width: 100%;
	text-align: center;
	padding: 10px 5px;
	text-decoration: none;
	display: inline-block;
	background-color:black;
}

ul.wrapper-3 { /* For wrapping ul elements, specifically "get in touch" section of home page*/
	list-style-type: none;
	background-color: white;
	display: inline-block;
    margin:auto;
	margin-top: 80px;
	padding: 0px;
}
.wrapper-3 li {
    display:inline-block;
	text-align: left;
	padding: 0px;
	margin: 0px;
	max-width: 250px;
	background-color: white;
	max-height: 450px;
	white-space: wrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
}

.section-4 { /* emulates page design of "boxes" page table, used to apply same design across pages like boxes and quiz */
	padding:10px;
	margin-left:1%;
	margin-right:1%;
	margin-top:30%;
	margin-bottom:20px;
	display:block;
	width:auto;
}
.section-4 h2 {
	color:black;
}

.section-footer {
	text-align: center;
	max-width:100%;
	padding:20px;
	margin-top:30%;
}

.input-div { /* for styling input areas such as input boxes on quiz page. reduces max width to 60% */
	margin:auto;
	max-width:100%;
	color:black;
}

/* table for gallery images on home page */
table.squares {
	margin: auto;
    border-collapse:collapse;
}

.squares td {
	border: none;
    height:100px;
    width:100px;
    position:relative;
    margin:0px;
    padding:5px;
}
.squareImg {
	width: 100%;
	height: 100%;
    -o-object-fit:cover;
       object-fit:cover;
    cursor:pointer;
}
.squareImg:focus, .squareImg:active {
    -webkit-touch-callout: none; /* removes blue highlight on fast click */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
	text-decoration:none;
}

.imgZoom {
    position:fixed;
    left:0;
    top:35%;
    width:100%;
    height:50%;
    z-index:3;
    background: rgba(0,0,0,0) none 50% / contain no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    visibility:hidden;
    opacity:0;
}
.imgZoom.zoom {
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
/*
.squareImg:hover {
    z-index:3;
    transition: height 1s, width 1s, z-index 0.5s;
    width:200px;
    height:200px;
    position:absolute;
    top:0;
}*/
.gallButton {
	text-decoration: none;
	border: 1px solid black;
	background-color: white;
	color: black;
	width: 80%;
	height: 10px;
	text-align: center;
	padding: 10px;
	padding-bottom: 10px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	font-weight: normal;
}

/* FORMS -------------------------------------------------------------------------------- */
/*********** STYLES INPUT FIELDS ON REGISTER PAGE ***********/
.input-error {
	color:red;
}
.input-text {
	padding:5px;
	width: 100%;
	margin-bottom:5px;
}
.input-text-half {
	padding:5px;
	width: 50%;
	margin-bottom:5px;
}
.input-username {
	padding:5px;
	width: 30%;
	margin-bottom:5px;
}
input[type=text]:focus, select:focus {
	outline: none;
	border: 2px solid gold;
	border-radius: 2px;
}
input:active { /* remove default background & border from input that is active */
    background-color:white;
    border:none;
    outline:none;
}

.input-password {
	padding:5px;
	width: 30%;
	display: inline-block;
	margin-bottom: 5px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

input[type=password]:focus {
	outline: none;
	border: 2px solid gold;
	border-radius: 2px;
}
/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */
/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */

.survey { /* div that changes content based on first answer selection. uses ajax to render page content asynchronously*/
	display:none;
}

.survey img {
	max-width:80%;
}

.survey-hidden-age { /* hidden survey question, only displays if age = 21 (or over) */
	display: none;
	padding:30px;
	color:black;
	margin:auto;
	background-color:white;
	border:1px solid black;
	max-width:60%;
	horizontal-align:center;
}
.survey-hidden-female { /* hidden survey question, only displays if gender = "female" */
	display: none;
	padding:30px;
	margin:auto;
	max-width:100%;
	color:black;
	background-color:white;
	border:1px solid black;
}
.survey-hidden-male { /* hidden survey question, only displays if gender = "male" */
	display: none;
	padding:30px;
	margin:auto;
	max-width:100%;
	color:black;
	background-color:white;
	border:1px solid black;
}

.textarea {
	font-family:calibri;
	resize: none;
	width: 100%;
	height: 200px;
	display: inline-block;
	padding: 5px;
	margin-bottom: 5px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
.textarea:focus {
	outline: none;
	border: 2px solid gold;
}

/* hover not needed on mobile
input[type=checkbox]:hover + label > p{
	opacity: 1;
	border-width: 1px;
	border-color: #AFEEEE;
	border-color: gold;
}*/

input[type=submit] {
	font-family: Georgia, Sans-serif;
	width: 100%;
	background-color: white;
	color: black;
	padding: 14px 20px;
	margin: 8px 0;
	border: 1px solid black;
	cursor: pointer;
	font-weight: bold;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

input[type=submit]:active {
	outline: none;
	border-color: gold;
	/* color: #AFEEEE; */
}


/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */
/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */
/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */

ul.wrapper-answers { /* For wrapping ul elements, specifically  survey answer boxes */
	padding:0px;
	margin:0px;
}
.wrapper-answers li {
	vertical-align:top;
	display:inline-block;
	padding:0px;
	margin:5px;
}

/*ul.wrapper-answers:after {
	content: "";
	clear: both;
	display: table;
}*/

/* customizes labels for designing question answer choices (FOR FIRST RADIO BUTTON QUESTION ----) */
.radio-box {
	font-family: Calibri, Verdana, Sans-serif;
	font-size: 14px;
	text-align: center;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	opacity: 0.5;
	font-weight: bold;
	margin: auto;
	padding:30px;
	width:300px;
	border: 1px solid black;
}
input[type=radio]{
	display:none;
}
input[type=radio]:checked + label .radio-box { /* highlights first choice "gimme all the goodies" or "send all the goodies to someone else" when clickd */
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}


/* customizes labels for designing question answer choices */
.box {
	display:block;
	font-size: 14px;
	text-align: center;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	border: solid black 2px;
	opacity: 0.5;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
	font-weight: bold;
	margin:auto;
	vertical-align:middle;
	width:230px;
	padding:20px;
	text-decoration:none;
}

.box:focus{
	outline:0px;
}
.box.yesBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.noBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.yesBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.noBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.femaleBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.maleBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bothBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.neitherBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.martianBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
/*for second survey */
.box.femaleBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.maleBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bothBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.neitherBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.martianBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
/* second set of answers for "trip type" question */
.box.girlsguysBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.soloBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.familyBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.baeBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

/* third set of answers for "vehicle" question */
.box.trainBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.planeBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.automobileBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.shipBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.protectiveBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.washandgoBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.flatironBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.colorBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.scrunchieBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.hairBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
/* box classes for VERY first question, for which survey to display. self or other */
.box.selfBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.otherBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.econBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bclassBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.fclassBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.econBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bclassBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.fclassBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}


/* customizes wrapper for "scale" questions */
.scale {
	display:inline-block;
	padding:0px;
}
.scale li {
	text-align:center;
	float:left;
	padding:5px;
	margin:1px;
	font-size:9px;
	list-style-type: none;
	border:1px solid black;
	background-color:#f9f9f9;
	cursor:pointer;
}
.scale input[type=radio]{
	display:none;
}
.scale input[type=radio]:checked + label li {
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
	background-color:gold;
}

.selection { /* ul wrapper for checkboxes on bottom of page */
	margin:auto;
	padding:0px;
}
.selection li{ 
	margin:auto;
	padding:1px;
}

/* styling for checkbox answers, found on quiz page */
input[type=checkbox] {
	display:none;
}
input[type=checkbox] + label > p {
	text-align:left;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	border: 1px solid black;
	opacity: 0.7;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
	font-size: 14px;
	padding:10px;
	margin:0px;
	width:100%;
}
input[type=checkbox]:checked + label > p{
	opacity: 1;
	border-width: 1px;
	/*border-color: #AFEEEE;*/
	border-color: gold;	
}
.checkmark { /* checkmark that goes inside of checkbox divs */
	color:black;
	font-weight:bold;
	float:right;
	display:none;
}

input[type=checkbox]:checked + label > p > .checkmark { /* unhide checkmark on click */
	display:block;
}


/* STYLING FOR TRAVEL BOXES PAGE HERE */
/* STYLING FOR TRAVEL BOXES PAGE HERE */
/* STYLING FOR TRAVEL BOXES PAGE HERE */

.squares-2 {
	display:none; /* HIDES DESKTOP TABLE FOR MOBILE SCREEN */
}
.squares-2-mobile { /* replaces "squares-2" table class, with "squares-2-mobile" UL wrapper class, for mobile / small displays. */
	height:100%;
	width:100%;
	margin: auto;
	margin-bottom: 35%;
	padding:0px;
	list-style-type:none;
}
.squares-2-mobile .content-container{ /* cells that contain box picture, caption, and more info / buy buttons. */
	display:inline-block;
	margin:0px;
	padding:5px;
	width:150px;
}
.squares-2-mobile a.container{ /* box picture goes here */
	cursor:pointer;
	background-color:white;
    border:1px solid black;
    padding:10px;
	display: block;
	color: white;
	text-decoration: none;
	margin:auto;
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
    text-align:center;
}
.squares-2-mobile .container > img {
    width:70px;
    -o-object-fit: cover;
       object-fit: cover;
}

.squares-2-mobile a {
    text-decoration: none;
    color:black;
}
.squares-2-mobile .info {
	color:black;
	padding:5px;
	border:0.5px solid gold;
	background-color:white;
	margin:0px;
	height:200px;
}
.panel-container{
	display:none; /* hide on mobile */
}
.panel { /* div style for "items" and "buy" divs / containers, displayed when buy or "what's in it" buttons clicked */
	display:none; /* replaced by mobile classes */
}
.panel-mobile { /* div style for "items" and "buy" divs / containers */
	padding: 5px;
	text-align: center;
	background-color: white;
	border-left:none;
	font-size:10px;
}
.panel-mobile.items ul { /* left-justify items in information div */
	padding:5px 15px;
	text-align: left;
	color: black;
	height:100px;
	border-bottom:0.5px solid gold;
    overflow:auto;
}
.panel-mobile.items ul::-webkit-scrollbar{ /* custom scrollbar for items div (does not work in firefox / edge */
	width:8px;
}
.panel-mobile.items ul::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius:5px;
}
/* Handle */
.panel-mobile.items ul::-webkit-scrollbar-thumb {
	background: #888;
	border-radius:5px; 
	-webkit-transition:0.2s; 
	transition:0.2s;
}
/* Handle on hover */
.panel-mobile.items ul::-webkit-scrollbar-thumb:hover {
	background: black;
	cursor:pointer;
}
.panel-mobile.purchasePanel p {
    font-weight:bold;
    font-size:12pt;
    margin:0px;
	padding:5px;
    color:black;
	cursor:default;
}

.content { /* on mobile, contains all box content including panel divs. */
	float:left;
	padding: 10px;
	text-align: center;
	background-color: white;
	margin:0px;
	height:175px;
	width:140px;
}
.content button {
	font-size:10px;
	padding: 5px 10px;
	background-color: black;
	border: solid 1px gold;
	cursor:pointer;
}
.content button:focus {
	outline:none;
}
.content button:active {
	color:gold;
}
.content button:after {
	content:'';
}
.content input[type=number] {
	padding:5px;
	border:none;
	text-align:center;
	width:25px;
}
p.caption {
 	text-align: center;
	border-bottom: 1px solid gold;   
	color:black;
	font-weight:bold;
	margin:5px;
	/*border:1px solid black;
	border-top:none;*/
	background-color:white;
	padding:5px;
	height:30px;
	font-size:10px; /* smaller font size for mobile */
}

/* Number input for adding to cart */
input[type=number] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

input[type=number]:focus {
	outline: 1px solid gold;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
}
/*a, a:active, a:focus, a:hover, img:active {
    -webkit-touch-callout: none; /* removes blue highlight on fast click 
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
	text-decoration:none;
}*/

/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/* Container for entire product page. Controls outer margins. */
.section-product {
	width: 100%;
	padding-top: 45%;
	padding-bottom: 5%;
    padding-left:10%;
    padding-right:10%;
}
.product-1 {
	width: 100%;
	position: relative;
    margin:auto;
}
.product-carousel {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
    margin-top:0;
	position:relative;
}
.product-carousel img {
	width:100%;
	height:175px;
	margin:auto;
	cursor:default;
    -o-object-fit:contain;
       object-fit:contain;
}
.product-carousel div:focus, .product-carousel div:active, .product-carousel img {
	outline:none;
}
/* previous & next buttons (arrows on slideshow) */
.prev-product, .next-product {
	z-index:3;
	text-decoration:none;
	position:absolute;
	bottom:40%;
	vertical-align:center;
	width:30px;
	cursor:pointer;
}
.next-product {
    left:90%;
}
.prev-product {
    right:90%;
}
.prev-product > img, .next-product > img {
	width:100%;
	cursor:pointer;
}
.product-details {
    text-align:left;
    font-family:lora;
    margin:auto;
    height:100%;
    font-size:10pt;
}
.product-details h3 {
    font-family:montserrat;
}

/* "add to cart" button */
.add {
    font-family:montserrat;
    margin:auto;
    background-color:black;
    color:white;
    padding:10px;
    font-size:12pt;
    border:none;
    border-radius:3px;
    cursor:pointer;
}
/*.add:after { /* add button styling, adds product to cart 
    content: "";
    display: block;
    margin: 0 auto;
    width: 100%;
    padding-top: 5px;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want.   
}*/
.added {
    display:none;
    position:fixed;
    top:35%;
    left:10%;
    width:80%;
    padding:40px 10px;
    border:1px solid black;
    background-color:white;
    z-index:6;
}
.added a {
    color:black;
    font-weight:bold;
    text-decoration:underline;
}
.close {
    position:absolute;
    top:-5%;
    right:0%;
    z-index:7;
    padding:10px;
    font-size:16pt;
    font-weight:bold;
    cursor:pointer;
}
.product-details button:focus {
	outline:none;
}
.product-details input[type=number] {
	border:none;
	padding:5px;
	text-align:center;
	width:30%;
}
.number-input { /* - +, number input container */
	width:150px;
    background-color:white;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
	text-align:center;
    padding:0px;
    margin:auto;
    margin-top:0px;
}
.number-input button, .number-input input[type=number] {
    font-size:20pt;
    background-color:white;
    border:none;
    cursor:pointer;
}
.pricetag{
    padding:0px; 
    margin-top:10px; 
    margin-bottom:0px;
    color:black;
    background-color:white;
}
/* Enlarged box preview images visible on click */
.imgPreview {
    position:fixed;
    left:0;
    top:0;
    width:90%;
    height:100%;
    margin-left:5%;
    z-index:5;
    background: rgba(0,0,0,0) none 50% / contain no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    visibility:hidden;
    opacity:0;
}
.imgPreview.show {
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}

/* STYLING FOR WELCOME PAGE HERE *******/
/* STYLING FOR WELCOME PAGE HERE *******/
/* STYLING FOR WELCOME PAGE HERE *******/

.section-4-welcome { /* section 4 with margins modified to fill for welcome page */
	margin-top:30%;
	height:100%;
	display:block;
	width:auto;
	/*border:1px solid gold;*/
}

.welcome-1 { /* styling for first column div on welcome page, under "my account" */
	margin:0px;
	padding-top:0px;
	font-family:calibri;
	width:100%;
}
.welcome-1 table {
	font-size:10px;
	width:100%;
	border-collapse: collapse;
}
.welcome-1 th {
	border:0.5px solid #c3c3c3;
	color:white;
	padding:10px;
	background-color:black;
	text-align:center;
}
.welcome-1 td {
	border:0.5px solid #c3c3c3;
	color:black;
	padding:0px;
	margin:0px;
}
.welcome-1 td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	margin:0px;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.welcome-1 td > a:hover {
	background-color:gold;
}
.active-link { /* highlights active link */
	background-color:gold;
}

.welcome-2 { /* styling for second column div on welcome page, under "Hello <user>..." */
	color:black;
	margin:auto;
	padding-top:10px;
	width:100%;
	font-size:10px;
	height:100%;
}
.welcome-2 .div-class {
	font-size:10px;	
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
}

.welcome-2 table.orders { /* styles order history table */
	font-size:10px;
	border-collapse: collapse;
	margin:auto;
}
.orders th {	
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:10px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.orders td {
	border-bottom:1px solid gray;
	color:black;
	padding:10px;
    width:50px;
	background-color:#F5F5F5;
	text-align:center;
}
.orders td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	background-color:gold;
	text-align:center;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.orders td > a:hover {
	background-color:gold;
}

.welcome-2 table.account_info { /* styles account details table */
	width:100%;
	border-collapse: collapse;
	font-size:10px;
}
.account_info th {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.account_info td {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	text-align:left;
}
.account_info td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	background-color:gold;
	text-align:center;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.account_info td > a:hover {
	background-color:gold;
}

/* STYLING FOR CART PAGE HERE ****/
/* STYLING FOR CART PAGE HERE ****/
/* STYLING FOR CART PAGE HERE ****/
.section-4-cart { /* section 4 with margins modified to fill for welcome page */
	position:relative;
	margin:auto;
	margin-top:30%;
	height:100%;
	width:100%;
	text-align:center;
	padding:0px;
	/*border:1px solid gold;*/
}
.section-4-cart:after{
	content: "";
	display: table;
	clear: both;
}
.cart-1 { /* styling for column div on cart page */
	color:black;
	margin:0px;
	padding-top:0px;
	width:100%;
	max-height: 100%;
}
.cart-1 .div-class {
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
	font-size:11px;
	width:100%;
	margin:auto;
}
.cart-1 table.orders { /* borrowed from welcome page styling*/
	width:100%;
	padding:0px;
	border-collapse: collapse;
	font-size:10px;
	margin:auto;
}
.cart-1 .orders th {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:50px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.cart-1 .orders th > a {
    color:black;
}
.cart-1 .orders td {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px 0px;
	max-width:80px;
	background-color:white;
	text-align:center;
}
.cart-1 .orders td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	text-align:center;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.checkout-button {
    background-color:black;
    padding:15px 0px;
    float:right;
    color:white;
    width:100%;
    text-decoration:none;
    font-size:10pt;
}
.cart-1 button {
    font-size:10pt;
    background-color:white;
    cursor:pointer;
    border:none;
    text-align:center;
}
.cart-1 button:focus {
    outline:none;
}
.cart-1 input[type=number]{
    width:2em;
    text-align:center;
    border:none;
}
.cart-1 img {
    width:50px;
    -o-object-fit:contain;
       object-fit:contain;
}

/****** LOGIN PAGE STYLING *******/
/****** LOGIN PAGE STYLING *******/
/****** LOGIN PAGE STYLING *******/
.section-4-login { /* emulates page design of "boxes" page table, used to apply same design across pages like boxes and quiz */
	padding-top:30%;
	margin-left:5%;
	margin-right:5%;
	margin-top:20px;
	display:block;
	width:auto;
	text-align:center;
	font-family:montserrat, roboto;	
}
.section-4-login h2 {
	color:black;
	margin:auto;
	font-size:34px;
    margin-bottom:10px;
}
.section-4-login h2:after {
    content: "";
    display: block;
    margin: 0 auto;
    width: 30%;
    padding-top: 5px;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}
.section-4-login .header {
	text-align:center;
	position:relative;
	color:white;
	font-size:10px;
	padding:0px;
	font-family:montserrat, roboto;
	background:black;
	border:1px solid gold;
	border-collapse:collapse;
	margin:auto;
	width:70%;
    z-index:3;
}
.section-4-login .header td {
	border:1px solid white;
	padding:0px 10px;
	max-height:20px;
}

.section-4-login input[type=text] {
	margin:5px;
	width:70%;
	padding:10px 30px;
}

.section-4-login input[type=password] {
	margin:5px;
	width:70%;
	padding:10px 30px;
}
.section-4-login input[type=submit] {
	margin:5px;
	width:70%;
	padding:10px 30px;
}
.section-4-login a {
	text-decoration:none;
	color:black;
	margin:auto;
	padding:10px;
}

/* CHECKOUT PAGE STYLING ***************/
/* CHECKOUT PAGE STYLING ***************/
/* CHECKOUT PAGE STYLING ***************/
.section-4-checkout { /* container for checkout page form */
	height:100%;
    padding-top:0px;
	display:block;
	width:auto;
	font-family:montserrat, roboto;	
	background-color:white;
    font-size:9px;
}
.section-4-checkout:after{
	content: "";
	display: table;
	clear: both;
}
.section-4-checkout .div-class { /* style for divs at top of page (like "Returning customer?" & "Have a coupon?") */
	background-color:#F5F5F5;
	color:gold;
	text-align:left;
	padding:10px 10px;
	font-size:12px;
}
.section-4-checkout .div-class a{
	color:black;
    text-decoration:underline;
}

.section-4-checkout input[type=text] {
	width:100%;
	padding:5px;
	border:1px solid #c3c3c3;
	border-radius:3px;
    font-size:10px;
}
.section-4-checkout select {
	width:100%;
	padding:5px;
	border:1px solid #c3c3c3;
	border-radius:3px;
    font-size:10px;

}
#card-element{
    border:1px solid #c3c3c3; border-radius: 3px; padding: 5px 5px;
    font-size: 8px;
    width:95%;
    position:absolute;
}

.checkout-1 { /* styling for first column div on checkout page, under "my account" */
	display:inline-block;
    float:left;
	margin:0px;
	font-family:calibri;
	width:50%;
	text-align:left;
    color:black;
    background-color:white;
}
.checkout-1 input:focus{
	outline:1px solid gold;
}
#first-row{
    margin-top:30px;
}
.checkout-1 .textarea{
    height:50px;
    font-size:9px;
}
.form-row {
	width:100%;
	display:inline-block;
    padding:0px;
}
.form-item {
	width:98%;
	/* border:1px solid #c3c3c3; */
	float:left;
	margin-top:0px;
	margin-left:2%;
	margin-bottom:2%;
}
.checkbox-container { /* checkbox container */
	display: block;
	position: relative;
	padding-left: 25px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.checkbox-container input { /* hide default browser checkbox */
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkmark-1 { /* custom checkbox */
	position: absolute;
	top: 0;
	left: 0;
	height: 15px;
	width: 15px;
	background-color: white;
	outline:0.5px solid black;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
}
.checkbox-container input:checked ~ .checkmark-1{
	background-color:gold;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkbox-container .checkmark-1:after {
	content: "";
	position: absolute;
	display: none;
}
/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark-1:after {
	display: block;
}
.checkbox-container .checkmark-1:after {
	left: 5px;
	top: 3px;
	width: 2px;
	height: 5px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.checkout-2 { /* styling for second column div on checkout page, under "Hello <user>..." */
    display:inline-block;
    float:left;
	border-radius:3px;
	background-color:#f9f9f9;
	color:black;
	padding:0px;
    margin:0px;
    margin-left:5%;
    margin-top:50px;
	font-family:calibri;
	width:40%;
}
.checkout-2 .div-class {
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
	font-size:14px;
}
.checkout-2 table{
	border-collapse:collapse;
}
.checkout-2 th{
	width:5px;
    height:0px;
}
.checkout-2 td{
	border-bottom:1px solid #c3c3c3;
	background-color:#f9f9f9;
	padding:5px;
	text-align:left;
}
.checkout-2 button { /* applies to "PAY" button on checkout page */
	display:block;
    padding:5px;
    margin:auto;
    margin-top:5%;
    margin-bottom:0px;
	cursor:pointer;
	background-color:black;
	color:white;
	border:none;
    border-radius:3px;
    font-size:10px;
}
.checkout-2 p{
    margin:auto;
    padding:5px;

}
.checkout-2 a{
	font-weight:bold;
	cursor:pointer;
	color:black;
    text-decoration:underline;
}
.checkout-2 img{
    height:40px;
    width:40px;
}

.loading {
    position:fixed;
    top:25%;
    left:7.5%;
    text-align:center;
    background-color:white;
    color:black;
    width:85%;
    padding:100px;
    outline:1px solid gold;
    z-index:-2;
    opacity:0;
    -webkit-transition:0.3s;
    -o-transition:0.3s;
    transition:0.3s;
}
.loader {
    border: 10px solid #f3f3f3;
    border-radius: 50%;
    border-top: 10px solid gold;
    width: 40px;
    height: 40px;
    -webkit-animation: spin 2s linear infinite; /* Safari */
    animation: spin 2s linear infinite;
    margin:auto;
}

.close-button-process {
    position:absolute;
    outline:1px solid black;
    border-radius:3px;
    top:5%;
    right:5%;
    padding:5px 10px;
    background-color:white;
    color:black;
    cursor:pointer;

}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}


/****** QUIZ COMPLETE & QUIZ ANSWERS PAGES ****/
/****** QUIZ COMPLETE & QUIZ ANSWERS PAGES ****/
.answers {
    font-weight:bold;
    padding:15px;
}
.answers p{
    color:black;
}

/* GALLERY PAGE ******/
/* GALLERY PAGE ******/
/* GALLERY PAGE ******/

.section-gallery {
    padding-top:35%;
}
.section-gallery table { /* gallery "photos from our jetsetters" table */
	margin: auto;
    border-collapse: collapse;
    border-spacing: 0;
}
.section-gallery table td { /* table cells containing images */
    background-color:white;
    border:5px solid white;
    padding:0px;
}
.section-gallery img { /* gallery photos */
    width:100px;
    height:100px;
    padding:0px;
    margin:0px;
    display:block;
    cursor:pointer;
    -o-object-fit:cover;
       object-fit:cover;
}
.instZoom { /* enlarged image preview. visible after any image is clicked (see init_gallery.js) */
    position:absolute;
    left:1%;
    top:1%;
    z-index:3;
    background: rgba(0,0,0,0) none 50% / cover no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    height:98%;
    width:59%;
    border:2px solid #f2f2f2;
    border-top-left-radius:0.5%;
    border-bottom-left-radius:0.5%;
}
.instagram_preview { /* instagram image preview & user info container. hidden until image is clicked*/
    position:fixed;
    top:25%;
    left:7.5%;
    visibility:hidden;
    opacity:0;
    width:85%;
    height:70%;
    z-index:8;
    background-color:white;
    border-radius:0.5%;
	-webkit-box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.instagram_preview.visible { /* set visibility to 'visible' and opacity to 1 when class "visible" added by click*/
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.instagram_info {
    height:98%;
    width:40%;
    right:1%;
    top:1%;
    background-color:#f2f2f2;
    border:2px solid #f2f2f2;
    color:black;
    position:absolute;
    border-top-right-radius:0.5%;
    border-bottom-right-radius:0.5%;
    overflow:hidden;
    overflow-wrap:break-word;
}
.instagram_info a{
    color:gold;
    text-decoration:none;
}
.instagram_info p{
    font-size:8pt;
    color:black;
    background-color:white;
    margin:0px;
    padding:5px;
    padding-top:60%;
    height:100%;
}

/* NEWS TICKER ON HOME PAGE ******/
/* NEWS TICKER ON HOME PAGE ******/
/* NEWS TICKER ON HOME PAGE ******/
  @-webkit-keyframes ticker {
    0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
    100% { -webkit-transform: translate3d(-200%, 0, 0); transform: translate3d(-200%, 0, 0); }
  }
  @keyframes ticker {
    0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
    100% { -webkit-transform: translate3d(-200%, 0, 0); transform: translate3d(-200%, 0, 0); }
  }
  .tcontainer{
    width: 100%;
    margin:auto;
    overflow: hidden;
  }
  .ticker-wrap {
    width: 100%;
    background-color: black;
    color:yellow;
    font-size:8pt;
  }
  .ticker-move {
    display: inline-block;
    white-space: nowrap;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-name: ticker;
            animation-name: ticker;
    -webkit-animation-duration: 15s;
            animation-duration: 15s;
    width:100%;
    margin-left:100%;
  }
  .ticker-item{
    display: inline-block;
    padding: 0.25rem 2rem;
  }

} /* not loose bracket, don't delete */
/*  END MOBILE STYLING ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
/*  END MOBILE STYLING ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
/*  END MOBILE STYLING ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
/*  END MOBILE STYLING ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */


































@media screen and (min-width: 768px) { /* for when the device display is computer-sized */
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

html{ overflow-y: scroll;}

.mobile-only { /* hides mobile content */
	display:none;
}
	
.topBar { /* top logo & separator bar */
	font-family: montserrat;
    color:black;
    background-color:white;
    font-size:30pt;
    font-weight:1000;
	text-align:center;
	margin:auto;
	vertical-align:top;
}
.topBar a{
	color:black;
    text-decoration:none;
	
}
.topBar sup{
    color:gold;
}

.header {
	background-color:white;
	padding:0px;
}
.navigation {
	background-color:black;
}
.navbar {
	padding:0px;
	margin:0 0;
	display:inline-block;
}
.navbar a {
	text-decoration:none;
	color:white;
}
.navcontent {
	display:inline-block;
	margin:auto;
	vertical-align:top;
	cursor:pointer;
	padding:15px;
}
.navcontent:hover, .navcontent:hover > a, .navcontent:hover > .shopping-cart > a {
	color: black;
	background-color:white;
}

.right {
	/* float:right; */
}

		
/*li.dropdown { /* LIST ITEM (li) that contains the button that turns into dropdown, INSIDE of nav bar (ul) 
	display: inline-block;
    }
	
.dropdown-content {  /* Links displayed INSIDE drop down menu 
	display: none;
	position: absolute;
	background-color: white;
	min-width: 160px;
	-webkit-box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
	}

.dropdown-content a {
	color: black;
	padding: 12px 16px;
	text-decoration: none;
	display: none;
	text-align: left;
	-webkit-transition: 0.1s;
	-o-transition: 0.1s;
	transition: 0.1s;
	}
	
.dropdown:hover .dropdown-content a {
	display: block;
	}*/



	
/* Main page background color */
body {
	font-family:lora;
	/*font-family:montserrat;*/
	background-color: white;
	margin:0px;
	padding:0px;

}
	
/* Main container div class */
div.main-container {
	text-align: center;
	background-color: white;
	padding:0px;
	padding-bottom: 0px;
}

.howitworks {
    padding:30px;
    font-family:montserrat;
    text-align:center;
    font-size:16pt;
    width:50%;
    margin:auto;
}
.howitworks a {
    color:gold;
    text-decoration:underline;
    font-weight:bold;
}
.howitworks img {
    width:120px;
    padding:10px;
}
.howitworks:before{
    content: "";
	display:inline-block;
    margin: 0 auto;
    width: 60%;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}

.section { /* section padding determined to allow for content with relative positioning, such as pictures & info on home page. */
	width: 100%;
	padding-top: 5%;
	padding-bottom: 5%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	padding-left:25%;
	padding-right:25%
}

.section-2 { /* same as "section", but with less restrictive padding */
	max-width: 100%;
	padding-top: 80px;
	padding-bottom: 30px;
	padding-right: 20%;
	padding-left: 20%;
}

.section-3 { /* same as section 2, but wider (smaller padding). used for content that needs to take up whole section, like contact info/form on home page. */
	max-width: 100%;
	padding-bottom: 10px;
	padding-right: 1%;
	padding-left: 1%;
}

.section-4 { /* emulates page design of "boxes" page table, used to apply same design across pages like boxes and quiz */
	padding-top:10px;
	margin-left:15%;
	margin-right:15%;
	margin-top:20px;
	display:block;
	width:auto;
}


.section-footer {
	text-align: center;
	max-width:100%;
	padding:50px;
}

.cornflower {
	background-color: #f9f9f9;
}

.white {
	background-color: white;
}


p {
	line-height:24px;
}
h2 {
	font-family:montserrat;
	color:black;
}



/* IMAGE / SLIDESHOW GALLERY ---------------------------------------------- */
/* slideshow on welcome page, pos relative for other css elements on top (like arrows) */ 
.slideshow-container {
    display:inline-block;
	margin:auto;
    margin-bottom:550px;
	position: relative;
    width:100%;
    height:300px;
    text-align:center;
}

/* hide slideshow images by default (FOR 'BOXES' PAGE) */
.box-slides-container {
  display:none;
  overflow:hidden;
}

/* hide slideshow images by default (FOR 'HOME' PAGE) */
.slides-container {
  position:absolute;
  top:0%;
  display:block;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 0s, opacity 0.5s linear;
  -o-transition: visibility 0s, opacity 0.5s linear;
  transition: visibility 0s, opacity 0.5s linear;
  width:100%;
  margin:auto;

}

/* home page image "collage" div for tall pictures */
.left-section {
	width:60%;
	padding:0px;
	margin:0px;
	text-align:left;
	display:inline-block;
	float:left;
}
.right-section {
	width:40%;
	margin:0px;
	margin-left:2.5%;
	padding:0px;
	display:inline-block;
	text-align:left;
}
.travel-2 {
}
.travel img {
	width:100%;
}
.travel-2 img {
	width:100%;
	-o-object-fit:fill;
	   object-fit:fill;
}
.hidden_details{
    display:none;
    text-align:center;
    color:white;
    background-color:rgba(18, 18, 15, 0.7);
    width:100%;
    position:absolute;
    bottom:1%;
    font-size:9pt;
    padding:0px;
}
.hidden_details p{
    padding:5px;
    margin:0px;
}
.travel-2-left {
	width:48%;
    display:inline-block;
    float:left;
    margin:0 auto;
    margin-right:2%;
}
.travel-2-right {
	width:48%;
    display:inline-block;
    float:left;
    margin:0 auto;
    margin-left:2%;
}
.products {
	max-width:100%;
	max-height:100%;
}
.products img {
	width:100%;
	-o-object-fit:cover;
	   object-fit:cover;
}
.products a{
	text-decoration:none;
	color:black;
}
.products text {
	text-decoration:underline;
}
.travel, .travel-2-left, .travel-2-right, .products, .featured_item {
    position:relative;
}
.featured-carousel .hidden_details {
    bottom:0%;
    width:90%;
    left:5%;
    cursor:pointer;
}

.featured-carousel {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
	position:relative;
}
.featured-carousel img {
	width:90%;
	height:250px;
	-o-object-fit:cover;
	   object-fit:cover;
	margin:auto;
	cursor:pointer;
}
.featured-carousel div:focus, .featured-carousel div:active, .featured-carousel img {
	outline:none;
}

.featured-carousel-brands {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
	position:relative;
}
.featured-carousel-brands img {
	width:70%;
	height:200px;
	-o-object-fit:contain;
	   object-fit:contain;
	margin:auto;
	cursor:default;
}
.featured-carousel-brands div:focus, .featured-carousel-brands div:active, .featured-carousel-brands img {
	outline:none;
}
/* previous & next buttons (arrows on slideshow) */
.prev, .next {
	z-index:5;
	text-decoration:none;
	position:absolute;
	bottom:35%;
	vertical-align:center;
	width:30px;
	cursor:pointer;
}
/* position "next" button to the right */
.next {
	left:100%;
}
/* pos "prev" button to the left */
.prev {
	left:-3%;
}
.prev > img, .next > img {
	width:100%;
	cursor:pointer;
}

.caption-container {
	text-align: center;
	background-color: #222;
	padding: 2px 17px;
	color: white;
}

/* 5 evenly divisible columns, used for thumbnails. decrease width % for more columns. */
.column {
	float: left;
	width: 20%;
}
/* thumbnails are see-through */
.thumbnail {
	max-height: 100px;
	opacity: 0.7;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	border:1px solid #f9f9f9;
    width:100%;
    cursor:pointer;
}
.active, .thumbnail:hover {
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	opacity: 1;
}
.sub-container { /* div for other centered content, which go inside of main page sections */
	text-align: center;
	max-width: 100%;
	position: relative;
	margin-left:20%;
	margin-right:20%;
}
.sub-container:before{
    content: "";
	display:inline-block;
    margin: 0 auto;
    width: 60%;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}
.sub-container-large { /* same as above, but taller*/
	text-align: center;
	max-width: 100%;
	position: relative;
	height: 500px;
}

ul.wrapper { /* For wrapping ul elements, similar to navigation class. Only difference are attribute properties. */
	list-style-type: none;
	background-color: white;
	display: inline-block;
	margin: 0px auto;
	padding: 0px;
    width:auto;
}
.wrapper li {
	float: left;
	padding: 0px;
	margin: 5px;
	height: 170px;
	max-width: 220px;
}
.wrapper li img {
    height:100%;
    width:100%;
    -o-object-fit:cover;
       object-fit:cover;
}

ul.wrapper-2 { /* For wrapping ul elements, specifically "plans" section of home page. */
	list-style-type: none;
	display: inline-block;
    width:100%;
	margin: 0px;
	padding: 0px;
}
.wrapper-2 li {
	display:inline-block;
	text-align: left;
	background-color: white;
	border:1px solid black;
	white-space: wrap;
	overflow: hidden;
	width:250px;
    height:300px;
    margin:1%;
	padding:5px;
}

.wrapper-2 li p {
    vertical-align:top;
}

.plansButton {
	color: white;
	width: 100%;
	height: 40px;
	text-align: center;
	padding: 10px;
	padding-bottom: 15px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	text-decoration: none;
	display: inline-block;
	opacity:1;
	background-color:black;
}

ul.wrapper-3 { /* For wrapping ul elements, specifically "get in touch" section of home page*/
	list-style-type: none;
	background-color: white;
	display: inline-block;
	margin:auto;
	margin-top: 80px;
	padding: 30px;
}
.wrapper-3 li {
	float: left;
	text-align: left;
	padding: 10px;
	margin: auto;
	width: 300px;
	background-color: white;
	max-height: 450px;
	white-space: wrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
}

	
/* REPLACED BY FEATURED ITEMS CAROUSEL
table.squares-featured { /* featured items table 
    margin:auto;
    border-collapse:collapse;
}
.squares-featured td {
    padding:5px;
    margin:0px;
}
.squares-featured td img {
	width: 275px;
    height:275px;
    object-fit:cover;
}*/

table.squares { /* "photos from our jetsetters" table */
	margin: auto;
    border-collapse:collapse;
}
.squares td {
    padding:0px;
    margin:0px;
    position:relative;
}
.squares td:hover{
    z-index:2;
}
.squareImg {
    padding:0.5em;
	width: 200px;
	height: 200px;
    cursor:pointer;
    -o-object-fit:cover;
       object-fit:cover;
    -webkit-transition:0.5s;
    -o-transition:0.5s;
    transition:0.5s;
}
.squareImg:hover {
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}

.imgZoom {
    position:fixed;
    left:0;
    top:10%;
    width:100%;
    height:80%;
    z-index:3;
    background: rgba(0,0,0,0) none 50% / contain no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    visibility:hidden;
    opacity:0;
}
.imgZoom.zoom {
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}

.gallButton {
	text-decoration: none;
	border: 1px solid black;
	background-color: white;
	color: black;
	width: 80%;
	height: 10px;
	text-align: center;
	padding: 10px;
	padding-bottom: 10px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	font-weight: normal;
}


/* FORMS -------------------------------------------------------------------------------- */
/* div dedicated to handling forms */
/*********** STYLES INPUT FIELDS ON REGISTER PAGE ***********/
.input-error {
	color:red;
}
.input-text {
	padding:5px;
	width: 100%;
	margin-bottom:5px;
}
.input-username {
	padding:5px;
	width: 30%;
	margin-bottom:5px;
}
input[type=text]:focus, select:focus {
	outline: none;
	border: 2px solid gold;
	border-radius: 2px;
}
input:active { /* remove default background & border from input that is active */
    background-color:white;
    border:none;
    outline:none;
}

.input-password, select {
	padding:5px;
	width: 30%;
	display: inline-block;
	margin-bottom: 5px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

input[type=password]:focus, select:focus {
	outline: none;
	border: 2px solid gold;
	border-radius: 2px;
}


/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */
/* SURVEY PAGE ANSWER BOXES BELOW ---------------------------------------- */

.survey { /* div that changes content based on first answer selection. uses ajax to render page content asynchronously*/
	display:none;
}

.survey img { /* survey images shrink on page resize */
	max-width:100%;
}

.survey-hidden-age { /* hidden survey question, only displays if age = 21 (or over) */
	display: none;
	padding:30px;
	color:black;
	margin:auto;
	background-color:white;
	border:1px solid black;
	max-width:60%;
	horizontal-align:center;
}

.survey-hidden-female { /* hidden survey question, only displays if gender = "female" */
	display: none;
	padding:30px;
	margin:auto;
	max-width:100%;
	color:black;
	background-color:white;
	border:1px solid black;
}
.survey-hidden-male { /* hidden survey question, only displays if gender = "male" */
	display: none;
	padding:30px;
	margin:auto;
	max-width:100%;
	color:black;
	background-color:white;
	border:1px solid black;
}

.input-div { /* for styling input areas such as input boxes on quiz page. reduces max width to 60% */
	margin:auto;
	max-width:60%;
	color:black;
}

ul.wrapper-answers { /* For wrapping ul elements, specifically  survey answer boxes */
	padding:0px;
	margin:0px;
}
.wrapper-answers li {
	vertical-align:top;
	display:inline-block;
	padding:5px;
	margin:10px;
}
/*ul.wrapper-answers:after {
	content: "";
	clear: both;
	display: table;
}*/
/* customizes labels for designing question answer choices (FOR FIRST RADIO BUTTON QUESTION ----) */
.radio-box {
	font-family: Calibri, Verdana, Sans-serif;
	font-size: 14px;
	text-align: center;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	opacity: 0.5;
	font-weight: bold;
	margin: auto;
	padding:30px;
	width:300px;
	border: 1px solid black;
}
input[type=radio]{
	display:none;
}
input[type=radio]:checked + label .radio-box { /* highlights first choice "gimme all the goodies" or "send all the goodies to someone else" when clickd */
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

input[type=radio]:hover + label .radio-box {
	-webkit-transition:0.3s;
	-o-transition:0.3s;
	transition:0.3s;	
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

/* customizes labels for designing question answer choices */
.box {
	display:block;
	font-family: Calibri, Verdana, Sans-serif;
	font-size: 14px;
	text-align: center;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	border: solid black 2px;
	opacity: 0.5;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
	font-weight: bold;
	margin:auto;
	vertical-align:middle;
	width:230px;
	padding:20px;
	text-decoration:none;
}

.box:hover{
	opacity: 1;
	border-width: 2px;
	/*border-color: #AFEEEE;*/
	border-color: gold;
}

.box:focus{
	outline:0px;
}

.box.yesBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.noBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.yesBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.noBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.femaleBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.maleBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bothBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.neitherBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.martianBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
/*for second survey */
.box.femaleBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.maleBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bothBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.neitherBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.martianBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}



/* second set of answers for "trip type" question */
.box.girlsguysBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.soloBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.familyBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.baeBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

/* third set of answers for "vehicle" question */
.box.trainBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.planeBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.automobileBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.shipBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.protectiveBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.washandgoBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.flatironBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.colorBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.scrunchieBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.hairBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.econBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bclassBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.fclassBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.box.econBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.bclassBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.fclassBoxOther.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

/* box classes for VERY first question, for which survey to display. self or other */
.box.selfBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}
.box.otherBox.is-active {
	opacity: 1;
	border-width: 2px;
	border-color: gold;
}

.textarea {
	font-family:calibri;
	resize: none;
	width: 100%;
	height: 200px;
	display: inline-block;
	padding: 5px;
	margin-bottom: 5px;
	border-radius: 2px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
.textarea:focus {
	outline: none;
	border: 2px solid gold;
}


/* customizes wrapper for "scale" questions */
.scale {
	display:inline-block;
	padding:10px;
}
.scale li {
	text-align:center;
	float:left;
	padding:10px;
	margin:1px;
	list-style-type: none;
	border:1px solid black;
	background-color:#f9f9f9;
	cursor:pointer;
}
.scale input[type=radio]{
	display:none;
}
.scale input[type=radio]:checked + label li {
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
	background-color:gold;
}
.selection { /* ul wrapper for checkboxes on bottom of page */
	margin:auto;
	padding:0px;
}
.selection li{ 
	margin:0px;
	padding:1px;
}

/* styling for checkbox answers, found on quiz page */
input[type=checkbox] {
	display:none;
}
input[type=checkbox] + label > p {
	font-family: Calibri, Verdana, Sans-serif;
	text-align:left;
	color: black;
	cursor: pointer;
	background-color: white;
	border-radius: 2px;
	border: 1px solid black;
	opacity: 0.7;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
	font-size: 14px;
	padding:10px;
	margin:0px;
}
input[type=checkbox]:checked + label > p{
	opacity: 1;
	border-width: 1px;
	/*border-color: #AFEEEE;*/
	border-color: gold;	
}
input[type=checkbox]:hover + label > p{
	opacity: 1;
	border-width: 1px;
	/*border-color: #AFEEEE;*/
	border-color: gold;
}
.checkmark { /* checkmark that goes inside of checkbox divs */
	color:black;
	font-weight:bold;
	float:right;
	display:none;
}

input[type=checkbox]:checked + label > p > .checkmark { /* unhide checkmark on click */
	display:block;
}

input[type=submit] {
	font-family: Georgia, Sans-serif;
	width: 100%;
	background-color: white;
	color: black;
	padding: 14px 20px;
	margin: 8px 0;
	border: 1px solid black;
	cursor: pointer;
	font-weight: bold;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}


input[type=submit]:active {
	outline: none;
	border-color: gold;
	/* color: #AFEEEE; */
}

/* Class for centered images */
img.center {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 50%;
	opacity: 0.5;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

img.center:hover {
	opacity: 1;
	filter: alpha(opacity=100); /* For IE8 and earlier */
	}
	
	
	
#subscribeEmail { /* used to control width of objects like text input that are desired to be smaller on pages like home screen */
	width:50%;
}
#subscribeSubmit { /* used to control width of objects like text input that are desired to be smaller on pages like home screen */
	width:50%;
}
	
/* STYLING FOR BOXES PAGE HERE */
/* STYLING FOR BOXES PAGE HERE */
/* STYLING FOR BOXES PAGE HERE */
.squares-2-mobile { /* HIDE ON DESKTOP DISPLAY */
	display:none;
}

.squares-2 {
	margin: auto;
	margin-bottom: 5%;
    border-collapse:collapse;
    width:75%;
}
.squares-2 td{
    padding:50px;
}
.squares-2 a{
	cursor:pointer;
	background-color:white;
	color: white;
	text-decoration: none;
	margin:auto;
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
}

.thumbnail-icon {
    width:230px;
    -o-object-fit:cover;
       object-fit:cover;
    border:3px solid black;
    padding:30px;
}
.panel-container-mobile {
	display:none;
}
.content { /* container for box thumbnail & add to cart buttons */
	padding: 0px;
	text-align: center;
	background-color: white;
	margin:0px;
	/*box-shadow:0px 0px 1px black;*/
}
p.caption {
    font-family:montserrat;
	color: black;
	margin:0px;
	border-top:none;
	background-color:white;
}

#customQuiz{
    border:1px solid #c3c3c3;
    cursor:pointer;
    background-color:black;
    color:white;
    padding:10px;
    margin:auto;
    font-family:montserrat;
    -webkit-transition:0.3s;
    -o-transition:0.3s;
    transition:0.3s;   
}
.add_text {
	display:none;
	background-color:white;
}
/* Number input for adding to cart */
input[type=number] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

input[type=number]:focus {
	outline:1px solid gold;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
}

.box-images { /* container for product images on "boxes" page */
	position: absolute;
	text-align:center;
	top:0%;
	left:0%;
	width:0px;
	height:0px;
	opacity:0;
	background-color:white;
    border:1px solid black;
	border-radius:3px;

	z-index:-9;
	-webkit-transition:z-index 0.1s;
	-o-transition:z-index 0.1s;
	transition:z-index 0.1s;
}
.box-images-active { /* set "box-images" to active, displays center screen by changing z-index */
	z-index:1;
	opacity:1;
	width:380px;
	height:330px;
	-webkit-transition:opacity 1s;
	-o-transition:opacity 1s;
	transition:opacity 1s;
}
.box-images img {
	position:relative;
	top:30px;
	width:300px;
	height:200px;
	margin:0px;
	padding:1px;
    -o-object-fit:cover;
       object-fit:cover;
}

#customPictures {
 	top:0%;
	left:35%;   
}
.close-button{
	color: black;
	position:absolute;
	opacity:0.5;
	top:0%;
	right:0%;
	padding:5px 10px;
	margin:0px;
	/*border:1px solid black;
	border-top:0px;
	border-right:0px;*/
	cursor:pointer;
	-webkit-transition:0.3s;
	-o-transition:0.3s;
	transition:0.3s;
}
.close-button:hover{
	opacity:1;
}
.box-images-desc {
	margin:10px;
	padding:10px 20px;
	overflow:hidden;
    font-size:12px;
	background-color:white;
	border-radius:3px;
	color:black;
    font-size:10px;
}
.box-images-arrows {
	position:absolute;
	bottom:60%;
	color:black;
	margin:0px;
	padding:0px;
	font-size:16px;
	font-weight:bold;
	cursor:pointer;
}
.box-images-arrows img{
    height:50px;
    width:35px;
    -o-object-fit:contain;
       object-fit:contain;
}
.left-arrow, .right-arrow {
    -webkit-touch-callout: none; /* removes blue highlight on fast click */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
	text-decoration:none;
	outline:none;
}
.left-arrow:focus, .right-arrow:focus {
	text-decoration:none;
	background-color: transparent;
}
.left-arrow {
	left:1%;
}
.right-arrow {
	right:1%;
}

/* STYLING FOR WELCOME PAGE HERE *******/
/* STYLING FOR WELCOME PAGE HERE *******/
/* STYLING FOR WELCOME PAGE HERE *******/

.section-4-welcome { /* section 4 with margins modified to fill for welcome page */
	margin-left:5%;
	margin-right:5%;
	margin-top:20px;
	height:100%;
	display:block;
	width:auto;
	/*border:1px solid gold;*/
}
.section-4-welcome:after{
	content: "";
	display: table;
	clear: both;
}

.welcome-1 { /* styling for first column div on welcome page, under "my account" */
	display:inline-block;
	float:left;
	margin:0px;
	padding-top:0px;
	font-family:calibri;
	width:25%;
	height:100%;
}
.welcome-1 table {
	width:100%;
	border-collapse: collapse;
}
.welcome-1 th {
	border:0.5px solid #c3c3c3;
	color:white;
	padding:10px;
	background-color:black;
	text-align:center;
}
.welcome-1 td {
	border:0.5px solid #c3c3c3;
	color:black;
	padding:0px;
	margin:0px;
}
.welcome-1 td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	margin:0px;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.welcome-1 td > a:hover {
	background-color:gold;
}
.active-link { /* highlights active link */
	background-color:gold;
}

.welcome-2 { /* styling for second column div on welcome page, under "Hello <user>..." */
	color:black;
	display:inline-block;
	float:left;	
	margin:0px;
	padding-top:0px;
	font-family:calibri;
	width:55%;
	margin-left:5%;
	margin-right:5%;
	max-height: 100%;
}
.welcome-2 .div-class {
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
	font-size:14px;
}

.welcome-2 table.orders { /* styles order history table */
	width:100%;
	border-collapse: collapse;
	font-size:14px;
}
.orders th {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.orders td {
	border-bottom:1px solid gray;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:#F5F5F5;
	text-align:center;
}
.orders td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	background-color:gold;
	text-align:center;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.orders td > a:hover {
	background-color:gold;
}

.welcome-2 table.account_info { /* styles account details table */
	width:100%;
	border-collapse: collapse;
	font-size:14px;
}
.account_info th {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.account_info td {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	text-align:left;
}
.account_info td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	background-color:gold;
	text-align:center;
	padding:10px;
	display:block;
	text-decoration:none;
	color:black;
	width:100%;
	height:100%;
}
.account_info td > a:hover {
	background-color:gold;
}

/* STYLING FOR CART PAGE HERE ****/
/* STYLING FOR CART PAGE HERE ****/
/* STYLING FOR CART PAGE HERE ****/
.section-4-cart { /* section 4 with margins modified to fill for welcome page */
	position:relative;
	margin:auto;
	margin-top:20px;
	height:100%;
	width:80%;
	padding:30px;
	text-align:center;
	/*border:1px solid gold;*/
}
.section-4-cart:after{
	content: "";
	display: table;
	clear: both;
}
.cart-1 { /* styling for second column div on cart page, under "Hello <user>..." */
	color:black;
	margin:auto;
	padding-top:0px;
    font-family:montserrat;
	width:100%;
	max-height: 100%;
}
.cart-1 .div-class {
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
	font-size:14px;
	width:100%;
	margin:auto;
}

.cart-1 table.orders { /* styles order history table */
	width:100%;
	padding:0px;
	border-collapse: collapse;
	font-size:14px;
	margin:auto;
}
.cart-1 .orders th {
	border-bottom:1px solid #f5f5f5;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:white;
	/*background-color:#F5F5F5;*/
}
.cart-1 .orders th > a {
    text-decoration:underline;
    color:black;
}
.cart-1 .orders td {
	border-bottom:1px solid gray;
	color:black;
	padding:10px;
	max-width:100px;
	background-color:white;
	text-align:center;
}
.cart-1 .orders td > a {
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	background-color:gold;
	text-align:center;
	padding:10px;
	display:block;
    margin:auto;
	text-decoration:none;
	color:black;
	width:50%;
	height:100%;
}
.checkout-button {
    text-decoration:none;
    background-color:black;
    padding:15px 20px;
    float:right;
    color:white;
    width:100%;
}
.cart-1 button {
    font-size:18px;
    background-color:white;
    border:none;
    cursor:pointer;
}
.cart-1 button:focus {
    outline:none;
}
.cart-1 input[type=number]{
    width:30px;
    text-align:center;
    border:none;
}
.cart-1 img {
    width:50px;
    -o-object-fit:contain;
       object-fit:contain;
}

/****** LOGIN PAGE STYLING *******/
/****** LOGIN PAGE STYLING *******/
/****** LOGIN PAGE STYLING *******/
.section-4-login { /* emulates page design of "boxes" page table, used to apply same design across pages like boxes and quiz */
	padding-top:7.5%;
	margin-left:15%;
	margin-right:15%;
	margin-top:20px;
	display:block;
	width:auto;
	text-align:center;
	font-family:montserrat, roboto;	
}
.section-4-login h2 {
	color:black;
	margin:auto;
	font-size:34px;
	margin-bottom:30px;
}
.section-4-login h2:after {
    content: "";
    display: block;
    margin: 0 auto;
    width: 10%;
    padding-top: 5px;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want. */   
}
.section-4-login .header {
	text-align:center;
	position:relative;
	color:white;
	font-size:12px;
	padding:0px;
	font-family:montserrat, roboto;
	background:black;
	border:1px solid gold;
	border-collapse:collapse;
	margin:auto;
	width:50%;
    z-index:3;
}
.section-4-login .header td {
	border:1px solid white;
	padding:0px 10px;
	max-height:20px;
}

.section-4-login input[type=text] {
	margin:5px;
	width:50%;
	padding:10px 30px;
}

.section-4-login input[type=password] {
	margin:5px;
	width:50%;
	padding:10px 30px;
}
.section-4-login input[type=submit] {
	margin:5px;
	width:50%;
	padding:10px 30px;
}
.section-4-login a {
	text-decoration:none;
	color:black;
	margin:auto;
	padding:10px;
}

/* CHECKOUT PAGE STYLING ***************/
/* CHECKOUT PAGE STYLING ***************/
/* CHECKOUT PAGE STYLING ***************/
.section-4-checkout { /* container for checkout page form */
	margin-left:15%;
	margin-right:15%;
	height:100%;
	display:block;
	width:auto;
	font-family:montserrat, roboto;	
	background-color:white;
}
.section-4-checkout:after{
	content: "";
	display: table;
	clear: both;
}
.section-4-checkout .div-class { /* style for divs at top of page (like "Returning customer?" & "Have a coupon?") */
	background-color:#F5F5F5;
	color:gold;
	text-align:left;
	padding:15px 15px;
	font-size:14px;
}
.section-4-checkout .div-class a{
	color:black;
}

.section-4-checkout input[type=text] {
	width:100%;
	padding:5px;
	border:1px solid #c3c3c3;
	border-radius:3px;
}
.section-4-checkout select {
	width:100%;
	padding:5px;
	border:1px solid #c3c3c3;
	border-radius:3px;
}

#card-element{
    border:1px solid #c3c3c3; border-radius: 3px; padding: 5px 5px;
    font-size: 10px;
}

.checkout-1 { /* styling for first column div on checkout page, under "my account" */
	display:inline-block;
    float:left;
	margin:0px;
	padding-top:0px;
	font-family:calibri;
	width:55%;
	height:100%;
	/* border:1px solid black; */
	text-align:left;
    color:black;
    background-color:white;
}
.checkout-1 input:focus{
	outline:1px solid gold;
}
.form-row {
	width:100%;
	display:inline-block;
}
.form-item {
	width:98%;
	/* border:1px solid #c3c3c3; */
	float:left;
	margin-top:0px;
	margin-left:2%;
	margin-bottom:2%;
}
.checkbox-container { /* checkbox container */
	display: block;
	position: relative;
	padding-left: 25px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.checkbox-container input { /* hide default browser checkbox */
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkmark-1 { /* custom checkbox */
	position: absolute;
	top: 0;
	left: 0;
	height: 15px;
	width: 15px;
	background-color: white;
	outline:0.5px solid black;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
}
.checkbox-container input:checked ~ .checkmark-1{
	background-color:gold;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkbox-container .checkmark-1:after {
	content: "";
	position: absolute;
	display: none;
}
/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark-1:after {
	display: block;
}
.checkbox-container .checkmark-1:after {
	left: 5px;
	top: 3px;
	width: 2px;
	height: 5px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.checkout-2 { /* styling for second column div on checkout page, under "Hello <user>..." */
	display:inline-block;
	border-radius:3px;
	background-color:#f9f9f9;
	color:black;
	margin-left:5%;
	padding-top:0px;
	font-family:calibri;
	width:40%;
}
.checkout-2 .div-class {
	background-color:#F5F5F5;
	text-align:left;
	padding:10px 15px;
	font-size:14px;
}
.checkout-2 table{
	border-collapse:collapse;
}
.checkout-2 td{
	border-bottom:1px solid #c3c3c3;
	background-color:#f9f9f9;
	padding:20px 12px;
	text-align:left;
    width:200px;
}
.checkout-2 button { /* applies to "PAY" button on checkout page */
	padding:10px;
	width:100%;
	cursor:pointer;
	background-color:black;
	color:white;
	border:none;
	border-radius:3px;
}
.checkout-2 p{
	padding:10px;
	padding-right:0px;
}
.checkout-2 a{
	font-weight:bold;
	cursor:pointer;
	color:black;
}
.checkout-2 img{
    max-height:75px;
    max-width:100px;
}

.loading {
    position:fixed;
    left:35%;
    top:30%;
    text-align:center;
    background-color:white;
    color:black;
    width:30%;
    padding:100px;
    outline:1px solid gold;
    z-index:-5;
    opacity:0;
    -webkit-transition:0.3s;
    -o-transition:0.3s;
    transition:0.3s;
}
.loader {
    border: 10px solid #f3f3f3;
    border-radius: 50%;
    border-top: 10px solid gold;
    width: 40px;
    height: 40px;
    -webkit-animation: spin 2s linear infinite; /* Safari */
    animation: spin 2s linear infinite;
    margin:auto;
}

.close-button-process {
    position:absolute;
    outline:1px solid black;
    border-radius:3px;
    top:5%;
    right:5%;
    padding:5px 10px;
    background-color:white;
    color:black;
    cursor:pointer;

}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}


/****** QUIZ COMPLETE & QUIZ ANSWERS PAGES ****/
/****** QUIZ COMPLETE & QUIZ ANSWERS PAGES ****/
.answers {
    font-weight:bold;
    padding:15px;
}
.answers p{
    color:black;
}


/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/****** INDIVIDUAL PRODUCT (BOX) PAGE ******/
/* Container for entire product page. Controls outer margins. */
.section-product {
	width: 100%;
	padding-top: 10%;
	padding-bottom: 5%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
    padding-left:10%;
    padding-right:10%;
}
.product-1 {
	width: 50%;
	position: relative;
    margin:auto;
    margin-top:0px;
}
.product-carousel {
	text-align:center;
	vertical-align:center;
	width:100%;
	margin:auto;
    margin-top:0;
	position:relative;
}
.product-carousel img {
	width:100%;
	height:300px;
	-o-object-fit:contain;
	   object-fit:contain;
	margin:auto;
	cursor:pointer;
}
.product-carousel div:focus, .product-carousel div:active, .product-carousel img {
	outline:none;
}
/* previous & next buttons (arrows on slideshow) */
.prev-product, .next-product {
	z-index:3;
	text-decoration:none;
	position:absolute;
	bottom:40%;
	vertical-align:center;
	width:30px;
	cursor:pointer;
}
.next-product {
    left:90%;
}
.prev-product {
    right:90%;
}
.prev-product > img, .next-product > img {
	width:100%;
	cursor:pointer;
}
.product-details {
    text-align:left;
    font-family:lora;
    margin:0px 5%;
    height:100%;
    width:100%;
}
.product-details h3 {
    margin-top:0px;
    font-family:montserrat;
}

/* "add to cart" button */
.add {
    font-family:montserrat;
    margin:auto;
    background-color:black;
    color:white;
    padding:15px;
    font-size:16pt;
    border:none;
    border-radius:3px;
    cursor:pointer;
}
/*.add:after { /* add button styling, adds product to cart 
    content: "";
    display: block;
    margin: 0 auto;
    width: 100%;
    padding-top: 5px;
    border-bottom: 2px solid gold; /* This creates the border. Replace black with whatever color you want.   
}*/
.added {
    position:fixed;
    display:none;
    top:35%;
    left:20%;
    width:60%;
    padding:40px 20px;
    border:1px solid black;
    background-color:white;
    z-index:6;
}
.added a {
    color:black;
    font-weight:bold;
    text-decoration:underline;
}
.close {
    position:absolute;
    top:0%;
    right:5%;
    z-index:7;
    padding:15px;
    font-size:16pt;
    font-weight:bold;
    cursor:pointer;
}
.product-details button:focus {
	outline:none;
}
.product-details input[type=number] {
	border:none;
	padding:5px;
	text-align:center;
	width:30%;
}
.number-input { /* - +, number input container */
	width:150px;
    background-color:white;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
	text-align:center;
    padding:0px;
    margin:auto;
    margin-top:0px;
}
.number-input button, .number-input input[type=number] {
    font-size:20pt;
    background-color:white;
    border:none;
    cursor:pointer;
}
.pricetag{
    padding:0px; 
    margin-top:10px; 
    margin-bottom:0px;
    color:black;
    background-color:white;
}

.imgPreview {
    position:fixed;
    left:0;
    top:10%;
    width:100%;
    height:80%;
    z-index:4;
    background: rgba(0,0,0,0) none 50% / contain no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    visibility:hidden;
    opacity:0;
}
.imgPreview.show {
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}

/* GALLERY PAGE ******/
/* GALLERY PAGE ******/
/* GALLERY PAGE ******/

.section-gallery {
    padding-top:5%;
}
.section-gallery table { /* gallery "photos from our jetsetters" table */
	margin: auto;
    border-collapse: collapse;
    border-spacing: 0;
}
.section-gallery table td { /* table cells containing images */
    background-color:white;
    border:5px solid white;
    padding:0px;
}
.section-gallery img { /* gallery photos */
    width:200px;
    height:200px;
    padding:0px;
    margin:0px;
    display:block;
    cursor:pointer;
    -o-object-fit:cover;
       object-fit:cover;
}
.instZoom { /* enlarged image preview. visible after any image is clicked (see init_gallery.js) */
    position:absolute;
    left:1%;
    top:1%;
    z-index:3;
    background: rgba(0,0,0,0) none 100% / cover no-repeat;
    -webkit-transition: opacity 0s;
    -o-transition: opacity 0s;
    transition: opacity 0s;
    height:98%;
    width:59%;
    border:5px solid #f2f2f2;
    border-top-left-radius:0.5%;
    border-bottom-left-radius:0.5%;
}
.instagram_preview { /* instagram image preview & user info container. hidden until image is clicked*/
    position:fixed;
    top:2.5%;
    left:17.5%;
    visibility:hidden;
    opacity:0;
    width:65%;
    height:95%;
    z-index:8;
    background-color:white;
    border-radius:0.5%;
	-webkit-box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.instagram_preview.visible { /* set visibility to 'visible' and opacity to 1 when class "visible" added by click*/
    visibility:visible;
    opacity:1;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.instagram_info {
    height:98%;
    width:40%;
    right:1%;
    top:1%;
    background-color:#f2f2f2;
    border:5px solid #f2f2f2;
    color:black;
    position:absolute;
    border-top-right-radius:0.5%;
    border-bottom-right-radius:0.5%;
}
.instagram_info a{
    color:gold;
    text-decoration:none;
}
.instagram_info p{
    color:black;
    background-color:white;
    margin:0px;
    padding-top:60%;
    height:100%;
}
/*.squareImg-gallery:hover {
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}*/


/* NEWS TICKER ON HOME PAGE ******/
/* NEWS TICKER ON HOME PAGE ******/
/* NEWS TICKER ON HOME PAGE ******/
  @-webkit-keyframes ticker {
    0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
    100% { -webkit-transform: translate3d(-200%, 0, 0); transform: translate3d(-200%, 0, 0); }
  }
  @keyframes ticker {
    0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
    100% { -webkit-transform: translate3d(-200%, 0, 0); transform: translate3d(-200%, 0, 0); }
  }
  .tcontainer{
    width: 100%;
    margin:auto;
    overflow: hidden;
  }
  .ticker-wrap {
    width: 100%;
    background-color: black;
    color:yellow;
  }
  .ticker-move {
    display: inline-block;
    white-space: nowrap;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-name: ticker;
            animation-name: ticker;
    -webkit-animation-duration: 15s;
            animation-duration: 15s;
    width:100%;
    margin-left:100%;
  }
  .ticker-move:hover{
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
  }
  .ticker-item{
    display: inline-block;
    padding: 0.25rem 2rem;
  }
}