/**
 * Template Name: Kelly - v2.0.0
 * Template URL: https://bootstrapmade.com/kelly-free-bootstrap-cv-resume-html-template/
 * Author: BootstrapMade.com
 * License: https://bootstrapmade.com/license/
 */

@import url("https://fonts.googleapis.com/css2?family=Titillium+Web:wght@300;400;600;700&display=swap");

/* --------------------------------------------------------------
   General
-------------------------------------------------------------- */

a {
  color: #34b7a7;
}

a:hover {
  color: #51cdbe;
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Titillium Web";
}

#main {
  margin-top: 3.125rem;
}

@media (max-width: 62rem) {
  #main {
    margin-top: 1.875rem;
  }
}

/* --------------------------------------------------------------
   Back to top button
-------------------------------------------------------------- */

.back-to-top {
  position: fixed;
  right: 0.9375rem;
  bottom: 0.9375rem;
  z-index: 99999;
  display: none;
}

.back-to-top i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 3.125rem;
  background: #34b7a7;
  color: #fff;
  font-size: 1.5rem;
  transition: all 0.4s;
}

.back-to-top i:hover {
  background: #3dc8b7;
  color: #fff;
}

/* --------------------------------------------------------------
   Header
-------------------------------------------------------------- */

#header .logo {
  width: 33.3333%;
  margin: 0;
  padding: 0;
  font-size: 2rem;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
}

#header .logo a {
  color: #222222;
}

#header .logo img {
  max-height: 2.5rem;
}

@media (max-width: 62rem) {
  #header .logo {
    font-size: 1.75rem;
  }
}

/* --------------------------------------------------------------
   Mobile Navigation
-------------------------------------------------------------- */

.mobile-nav-toggle {
  position: fixed;
  top: 1.0625rem;
  left: 0.3125rem;
  z-index: 999;
  border: 0;
  background: none;
  font-size: 1.5rem;
  line-height: 1;
  text-align: right;
  cursor: pointer;
  transition: all 0.4s;
  outline: none !important;
}

.mobile-nav-toggle i {
  color: var(--color4);
}

.mobile-nav {
  position: fixed;
  top: 3.5625rem;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  overflow-y: auto;
  padding: 0.625rem 0;
  border-radius: 0;
  background: var(--color6);
  opacity: 0;
  visibility: hidden;
  transition: ease-in-out 0.2s;
}

.mobile-nav * {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mobile-nav a {
  position: relative;
  display: block;
  padding: 0.625rem 1.25rem;
  color: #222222;
  font-weight: 500;
  outline: none;
}

.mobile-nav a:hover,
.mobile-nav .active > a,
.mobile-nav li:hover > a {
  color: #34b7a7;
  text-decoration: none;
}

.mobile-nav .drop-down > a:after {
  content: "\ea99";
  position: absolute;
  right: 0.9375rem;
  padding-left: 0.625rem;
  font-family: IcoFont;
}

.mobile-nav .active.drop-down > a:after {
  content: "\eaa1";
}

.mobile-nav .drop-down > a {
  padding-right: 2.1875rem;
}

.mobile-nav .drop-down ul {
  display: none;
  overflow: hidden;
}

.mobile-nav .drop-down li {
  padding-left: 1.25rem;
}

.mobile-nav-overly {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9997;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: rgba(9, 9, 9, 0.6);
  transition: ease-in-out 0.2s;
}

.mobile-nav-active {
  overflow: hidden;
}

.mobile-nav-active .mobile-nav {
  opacity: 1;
  visibility: visible;
}

.mobile-nav-active .mobile-nav-toggle i {
  color: #fff;
}

/* --------------------------------------------------------------
   Hero Section
-------------------------------------------------------------- */

#hero {
  width: 100%;
  height: 100vh;
  background: url("../img/hero-bg.jpg") top right;
  background-size: cover;
}

#hero .container {
  position: relative;
  padding-top: 4.375rem;
}

@media (max-width: 62rem) {
  #hero .container {
    padding-top: 3.625rem;
  }
}

#hero h1 {
  margin: 0;
  color: #222222;
  font-size: 3rem;
  line-height: 3.5rem;
  font-weight: 700;
}

