/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

@font-face {
    font-family: 'Juana';
    src: url('fonts/Juana-Medium.eot');
    src: url('fonts/Juana-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/Juana-Medium.woff2') format('woff2'),
        url('fonts/Juana-Medium.woff') format('woff'),
        url('fonts/Juana-Medium.ttf') format('truetype'),
        url('fonts/Juana-Medium.svg#Juana-Medium') format('svg');
}


* {
  margin: 0;
  padding: 0;
}

:root {
  --padding: 90px;
  --thumbpad: 1.1em;
  --maxwidth: 1200px;

  --serif: 'juana', serif;
  --sans: 'source-sans-pro', sans-serif;

  --bold: 700;
  --reg: 400;
  --light: 300;

  --lightgrey:#f0f0f0;
  --grey: #404040;
  --darkgrey: #3c3c3c; 
  --white: #fefefe;


  --cursor: #ffc600;
  --cursor-easing: cubic-bezier(0.3, 1, 0.3, 1);

  --easing: cubic-bezier(0.86, 0, 0.07, 1);
  --timings: 600ms;
}




html {
  color: var(--grey);
  font-size: 18.7px;
  line-height: 1.4;

  font-family: var(--sans);
  font-weight: var(--light);

  text-rendering: geometricPrecision;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}




/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
b{
  font-weight: var(--reg);
}

/*MENU*/
nav{
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: var(--padding);
  padding-bottom: calc( var(--padding) / 2 );
  box-sizing: border-box;
  z-index: 10;
  transition: transform 0.2s ease-in-out, padding-top 0.2s ease-in-out;
  background-color: var(--white);
}

@keyframes animation {
  0% {
      transform: translate3d(0px, 0px, 0px);
  }

  100% {
      transform: translate3d(0px, -200%, 0px);
  }
}

@keyframes animationL {
  0% {
      transform: translate3d(0px, -200%, 0px);
  }

  100% {
      transform: translate3d(0px, 0px, 0px);
  }
}

#cursor{
  position: fixed;
  left: 0px;
  top: 0px;
  background-color: var(--cursor);
  width: 27px;
  height: 27px;
  z-index: 99;
  pointer-events: none;
  border-radius: 50%;
  transition: all 0.4s var(--cursor-easing);
  transform: translate(-50%, -50%) translate3d(0px, 0px, 0px);
}

.clicked{
  pointer-events: none;
}

.clicked:after{
  content: '';
  position: absolute;
  bottom: 0px;
    transform: translate(-50%, 10px);
    left: 50%;
    border-radius: 50%;
    height: 6px;
    width: 6px;
  background-color: var(--cursor);
  opacity: 1;
  transition: all 0.3s var(--easing);
}
nav>div>div:hover a:after{
  opacity: 0;
  transform:  translate(-50%, 14px);
  transition: all 0.3s var(--easing);
}
nav>div>div:hover a.clicked:after{
  opacity: 0;
  transform:  translate(-50%, 14px);
}

nav a{
  color: var(--grey);
  text-decoration: none;
  font-family: var(--sans);
  font-weight: var(--reg);
  margin-left: 2em;
  display: inline-block;
  position: relative;
}

nav a div{
  display: inline-block;
  overflow: hidden;
  position: relative;
}

nav a:active:after{

}

nav a span{
  position: relative;
    display: inline-block;
    transform: translate3d(0px, 0px, 0px);
    animation-duration: 0.4s;
    animation-name: animationL;

}

nav a:hover span{
  animation-name: animation;
}

nav a span::after {
    content: attr(data-char);
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    transform: translate3d(0px, 200%, 0px);
}



nav svg{
  width: 42px;
    transform: scale(100%);
  transition-duration: 0.4s;
}

nav svg:hover {
  transform: scale(120%);
  transition-duration: 0.4s;
}

nav>div>a{
  margin: 0;
}

nav>div{
	position: relative;
	width: 100%;
}

