#infinite-widget {
    border: 3px solid black;
    background-color: black;
    color: black;
    border-radius: 5px;
    padding: 20px;
}

#infinite-header {
    padding-left: 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;

    font-family: 'Open Sans', Tahoma, Geneva, Verdana, sans-serif;
    color: white;

    margin-bottom: 10px;
}

#infinite-header h2 {
    margin: 0px;
    padding: 0px;
    font-size: 1.3em;
}

@media only screen and (max-width: 768px) {
    #infinite-header {
        flex-direction: column;
    }

    #infinite-header h2 {
        margin-bottom: 15px;
    }
}


#infinite-header #branding {
    margin: 0px;
    padding: 0px;
    font-size: 0.9em;
}

#infinite-header #branding a:link, #infinite-header #branding a:visited {
    color:white;
}


#infinite-widget-content{

    display:flex;
    flex-wrap: wrap;
    justify-content: center;
}

@supports (display: grid) {
    #infinite-widget-content{
        display: grid;
        grid-template-columns: repeat(auto-fit,minmax(275px,290px));
        grid-gap: 5px;

        justify-content: center;
        justify-items: center;
    }
}

@media only screen and (max-width: 768px) {
    #infinite-widget-content {
      padding: 0 15px
    }
}


.infinite-card {
    border: 1px solid black;
    margin: 10px;
    background-color: white;
    color: black;
    border-radius: 15px 15px 10px 10px;
    font-family: 'Open Sans', Tahoma, Geneva, Verdana, sans-serif;
    width: 270px;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;

    justify-content: space-between;
}

@media only screen and (max-width: 768px) {
    .infinite-card {
        width: 100%;
    }
}

.infinite-image-and-text-container {
    border-radius: 15px 15px 0 0;

}

.infinite-btn-actions-container {
    border-radius: 5px;
    margin-bottom: 15px;
}


.infinite-image-container {
    overflow: hidden;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;

}

.infinite-image-container .image-surface{

    -moz-transition: -moz-transform 0.3s, transform 0.3s;
    -webkit-transition: -webkit-transform 0.3s, transform 0.3s;
    transition: transform 0.3s;

    border-top-left-radius: 8px;
    border-top-right-radius: 9px;
}

.infinite-image-container:hover .image-surface {
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.infinite-title-container {

    padding-left: 25px;
    padding-right: 25px;
}

.infinite-title-container .infinite-title {
    font-size: 1.1em;
}

#infinite-card-viewer-container {
    margin-left: auto;
    margin-right: auto;
    min-height: 550px;
}

.infinite-card-title {
    margin-bottom: 0px;
}

.infinite-venue-container {
    min-height: 2.5em;
    line-height: 1.1em;
    font-size: 0.9em;

    padding-left: 25px;
    padding-right: 25px;

    display: flex;
    flex-direction: row;
}

.infinite-venue-container .venue-name {
    padding-top: 5px;
}

.infinite-time-container {
    min-height: 3.0em;
    line-height: 20%;
    font-size: 0.8em;

    padding-left: 25px;
    padding-right: 25px;
}

.infinite-description-container {
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 0.85em;
    padding-left: 25px;
    padding-right: 25px;

    margin-bottom: 25px;
}

.infinite-btn-actions a #more-info {
    background-color: #b7b09c;
    color: white;
    font-weight: bold;
    width: 80%;

    margin-left: auto;
    margin-right: auto;
    padding: 7px;

    text-align: center;
    border-radius: 5px;
}

.infinite-btn-actions a:link, .infinite-btn-actions a:visited, .infinite-btn-actions a:hover  {
    text-decoration: none;
}

#infinite-widget-pagination {
    color: white;
    text-align: center;
    margin-top: 20px;
    font-family: 'Open Sans', Tahoma, Geneva, Verdana, sans-serif;

    display: flex;
    justify-content: space-around;
}

#infinite-mobile-cards-page-number {
    background-color: black;
    color: white;
    border: 1px solid white;
    border-radius: 5px;
    margin:10px;
    padding-left:20px;
    padding-right: 15px;
}

select {
    height:40px;
    line-height:40px;

    /* no down arrow */
    appearance:none;
	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
}

#infinite-cards-next, #infinite-cards-previous, .infinite-cards-page-number {
    margin: 10px;
    padding: 5px;
}

#infinite-cards-next:hover, #infinite-cards-previous:hover, .infinite-cards-page-number:hover {
    border: 1px solid white;
    cursor: pointer;
    border-radius: 2px;
}

#infinite-cards-next:hover, #infinite-cards-previous:hover {
    margin: 9px;
}

.infinite-cards-page-number.current {
    border: 1px solid white;
}

.infinite-loader-container{
    width: 100%;
    height: 100%;
    margin: 0 auto;
    text-align: center;
    background-color: #000;
    min-height: 200px;
  }


  #infinite-loader{
    width: 100px;
    height: 100px;
    border-radius: 100%;
    position: relative;
    margin: 0 auto;
  }

  #infinite-loader:before, #infinite-loader:after{
    content: "";
    position: absolute;
    top: 10px;
    left: -10px;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    border: 15px solid transparent;
    border-top-color: #b7b09c;
  }

  #infinite-loader:before{
    z-index: 100;
    animation: spin 1s infinite;
  }

  #infinite-loader:after{
    border: 15px solid #fff;
  }

  @keyframes spin{
    0%{
      -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
    }

    100%{
      -webkit-transform: rotate(360deg);
      -ms-transform: rotate(360deg);
      -o-transform: rotate(360deg);
      transform: rotate(360deg);
    }
  }

.infinite-error {
    color: white;
}

