html, body, footer {
	overflow-x: hidden;
  }

  html {
    padding: 0;
    margin: 0;
	font-size: 8px;
    scroll-behavior: smooth;
    box-sizing: border-box;
	min-width: calc(100vw);
    max-width: calc(100vw);
	min-height: calc(100vh);
    max-height: calc(100vh);
	width: calc(100vmax);
	height: calc(100vmin);
  }

@import url('https://fonts.googleapis.com/css?family=Lato');


@font-face {
	font-family: 'Remington';
	src: url("../brand_assets/fonts/vtRemingtonPortable.ttf") format("truetype"); }
  
  @font-face {
	font-family: 'Minnie';
	src: url("../brand_assets/fonts/Minnie.ttf") format("truetype"); }
  

body {
	margin:  0 0 0 0;
	padding: 0 0 0 0;
	background-image: url("../brand_assets/backgrounds/tti-piplup-background-v2.1.png");
	background-size: 100vw 100vh;
	background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center;
	overflow-x: hidden;
}

@font-face {
  font-family: 'cog';
  src: url('../brand_assets/fonts/vtRemingtonPortable.eot'); /* IE9 Compat Modes */
  src: url('../brand_assets/fonts/vtRemingtonPortable.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../brand_assets/fonts/vtRemingtonPortable.woff2') format('woff2'), /* Super Modern Browsers */
       url('../brand_assets/fonts/vtRemingtonPortable.woff') format('woff'), /* Pretty Modern Browsers */
       url('../brand_assets/fonts/vtRemingtonPortable.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('../brand_assets/fonts/vtRemingtonPortable.svg#vtRemingtonPortable') format('svg'); /* Legacy iOS */
}

.container {
	margin-left: auto;
	margin-right: auto;
	display: block;
	min-width: calc(100vmin);
	/* max-width: calc(100vmax); */
	max-width: 100%;
	width: calc(95%);
}

.navbar-container {
	min-height: calc(4vmin);
	max-height: calc(8vmax);
	height: clamp(calc(2vmin), calc(2.5vmax), calc(4vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
	width: 100%;
}

.navbar-default {
	background-color: #0099FF;
	border-bottom: none;
    -webkit-box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
       -moz-box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
            box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
}

li {
	list-style: none;
}

.nav-icon {
  	-webkit-filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.3));
	filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.3));
}

#tti-icon {
	padding: 0;
	margin: 0;
	transform: scale(0.95);
    transition: .5s;
}

#tti-icon:hover, #tti-icon:active, #tti-icon:focus {
	transform: scale(1.05);
}

#tti-icon-animation {
    -webkit-animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
    	 -o-animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
    	  	animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
    -webkit-transition: all 0.2s ease-in-out;
            transition: all 0.2s ease-in-out;
}

@keyframes rotating-logo {
	0% { transform: rotate(0deg) }
	25% { transform: rotate(1.5deg) }
	50% { transform: rotate(0deg) }
	75% { transform: rotate(-1.5deg) }
	100% { transform: rotate(0deg) }
}

.fa-user {
	margin-right: calc(0.313rem + 1.0vw);
}

.navbar-nav > li > a {
  	color: #FFFFFF !important;
	font-family: 'Minnie', sans-serif;
   	text-shadow: 2.5px 2.5px 8px rgba(0, 0, 0, 0.8);
  	-webkit-transition: all 0.2s linear;
			transition: all 0.2s linear;
}

.navbar-nav > li > a:hover, .navbar-nav > li > a:focus, .navbar-nav > li > a:active {
	animation: navbar-hover-slide 0.2s linear 0.0s 1 normal forwards;
}

@keyframes navbar-hover-slide {
	0% {
		-webkit-box-shadow: 0px 0px 0px 0px #FF851B inset;
		   -moz-box-shadow: 0px 0px 0px 0px #FF851B inset;
				box-shadow: 0px 0px 0px 0px #FF851B inset;
	}

	100% {
   		text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
		-moz-box-shadow: inset 0 calc(10.26rem + 1.5vh) 0 0 #FF851B;
		-webkit-box-shadow: inset 0 calc(10.26rem + 1.5vh) 0 0 #FF851B;
			box-shadow: inset 0 calc(10.26rem + 1.0vh) 0 0 #FF851B;
	}
}

