@import "liberation.css";
@import "gentiumplus.css";


    *{
        box-sizing: border-box;
        padding: 0;
        margin: 0;
    }


    html, body {
        height: 100vh;
        width: 100vw;
        margin: 0px;
        overflow-x: hidden;

    }


    .container {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(auto);
   
        row-gap: 1vh;
   
        position: relative;
  
        height: 100%;
        width: 100%;

     
    }


    .hero {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        max-height: 80svh;
        max-width: 100%;
        padding-left: 0%;
        padding-right: 0%;
        
        position: relative;
        background-color: black;

    }


    .hero img {
        display: block;
        margin-left: auto;
        margin-right: auto;
        
        height: 100%;
        max-width: 100%;
        background-color: black;

    }

    
    .text-overlay {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        display: block;
        width: 100%;
        
        position: absolute;
        top: 5vh;
        
        color: red;
        font-family: 'liberation_serifregular', serif;
        font-size: calc(10px + 2vh);
        font-weight: bold;
        text-align: left;
        left: 5vw;
        text-shadow: 12px 12px 12px white, -12px -12px 12px white;

    }


    .text-overlay span {
        display:inline-block;
        font-size:110%;
/*        color:darkred;
        animation: glow 1s ease-in infinite alternate;	*/
        animation-name: heartbeat;
        animation-duration: 1.2s;
        animation-timing-function: linear;
        animation-iteration-count: infinite;

    }

    
    @-webkit-keyframes glow {
          from {
            text-shadow: 0 0 10px brown, 0 0 20px brown, 0 0 30px #lightred, 0 0 40px #lightred, 0 0 50px;
        }
          to {
            text-shadow: 0 0 20px brown, 0 0 30px lightgray, 0 0 40px lightgray, 0 0 50px lightgray;
        }
    }


    @-webkit-keyframes heartbeat
{
  0%
  {
    color:red;
            text-shadow: 0 0 10px brown, 0 0 20px brown, 0 0 30px #lightred, 0 0 40px #lightred, 0 0 50px;
  }
  20%
  {
    color:darkred;
            text-shadow: 0 0 20px brown, 0 0 30px lightgray, 0 0 40px lightgray, 0 0 50px lightred;
  }
  35%
  {
    color:red;
            text-shadow: 0 0 10px brown, 0 0 20px brown, 0 0 30px #lightred, 0 0 40px #lightred, 0 0 50px;
  }
  50%
  {
    color:darkred;
            text-shadow: 0 0 20px brown, 0 0 30px lightgray, 0 0 40px lightgray, 0 0 50px lightred;
  }
  65%
  {
    color:red;
            text-shadow: 0 0 10px brown, 0 0 20px brown, 0 0 30px #lightred, 0 0 40px #lightred, 0 0 50px;
  }
  100%
  {
    color:red;
            text-shadow: 0 0 10px brown, 0 0 20px brown, 0 0 30px #lightred, 0 0 40px #lightred, 0 0 50px;
  }
}


    .title {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 2;
        grid-row-end: 3;
        color: black;

        padding-left: 1%;
        padding-right: 1%;
        margin-left: auto;
        margin-right: auto;
        
        position: relative;

    }


    .onsite {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 3;
        grid-row-end: 4;

        padding-left: 2%;
        padding-right: 2%;
        max-width: 100%;
        
        position: relative;

    }

    
    .offsite {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 4;
        grid-row-end: 5;

        padding-left: 2%;
        padding-right: 2%;
        max-width: 100%;
        
        position: relative;

    }

    
    * p, li {
        font-family: 'GentiumPlusW', serif;
        font-size:calc(12pt + 0.4vw);
  
        text-align: justify;
        hyphens: auto;
        text-decoration: none;
        
    }
    
    
    * p {
        margin-bottom: 1em;
  
    }
    
    
    * li {
        font-family: 'GentiumPlusW', serif;
        font-size:calc(12pt + 0.4vw);
  
        text-align: justify;
        hyphens: auto;
        
    }
    
    
    * ul {
        list-style-position: inside;

    }
    
    
    * h1 {
        font-family: 'GentiumPlusW', serif;
        font-size: calc(22pt + 0.2vw);
        margin-top: 0.5em;
        text-align: center;

    }
    
    
    * h2 {
        font-family: 'GentiumPlusW', serif;
        font-size: calc(18pt + 0.2vw);

    }
    
    
    * h3 {
        font-family: 'GentiumPlusW', serif;
        font-size: calc(18pt + 0.2vw);

    }
    
    
    * h4 {
        font-family: 'GentiumPlusW', serif;
        font-size: calc(14pt + 0.2vw);
        
    }
    
    
    .menuwrapper {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        
        top: 1rem;
        right: 2vw;

        position: absolute;
        object-fit: contain;
        
    }
    
    
    #menu-btn {
        position: absolute;
        top: -100%;
        left: -100%;
    }


    .menu {
        display: flex;
        justify-content: space-between;
        align-items: right;
        margin-right: 2rem;
    }

    .menu a {
        text-decoration: none;
        color: black;
    }
  

    .menu-btn {
        display: none;
    }


    .menu-icon {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;

        cursor: pointer;
        display: flex;
        justify-content: flex-end;
        align-items: baseline;
        padding: 30px 20px 30px 0;
        position: relative;
        user-select: none;
        visibility: visible;
    }
    
    .navicon {
        background: black;
        display: block;
        height: 4px;
        width: 33px;
        position: relative;
        box-shadow: 0 0 10px 2px white;
    }
    
    
    .navicon:before {
        top: 10px;
        box-shadow: 0 0 10px 2px white;
    }
    
    
    .navicon:after {
        top: -10px;
        box-shadow: 0 0 10px 2px white;
    }
    
    
    .navicon:before,
    .navicon:after {
        background: black;
        display: block;
        width: 100%;
        height: 100%;
        content: "";
        position: absolute;
        transition: all 0.2s ease-out;
    }
    
    
    .menu {
        max-width: unset;
        max-height: 0;
        transition: max-height 0.2s ease-out;
        overflow: hidden;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: right;
        opacity: 0.85;
        margin-right: 2rem;
        box-shadow: 10px 10px black;
    }

    
    .menu a {
        text-decoration: none;
        padding: 20px 20px;
        color: black;
        background: white;
        width: 75svh;
        text-align: right;
        font-family: 'GentiumPlusW', serif;
        font-size: calc(12pt + 0.3vw);
    }

    
    .menu-btn:checked ~ .menu {
        max-height: 200vh;
    }


    .menu-btn:checked ~ .menu-icon .navicon {
        background: transparent;
    }

    
    .menu-btn:checked ~ .menu-icon .navicon:before {
        transform: rotate(-45deg);
  
    }
   
   
    .menu-btn:checked ~ .menu-icon .navicon:after {
        transform: rotate(45deg);
    }

  
    .menu-btn:checked ~ .menu-icon .navicon:before,
    .menu-btn:checked ~ .menu-icon .navicon:after {
        top: 0;
    }


