/* VARS */
:root {
  /* COLOR SCHEME */

  /* alt scheme */
  --primary: #EAE2CF;
  --secondary: #E45635;
  --black: #030303;
  --black-trans: #03030366;
  --dark-grey: #363636ff;
  --med-grey: #333333ff;
  --grey: #666666ff;
  --light-grey: #ccccccff;
  --off-white: #f1f1f1ff;
  --white: #fafafaff;
  --green: #a1ca1eff;
  --light-green: #e9f6c0ff;
  --orange: #ca711eff;
  --light-orange: #f5d5b8ff;
  --light-red: #BBDB90;
  --dark-red: #C91547;

  /* FONT SIZES */
  --x-small: 0.625rem;
  --small: 0.75rem;
  --medium: 1rem;
  --large: 1.25rem;
  --x-large: 1.5rem;
  --xx-large: 3rem;
  --xxx-large: 4rem;
  --icon: 7rem;

  /* FONT WEIGHT */
  --light: 400;
  --medium: 500;
  --heavy: 700;
  --bold: 900;

  /* ANIMATION SPEEDS */
  --very-slow: 1s;
  --slow: 0.8s;
  --fast: 0.6s;
  --very-fast: 0.3s;
  
  /* BORDER RADIUS */
  --round-small: 5px;
  --round-big: 10px;
  --circle: 50%;
}


/* FONTS */
@font-face {
  font-family: "helvetica";
  src: url("../fonts/helvetica.ttf") format("truetype"), url("../fonts/helvetica.woff") format("woff");
}

@font-face {
  font-family: "futuraHV";
  src: url("../fonts/futura.ttf") format("truetype");
}

/* CLEARFIX */
* {
  box-sizing: border-box;
}

.clearfix:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
  font-size: 0;
}

body {
  margin: 0px;
  font-family: helvetica;
  background: var(--off-white);
  zoom: 1.1;
}

/* MISC */
:focus {
	outline: none;
}

p {
	line-height: 1.5;
	font-size: var(--medium);
  color: var(--black);
}

.lineBreak {
	width: 25%;
	border: solid 1px var(--secondary);
	display: block;
	margin: 0px 0px 30px 0px;
}

.disabled {
  display:none;
}

.xl-text {
  font-size: var(--xxx-large);
}

.l-text {
  font-size: var(--xx-large);
}

.dark-text {
  color: var(--black) !important;
}

video, img {
	width: 100%;
  border-radius: var(--round-small)
}

.darkBG {
  background:var(--black);
}

.lightBG {
  background: var(--white);
}

.noBG {
  background: none !important;
}

.bgSize {
  background-position: center !important;
  background-size: cover;
}