.nav-item .fs-1-modified {
	margin-right: calc(1.875rem + 0.5vmin);
  	font-size: calc(2.188rem + 1.0vmin) !important;
	font-weight: 400;
}

.navbar-left:nth-child(n+1) {
	margin-left: calc(1.875rem + 1.0vmin);
}

.navbar-right:nth-child(n+1) {
	margin-right: calc(1.875rem + 1.0vmin);
}

.news-page-title {
	padding-top: 5px;
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 5px;
	margin-top: clamp(calc(1.6vmin), calc(1.6vmax), calc(2vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
	margin-bottom: calc(0.938rem + 1.5vmin);
	display: inline-block;
	font-size: calc(1.875rem + 1vw);
	font-family: 'Minnie', sans-serif;
	color: #000000;
	width: calc(100%);
	text-align: center;
}

#c {
	padding: 0;
	margin: 0 inherit 0 inherit;
	background-color: #FFFFFF;
	border-top: 5px solid #0099FF;
	border-bottom: 5px solid #0099FF;
}

.carousel-control .fa-caret-left, .carousel-control .fa-caret-right {
	font-size: calc(3.5rem + 1vw);
}

.carousel-control.right, .carousel-control.left {
	background: transparent;
    transition: .2s;
}

.carousel-control.left {
	margin-left: calc(-1.25em);
}

.carousel-control.right {
	margin-right: calc(-1.25em);
}

.carousel-indicators li {
	display: inline-block;
	width: calc(0.25rem + 1vw);
	height: calc(0.25rem + 1vw);
	margin: 1px;
	text-indent: -999px;
	cursor: pointer;
	background-color: #000 \9;
	background-color: rgba(0, 0, 0, 0);
	border: 1px solid #FFFFFF;
	border-radius: calc(10px + 1vw);
}

.carousel-indicators .active {
  width: calc(0.375rem + 1vw);
  height: calc(0.375rem + 1vw);
  margin: 0;
  background-color: #FFFFFF;
}

#page, .contact #c {
	background-color: #F8F8F8;
	border-bottom: 5px solid #0099FF;
}

#page .row .col-md-9 {
	background-color: #FFFFFF;
	border-right: 1px solid rgba(0, 0, 0, 0.3);
}

#page .row .col-md-3 {
	background-color: #F8F8F8;
	padding-left: 0;
	padding-right: 0;
}

.col-md-9-modified {
	position: relative;
	min-height: 1px;
	padding: 0;
}

@media (min-width: 992px) {
  .col-md-9-modified {
    float: left;
  }

  .col-md-9-modified {
    width: 75%;
  }
}

.page-title {
	padding-top: 5px;
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 5px;
	margin-bottom: calc(0.938rem + 1.5vmin);
	display: inline-block;
	font-size: calc(1.875rem + 1vw);
	font-family: 'Minnie', sans-serif;
	color: #FFFFFF;
   	text-shadow: 1.5px 1.5px 8px rgba(0, 0, 0, 0.6);
	width: calc(100%);
	text-align: center;
	background-color: #3bc4f9;
	border-bottom: 2px solid #0099FF;
}

img.blog-image {
	border-bottom: 5px solid #0099FF;
}

p.blog-blurb {
	margin-top: -5px;
	width: 100%;
	font-family: 'Lato', sans-serif;
	font-size: calc(0.375rem + 1vw);
	margin-bottom: calc(0.938rem + 1vh);
}

h3.blog-title {
	font-size: calc(1.25rem + 1vw);
	margin-top: calc(0.625rem + 1vh);
	font-family: 'Lato', sans-serif;
	font-weight: 700;
}

a.blog-button {
	background: #0099FF;
	color: #FFFFFF;
	transform: scale(1.0);
	font-size: calc(1.25rem + 1vw);
	padding: 10px 15px 10px 15px;
	display: inline-block;
	margin-bottom: 25px;
}

.blog-button-text {
	transform: scale(1.0);
    transition: .4s;
}

.blog-button-text:hover {
	transform: scale(1.05);
}

main #page .col-md-6 {
	margin-left: auto; 
	margin-right: auto; 
}

#footer {
	padding: calc(0.187rem + 1.0vh) calc(0.375rem + 0.5vw) calc(0.187rem + 0.5vh) calc(0.375rem + 0.5vw);
	background: url("../brand_assets/backgrounds/tti-blueprint-background-v1.1.png");
}