#hero h2 {
  margin: 0.625rem 0 0;
  color: #6f6f6f;
  font-size: 1.375rem;
}

#hero .btn-about {
  display: inline-block;
  margin-top: 1.875rem;
  padding: 0.75rem 2.5rem;
  border-radius: 3.125rem;
  background: #34b7a7;
  color: #fff;
  font-family: "Titillium Web";
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.0625rem;
  text-transform: uppercase;
  transition: 0.5s;
}

#hero .btn-about:hover {
  background: #3dc8b7;
}

@media (min-width: 64rem) {
  #hero {
    background-attachment: fixed;
  }
}

@media (max-width: 62rem) {
  #hero:before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.8);
  }

  #hero h1 {
    font-size: 1.75rem;
    line-height: 2.25rem;
  }

  #hero h2 {
    font-size: 1.125rem;
    line-height: 1.5rem;
  }
}

/* --------------------------------------------------------------
   Sections General
-------------------------------------------------------------- */

section {
  padding: 3.75rem 0;
}

.section-bg {
  background-color: #e7f8f6;
}

.section-title {
  padding-bottom: 1.875rem;
  text-align: center;
}

.section-title h2 {
  position: relative;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
  font-size: 2rem;
  font-weight: 700;
  text-transform: uppercase;
}

.section-title h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 1.5625rem);
  display: block;
  width: 3.125rem;
  height: 0.1875rem;
  background: #34b7a7;
}

.section-title p {
  margin-bottom: 0;
}

/* --------------------------------------------------------------
   Cta
-------------------------------------------------------------- */

.cta {
  padding: 5rem 0;
  background:
          linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
          url("../img/bg-1.jpg") fixed center center;
  background-size: cover;
}

.cta h3 {
  color: #fff;
  font-size: 1.75rem;
  font-weight: 700;
}

.cta p {
  color: #fff;
}

.cta .cta-btn {
  display: inline-block;
  margin: 0.625rem;
  padding: 0.5rem 1.25rem;
  border: 0.125rem solid #fff;
  border-radius: 0.125rem;
  color: #fff;
  font-family: "Titillium Web";
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.0625rem;
  text-transform: uppercase;
  transition: 0.5s;
}

.cta .cta-btn:hover {
  border-color: #34b7a7;
  background: #34b7a7;
}

@media (max-width: 64rem) {
  .cta {
    background-attachment: scroll;
  }
}

