/* ============================================================

Google Fonts

font-family: 'Catamaran', sans-serif;
font-family: 'Montserrat', sans-serif;
font-family: 'Oswald', sans-serif;
font-family: 'Quattrocento', serif;

============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Catamaran:wght@500&family=Montserrat:wght@800&family=Oswald:wght@400;500&family=Quattrocento:wght@400;700&display=swap');

/* ============================================================
  PRIMARY STRUCTURE
============================================================ */
h1, a
{
    font-family: 'Oswald', sans-serif;
    font-weight: 500;
}
h1 {
    font-family: 'Oswald', sans-serif;
    font-weight: 500
}
h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 600;
}

h3 {
    font-weight: 500
}
h4 {
    font-weight: 500
}
h5 {
    font-weight: 500
}
h6 {
    font-weight: 500
}
p, li {
    font-family: 'Catamaran', sans-serif;
    font-size: 16px;
    font-weight: normal;
}


/* ============================================================
  SECTIONS
============================================================ */
section.module:last-child {
  margin-bottom: 0;
}
section.module h2 {
  margin-bottom: 20px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
}
section.module p {
  font-size: 16px;
  font-weight: 300;
}
section.module p:last-child {
  margin-bottom: 0;
}
section.module.content {
  padding: 20px 0;
}
section.module.parallax {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
section.module.parallax-1 h1 {

  font-size: 48px;
  font-weight: 700;
  text-align: center;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

section.module.parallax-1 hr {
   color: rgba(255, 255, 255, 0.9);
}

.parallax-store-1 h1,.parallax-store-1 h2,.parallax-store-1 h3,.parallax-store-1 h4, .parallax-store-1 small {
  color: rgba(255, 255, 255, 0.9);
    font-weight: 700;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}


section.module.parallax-1 {
  background-image: url("/img/artbackgroundFGU.webp");    
}
section.module.parallax-2 {
  background-image: url("/img/rpgtable-duotone.webp");
}
section.module.parallax-3 {
  background-image: url("/img/Tome-duotone.webp");
}

section.module.parallax-store-1 {
  background-image: url("/img/Roleplaying-duotone.webp");
}
section.module.parallax-feature-fgdice {
  background-image: url("/img/Dicebag-duotone.webp");
  background-position: center top;
}

section.module.parallax-feature-sharedmaps {
  background-image: url("/img/leather-texture-duotone.webp");
}

section.module.parallax-feature-libraries {
  background-image: url("/img/Tome-duotone.webp");
}

.white {
  color: white;
}
.centered, .centered p, .centered h1, .centered h2, .centered div, .centered div h2 {
  text-align: center;
}
.centered div {
  margin: 0 auto;
}

.alpha60 {
    /* Fallback for web browsers that doesn't support RGBa */
    background: rgb(255, 255, 255);
    /* RGBa with 0.6 opacity */
    background: rgba(255, 255, 255, 0.6);
    /* For IE 5.5 - 7*/
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);
    /* For IE 8*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";
}

/* This gets Google to fall into place */
.social {
	font-size: 1px;
}

/* This gets Facebook to fall into place */
.social iframe {
	vertical-align: middle;
}

/* Set an optional width for your button wrappers */
.social span {
	display: inline-block;
	width: 110px;
}

/* Adjust the widths individually if you like */
.social .google {
	width: 110px;
}

.boxedwhite {
  background-color: white;
  border: 1px gray solid;
  text-align: center;
  padding: 20px;
    /* Fallback for web browsers that doesn't support RGBa */
    background: rgb(255, 255, 255);
    /* RGBa with 0.6 opacity */
    background: rgba(255, 255, 255, 0.75);
    /* For IE 5.5 - 7*/
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);
    /* For IE 8*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";
-webkit-box-shadow: 10px 10px 29px -2px rgba(0,0,0,0.23);
-moz-box-shadow: 10px 10px 29px -2px rgba(0,0,0,0.23);
box-shadow: 10px 10px 29px -2px rgba(0,0,0,0.23);
}

/*  SECTIONS  */
.section {
	clear: both;
	padding: 0px;
	margin: 0px;
}

/*  COLUMN SETUP  */
.col {
	display: block;
	float:left;
	margin: 1% 0 1% 1.6%;
}
.col:first-child { margin-left: 0; }

/*  GROUPING  */
.group:before,
.group:after { content:""; display:table; }
.group:after { clear:both;}
.group { zoom:1; /* For IE 6/7 */ }

/*  GRID OF THREE  */
.span_3_of_3 { width: 99%;}
.span_2_of_3 { width: 64%; }
.span_1_of_3 { width: 32%; }

/*  GRID OF FOUR  */
.span_4_of_4 { width: 100%; }
.span_3_of_4 { width: 74.6%; }
.span_2_of_4 { width: 49.2%; }
.span_1_of_4 { width: 22.8%; }
.span_0_of_4 { display: none; }

/*  GRID OF FIVE  */
.span_5_of_5 {	width: 100%; }
.span_4_of_5 { 	width: 78.68%; }
.span_3_of_5 { 	width: 58.36%; }
.span_2_of_5 { 	width: 38.04%; }
.span_1_of_5 { 	width: 16.72%; }

.logoimg {
  width: 100%;
  height: 80px;
  vertical-align: middle;
  margin: 0 auto;
  border-radius: 0px;
}
.logoimg img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
}

.youtubevideowrap  {
	margin: 0 auto;
}

.video-container {
	position:relative;
	padding-bottom:56.25%;
	padding-top:30px;
	height:0;
	overflow:hidden;
}

.video-container iframe, .video-container object, .video-container embed {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.sliding-middle-out {
	display: inline-block;
	position: relative;
	padding-bottom: 3px;
}
.sliding-middle-out:after {
	content: '';
	display: block;
	margin: auto;
	height: 5px;
	width: 0px;
	background: transparent;
	transition: width .5s ease, background-color .5s ease;
}
.sliding-middle-out:hover:after {
	width: 100%;
	background: blue;
}

a, a:visited, a:hover, a:active {
	color: inherit;
	text-decoration: inherit;
}

.buylabel {
    padding-right: 5px;
    padding-left: 5px;
    height: 2rem;
    
}

#menu {
	width: 100%;
	height: 30px;
	background-color: black;
	padding-bottom: 15px;
	padding-top: 5px;
	padding-right: 0px;
	padding-left: 0px;
	margin: 0;	
}
#menu ul {
	list-style: none;
	float: right;
	margin: 0;
}
#menu ul li {
	color: white;
	float: left;
	margin: 0 20px 0 0px;
}
#menuspacer {
	height: 0px;
	width: 100%;
}
#menu ul li {
        display: inline-block;
        position: relative;
        padding-bottom: 3px;
}
#menu ul li:after {
        content: '';
        display: block;
        margin: auto;
        height: 3px;
        width: 0px;
        background: transparent;
        transition: width .5s ease, background-color .5s ease;
}
#menu ul li:hover:after {
        width: 110%;
        background: white;
}
#logo {
	height: 30px;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 5px;
	padding-bottom: 5px;
	float: left;
}
#logotitle {
	font-size: 30px;
	margin: 5px 0 5px 0;
	float: left;
	color: white;
}