.section {
	width: 100%;
}

.border-top {
	border-top: 2px solid #0099FF;
}

.border-left {
	border-left: 2px solid #0099FF;
}

.border-right {
	border-right: 2px solid #0099FF;
}

.section .title {
	/* font-family: 'Lato', sans-serif; */
	font-family: 'Minnie', sans-serif;
	color: #FFFFFF;
   	text-shadow: 1.5px 1.5px 8px rgba(0, 0, 0, 0.6);
	width: 100%;
	font-size: calc(1.875rem + 1vw);
	text-align: center;
	background-color: #3bc4f9;
	padding-top: 5px;
	padding-left: calc(0.25rem + 1.5vh);
	padding-right: calc(0.25rem + 1.5vh);
	padding-bottom: 5px;
	border-bottom: 2px solid #0099FF;
}

.section-body .social {
	display: inline-block;
	padding: 0;
	margin: calc(0.625rem + 1vw) 0 calc(0.625rem + 1vw) 0;
	/* min-width: calc(2vmin); */
	/* max-width: calc(4vmax); */
	/* min-height: calc(2vmin); */
	min-height: calc(8vmin);
	max-height: calc(8vmin);
	min-width: calc(8vmin);
	max-width: calc(8vmin);
	width: calc(8vmin);
	height: calc(8vmin);
	/* max-height: calc(4vmax); */
	/* width: calc(auto + 1vmin); */
	/* height: auto; */
	font-size: calc(3.125rem + 1.5vmax);
	color: #FFFFFF;
	text-align: center;
    -webkit-transition: all 0.1s ease-in-out;
            transition: all 0.1s ease-in-out;
}

.fa-brands {
	transform: scale(0.90);
    transition: .3s;
}

.fa-brands:hover, .fa-brands:focus, .fa-brands:active {
  transform: scale(0.95);
}

#discord, #bluesky, #youtube, #twitch {
	line-height: calc(5rem + 1vmax);
}

#discord:hover, #discord:focus, #discord:active, #bluesky:hover, #bluesky:focus, #bluesky:active, #youtube:hover, #youtube:focus, #youtube:active, #twitch:hover, #twitch:focus, #twitch:active {
	color: #FFFFFF;
	background-color: #222222;
	transition: .4s;
}

#discord {
	/* text-indent: -1px; */
	background-color: #738ADB;
}

#bluesky {
	/* text-indent: -1px; */
	background-color: #1185FE;
}

#youtube {
	/* text-indent: -1px; */
	background-color: #e52d27;
}

#twitch {
	/* text-indent: -1px; */
	background-color: #6441A4;
}

.section-body .status {
	font-family: 'Lato', sans-serif;
	font-size: calc(0.625rem + 1vw);
	font-weight: 500;
	width: calc(85%);
	margin-top: calc(0.25rem + 1vmin);
	margin-left: calc(0.25rem + 1.5vh);
	margin-right: calc(0.25rem + 1.5vh);
}

.status-online {
	color: green;
}

.status-offline {
	color: red;
}

.section-body .contact {
	font-family: 'Lato', sans-serif;
	font-size: calc(0.625rem + 1vw);
	width: calc(85%);
	margin-top: calc(0.25rem + 1.5vh);
	margin-left: calc(0.25rem + 1.5vh);
	margin-right: calc(0.25rem + 1.5vh);
}

.section-body .email {
	font-family: 'Lato', sans-serif;
	font-size: calc(0.625rem + 1vw);
	width: calc(85%);
	margin-top: calc(0.25rem + 1.5vh);
	margin-left: calc(0.25rem + 1.5vh);
	margin-right: calc(0.25rem + 1.5vh);
	color: #555;
}

.section-body .other {
	padding: 0;
	margin: calc(0.2rem + 0.5vh) 0;
	display: flex;
	flex-direction: column;
	font-family: 'Lato', sans-serif;
	font-size: calc(0.625rem + 1vw);
}

.error-page {
	height: auto;
	padding-bottom: 50px;
}

.error-page img {
	height: auto;
	width: calc(60% + 1vw);
}

h1.error-page-header-one {
	font-family: 'cog', sans-serif;
	font-size: calc(5rem + 1vw);
}

p.error-page-paragraph {
	font-family: 'cog', sans-serif;
	font-size: calc(1.25rem + 1vw);
}