.parallax {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.fullHeight {
  min-height:100vh;
}

.fullWidth {
  min-width: 100vw;
}

.halfWidth {
  width: 50vw;
}
.pad {
  padding-top:50px;
}

.largeIcon {
	font-size: var(--xxx-large);
	text-align: center;
	text-shadow: 2px 2px 5px var(--med-grey);
}

.centered {
  text-align:center;
}

.green {
	padding: 8px;
	text-align: center;
	display: block;
	line-height: 1.5;
	font-size: var(--medium);
	background: var(--green);
	border-radius: var(--round-small);
	color: var(--black) !important;
}

.red {
	padding: 8px;
	text-align: center;
	display: block;
	line-height: 1.5;
	font-size: var(--medium);
	background: var(--light-red);
	border-radius: var(--round-small);
	color: var(--black) !important;
}


/* FLEX */
.flex {
	display: flex;
	gap: 30px;
}

.column {
  flex-flow:column;
}

.spaceBetween {
  justify-content: space-between;
}

.flex-smallgap {
	display: flex;
	gap: 20px;
}

.flex-nogap {
  display:flex;
}

.flex img, .flex video {
  padding-right:30px;
}

.col-1 {
  flex: 0 0 33%;
}

.col-2 {
  flex: 0 0 67%;
}

.col-3 {
	flex-grow: 1;
	display: flex;
	flex-flow: column;
	width: 100%;
}

.col-half {
  width:50%;
  flex: 0 0 50%;
}

/* HEADINGS */
h1 {
  font-size: var(--xx-large);
  margin: 10px 0px 10px 0px;
}

h2 {
  font-size: var(--x-large);
  margin: 5px 0px 5px 0px;
}

h3 {
  font-size: var(--x-large);
  margin: 5px 0px 5px 0px;
}

h4 {
  font-size: var(--x-small);
  margin: 5px 0px 5px 0px;
}


/* LINKS */
a {
  text-decoration: none;
  font-size: var(--small);
  color: var(--secondary);
  font-family: helvetica;
  transition: var(--slow);
  cursor:pointer;
}

a:hover {
  color: var(--med-grey);
  transition: var(--fast);
}


/* BUTTONS */

button, .Submit {
  border: none;
  padding:15px;
  margin-top: 10px;
  font-size: var(--medium);
  border-radius: 5px;
  background: var(--primary);
  color: var(--off-white);
  transition: var(--very-fast);
  cursor: pointer;
}

button:hover, .Submit:hover {
  background: var(--secondary);
  color: var(--black);
  transition: var(--very-fast);
}

.darkHover:hover {
  background: var(--black);
  color: var(--white);
  transition: var(--very-fast);
}

.darkBtn {
  background: var(--med-grey);
  color: var(--white);
}


/* FORMS AND FIELDS */
form {
  width:20rem;
}

form .green {
  padding: 40px;
  text-align: center;
  display: block;
  line-height: 1.5;
  font-size: var(--medium);
  background: var(--green);
  border-radius: var(--round-small);
  color: var(--med-grey);
}


label {
  margin:40px 0px 40px 0px;
  display:block;
}

form button, form .Submit {
	float: right;
}

::placeholder {
  opacity: 1;
  color: var(--white);
}

.lightBG ::placeholder {
  opacity: 1;
  color: var(--grey);
}

select {
  border:solid 1px var(--white);
  border-radius: var(--round-small);
}

.textInput {
	background: none;
	padding: 10px;
  margin:0px;
	border-bottom: solid 1px var(--white);
	width: 20rem;
	font-size: var(--medium);
	color: var(--white);
}

.imgInput {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow:column;
  width: 100%;
  height:100px;
  padding-right: 10px;
  min-height: 77px;
  cursor:pointer;
  transition: var(--very-fast);
}

.imgInput i {
  font-size: var(--xx-large);
  transition: var(--very-fast);
}

.imgInput span {
  margin:10px 0px 0px 0px !important;
  transition: var(--very-fast);
}

.imgInput:hover i, .imgInput:hover span {
  color: var(--light-grey) !important;
  transition:var(--very-fast);
}

.imgInput input {
	height: 20px;
	display: block;
	position: relative;
	z-index: 999;
	width: 100%;
	opacity: 0;
	margin-top: -20px;
}


/* MAIN */
#container {
  display: flex;
  /* flex-flow:column; */
}

#sidePanel {
  background: var(--primary);
  padding: 20px 15px 10px 15px;
  width: 420px;
  min-height: 100vh;
  box-shadow: 3px 0px 10px var(--light-grey);
}

.hide {
  width: 68px !important;
}

#content {
  flex: 1;
  float: left;
  display: block;
  width: 100%;
  min-height: 100vh;
  padding-top:40px;
}

/* NAVIGATION */

/* landing page navigation */
.navbar {
	position: absolute;
	display: block;
	width: 100vw;
	padding: 15px 40px 0px 40px;
}

.navbar .Submit {
  padding:10px;
  float:right;
}

.navbar .logo img {
	width: 200px;
}

.navbar .logo {
  color: var(--white);
  display:inline-flex;
  align-items:center;
  font-size: var(--medium);
  margin:0px;
}

.navbar .logo span {
	padding: 3px 0px 0px 3px;
}


.topBar {
	width: 100vw;
	height: 40px;
	display: flex;
	position: fixed;
	z-index: 999;
	background: var(--primary);
	box-shadow: 5px 1px 1px var(--medGrey);
}

.topBar .logo {
  width: 120px;
}

.topBar img {
  width:auto;
  height:40px;
  display:flex;
  padding:10px;
}

.topBar .search {
  height:30px;
  margin:5px;
  border: solid 1px var(--grey);
  border-radius: 3px;
  width:15rem;
  color: var(--white);
}

.topBar input {
  padding:5px;
  height:30px;
  width: calc(100% - 30px);
  border:none;
}

.search i {
  padding:6px;
}

/* logo */
.logo {
  margin: 0px 0px 10px 0px;
}

/* logo hidden menu */
.hide .logo img {
  width: 40px;
}

/* main menu */
.navigation {
  margin: 20px 0px 0px 0px;
}

.navigation h4 {
  color: var(--light-red);
}

.show .navOuter {
  overflow:scroll;
  max-height: 50vh;
  margin-bottom: 20px;
}

.hide .navOuter {
  overflow-x:hidden;
  overflow-y: scroll;
}

.hide .logo img {
  width:50px;
  padding:5px;
}

ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}

.navLinks {
  padding: 10px;
  font-size: var(--small);
  color: var(--off-white);
  text-align: justify;
  margin: 5px 0px 5px 0px;
  border-radius: var(--round-small);
  cursor: pointer;
  transition: var(--slow);
}

.hidden {
  font-size: var(--medium);
  display:flex;
  justify-content:center;
}

.navLinks:hover {
  background: var(--secondary);
  color: var(--black);
  transition: var(--fast);
}

