@font-face {
    font-family: 'Anderson Grotesk';
    src: local('../fonts/Anderson Grotesk Regular'), local('Anderson-Grotesk-Regular'),
        url('../fonts/AndersonGroteskRegular.woff2') format('woff2'),
        url('../fonts/AndersonGroteskRegular.woff') format('woff'),
        url('../fonts/AndersonGroteskRegular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
  }

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;margin:0.67em 0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}dfn{font-style:italic;}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-size:1em;}pre{white-space:pre-wrap;}q{quotes:"\201C" "\201D" "\2018" "\2019";}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}img{border:0;}svg:not(:root){overflow:hidden;}figure{margin:0;}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em;}legend{border:0;padding:0;}button,input,select,textarea{font-size:100%;margin:0;}button,input{line-height:normal;}button,select{text-transform:none;}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;}button[disabled],html input[disabled]{cursor:default;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}
*,
*::after,
*::before {
	box-sizing: border-box;
}

html,body{
  overflow-y: hidden;
  overflow-x: hidden;
}

.black_span{
  color:var(--color-bg);
}

:root {
	font-size: 18px;
	--color-text: #ffffff;
    --color-bg: #000000;
    --color-link: #fffff;
    --color-link-hover: #e5ff00;
    --color-content-text: #ffffff;
    --color-content-link: #ffffff;
    --color-content-link-hover: #e5ff00;
   	--color-content-secondary: #e5ff00;
    --font-content: Anderson Grotesk;	
    --font-boxshadow: 0 -1px #424242;
    --font-boxshadow2: 0 1px #424242,0 -1px #424242;
    --background-content: url('../img/logo_white.png')
}

[data-theme=dark] {
	--color-text: #000000;
    --color-bg: #c51717;
    --color-link:  #000000;
    --color-link-hover:  #e5ff00;
    --color-content-text: #ffffff;
    --color-content-link:  #000000;
    --color-content-link-hover: #e5ff00;
   	--color-content-secondary: #e5ff00;
    --font-boxshadow: 0 -1px #000;
    --font-boxshadow2: 0 1px #000,0 -1px #000;    
    --background-content: url('../img/logo_black.png')   	
}




@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}



body #magicMouseCursor {
  position: fixed;
  width: 35px;
  height: 35px;
  border: 3px solid #e5ff00;
  border-radius: 50%;
  z-index: 9999;
  left: 0;
  top: 0;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 2s;    
  transition: transform 0.07s, width 0.3s, height 0.3s;
  pointer-events: none; }
  
body #magicMouseCursor.cursor-square {
  border-radius: 0%;}

body #magicPointer {
  height: 5px;
  width: 5px;
  top: 0;
  left: 0;
  position: fixed;
  background: #fff;
  border-radius: 50%;
  pointer-events: none;
  transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s; }
  
body #magicPointer.is-hover {
    background: red; }

body #magicPointer.pointer-blur {
    height: 50px;
    width: 50px;
    background: none;
    border: 1px solid #fff;
    box-shadow: 0px 0px 15px -5px white; }

body #magicPointer.pointer-overlay {
    height: 50px;
    width: 50px;
    mix-blend-mode: difference;
    box-shadow: 0px 0px 15px -5px white; }
    
body .magic-hover {
  transition: all 0.2s; }

body .magic-hover:hover {
    cursor: none; }





nav {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 2rem;
}

/*slider switch css */
.theme-switch-wrapper {
  display: flex;
  align-items: center;
}
.theme-switch-wrapper em {
  margin-left: 10px;
  font-size: 1rem;
}

.theme-switch {
  display: inline-block;
  height: 24px;
  position: relative;
  width: 50px;
}

.theme-switch input {
  display: none;
}

.slider {
  background-color: #252525;
  bottom: 0;
  cursor: pointer;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: 0.4s;
}

.slider:before {
  background-color: #fff;
  bottom: 4px;
  content: "";
  height: 16px;
  left: 4px;
  position: absolute;
  transition: 0.4s;
  width: 16px;
}

input:checked + .slider {
  background-color: black;
}

input:checked + .slider:before {
  transform: translateX(26px);
  background-color:var(--color-bg);
}

.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}


#animator{
  opacity:0;
}

#container{
  opacity:0;
}

.logo{
  position:absolute;
  left:0;
  margin:2rem;
  width:90px;
  height:90px;
  background: var(--background-content);
  background-size:100%;
  
}

.center_heading {
  padding-top:2rem;
  text-align:center;
  position:absolute;
  width:100%;  
}

.social_media {
  padding-top:2rem;
  padding-right:2rem;
  text-align:right;
  position:absolute;
  width:100%;
  z-index:2;
}

.social_media a{
  padding-left: 20px;
}

.bottom_text{
  position:absolute;
  bottom:2rem;
  width:100%;
  text-align:center;
}



::selection {
	background: #e5ff00;
	color: black;
}
::-moz-selection {
	background: #e5ff00;
	color: black;
}
::selection {
	background: #e5ff00;
	color: black;
}
::-moz-selection {
	background: #e5ff00;
	color: black;
}