nav>div>div{
	position: absolute;
	right: 0;
	bottom: 0.5em;
}

.mini{
  padding-top: calc( var(--padding) / 4 );
  padding-bottom: calc( var(--padding) / 4 );
}

.hidden{
  transform: translateY(-100%);
}


/*HEADER SIZES*/

header h1{
	font-size: 2rem;
	font-family: var(--serif);
  margin-bottom: 2em;
  line-height: 1.3em;
}

header h4{
  width: 50%;
  margin-left: 50%;
  line-height: 1.5em;
margin-top: -10.4em;
    margin-bottom: 7em;
}
header h4 p{
  margin-bottom: 1em;
}


header h5{
  width: 50%;
  margin-left: 50%;
  line-height: 1.5em;
  margin-top: -5.7em;
    margin-bottom: 2em;
}
header h5 p{
  margin-bottom: 1em;
}


header h6{
  width: 100%;
  font-size: 1.2em;
  text-align: center;
  margin-top: -0.5em;
    margin-bottom: 3em;
}
header h6 p{
  margin-bottom: 1em;
}



/*FOOTER SIZES*/

footer{
  padding: var(--padding);
  color: var(--white);
  background-color: var(--darkgrey);
  display: flex;
  align-items: center;
  justify-content: center;
}
footer a{
  color: var(--white);
  text-decoration: none;
  font-weight: var(--reg);
}
footer .slogan{
  font-size: 2.3076923077rem;
  font-family: var(--serif);
  line-height: 1.2em;
  width: 50%;
}
footer .slogan span{
  width: 50%;
}

footer .contact{
  line-height: 1.7692307692em;
}

footer svg{
  height: 55px;
  margin-bottom: 0.7em;
}
footer .logos{
  text-align: right;

}


.contact, .logos{
  width: 25%;
}


/*CONTENT*/
main{
  height: 100vh;
  width: 100vw;
  overflow-y: scroll;
  background-color: var(--white) ;
  overscroll-behavior: none;
}
.main{
  width: 100%;
}
header h1{
    padding-top: calc(var(--padding)*3);
    text-align: center;
}
header.home h1{
  text-align: left;
}



header h1>span, header h4 p>span{
    position: relative; 
    display: inline;
    overflow: hidden;
    clip-path: inset(0px 0px 0px);
}
header h1 span>span, header h4 span>span{
  transform: translateY(100%);
  display: inline-block;
  opacity: 0;
}
header.revealheader  h1 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.4s ease-in-out;
}
header.revealheader  h4 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.4s ease-in-out;
}
header.revealheader h4 p:nth-of-type(1) span>span{
  transition-delay:calc(40ms * 4); 
}
header.revealheader h4 p:nth-of-type(2) span>span{
  transition-delay:calc(40ms * 8); 
}
header.revealheader h4 p:nth-of-type(3) span>span{
  transition-delay:calc(40ms * 12); 
}
header.revealheader h4 p:nth-of-type(4) span>span{
  transition-delay:calc(40ms * 16); 
}




header h1>span, header h5 p>span{
    position: relative; 
    display: inline;
    overflow: hidden;
    clip-path: inset(0px 0px 0px);
}
header h1 span>span, header h5 span>span{
  transform: translateY(100%);
  display: inline-block;
  opacity: 0;
}
header.revealheader  h1 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.4s ease-in-out;
}
header.revealheader  h5 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.4s ease-in-out;
}
header.revealheader h5 p:nth-of-type(1) span>span{
  transition-delay:calc(40ms * 4); 
}
header.revealheader h5 p:nth-of-type(2) span>span{
  transition-delay:calc(40ms * 8); 
}
header.revealheader h5 p:nth-of-type(3) span>span{
  transition-delay:calc(40ms * 12); 
}
header.revealheader h5 p:nth-of-type(4) span>span{
  transition-delay:calc(40ms * 16); 
}