@media (min-width: 48.0625rem) {
  .cta .cta-btn-container {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
}

/* --------------------------------------------------------------
   About
-------------------------------------------------------------- */

.about .content h3 {
  color: #555555;
  font-size: 1.625rem;
  font-weight: 700;
}

.about .content ul {
  padding: 0;
  list-style: none;
}

.about .content ul li {
  padding-bottom: 0.625rem;
}

.about .content ul i {
  padding-right: 0.125rem;
  color: #34b7a7;
  font-size: 1.25rem;
}

.about .content p:last-child {
  margin-bottom: 0;
}

/* --------------------------------------------------------------
   Skills
-------------------------------------------------------------- */

.skills .progress {
  display: block;
  height: 3.125rem;
  background: none;
}

.skills .progress .skill {
  display: block;
  margin: 0 0 0.375rem;
  padding: 0.625rem 0;
  color: #222222;
  font-family: "Titillium Web";
  font-weight: 600;
  text-transform: uppercase;
}

.skills .progress .skill .val {
  float: right;
  font-style: normal;
}

.skills .progress-bar-wrap {
  background: #f3f3f3;
}

.skills .progress-bar {
  width: 0.0625rem;
  height: 0.625rem;
  background-color: #34b7a7;
  transition: 0.9s;
}

/* --------------------------------------------------------------
   Facts
-------------------------------------------------------------- */

.facts .counters span {
  display: block;
  color: #34b7a7;
  font-size: 3rem;
}

.facts .counters p {
  margin: 0 0 1.25rem;
  padding: 0;
  font-family: "Titillium Web";
  font-size: 0.875rem;
}

/* --------------------------------------------------------------
   Testimonials
-------------------------------------------------------------- */

.testimonials .section-header {
  margin-bottom: 2.5rem;
}

.testimonials .testimonial-item {
  text-align: center;
}

.testimonials .testimonial-item .testimonial-img {
  width: 7.5rem;
  margin: 0 auto;
  border: 0.25rem solid #fff;
  border-radius: 50%;
}

.testimonials .testimonial-item h3 {
  margin: 0.625rem 0 0.3125rem;
  color: #111;
  font-size: 1.25rem;
  font-weight: 700;
}

.testimonials .testimonial-item h4 {
  margin: 0 0 0.9375rem;
  color: #999;
  font-size: 0.875rem;
}

.testimonials .testimonial-item .quote-icon-left,
.testimonials .testimonial-item .quote-icon-right {
  color: #c8efea;
  font-size: 1.625rem;
}

.testimonials .testimonial-item .quote-icon-left {
  position: relative;
  left: -0.3125rem;
  display: inline-block;
}

.testimonials .testimonial-item .quote-icon-right {
  position: relative;
  top: 0.625rem;
  right: -0.3125rem;
  display: inline-block;
}

.testimonials .testimonial-item p {
  margin: 0 auto 0.9375rem;
  font-style: italic;
}

.testimonials .owl-nav,
.testimonials .owl-dots {
  margin-top: 0.3125rem;
  text-align: center;
}

.testimonials .owl-dot {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0 0.3125rem;
  border-radius: 50%;
  background-color: #ddd !important;
}

.testimonials .owl-dot.active {
  background-color: #34b7a7 !important;
}

@media (min-width: 62rem) {
  .testimonials .testimonial-item p {
    width: 80%;
  }
}

/* --------------------------------------------------------------
   Resume
-------------------------------------------------------------- */

.resume .resume-title {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  color: #222222;
  font-size: 1.625rem;
  font-weight: 400;
}

.resume .resume-item {
  position: relative;
  margin-top: -0.125rem;
  padding: 0 0 1.25rem 1.25rem;
  border-left: 0.125rem solid #34b7a7;
}

.resume .resume-item h4 {
  margin-bottom: 0.625rem;
  color: #1d685f;
  font-family: "Titillium Web";
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.125rem;
}

.resume .resume-item h5 {
  display: inline-block;
  margin-bottom: 0.625rem;
  padding: 0.3125rem 0.9375rem;
  background: #effbf9;
  color: #34b7a7;
  font-size: 1rem;
  font-weight: 600;
}

.resume .resume-item ul {
  padding-left: 1.25rem;
}

.resume .resume-item ul li {
  padding-bottom: 0.625rem;
}

.resume .resume-item:last-child {
  padding-bottom: 0;
}

.resume .resume-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: -0.5625rem;
  width: 1rem;
  height: 1rem;
  border: 0.125rem solid #34b7a7;
  border-radius: 3.125rem;
  background: #fff;
}

/* --------------------------------------------------------------
   Services
-------------------------------------------------------------- */

.services .icon-box {
  padding: 4.375rem 1.25rem 5rem;
  background: #fff;
  box-shadow: 0 0 2.1875rem 0 rgba(0, 0, 0, 0.08);
  text-align: center;
  transition: all ease-in-out 0.3s;
}

.services .icon-box .icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6.25rem;
  height: 6.25rem;
  margin: 0 auto;
  transition: ease-in-out 0.3s;
}

.services .icon-box .icon i {
  position: relative;
  font-size: 2.25rem;
  transition: 0.5s;
}

.services .icon-box .icon svg {
  position: absolute;
  top: 0;
  left: 0;
}

.services .icon-box .icon svg path {
  fill: #f5f5f5;
  transition: 0.5s;
}

.services .icon-box h4 {
  margin: 0.625rem 0 0.9375rem;
  font-size: 1.375rem;
  font-weight: 600;
}

.services .icon-box h4 a {
  color: #222222;
  transition: ease-in-out 0.3s;
}

.services .icon-box p {
  margin-bottom: 0;
  font-size: 0.875rem;
  line-height: 1.5rem;
}

.services .iconbox-blue i {
  color: #47aeff;
}

.services .iconbox-blue:hover .icon i {
  color: #fff;
}

.services .iconbox-blue:hover .icon path {
  fill: #47aeff;
}

.services .iconbox-orange i {
  color: #ffa76e;
}