.selected {
  background: var(--secondary);
  color: var(--primary) !important;
  transition: var(--fast);
}


/* nav icons */
.navLinks i {
  padding: 0px 5px 0px 0px;
  font-size: var(--small);
}

/* menu hidden */
.hide .navLinks i {
  padding: 0px;
  font-size: var(--medium);
}

/* sub menu */
.sub .navLinks {
  margin: 0px 0px 0px 10px;
}

.sub .navLinks:hover {
  background: none;
  color: var(--light-red);
  transition: var(--fast);
}

.subSelected {
  color: var(--light-red);
  transition: var(--fast);
}

.subMenu-enter-from,
.subMenu-leave-to {
  height: 0px;
  opacity: 0;
  transition: height var(--slow), opacity var(--fast);
}

.subMenu-enter-to,
.subMenu-leave-from {
  transition: var(--fast);
  height: 75px;
  display: block;
}

/* sub menu hidden */
.hide .sub .navLinks {
	margin: 0px;
	padding: 10px 0px 10px 0px;
	text-align: center;
  transition: var(--fast);
}

/* nav buttons */
.logout {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  justify-content: space-between;
  position:absolute;
  bottom:10px;
}

.hide .logout {
  width:68px;
  left:0px;
}

.logout button {
  margin-top:0px;
}

.navButton {
  background: none !important;
  border: 0px;
  color: var(--off-white);
  font-size: var(--medium);
  transition: var(--fast);
  cursor:pointer;
}

.navButton:hover {
  color: var(--secondary);
  transition: var(--fast);
}

/* nav buttons hidden menu */
.hide .navButton {
	width: 100%;
  padding:5px;
}

/* LOGIN PAGE */
.login {
	display: flex;
	justify-content: center;
}

/* login form */
.loginForm {
	display: flex;
  flex-flow:column;
	justify-content: center;
  min-height: calc(100vh - 40px);
  background-position: center;
  align-items: center;
}

.loginForm form {
	padding: 30px;
	background: var(--black-trans);
	border-radius: var(--round-big);
  min-width: 24rem;
  display:flex;
  flex-flow:column;
}

.loginForm .submit {
  margin-left:0px;
}

.loginForm button {
  margin-top:20px;
}

.loginForm .textInput, .right .textInput {
  border:none !important;
}

.loginForm label {
	margin: 20px 0px 20px 0px;
	display: flex;
	color: var(--white);
	align-items: center;
	border-bottom: solid 1px var(--white);
}

.loginForm h1 {
  font-weight: var(--bold);
  color: var(--white);
  margin-top:10px;
  text-align:center;
}

.loginForm span {
  margin: 20px 0px 20px 0px;
  color: var(--white);
  font-size: var(--small);
}

.loginForm .lineBreak {
  margin:auto;
  border-color: var(--white);
}

.input {
	margin: 10px;
	padding: 8px;
	border: solid 1px var(--secondary);
	border-radius: var(--round-small);
	color: var(--secondary);
}

input {
	border: none;
	/* margin: 0px 0px 0px 10px; */
}


/* SECTION */

.section {
  width: 100%;
  background: var(--black);
  color: var(--white);
  padding:40px;
  max-width: 75vw;
  margin: auto;
}

/*register form */
.regForm {
  display:flex;
  justify-content:center;
  padding-top:60px;
}

.regForm .loginForm, .regForm form {
  width:50vw;
  background: none;
}

.regForm .col-half {
  width: calc(50% - 20px);
  flex: 0 0 auto;
  display: flex;
  flex-flow: column;

}

.regForm label {
  border:solid 1px var(--secondary);
  border-radius:2px;
  padding: 5px 5px 5px 15px;
}

.regForm .imgInput i {
  color: var(--black);
}

.regForm .Submit {
  width:30%;
  float:right;
  padding:25px;
}

/* text boxes */
.textBox {
	padding: 30px 30px 40px 30px;
	border: solid 1px var(--white);
  flex:1;
}

.textBox h3 {
  padding: 50px 0px 20px 0px;
}



/* MAIN APP */
body {
  overflow:hidden;
}

.tabs ul {
  margin-top:20px;
  display:flex;
	width: 100%;
}

.tabs li {
	width: 50%;
	text-align: center;
	padding: 8px;
	border-bottom: solid 1px;
	color: var(--secondary);
  transition:var(--fast);
  cursor:pointer;
  font-size: var(--medium);
  border-radius: 4px 4px 0px 0px;
}

.tabs li:hover {
	color: var(--primary);
  background:var(--secondary);
  transition:var(--fast);
}

.sideCon img {
  width:98px;
  padding:15px;
  transition: var(--fast);
  cursor:pointer;
}

.sideCon {
	overflow: scroll;
	height: 60vh;
	padding-bottom: 25px;
}