.signup h1.title {
	font-family: 'Lato', sans-serif;
	width: 100%;
	text-align: center;
	margin-top: 50px;
	margin-bottom: 60px;
}

.signup .container .row .col-md-5 {
	border-right: dotted 1px #111;
	background-color: #F8F8F8;
}

.signup .container .row {
	width: 100%;
	margin-left: 0px;
	display: flex;
}

.signup .field {
	width: 33%;
	margin: 0 auto;
}

.signup form label {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: calc(0.938rem + 1vw);
}

#full {
	width: 100%;
}

.form-control {
	border-radius: 0px;
	-webkit-transition: all 0.1s ease-in-out;
            transition: all 0.1s ease-in-out;
}

#btn-submit {
	margin-top: 25px;
	margin-bottom: 25px;
	background-color: #0099FF;
	padding: 10px 15px 10px 15px;
	border-radius: 0px;
	border: none;
    -webkit-transition: all 0.1s ease-in-out;
            transition: all 0.1s ease-in-out;
}

.btn-primary {
	color: white;
	margin-top: 25px;
	margin-bottom: 25px;
	background-color: #0099FF;
	width: 190px;
	padding: 10px 15px 10px 15px;
	border-radius: 0px;
	border: none;
    -webkit-transition: all 0.1s ease-in-out;
            transition: all 0.1s ease-in-out;
}

.signup .login {
	background-color: #F5E6B5;
	font-family: 'Lato', sans-serif;
	padding: 10px 10px 10px 10px;
	margin-top: 15px;
}

#btn-submit:hover {
	background-color: #0099EE;
}

.signup p {
	text-align: center;
}

.signup img {
	width: 90%;
	height: auto;
	margin-bottom: 50px;
}

.post-title {
	width: 100%;
	font-size: calc(2.188rem + 1vw);
	padding-top: 5px;
	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	color: #111;
	font-family: 'Lato', sans-serif;
}

.contact #c .row .col-md-9, .support #c .row .col-md-9 {
	background-color: #FFFFFF;
	border-right: 1px solid rgba(0, 0, 0, 0.3);
}

.contact #c .row .col-md-3, .support #c .row .col-md-3 {
	background-color: #F8F8F8;
	padding-left: 0;
	padding-right: 0;
}

.contact .container .row, .support .container .row {
	width: 100%;
	margin-left: 0px;
	display: flex;
}

.contact .page-title, .support .page-title {
	margin-top: 40px;
	margin-bottom: 40px; 
}

.cont {
	margin-bottom: 15px;
}

.con {
	margin-bottom: 25px;
	margin-top: 10px;
}

.contact .support {
	font-weight: 700;
	font-family: 'Lato', sans-serif;
	font-size: calc(1.063rem + 1vw);
	margin-top: 5px;
}

p.contact, p.status {
	margin-left: auto;
	margin-right: auto;
}

.blog-body {
	margin: 30px;
	padding: 20px;
}

/* General usage */
.centerize {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	display: block;
}

/* Navbar centering */
@media screen and (min-width:768px) {
    .navbar-brand-centered {
        position: absolute;
        left: 50%;
        display: block;
        width: calc(10rem + 1vw);
        text-align: center;
    }
    .navbar>.container .navbar-brand-centered, 
    .navbar>.container-fluid .navbar-brand-centered {
        margin-left: -80px;
    }
}

/* Mobile Support */