.services .iconbox-orange:hover .icon i {
  color: #fff;
}

.services .iconbox-orange:hover .icon path {
  fill: #ffa76e;
}

.services .iconbox-pink i {
  color: #e80368;
}

.services .iconbox-pink:hover .icon i {
  color: #fff;
}

.services .iconbox-pink:hover .icon path {
  fill: #e80368;
}

.services .iconbox-yellow i {
  color: #ffbb2c;
}

.services .iconbox-yellow:hover .icon i {
  color: #fff;
}

.services .iconbox-yellow:hover .icon path {
  fill: #ffbb2c;
}

.services .iconbox-red i {
  color: #ff5828;
}

.services .iconbox-red:hover .icon i {
  color: #fff;
}

.services .iconbox-red:hover .icon path {
  fill: #ff5828;
}

.services .iconbox-teal i {
  color: #11dbcf;
}

.services .iconbox-teal:hover .icon i {
  color: #fff;
}

.services .iconbox-teal:hover .icon path {
  fill: #11dbcf;
}

/* --------------------------------------------------------------
   Portfolio
-------------------------------------------------------------- */

.portfolio .portfolio-item {
  margin-bottom: 1.875rem;
}

.portfolio #portfolio-flters {
  margin: 0 auto 1.25rem;
  padding: 0;
  list-style: none;
  text-align: center;
}

.portfolio #portfolio-flters li {
  display: inline-block;
  margin-bottom: 0.3125rem;
  padding: 0.5rem 1rem 0.625rem;
  border-radius: 3.125rem;
  color: #444444;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

.portfolio #portfolio-flters li:hover,
.portfolio #portfolio-flters li.filter-active {
  background: #34b7a7;
  color: #fff;
}

.portfolio #portfolio-flters li:last-child {
  margin-right: 0;
}

.portfolio .portfolio-wrap {
  position: relative;
  z-index: 1;
  overflow: hidden;
  background: rgba(34, 34, 34, 0.6);
  transition: 0.3s;
}

.portfolio .portfolio-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: rgba(34, 34, 34, 0.6);
  opacity: 0;
  transition: all ease-in-out 0.3s;
}

.portfolio .portfolio-wrap img {
  transition: all ease-in-out 0.3s;
}

.portfolio .portfolio-wrap .portfolio-info {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 1.25rem;
  opacity: 0;
  transition: all ease-in-out 0.3s;
}

.portfolio .portfolio-wrap .portfolio-info h4 {
  color: #fff;
  font-size: 1.25rem;
  font-weight: 600;
}

.portfolio .portfolio-wrap .portfolio-info p {
  margin: 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.875rem;
  font-style: italic;
  text-transform: uppercase;
}

.portfolio .portfolio-wrap .portfolio-links {
  z-index: 4;
  text-align: center;
}

.portfolio .portfolio-wrap .portfolio-links a {
  display: inline-block;
  margin: 0 0.3125rem 0 0;
  color: #fff;
  font-size: 1.75rem;
  transition: 0.3s;
}

.portfolio .portfolio-wrap .portfolio-links a:hover {
  color: #78d9cd;
}

.portfolio .portfolio-wrap:hover::before {
  opacity: 1;
}

.portfolio .portfolio-wrap:hover img {
  transform: scale(1.2);
}

.portfolio .portfolio-wrap:hover .portfolio-info {
  opacity: 1;
}

/* --------------------------------------------------------------
   Portfolio Details
-------------------------------------------------------------- */

.portfolio-details {
  padding: 0;
}

.portfolio-details .portfolio-title {
  margin-bottom: 1.25rem;
  font-size: 1.625rem;
  font-weight: 700;
}

.portfolio-details .portfolio-details-carousel .owl-nav,
.portfolio-details .portfolio-details-carousel .owl-dots {
  margin-top: 0.3125rem;
  text-align: center;
}

.portfolio-details .portfolio-details-carousel .owl-dot {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0 0.3125rem;
  border-radius: 50%;
  background-color: #ddd !important;
}

.portfolio-details .portfolio-details-carousel .owl-dot.active {
  background-color: #34b7a7 !important;
}

.portfolio-details .portfolio-info {
  padding-top: 2.8125rem;
}