.footer {
    background-color: #222;
    color: white;
    font-size: 1rem;
    padding-top: 1rem;
}

h1.price {
	color: green !important;
	font-size: 32px !important;
}

.section-title-container
{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding-top: 20px;
}

.section-title-element
{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 5px 5px 15px 5px;
    font-size: 26px;
    font-weight: 600;
}
        
.section-title-element hr
{
    width: 100%;
    border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
}


.footer-grid-container
{
    display: grid;
    grid-template-columns: auto 100px auto;
    padding-top:30px;
}

.footer-grid-element
{
    display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    padding: 5px;
}

.footer-grid-element hr
{
    width: 100%;
}

@media all and (min-width: 481px) and (max-width: 900px) {
        .col {  margin: 2% 3% 2% 3%; }
	.col:first-child { margin: 2% 3% 2% 3%; }
	.span_0_of_4 { display: visible; clear: both; height: 40px; width: 100%;  content:""; display:table;}
	.span_1_of_3 { width: 88%; }
        .span_1_of_4 { width: 44%;}
	.span_0_of_4 { display: visible; clear: both; height: 20px; width: 100%; }
	.span_3_of_3, .span_2_of_4, .span_3_of_4, .span_4_of_4 { width: 95%; background-color: white; }

  	section.module h2 {
	   font-size: 24px;
	}
	section.module p {
	   font-size: 18px;
	}
	section.module.parallax h1 {
	   font-size: 20px;
	}
	section.module.parallax h1 {
	   font-size: 48px;
	}
}


@media all and (min-width: 901px) {
	.span_4_of_4 { width: 100%; }
	.span_3_of_4 { width: 74.6%; }
	.span_2_of_4 { width: 49.2%; }
	.span_1_of_4 { width: 23.8%; }
    .span_1_of_5 { width: 17.72%; }

	section.module.parallax h1 {
	    font-size: 60px;
	}
}

/*  GO FULL WIDTH BELOW 480 PIXELS */
@media all and (max-width: 480px) {
	.col {  margin: 1% 0 1% 0%; }
	.span_3_of_3, .span_2_of_3, .span_1_of_3 { width: 98%; }
        .col {  margin: 1% 0 1% 0%; }
        .span_1_of_5, .span_1_of_4, .span_2_of_4, .span_3_of_4, .span_4_of_4 { width: 98%; }

  	section.module.parallax h1 {
	    font-size: 24px;
	}
	section.module.parallax {
	  background-position: center bottom;
	  background-repeat: no-repeat;
	  background-attachment: scroll;
	  -webkit-background-size: 100%;
	  -moz-background-size: cover;
	  -o-background-size: cover;
	  background-size: cover;
	}


}