header h1>span, header h6 p>span{
    position: relative; 
    display: inline;
    overflow: hidden;
    clip-path: inset(0px 0px 0px);
}
header h1 span>span, header h6 span>span{
  transform: translateY(100%);
  display: inline-block;
  opacity: 0;
}
header.revealheader  h6 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.7s ease-in-out;
}
header.revealheader  h6 span>span{
  transform: translateY(0%);
  display: inline-block;
  opacity: 1;
  transition: all 0.7s ease-in-out;
}


/*header h1 span:nth-of-type(0)>span{ transition-delay:0ms; }
header h1 span:nth-of-type(1)>span{ transition-delay:calc(40ms * 1); }
header h1 span:nth-of-type(2)>span{ transition-delay:calc(40ms * 2); }
header h1 span:nth-of-type(3)>span{ transition-delay:calc(40ms * 3); }
header h1 span:nth-of-type(4)>span{ transition-delay:calc(40ms * 4); }
header h1 span:nth-of-type(5)>span{ transition-delay:calc(40ms * 5); }
header h1 span:nth-of-type(6)>span{ transition-delay:calc(40ms * 6); }
header h1 span:nth-of-type(7)>span{ transition-delay:calc(40ms * 7); }
header h1 span:nth-of-type(8)>span{ transition-delay:calc(40ms * 8); }
header h1 span:nth-of-type(9)>span{ transition-delay:calc(40ms * 9); }
header h1 span:nth-of-type(10)>span{ transition-delay:calc(40ms * 10); }
header h1 span:nth-of-type(11)>span{ transition-delay:calc(40ms * 11); }
header h1 span:nth-of-type(12)>span{ transition-delay:calc(40ms * 12); }
header h1 span:nth-of-type(13)>span{ transition-delay:calc(40ms * 13); }
header h1 span:nth-of-type(14)>span{ transition-delay:calc(40ms * 14); }
header h1 span:nth-of-type(15)>span{ transition-delay:calc(40ms * 15); }
header h1 span:nth-of-type(16)>span{ transition-delay:calc(40ms * 16); }
header h1 span:nth-of-type(17)>span{ transition-delay:calc(40ms * 17); }
header h1 span:nth-of-type(18)>span{ transition-delay:calc(40ms * 18); }
header h1 span:nth-of-type(19)>span{ transition-delay:calc(40ms * 19); }
header h1 span:nth-of-type(20)>span{ transition-delay:calc(40ms * 20); }
*/

/*TRANSITION*/
.slideup-leave,
.slideup-enter-to {
    transform: translateY(0);
    opacity: 1;
}
.slideup-leave-active,
.slideup-enter-active {
    transition: all 0.5s cubic-bezier(0.5, 0.7, 0.4, 1);
    visibility: visible !important;
}
.slideup-leave-to {
    opacity: 0;
}
 
.slideup-enter {
    transform: translateY(2.5%);
  opacity: 0;
    z-index: 1;
}
.slideup-enter-to {
    z-index: 1;
    position: fixed; 
    top: 0;
    left: 0;
} 


/*SWIPER*/
.swiper {
  width: 100%;
  height: 100%;
  overflow: visible !important;
}

.swiper-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  width: 100% !important;
  max-width: calc(var(--maxwidth) );
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.portraitslide{
  width: 50% !important;
  box-sizing: border-box;
}
.portraitslide img{
  max-height: 73vh;
  object-fit: contain;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
  bottom: 0em !important;
  position: relative !important;
  padding-top: 14px;
}

.swiper-pagination-bullet{
  border-radius: 0;
  height: 1.6px;
  margin: 0 !important;
  width: 6rem;
  background-color: var(--grey);
}
.swiper-pagination-bullet-active{
  background-color: var(--darkgrey);
}
  