.portfolio-details .portfolio-info h3 {
  margin-bottom: 1.25rem;
  font-size: 1.375rem;
  font-weight: 400;
}

.portfolio-details .portfolio-info ul {
  padding: 0;
  list-style: none;
  font-size: 0.9375rem;
}

.portfolio-details .portfolio-info ul li + li {
  margin-top: 0.625rem;
}

.portfolio-details .portfolio-info p {
  padding-top: 0.9375rem;
  font-size: 0.9375rem;
}

@media (max-width: 62rem) {
  .portfolio-details .portfolio-info {
    padding-top: 1.25rem;
  }
}

/* --------------------------------------------------------------
   Contact
-------------------------------------------------------------- */

.contact .info,
.contact .php-email-form {
  width: 100%;
  background: #fff;
}

.contact .info i {
  display: flex;
  align-items: center;
  justify-content: center;
  float: left;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 3.125rem;
  background: #effbf9;
  color: #34b7a7;
  font-size: 1.25rem;
  transition: all 0.3s ease-in-out;
}

.contact .info h4 {
  margin-bottom: 0.3125rem;
  padding: 0 0 0 3.75rem;
  color: #222222;
  font-size: 1.375rem;
  font-weight: 600;
}

.contact .info p {
  margin-bottom: 0;
  padding: 0 0 0 3.75rem;
  color: #555555;
  font-size: 0.875rem;
}

.contact .info .email,
.contact .info .phone {
  margin-top: 2.5rem;
}

.contact .info .email:hover i,
.contact .info .address:hover i,
.contact .info .phone:hover i {
  background: #34b7a7;
  color: #fff;
}

.contact .php-email-form .form-group {
  padding-bottom: 0.5rem;
}

.contact .php-email-form .validate {
  display: none;
  margin: 0 0 0.9375rem;
  color: red;
  font-size: 0.8125rem;
  font-weight: 400;
}

.contact .php-email-form .error-message {
  display: none;
  padding: 0.9375rem;
  background: #ed3c0d;
  color: #fff;
  text-align: center;
  font-weight: 600;
}

.contact .php-email-form .sent-message {
  display: none;
  padding: 0.9375rem;
  background: #18d26e;
  color: #fff;
  text-align: center;
  font-weight: 600;
}

.contact .php-email-form .loading {
  display: none;
  padding: 0.9375rem;
  background: #fff;
  text-align: center;
}

.contact .php-email-form .loading:before {
  content: "";
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 0.625rem -0.375rem 0;
  border: 0.1875rem solid #18d26e;
  border-top-color: #eee;
  border-radius: 50%;
  -webkit-animation: animate-loading 1s linear infinite;
  animation: animate-loading 1s linear infinite;
}

.contact .php-email-form input,
.contact .php-email-form textarea {
  border-radius: 0.25rem;
  box-shadow: none;
  font-size: 0.875rem;
}

.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
  border-color: #34b7a7;
}

.contact .php-email-form input {
  height: 2.75rem;
}

.contact .php-email-form textarea {
  padding: 0.625rem 0.75rem;
}

.contact .php-email-form button[type="submit"] {
  padding: 0.625rem 1.875rem 0.75rem;
  border: 0;
  border-radius: 3.125rem;
  background: #34b7a7;
  color: #fff;
  transition: 0.4s;
}

.contact .php-email-form button[type="submit"]:hover {
  background: #3dc8b7;
}

@-webkit-keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* --------------------------------------------------------------
   Footer
-------------------------------------------------------------- */

#footer .credits {
  padding-top: 0.3125rem;
  font-size: 0.8125rem;
}

#footer .credits a {
  color: #34b7a7;
}

.form-control:focus {
  border-color: var(--color2);
}

/* --------------------------------------------------------------
   Games Filters / Casino UI
-------------------------------------------------------------- */

.games-container {
  margin-bottom: 4rem;
}

.games-filter-container {
  background: var(--color3);
}

.games-filter-container .games-container {
  margin: 0;
  padding: 0.3125rem;
  overflow-x: auto;
  background: #042335;
}

.games-filter-container .games-container .games {
  display: block;
  height: 3.75rem;
  white-space: nowrap;
}