body {
	color: var(--color-text);
  font-family: 'Anderson Grotesk';
	background: var(--color-bg);
}

/* Page Loader */
.js .loading::before {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-bg);
}

.js .loading::after {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	pointer-events: none;
	border-radius: 50%;
	opacity: 0.4;
	background: var(--color-link);
	animation: loaderAnim 0.7s linear infinite alternate forwards;
}

@keyframes loaderAnim {
	to {
		opacity: 1;
		transform: scale3d(0.5,0.5,1);
	}
}

a {
	text-decoration: none;
	color: var(--color-link);
	outline: none;
}

a:hover,
a:focus {
	color: var(--color-link-hover);
	outline: none;
}



.content {
	display: flex;
	flex-direction: column;
	width: 100vw;
	height: calc(100vh - 13rem);
	position: relative;
	justify-content: flex-start;
	align-items: center;
}


.distort {
	position: absolute;
	pointer-events: none;
	will-change: transform;
	z-index:9999;
}

.distort__img {
	opacity: 0;
}

.content {
	font-family: var(--font-content), serif;
	color: var(--color-content-text);
}

.menu {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	text-align: center;
	font-size: 10vh;
	font-weight: normal;
}

.demo-2 .menu {
	line-height: 1.5;
}

.quote {
	display: block;
	width: 100%;
	margin: 0 auto;
	font-size: 2rem;
	z-index: 999;
	font-weight: normal;
}

.quote__author {
	margin: 2rem 0 0 0;
	display: block;
	font-size: 1rem;
	color: var(--color-content-secondary);
}

.quote__author::before {
	content: '------------';
	margin-right: 1rem;
	letter-spacing:-4px;
}

.menu__link,
.quote__link {
	z-index: 999;
	color: var(--color-content-link);
	position: relative;
	white-space: nowrap;
  display: block;
  text-align: center;	
  padding: 1vh 1vw 0;
  box-shadow: var(--font-boxshadow);
}

.quote__link:last-child {
  box-shadow: var(--font-boxshadow2);
}

.menu__link:hover,
.quote__link:hover {
	color: var(--color-content-link-hover);
}

.menu__link span,
.quote__link span {
	display: inline-block;
}


@media screen and (min-width: 53em) {
	body {
		overflow: hidden;
	}
	.message {
		display: none;
	}
	.frame {
		position: fixed;
		text-align: left;
		z-index: 10000;
		top: 0;
		left: 0;
		display: grid;
		align-content: space-between;
		width: 100%;
		max-width: none;
		height: 100vh;
		padding: 2rem;
		pointer-events: none;
		grid-template-columns: 25% 50% 25%;
		grid-template-rows: 2rem auto auto;
  grid-template-areas:"photography centertitle demos" "... ... ..." "... title ... "							 
							 
	}
	.frame__title-wrap {
		grid-area: title;
		display: flex;
		justify-content: center;
		align-self: center;
	}
	.frame__title {
		margin: 0 2rem 0 0;
	}
	.frame__photography {
		grid-area: photography;
		align-self: center;
		justify-self: end;
		writing-mode: vertical-lr;
	}
	.frame__credits {
		grid-area: credits;
	}
	.frame__contact {
		grid-area: contact;
	}
	.frame__demos {
		margin: 0;
		grid-area: demos;
		justify-self: end;
	}
	.frame a {
		pointer-events: auto;
	}
	.content {
		height: 100vh;
		justify-content: center;
	}
	.quote {
    white-space: nowrap;
    font-size: 6vw;
    line-height: 1.2;
    letter-spacing: 4px;
    font-weight: 400;
    text-transform: uppercase;
	}
	.quote__author {
		font-size: 2.5vh;
	}
	.quote__link::after {
		top: calc(100% - 1vh);
	}
}


.pace {
  pointer-events: none;
  user-select: none;
  z-index: 20001;
  position: fixed;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 1000px;
  border: 0px;
  height: 1px;
  overflow: hidden;
  background:orange;
}

.pace .pace-progress {
  box-sizing: border-box;
  transform: translate3d(0, 0, 0);
  max-width: 1000px;
  position: fixed;
  z-index: 20001;
  display: block;
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  width: 100%;
  background: white;
}

.pace.pace-inactive {
  display: none;
}


@keyframes shrink {
  0% {
    background-size: 110% 110%;
  }
  100% {
    background-size: 100% 100%;
  }
}

.p {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size:50px;
    font-family: 'Anderson Grotesk';    
}


@media only screen and (max-width: 1024px) {
  .content {
    height:auto;
    padding:60px 0 40px 0;
    text-align:center;
  }
  .logo{
  text-align:center;
  margin: 2rem auto;
  position:relative;
  }
  .center_heading{position:relative; padding:1rem 0px 0px}
  .social_media{position:relative; text-align:center; padding:0px; padding-right:0px;}
  .p{    
  font-size:24px;}
  .pace{
   width: 280px;}
   
   nav{
      position:relative;
      left: 50%;
      margin-left: -60px;
   }

  
}