/*  BLOCKS*/
  .block{
    width: 100%;
    max-width: calc(var(--maxwidth) + ( 2*var(--padding) ) );
    margin: 0 auto;
    padding: 0 var(--padding);
    box-sizing: border-box;
  }

  .swipeblock{
    width: 100%;
    padding: 0;
    box-sizing: border-box;
    overflow-x: hidden;
  }

  .lightgrey{
    background-color: var(--lightgrey);
  }



  .portrait img{
    width: 100%;
    margin: 0 auto;
    display: block;
    padding: 0 calc( var(--padding) * 3.2);
    box-sizing: border-box;
  }

  .block>img, .block-large>img{
        transform: translateY(50px);
    width: 100%;
    position: relative;
    opacity: 0;
    transition: all 0.4s ease-in-out;
    transition-delay:calc(40ms * 12); 
  }

  .revealall .block>img, .revealall .block-large>img{
        transform: translateY(0px);
    top: 0em;
    opacity: 1;
  }

  .block-large{
    width: 100%;
  }

  .smallspace{
    height: calc(0.15 * var(--padding) );
    width: 100%;
  }

  .space{
    height: calc(0.5 * var(--padding) );
    width: 100%;
  }

  .largespace{
    height: calc(0.9 * var(--padding) );
    width: 100%;
  }

  .stick{
    height: 150vh;
  }

  .stick video{
    position: sticky;
    top: 0;
  }



  .content{
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    grid-gap: 0.8em;
  }

  .content>div>img{
    width: 100%;
  }

  .content div:first-of-type{
    font-family: var(--serif);
    font-size: 1.32rem;
    line-height: 1.35em;
  }

  .subhead{
    box-sizing: border-box;
    padding-right: 15%;
  }


  .content div:last-of-type{
    line-height: 1.5em;
  }
  .content div p{
    margin-bottom: 0em;
    margin-top: 0.33em;
  }


.gallery{
    padding: var(--padding);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    width: 100%;
    grid-gap: 0.8em;
    box-sizing: border-box;
  }


  .logogrid{
    padding: var(--padding);
    display: grid;
    margin-bottom: 2px;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    width: 100%;
    grid-gap: 0em;
    box-sizing: border-box;
    background-color: var(--lightgrey);
  }

  .logogrid>img, .gridroll img{
/*    grid-column: 1fr;*/
  }

  .gridroll{
    position: relative;
  }

  .gridroll img{
    width: 100%;

  }

  .gridroll img:first-of-type{
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: 0.3s;
  }
  .gridroll:hover img:first-of-type{
    opacity: 1;
  }

  .upnext h3{
    font-family: var(--serif);
    font-size: 1.6rem;
    margin-bottom: calc( var(--padding) * 0.5 );
  }

  .upnext{
    padding-top: var(--padding);
    padding-bottom: calc(var(--padding) * 1);
  }

  .upnextwrap{
    display: flex;
    grid-gap: 3px;
  }

  .upnextwrap>div{
    width: 50%;
  }


/*GRID*/
.grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  grid-gap: 2px;
}


/*Full width project*/
.singlegrid{
  display: grid;
  grid-template-columns: 1fr;
  width: 100%;
  grid-gap: 0px;
}


/*All projects beneath full width*/
.bottomgrid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  grid-gap: 2px;
  margin-bottom: 1.7rem;
}


.column{
  position: relative;
  top: 1em;
  opacity: 0;
}

.revealall .column{
  top: 0;
  opacity: 1;
  transition: all 0.4s ease-in-out;
  transition-delay:calc(40ms * 12); 
}

.column:last-of-type{
/*  margin-left: -1px;*/
}


.gallerygap{
  padding: 1.5px;
}


.thumb{
  position: relative;
  color: var(--white);
  cursor: pointer;
  margin-bottom: 2px;
  opacity: 1;
  display: block;
}

.thumb:hover {
  transform: translateY(0px);
      transition: all 0.75s ease-in-out ;
}



.makevis{
    transform: translateY(100px);
  display: hidden;
  opacity: 0;
  transition: all 0.55s ease-in-out ;
}