.games-filter-container .games-container .games .game-filter {
  display: inline-flex;
  flex: 1 1 14.2857142857%;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  min-width: 4.6875rem;
  height: 100%;
  gap: 0.3125rem;
  padding: 0.4375rem 0;
  border-radius: 0.625rem;
}

.games-filter-container .games-container .games .game-filter:not(:last-child) {
  margin-right: 0.3125rem;
}

.games-filter-container .games-container .games .game-filter .image {
  display: flex;
  width: 1.5625rem;
  min-height: 1.5625rem;
  max-height: 1.5625rem;
}

.games-filter-container .games-container .games .game-filter .image img {
  width: 100%;
}

.games-filter-container .games-container .games .game-filter .game-name {
  color: #fff;
  font-size: 0.75rem;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}

.games-filter-container .games-container .games .game-filter:hover:not(.active) {
  opacity: 0.6;
}

.games-filter-container .providers-container {
  background: rgba(255, 255, 255, 0.15);
}

.games-filter-container .providers-container .providers {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  padding: 0.5rem 0.625rem;
  list-style: none;
}

.games-filter-container .providers-container .providers .provider {
  display: flex;
  flex: 1 1 10%;
  flex-direction: column;
  align-items: center;
  min-width: 4.375rem;
  gap: 0.3125rem;
}

.games-filter-container .providers-container .providers .provider .image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0.0625rem solid transparent;
  border-radius: 50%;
  background: #000;
  transition: 0.4s all ease;
}

.games-filter-container .providers-container .providers .provider .image img {
  max-width: 1.5rem;
  max-height: 1.5rem;
}

.games-filter-container .providers-container .providers .provider .provider-name {
  color: #fff;
  font-size: 0.625rem;
  text-align: center;
  transition: 0.3s all ease;
}

.games-filter-container .providers-container .providers .provider.all-providers {
  max-width: 10%;
  padding: 0.625rem 1.125rem;
  border-radius: 0.5rem;
  background: #000;
  color: #fff;
  font-size: 0.875rem;
  text-align: center;
  cursor: pointer;
  transition: 0.25s all ease;
}

.games-filter-container .providers-container .providers .provider:hover .image,
.games-filter-container .providers-container .providers .provider.active .image {
  border: 0.0625rem solid var(--color1);
}

.games-filter-container .providers-container .providers .provider:hover .provider-name {
  color: var(--color1);
}

.games-filter-container .search-game-container {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1.25rem;
  background: var(--color3);
}

.games-filter-container .search-game-container .search-input {
  position: relative;
  z-index: 1;
  width: 18.75rem;
  max-width: calc(100% - 0.9375rem);
}

.games-filter-container .search-game-container .search-input i {
  position: absolute;
  top: 0.625rem;
  left: 0.4375rem;
  z-index: -1;
  color: #fff;
  opacity: 0.3;
}

.games-filter-container .search-game-container .search-input input {
  padding: 0.375rem 1.25rem 0.375rem 1.875rem;
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  font-size: 0.875rem;
  outline: 0 !important;
}

.casino-filters {
  position: relative;
  display: grid;
  grid-template-columns: minmax(6.25rem, 50%) minmax(6.25rem, 50%);
  gap: 0.9375rem;
  padding: 0.3125rem;
  background: rgba(255, 255, 255, 0.15);
  font-size: 0.875rem;
}

.casino-filters .query-filter,
.casino-filters .providers-button {
  height: 2.125rem;
}

.casino-filters .query-filter {
  position: relative;
  z-index: 1;
  border-radius: 0.375rem;
  background-color: var(--color3);
}

.casino-filters .query-filter input {
  height: 100%;
  padding-left: 2.5rem;
  background: transparent;
  color: #fff;
  font-size: 0.875rem;
  outline: 0 !important;
  box-shadow: none;
}

.casino-filters .query-filter i {
  position: absolute;
  top: 0.625rem;
  left: 0.6875rem;
  z-index: -1;
  color: #fff;
  opacity: 0.3;
  font-size: 1rem;
}

.casino-filters .providers-button {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 0.5rem;
  padding: 0.625rem;
  border-radius: 0.375rem;
  background-color: var(--color3);
  color: #fff;
  cursor: pointer;
}

