/* ----------------------------------------------- */
/* BASIC SETUP SPQR*/
/* ----------------------------------------------- */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 140%;
}
body {
    color: #fff;
    background-color: #000;
    font-family: 'Lato', 'Arial', sans-serif;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    scroll-behavior: smooth;
    overflow-x: scroll;
    
}
li{
list-style:none;    
    
}
a{
    cursor:pointer;
    text-decoration:none;
}
/* ----------------------------------------------- */
/* REUSABLE COMPONENTS */
/* ----------------------------------------------- */

.specialfont{
  background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.specialfontbig{
  background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 5vw;
}
.specialfontmid{
  background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 3vw;
}
.specialfontsmall{
  background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 2vw;
}
.whitexxsmall{
  color:white;
  font-size: 0.8vw;  
}
.whitexsmall{
  color:white;
  font-size: 1vw;  
}
.whitesmall{
    color:white;
    font-size: 2vw;
}
.whitemid{
    color:white;
    font-size: 3vw;
}
.whitebig{
    color:white;
    font-size: 5vw;
}
.blackxsmall{
  color:black;
  font-size: 1vw;  
}
.blacksmall{
    color:black;
    font-size: 2vw;
}
.blackmid{
    color:black;
    font-size: 3vw;
}
.blackbig{
    color:black;
    font-size: 5vw;
}
.left{ 
    display:block;
    float:left;
}
.right{
    display:block;
    float:right;
}
.centered{
    display:block;
    margin: 0 auto;
}
.tcenter{
   text-align:center; 
}
.row {
    width: 100%;
    padding:1vh 2vw;
}

.fullpage{
    min-height:100vh;
    padding:2%;
    margin:auto;
}
.fullpagenp{
    min-height:100vh;
    margin:auto;
}
.fontitalics{
    font-style:italic;
}
.vertical{
    margin-top:2vh;
    margin-bottom:2vh;
}
.verticalplus{
    margin-top:5vh;
    margin-bottom:5vh;
}
.verticalmid{
    vertical-align:middle;
    justify-content: center;
}
.verticalbottom{
    margin-bottom:5vh;
}
.width10{
    width:10%;
}
.width20{
    width:20%;
}
.width40{
    width:40%;
}
.width50{
    width:50%;
}
.width60{
    width:60%;
}
.width80{
    width:80%;
}
.width90{
    width:90%;
}
.height5{
    height:5vh;
}
.height10{
    height:10vh;
}
.height15{
    height:15vh;
}
.height20{
    height:20vh;
}
.height25{
    height:25vh;
}
.height30{
    height:30vh;
}
.height35{
    height:35vh;
}
.height40{
    height:40vh;
}
.height45{
    height:45vh;
}
.height50{
    height:50vh;
}
.height55{
    height:55vh;
}
.height60{
    height:60vh;
}
.height65{
    height:65vh;
}
.height70{
    height:70vh;
}
.height75{
    height:75vh;
}
.height80{
    height:80vh;
}
.height85{
    height:85vh;
}
.height90{
    height:90vh;
}
.height95{
    height:95vh;
}
.border{
border-radius: 12px;
border: 2px solid #fff;
}
.points{
cursor: pointer;
}
.bar {
    display: block;
    height: 2px;
    background-color: #8600b3;
    content: " ";
    width: 100%;
    margin: 0 auto;
    margin-top: 0.5vh;
}
.bluebar{
    width: 105vw;
    padding:1%;
    margin-bottom:2vh;
    margin-left: -5vw;
    padding-left: 4.5vw;
    background-color: #312eee;
}
.greenbar{
    width: 105vw;
    padding:1%;
    margin-left: -5vw;
    padding-left: 4.5vw;
    background-color: #32d14a;
}
.redbar{
    width: 105vw;
    padding:1%;
    margin-left: -5vw;
    padding-left: 4.5vw;
    background-color: #f44e4e;
}
.sunsetbar{
    width: 105vw;
    background-image: linear-gradient(to bottom right, #e80000 , #fafa1a); 
    background-image: -webkit- linear-gradient(to bottom right, #e80000 , #fafa1a); 
    padding: 1%; 
    margin-left: -5vw;
    padding-left: 4.5vw;
}
/* ----- HEADINGS ----- */
h1,
h2,
h3 {
    font-weight: 400;
    text-transform: uppercase;
}
h1 {
    font-size: 4vw;
    word-spacing: 1vw;
    text-align: center;
    margin-bottom: 0.5vh;
    margin-top: 2vh;
    letter-spacing: 1px;
}
h1:after {
    display: block;
    height: 2px;
    background-color: #2020e8;
    content: " ";
    width: 40vw;
    margin: 0 auto;
    margin-top: 0.5vh;
}
h2{
    font-family: 'Noto Sans TC', sans-serif;
    letter-spacing: 1px;
    font-size: 3vw;
  background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
    display: inline-block;
      
    
}
h4{
    
}
/*Tooltip 
-------------------------------- 
*/
/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
margin-left: 1vw;
margin-right: 1vw;
}
.tooltip .tooltiptext {
  visibility: hidden;
  width: 20vw;
  background-color: #2a50f0;
  color: #fff;
  text-align: center;
  padding: 1vw;
  border-radius: 6px;
  font-size:1.5vw;
 
  /* Position the tooltip text - see examples below! */
  position: absolute;
    vertical-align: middle;
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}
.tooltip .tooltiptext {
  top: -5px;
  left: 108%;
}
.smallicon{
    color:#7e30ea;
    font-size:18px;
    vertical-align: middle;
}
/*Header
----------------------------
*/
.mainhead{
    height:8vh;
}
.headadj{
    display: block;
    float:left;
}
.hadj{
    display: block;
    float: right;
    margin:auto;
}
.iconhead{
    font-size: 3vw;
    color: white;
    display: inline-block;
    margin-top: 1vh;
   text-decoration: none;
    margin-right: 2vw;
    cursor: pointer;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}

 /* Style the header */
.header {
  display:block;
  height:10vh;
  margin-top: -10vh;
  padding: 1vh 1vw;
  background-color:#111111;
  z-index: 999;
  
}

/* The sticky class is added to the header with JS when it reaches its scroll position */
.sticky {
  display:block;
  background-color:#111111;
  height: 10vh;
  padding: 1vh 1vw;
  position: fixed;
  width: 100%;
  z-index: 999;
}
/*Calculator
------------------------------------------------
*/

.subbie{ 
    padding: 0.5vw;
    font-size: 2vw;
    border-radius: 12px;
    border: 2px solid #333;
    background-color: #3e72ff;
    color:#fff;
    text-decoration: none;
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
    cursor: pointer;
}
.subbie:hover,
.subbie:active{
    background-color: #4b96ed;
}
.latex{
    border: 4px solid #fff;
    border-radius: 12px;
    padding: 1.6%;
}
input[type=text],
select{
    width: 100%;
    padding: 8px; 
    border-radius: 4px;
    border: 2px solid #ccc;
}
*:focus {outline: none;} 
.rulebox{
    width: 100%;
    display: block;
    margin: 0 auto;
    padding: 1%;
    word-spacing: 0.5vw;
    letter-spacing: 1px;
    border:2px solid #fff;
    border-radius: 12px;
}
/*Privacy and TOS
-----------------------------------------------
*/
.tos{
color:#372bc2;
margin-top:2.5vh;
font-size:1vw;
}
.thead{
   display:block; 
   text-align:center;
}
.phead{
   display:block; 
   text-align:center; 
}
.priv{
color:#372bc2;
margin-top:2.5vh;
font-size:1vw;
}
/*Footer 
------------------------------ 
*/
footer {
    clear: both;
    background: -webkit-linear-gradient(80deg,#7f30eb, #2e52eb);
    padding: 20px;
    font-size: 16px;
    min-width: 100%;
    color: #111;
    display: flex;
} 

.footer-nav {
    list-style: none;
    float: left;
    text-align: justify;
}
 
.footer-nav li {
    display: inline-block;
    margin-right: 20px;
} 

.footer-nav li:last-child {
    margin-right: 0;
}

.footer-nav li a:link, 
.footer-nav li a:visited {
    text-decoration: none;
    font-size: 20px;
    border: 0; 
    color: #fff;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}

.footer-nav li a:hover,
.footer-nav li a:active {
    color: #fa983c;
}