.makevis.visreveal{
  transform: translateY(0px);

  display: block;
  opacity: 1;

}


.leftthumb{

  display: hidden;
  opacity: 1;
  transition: all 0.55s ease-in-out ;
}

.leftthumb:hover {
  transform: translateX(0px);
      transition: all 0.75s ease-in-out ;
}



.thumb .image{
  display: block;
  width: 100%;
  position: relative;
}

.thumb img{
  border-bottom-left-radius: 1.5em;
  width: 100%;
}

.thumb video{
    border-bottom-left-radius: 1.5em;
  width: 100%;
}

.thumb .info{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity var(--timings) var(--easing);
}

.thumb .info div{
  padding: calc(var(--thumbpad) * 1.25);
  position: absolute;
  top: 0;
  left: -0.5em;
  transition: left var(--timings) var(--easing);
}

.thumb .info span{
  position: absolute;
  bottom: calc(var(--thumbpad) * 0.5);
  left: calc(var(--thumbpad) * 1.25);
  font-weight: var(--reg);
  transition: bottom var(--timings) var(--easing);
}

.info img{
  object-fit: cover;
}

.thumb h3{
  font-size: 1.6rem;
  font-family: var(--serif);
  margin-bottom: 0.85em;
  letter-spacing: 0.015em;
}

.thumbcaption{
  line-height: 1.35em;
  margin-right: 1em;
}

.thumb:hover .info{
  opacity: 1;
  transform: translateY(-100);
    transform: translateY(0);
}
.thumb:hover .info div{
  left: 0;
}
.thumb:hover .info span{
  bottom: calc(var(--thumbpad) * 1.25);

}

#menubutton{
  display: none;
position: absolute;
    right: 0;
    top: 0;
    background-color: #cecece;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    padding-top: 6px;
    z-index: 99;
}


#menubutton span:after{
  content: '';
}

/* Rotate first bar */
.change .bar1 {
  transform: translate(0, 11px) rotate(-45deg);
}

/* Fade out the second bar */
.change .bar2 {opacity: 0;}

/* Rotate last bar */
.change .bar3 {
  transform: translate(0, -11px) rotate(45deg);
}