.casino-filters .providers-button img {
  width: 1.625rem;
}

.casino-filters .providers-button span {
  overflow: hidden;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.modal-providers-container {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000000;
  display: none;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.modal-providers-container .modal-providers {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  width: 31.25rem;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: 0 auto;
  background: var(--color3);
}

.modal-providers-container .modal-providers .casino-filters {
  display: flex;
  justify-content: flex-end;
  background: rgba(255, 255, 255, 0.15);
}

.modal-providers-container .modal-providers .casino-filters .query-filter {
  position: relative;
  z-index: 1;
  border-radius: 0.375rem;
  background-color: var(--color3);
}

.modal-providers-container .modal-providers .casino-filters .query-filter input {
  height: 100%;
  padding-left: 2.5rem;
  background: transparent;
  color: #fff;
  font-size: 0.875rem;
  outline: 0 !important;
  box-shadow: none;
}

.modal-providers-container .modal-providers .casino-filters .query-filter i {
  position: absolute;
  top: 0.625rem;
  left: 0.6875rem;
  z-index: -1;
  color: #fff;
  opacity: 0.3;
  font-size: 1rem;
}

.modal-providers-container .modal-providers .casino-filters .providers-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 0.5rem;
  padding: 0.625rem;
  border-radius: 0.375rem;
  background-color: var(--color3);
  color: #fff;
  cursor: pointer;
}

.modal-providers-container .modal-providers .casino-filters .providers-button span {
  overflow: hidden;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.modal-providers-container .modal-providers .casino-filters .query-filter,
.modal-providers-container .modal-providers .casino-filters .providers-button {
  width: max-content;
}

.modal-providers-container .modal-providers .providers-list-container {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 100%;
  padding: 0;
  overflow: auto;
}

.modal-providers-container .modal-providers .providers-list-container .list {
  display: flex;
  flex-direction: column;
  padding: 0.625rem;
  list-style: none;
}

.modal-providers-container .modal-providers .providers-list-container .list li {
  display: flex;
  margin: 0.25rem 0;
}

.modal-providers-container .modal-providers .providers-list-container .list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0.0625rem;
  border-radius: 2rem;
  color: #fff;
}

.modal-providers-container .modal-providers .providers-list-container .list li a .provider {
  display: flex;
  align-items: center;
}

.modal-providers-container .modal-providers .providers-list-container .list li a .provider .provider-logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin-right: 0.625rem;
  border-radius: 50%;
  background: #000;
}

.modal-providers-container .modal-providers .providers-list-container .list li a .provider .provider-logo img {
  max-width: 1.5rem;
  max-height: 1.5rem;
}

.modal-providers-container .modal-providers .providers-list-container .list li a i {
  display: none;
  margin-right: 0.4375rem;
  color: var(--color1);
}

.modal-providers-container .modal-providers .providers-list-container .list li a:hover {
  background-color: var(--color1);
  color: var(--color3);
}

.modal-providers-container .modal-providers .providers-list-container .list li a:hover i {
  color: var(--color3);
}

.modal-providers-container .modal-providers .providers-list-container .list.exclusive {
  background: color-mix(in srgb, var(--color3) 80%, white 20%);
}

.modal-providers-container .modal-providers .providers-list-container .list.exclusive li a i {
  display: block;
  font-size: 1.125rem;
}

.modal-providers-container .modal-providers .providers-list-container .list.exclusive li:first-child a i {
  display: none;
}

.modal-providers-container .close-providers {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}

.games-main {
  background: var(--color3);
}

* {
  box-sizing: border-box;
}

@media (min-width: 48rem) {
  .games-main {
    padding: 0;
  }

  .modal-providers-container .modal-providers {
    max-height: 90vh;
    margin: 0.625rem auto;
    overflow: hidden;
    border-radius: 0.625rem;
  }
}

@media screen and (min-width: 75rem) {
  .games-filter-container .providers-container .providers .provider:nth-last-child(5),
  .games-filter-container .providers-container .providers .provider:nth-last-child(6) {
    display: flex;
  }
}

@media screen and (min-width: 62rem) {
  .mobile-item {
    display: none !important;
  }
}

@media screen and (max-width: 61.9375rem) {
  .desktop-item {
    display: none !important;
  }
}