@media screen and (max-width:1198px) and (min-width:769px) {

	.navbar-container {
		min-height: calc(3vmin);
		max-height: calc(6vmax);
		height: clamp(calc(3vmin), calc(3vmax), calc(4vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
		width: 100%;
	}

	.logo-container {
		transform: scale(0.80);
		transition: .5s;
	}

	.navbar-nav > li > .tti-text {
		padding-top: calc(0.875rem + 1.0vw);
	}

	.fa-user {
		margin-right: calc(0.313rem + 1.0vw);
	}

	.tti-welcome-text {
		display: none;	
	}

	.navbar-nav > li > .tti-text {
		padding-top: calc(0.875rem + 1.4vw);
	}

	.section-body .status, .section-body .contact {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
		width: 100%;
		margin-top: 10px;
	}
	
	.section-body .email {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
		color: #555;
	}

	.section-body .other {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
	}

	#footer {
		font-size: calc(0.5rem + 1.2vw);
		font-weight: 600;
		text-align: center;
	}

	p.blog-blurb {
		/* max-width: 200px; */
		font-family: 'Lato', sans-serif;
		font-size: calc(0.5rem + 1.5vw);
	}
	
	h3.blog-title {
		font-size: calc(1.5rem + 1.5vw);
		font-family: 'Lato', sans-serif;
		font-weight: 700;
	}
}

@media screen and (max-width:767px) { /* and (min-width:790px) */

	.container #carousel {
		padding-top: clamp(calc(3vmin), calc(3vmax), calc(4vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
	}

	.news-page-title {
		margin-top: clamp(calc(3.5vmin), calc(3.5vmax), calc(4vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
	}

	.navbar-container {
		min-height: calc(3vmin);
		max-height: calc(6vmax);
		height: clamp(calc(3vmin), calc(3vmax), calc(4vmax)); /* min, preferred, max (https://www.w3schools.com/cssref/func_clamp.php) */
		width: 100%;
	}

	.nav-link {
		font-size: calc(1.0rem + 1.0vmin);
	}

	.navbar-left, .navbar-right {
		float: none;
		padding: 0;
		margin: 0 !important;
	}

	.navbar-collapse {
		background: url("../brand_assets/backgrounds/tti-blueprint-background-v1.1.png");
	}

	.fs-1-modified {
		padding: 0;
		margin: 0;
		font-size: calc(1.375rem + 1.5vw);
	}

	#tti-icon {
		transform: scale(0.95);
		transition: .5s;
	}

	#tti-icon:hover, #tti-icon:active, #tti-icon:focus {
		transform: scale(1.05);
	}

	#tti-icon-animation {
		-webkit-animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
			-o-animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
				animation: 5s ease-in-out 0s normal none infinite running rotating-logo;
		-webkit-transition: all 0.2s ease-in-out;
				transition: all 0.2s ease-in-out;
	}

	.tti-welcome-text {
		display: none;	
	}

	.section-body .social {
		display: inline-block;
		padding: 0;
		margin: calc(0.625rem + 1vw) 0 calc(0.625rem + 1vw) 0;
		font-size: calc(3.125rem + 2.0vmax);
		text-align: center;
	}

	#discord, #bluesky, #youtube, #twitch {
		line-height: calc(5rem + 1.5vmax);
	}

	.navbar-nav > li > a {
		padding: calc(3.0rem - 0.7vh) inherit;
		/* padding-bottom: calc(3.0rem - 0.7vh); */
		/* padding-left: calc(0.156rem + 1.0vmin); */
		/* padding-right: calc(0.156rem + 1.0vmin); */
		/* margin-left: calc(0.156rem + 1.0vmin); */
		/* margin-right: calc(0.156rem + 1.0vmin); */
		color: #FFFFFF !important;
		-webkit-box-shadow: inset 0 0 0 0 #FF851B;
		   -moz-box-shadow: inset 0 0 0 0 #FF851B;
				box-shadow: inset 0 0 0 0 #FF851B;
		-webkit-transition: all 0.2s linear;
				transition: all 0.2s linear;
		font-family: 'Minnie', sans-serif;
		font-size: calc(1.188rem + 1.5vw);
	}

	.navbar-nav > li > a:hover, .navbar-nav > li > a:focus, .navbar-nav > li > a:active {
		margin: 0;
		-moz-box-shadow: inset 0 calc(10.26rem + 1.5vh) 0 0 #FF851B;
		-webkit-box-shadow: inset 0 calc(10.26rem + 1.5vh) 0 0 #FF851B;
		box-shadow: inset 0 calc(10.26rem + 1.0vh) 0 0 #FF851B;
	}

	.section-body .status, .section-body .contact {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
		width: 100%;
	}
	
	.section-body .email {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
		color: #555;
	}

	.section-body .other {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.825rem + 1.5vw);
	}

	#footer {
		font-size: calc(0.5rem + 1.2vw);
		font-weight: 600;
		text-align: center;
	}

	p.blog-blurb {
		font-family: 'Lato', sans-serif;
		font-size: calc(0.5rem + 1.5vw);
	}
	
	h3.blog-title {
		font-size: calc(1.5rem + 1.5vw);
		font-family: 'Lato', sans-serif;
		font-weight: 700;
	}
}