.link { text-decoration: none; 
 color: #a9a9a9; }
.link:hover { color: #ffc600; } 






button {
    text-decoration: none;
    border: 0px;
    padding: 25px 20px;
    width: 100%;
    font-size: 20px;
    font-weight: 300;
    font-family: 'source-sans-pro', sans-serif;
    color: #404040;
    background-color: #ffffff;
    position: relative;
    overflow: hidden;
    transition: all 0.7s;
}

button:before {
    content: 'Return to Projects';
    color: #ffffff;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: #c6c6c6;
    transform: translateY(-100%);
    transition: all 0.45s;
    display: flex;
    justify-content: center;
    align-items: center;
}

button:hover::before {
    transform: translateY(0);
}









body { margin: 0; }

.ticker-wrap {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  bottom: 0;
  height: 6rem;
  background-color: fffff; 
}

.ticker-wrap:hover {
  background-color: #ffffff; 
}

.ticker:hover {
 -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -ms-animation-play-state: paused;
  -o-animation-play-state: paused;  
  animation-play-state: paused;
  }



.tickerlink { text-decoration: none; color: white; }
.tickerlink:visited { text-decoration: none; color: white;  }
.tickerlink:hover { text-decoration: none; color: white;  }
.tickerlink:focus { text-decoration: none; color: white;  }
.tickerlink:active { text-decoration: none; color: white;  }


.ticker {
  display: inline-block;
  margin-top: 0rem;
  animation: marquee 320s linear infinite;
}
.item-collection-1 {
  position: relative;
  left: 0%;
  animation: swap 320s linear infinite;
}

.item {
  display: inline-block;
  padding: 1.5rem;
  font-size: 3rem;
  font-weight: var(--reg);  
  font-family: 'source-sans-pro', sans-serif;
}

/* Transition */
@keyframes marquee {
  0% {
    transform: translateX(0)
  }
  100% {
    transform: translateX(-100%)
  }
}

@keyframes swap {
  0%, 50% {
    left: 0%;
  }
  50.01%,
  100% {
    left: 100%;
  }
}

/* ==========================================================================
  YELLOW TICKER
   ========================================================================== */


.tickerlinkyellow { text-decoration: none; color: #ffc600; }
.tickerlinkyellow:visited { text-decoration: none; color: #ffc600;  }
.tickerlinkyellow:hover { text-decoration: none; color: #ffc600;  }
.tickerlinkyellow:focus { text-decoration: none; color: #ffc600;  }
.tickerlinkyellow:active { text-decoration: none; color: #ffc600;  }




/* ==========================================================================
  NUTTERY BUTTERY TICKER
   ========================================================================== */


.ticker-wrap-nb {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #fdf4d7; 
}


.tickerlinknuttery { text-decoration: none; color: #a67320; }
.tickerlinknuttery:visited { text-decoration: none; color: #a67320;  }
.tickerlinknuttery:hover { text-decoration: none; color: #a67320; }
.tickerlinknuttery:focus { text-decoration: none; color: #a67320;  }
.tickerlinknuttery:active { text-decoration: none; color: #a67320; }





/* ==========================================================================
  ESSENTIALS TICKER
   ========================================================================== */



.tickerlinkessentials { text-decoration: none; color: #cc2421; }
.tickerlinkessentials:visited { text-decoration: none; color: #cc2421;  }
.tickerlinkessentials:hover { text-decoration: none; color: #cc2421; }
.tickerlinkessentials:focus { text-decoration: none; color: #cc2421;  }
.tickerlinkessentials:active { text-decoration: none; color: #cc2421; }




/* ==========================================================================
  ZYN TICKER
   ========================================================================== */


.ticker-wrap-zyn {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #22add8; 
}


.tickerlinkzyn { text-decoration: none; color: #ffffff; }
.tickerlinkzyn:visited { text-decoration: none; color: #ffffff;  }
.tickerlinkzyn:hover { text-decoration: none; color: #ffffff; }
.tickerlinkzyn:focus { text-decoration: none; color: #ffffff;  }
.tickerlinkzyn:active { text-decoration: none; color: #ffffff; }


/* ==========================================================================
  VEEV TICKER
   ========================================================================== */


.ticker-wrap-veev {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #daccbf; 
}


.tickerlinkveev { text-decoration: none; color: #796b5e; }
.tickerlinkveev:visited { text-decoration: none; color: #796b5e;  }
.tickerlinkveev:hover { text-decoration: none; color: #796b5e; }
.tickerlinkveev:focus { text-decoration: none; color: #796b5e;  }
.tickerlinkveev:active { text-decoration: none; color: #796b5e; }




/* ==========================================================================
  FILMS TICKER
   ========================================================================== */


.tickerlinkfilms { text-decoration: none; color: #6B7C46; }
.tickerlinkfilms:visited { text-decoration: none; color: #6B7C46;  }
.tickerlinkfilms:hover { text-decoration: none; color: #6B7C46; }
.tickerlinkfilms:focus { text-decoration: none; color: #6B7C46;  }
.tickerlinkfilms:active { text-decoration: none; color: #6B7C46; }




/* ==========================================================================
  BRAND STORY TICKER
   ========================================================================== */


.tickerlinkstory { text-decoration: none; color: #bed4eb; }
.tickerlinkstory:visited { text-decoration: none; color: #bed4eb;  }
.tickerlinkstory:hover { text-decoration: none; color: #bed4eb; }
.tickerlinkstory:focus { text-decoration: none; color: #bed4eb;  }
.tickerlinkstory:active { text-decoration: none; color: #bed4eb; }




/* ==========================================================================
  O2 TICKER
   ========================================================================== */


.ticker-wrap-o2 {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
    background-color: #297fc8; 
}




/* ==========================================================================
  LCF TICKER
   ========================================================================== */


.ticker-wrap-lcf {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #fffdf2; 
}


.tickerlinklcf { text-decoration: none; color: #ef412b; }
.tickerlinklcf:visited { text-decoration: none; color: #ef412b;  }
.tickerlinklcf:hover { text-decoration: none; color: #ef412b; }
.tickerlinklcf:focus { text-decoration: none; color: #ef412b;  }
.tickerlinklcf:active { text-decoration: none; color: #ef412b; }





/* ==========================================================================
  PRU
   ========================================================================== */


.ticker-wrap-pru {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #fcf8ec; 
}


.tickerlinkpru { text-decoration: none; color: #007bc1; }
.tickerlinkpru:visited { text-decoration: none; color: #007bc1;  }
.tickerlinkpru:hover { text-decoration: none; color: #007bc1; }
.tickerlinkpru:focus { text-decoration: none; color: #007bc1;  }
.tickerlinkpru:active { text-decoration: none; color: #007bc1; }



/* ==========================================================================
  GYM GROUP TICKER
   ========================================================================== */


.ticker-wrap-tgg {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 6rem;
  background-color: #2e94ff; 
}


.tickerlinktgg { text-decoration: none; color: #b2ff00; }
.tickerlinktgg:visited { text-decoration: none; color: #b2ff00;  }
.tickerlinktgg:hover { text-decoration: none; color: #b2ff00; }
.tickerlinktgg:focus { text-decoration: none; color: #b2ff00;  }
.tickerlinktgg:active { text-decoration: none; color: #b2ff00; }




html{
--rotating-font-size:9.5px;
--rotating-font-width:200px;
--rotating-font-letter-spacing:-0.05px;}

/*Main Container*/
.rotating-text-con{
display:flex;
position:relative;
overflow:hidden;
height:100px;
justify-content:center;
margin-bottom:-10px;
margin-top:-40px!important;}

/*Text Wrap*/
.rotating-text-wrap{
text-align:left;
padding-top: 0px;
position:static;
top:400px;
left:90px;}

/*Text Circle*/
.rotating-text-circle{
height: auto;
transform-origin: center;
width: var(--rotating-font-width);}

/*Font Styles*/
.rotating-text{
  fill: #ffc600;
font-family:var(--sans);
font-size:var(--rotating-font-size);
letter-spacing:var(--rotating-font-letter-spacing);
text-transform:uppercase;
font-weight:400;}


/*Rotating Animation*/
@keyframes rotating {
from{transform: rotate(0deg);}
to{transform: rotate(360deg);}} 
@keyframes reverse-rotating {
from{transform: rotate(360deg);}
to{transform: rotate(0deg);}}  
.rotating {animation: rotating 20s linear infinite;}
.reverse-rotating {animation: reverse-rotating 20s linear infinite;}


/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */



@media only screen and (max-width: 1080px) {
  
  :root{
    --padding: 60px;
  }

  footer{
    flex-wrap: wrap;
  }

  footer .slogan{
    width: 100%;
    margin-bottom: 2rem;
  }



  .contact, .logos{
    width: 50%;
  }
  .logogrid{
      grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
  
}


@media only screen and (max-width: 860px) {

  html{
    font-size: 16.5px;
  }

.thumbcaption{
display: none;
  }

header h1{
  font-size: 2rem;
}






@media only screen and (max-width: 720px) {

  :root{
    --padding: 20px;
  }

  html{
    font-size: 16.5px;
  }


header h1{
  font-size: 1.8rem;
}

header h5{
    margin-top: 2em;
      width: 100%;
  margin-left: 0%;
  }

footer svg{
  margin-bottom: 2em;

}


.thumbcaption{
display: none;
  }

  .main{
    padding-top: calc(var(--padding)*6);
  }

  #cursor{
    display: hidden;
  }


.singlegrid{
  display: contents;
}

 .rotating-text-wrap{
    display: none;
  }


 .rotating-text-circle{
    display: none;
  }


  #menubutton{
    display: block;
  }

  nav svg{
width: 30px;
  }

  nav a{
    margin: 0;
  }

.menuopen, .menuopen #main{
  overflow: hidden;
}
.menuopen #menubutton{
  background-color: var(--white);
}
#navbar>div>div{
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  background-color: var(--darkgrey);
  color: var(--white);
  width: 100vw;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  transition: opacity 0.4s ease-in-out;
}
.menuopen #navbar>div>div{
  opacity: 1;
  pointer-events: auto;
}
#navbar>div>div a{
display: block;
    color: white;
    line-height: 1.2em;
    font-size: 2rem;
    margin: 0.25em;
    margin-bottom: 0em;
    font-family: var(--serif);
}
.bar1, .bar2, .bar3 {
width: 24px;
    height: 1px;
    background-color: var(--white);
    margin: 6px 8px;
    transition: 0.4s;
    display: block;
    transition: transform 0.4s ease-in-out;
    transform: rotate(0deg) translate(0px,0px);
    opacity: 1;
}
.menuopen .bar1, .menuopen .bar2, .menuopen .bar3{
  background-color: var(--darkgrey);
}
.menuopen .bar2{
  opacity: 0;
}
.gridroll:hover img:first-of-type{
    opacity: unset;
}
nav a:hover span{
  animation-name: none;
}
main{
  box-sizing: border-box;
}
.bar1{
  transform-origin: left top;
}
.menuopen .bar1{
  transform: rotate(45deg) translate(2px,-4px);
  transform-origin: left top;
}
.bar3{
  transform-origin: left bottom;
}
.menuopen .bar3{
  transform: rotate(-45deg) translate(2px,4px);
  transform-origin: left bottom;
}
.clicked:after{
  background-color: transparent;
}
#menubutton span:after{
  content: none;
}
nav a span{
  animation-name: none;
}

.content{
  display: block;
}
.content div:first-of-type{
  margin-bottom: 1rem;
  padding-right: 0%;
}



.bottomgrid {
 grid-template-columns: 1fr;
     display: contents;
 }



.logogrid{
     
      grid-template-columns: 1fr
       1fr 1fr 1fr;
}

/*TWEAK NUMBERS HERE TO CHANGE BOTTOM / TOP PADDING i.e. 1.5 or 2*/
  .upnext{
    padding-top: calc(var(--padding) * 1.5);
    padding-bottom: calc(var(--padding) * 2);
  }
.upnextwrap{
  display: block;
}
.upnextwrap>div{
  width: 100%;
}
.upnext h3{
  margin-bottom: calc( var(--padding) * 1 );
}

  .smallspace{
    height: calc(1.5 * var(--padding) );
    width: 100%;
  }

  .space{
    height: calc(2 * var(--padding) );
    width: 100%;
  }

  .largespace{
    height: calc(3 * var(--padding) );
    width: 100%;
  }
  header h4{
    width: 100%;
    margin-top: 0px;
    margin-left: 0;
  }

  footer{
    display: block;
    padding-top: calc(var(--padding) * 2.5);
    padding-bottom: calc(var(--padding) * 2.5);
  }

  footer .logos{
    text-align: left;
    margin-top: 2rem;
  }

  .column:last-of-type{
    margin: 0;
  }

  .grid{
    padding: 0;
    display: block;
  }

  .grid .columns{
    width: 100%;
  }

  .contact, .logos{
    width: 100%;
  }

  .portrait img{
    padding: 0;
  }

  .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
    width: calc(100% - ( var(--padding) * 2 ) );
    display: flex;
    margin: 0 auto;
  }

}


@media only screen and (max-width: 640px) {

.logogrid{
      grid-template-columns: 1fr 1fr 1fr;
}

}




@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