.sideCon img:hover {
  background: var(--secondary);
  border-radius:5px;
  transition: var(--fast);
}

.credits {
	font-size: var(--small);
	position: absolute;
	bottom: 10px;
	width: 300px;
	text-align: center;
}

/* right side */
.rightside {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
}

.watch {
	width: 300px;
	min-height: 100vh;
	height: 100%;
	margin-right: 230px;
}

.watch img, .strap img {
	width: 300px;
}

.face, .strap {
	width: 300px;
	margin: auto;
	position: absolute;
}

.strap {
	top: 0px;
}

.face {
	top: 93px;
  z-index:999;
}

/* collection */
.collection {
  transition: var(--fast);
  width:300px;
  height:100vh;
  background: var(--primary);
  right:-300px;
  position:absolute;
  display:block;
  overflow:scroll;
  box-shadow: 3px 0px 10px var(--light-grey);
}

.slide {
  right:0px;
  transition: var(--fast);
}

.collection span {
	cursor: pointer;
	font-size: var(--large);
	color: var(--secondary);
	padding: 10px;
	float: right;
	transition: var(--fast);
	position: absolute;
	right: 10px;
}

.collection span:hover {
  transition:var(--fast);
  color: var(--black);
}

.collection canvas {
	width: 100px !important;
	height: auto !important;
	margin: 20px;
  margin-bottom:0px;
	margin-top: 20px;
  transition: var(--fast);
  cursor:pointer
}

.collection canvas:hover {
	opacity: 0.5;
	transition: var(--fast);
}

/* nav bar */
.reqLinks {
	position: absolute;
	bottom: 0px;
	right: 0px;
	font-size: var(--medium);
	color: var(--secondary);
	display: flex;
	gap: 10px;
	cursor: pointer;
	z-index: 1000;
	background: var(--off-white);
	padding: 10px;
}

.reqLinks a {
	transition: var(--fast);
	font-size: var(--medium);
	margin-left: 5px;
}

.reqLinks a:hover{
  color: var(--primary);
  transition: var(--fast);
}

.loader {
  display:none;
	position: absolute;
	top: 150px;
	width: 300px;
	left: calc(50% - 150px);
	z-index: 999;
  transition:var(--fast);
}

.loader span {
	text-align: center;
	width: 100%;
	display: block;
	color: var(--secondary);
	font-size: var(--large);
}

/* FOOTER */

.footer {
  width:100vw;
  height:30px;
  background: var(--med-grey);
  font-size: var(--small);
}

.date {
  text-align:center;
  width:100%;
  padding: 12px;
  display:block;
  color: var(--white);
}


/* max 1440px */

/* max 1280px */

/* max 960px */

/* max 768px */
@media only screen and (max-width: 768px) {
  /* MISC */
  .flex img, .flex video {
    padding-right: 0px;
  }


  /* FLEX */
  .flex , .flex-smallgap, .flex-nogap{
    flex-flow:column;
  }

  .col-half {
    width:100% !important;
  }
  
    /* FORMS */
  form {
    width:100%;
  }
  
  .textInput {
    width:100%
  }

  /* SECTION */
  .section {
    padding: 40px 0px 0px 0px;
  }


  /* creator registration form */
  .regForm .Submit {
    width:100%;
    float:right;
    padding:25px;
  }

  /* Creator landing page */
  .creatorLanding {
    padding: 20vh 0px 0px 0px;
  }
}

/* max 600px */
@media only screen and (max-width: 600px) {
  /* MISC */
  .flex img, .flex video {
    padding-right: 0px;
  }


  /* FLEX */
  .flex , .flex-smallgap, .flex-nogap{
    flex-flow:column;
  }

  .col-half {
    width:100% !important;
  }


  /* FORMS */
  form {
    width:100%;
  }

  .textInput {
    width:100%
  }


  /* SECTION */
  .section {
    padding: 40px 0px 0px 0px;
  }

  
  /* creator registration form */
  .regForm .Submit {
    width:100%;
    float:right;
    padding:25px;
  }

  /* Creator landing page */
  .creatorLanding {
    padding: 20vh 0px 0px 0px;
  }
}


/* max 480px */
@media only screen and (max-width: 480px) {
  /* MISC */
  .flex img, .flex video {
    padding-right: 0px;
  }


  /* FLEX */
  .flex , .flex-smallgap, .flex-nogap{
    flex-flow:column;
  }

  .col-half {
    width:100% !important;
  }


  /* FORMS */
  form {
    width:100%;
  }

  .textInput {
    width:100%
  }


  /* SECTION */
  .section {
    padding: 40px 0px 0px 0px;
  }


  /* creator registration form */
  .regForm .Submit {
    width:100%;
    float:right;
    padding:25px;
  }

  /* Creator landing page */
  .creatorLanding {
    padding: 20vh 0px 0px 0px;
  }
}