@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;700&display=swap');
@import url('bootstrap.min.css');
@import url('all.min.css');
@import url('swiper.min.css');
@import url('jquery.fancybox.min.css');

:root {
    --c1: #000000;
}

/**:not([class*="fancybox"]) {
    transition: 0.2s all ease-in-out;
}*/

body {
    font-family: Roboto, sans-serif;
}

a, a:hover {
    color: #1b1c1c;
    text-decoration: none;
}

.wrapper {
    overflow: hidden;
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.mds-1 {box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);}
.mds-2 {box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);}
.mds-3 {box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);}
.mds-4 {box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);}
.mds-5 {box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);}

.h1, h1, .h2, h2, .h3, h3, .h4, h4, .h5, h5, .h6, h6 {
    font-weight: 700;
    font-family: 'Rubik', sans-serif;
}

.h1, h1 {font-size: 2rem;}
.h2, h2 {font-size: 1.8rem;}
.h3, h3 {font-size: 1.6rem;}
.h4, h4 {font-size: 1.35rem;}
.h5, h5 {font-size: 1.2rem;}
.h6, h6 {font-size: 1.1rem;}

.display-1, .display-2, .display-3, .display-4 {
    font-weight: 500;
    font-family: 'Rubik', sans-serif;
}
.display-1 {font-size: 3.6rem;}
.display-2 {font-size: 3.4rem;}
.display-3 {font-size: 3.2rem;}
.display-4 {font-size: 3rem;}

/*topbar*/
.topbar {
    padding: 2rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.topbar-phones, .topbar-emails {
    text-align: right;
}
.topbar, .topbar a {
    color: rgba(255,255,255,.8);
}
.topbar address {
    margin: 0;
    font-size: 90%;
    width: 25%;
}
.mr-custom {
    margin-right: .5rem !important;
}

/*header*/
.header .logo img {
    width: 180px;
    height: 60px;
    object-fit: contain;
}
.header {
    background: rgba(0,0,0,.1);
    background: linear-gradient(90deg, rgba(0,0,0,.7), rgba(0,0,0,.3));
    backdrop-filter: blur(5px);
    z-index: 999;
}
body:not(.page-template-home) .header {
    background: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.1)), url(../img/header.jpg) no-repeat;
    background-size: cover;
}

/*.logo-sign {
    width: 64px;
    height: 64px;
    display: block;
    background: url(../img/logo-sign.svg) no-repeat;
    background-size: cover;
    margin-bottom: 2.5rem;
}*/

/*menu*/
.mainnav {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(255,255,255,.1);
}
.mainnav>li {
    position: relative;
}
.mainnav a {
    color: #fff;
    display: block;
    padding: 1rem 0;
    opacity: 0.9;
    transition: all .2s ease-in-out;
}
.mainnav>li>a:hover, .mainnav .current-menu-item>a {
    text-decoration: none;
    box-shadow: 0 -2px 0 #1b1c1c;
    text-shadow: 0 1px 3px rgb(0 0 0 / 70%);
}

/*slider*/
.swiper {
    height: 100vh;
}
.swiper-container {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: -1;
}
.swiper-container:before {
    content:"";
    width: 100%;
    height: 100px;
    background: url(../img/slider_after.svg) no-repeat;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 200;
}
.slide-content {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    height: 100%;
    width: 50%;
    z-index: 10;
    justify-content: space-around;
    align-items: baseline;
    color: #fff;
    margin-top: 7rem;
}
.slide-content h1 {
    font-size: 280%;
    margin: 0;
    text-shadow: 0 1px 5px rgba(0,0,0,.4);
}
.slide-content p {
    font-size: 140%;
    margin: 2.5rem 0;
    width: 80%;
    text-shadow: 0 1px 5px rgba(0,0,0,.4);
}
.slide-content .btn {
    padding: 0.9rem 2rem;
    font-size: 140%;
    border-radius: .5rem;
}

.swiper-slide {
    overflow: hidden;
    height: 100vh;
    position: relative;
}
.swiper-slide:before {
    content:"";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(90deg, rgba(0,0,0,.7), rgba(0,0,0,.3));
    z-index: 10;
}
.swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
}

.cat-link a {color: #212529;}
.cat-link i, .cat-link a:hover {color: #1b1c1c;}

/*news*/
.card-news {
    position: relative;
    margin-bottom: 2rem;
}
.card-news img{
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: .5rem;
    transition: all .2s ease-in-out;
}
.card-news a {
    display: block;
    font-weight: 700;
    color: #212529;
    margin: 1rem 0 .5rem;
}
.card-news:hover img {
    opacity: 0.85;
}

/*calendar-last*/
.calendar-last {
    list-style: none;
    margin: 0;
    padding: 0;
}
.calendar-last li {
    margin-bottom: 1.5rem;
}
.calendar-last li strong {
    display: block;
    margin-bottom: 0;
}

/*map*/
.map {
    background: #ddd;
    position: relative;
}
#ymap {
    position: absolute;
    width: 100%;
    height: 100%;
}
.contacts {
    position: relative;
    margin: 4rem 0;
    padding: 3rem;
    background-color: #fff;
    border-radius: 1rem;
    box-shadow: 0 19px 38px rgba(0,0,0,.075), 0 15px 12px rgba(0,0,0,.075);
}

/*footer*/
.site-footer [class*="col"] {
    display: flex;
    align-items: center;
}
.site-footer .logo  img{
    filter: invert(1);
    opacity: 0.5;
    height: 40px;
}
.site-footer {
    margin-top: auto;
    padding: 2rem 0;
}
.footer-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.site-footer a {
    color: #666;
}
/*social*/
.col-social {
    justify-content: flex-end;
}
.col-social a {
    font-size: 1rem;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    text-align: center;
    line-height: 26px;
    color: #fff;
    margin: 0 1px;
}
.col-social a:hover {opacity: .85; text-decoration: none;}
.fab.fa-instagram {
    background: #d6249f;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);
}
.fab.fa-vk {background: #4d7198;}
.fab.fa-facebook-f {
    background: #3B5998;
}
.site-footer .fab.fa-whatsapp {
    background: #199c0e;
    background: linear-gradient(#47c32f, #12970a, #41c029);
}

#racket {
    width: 800px;
    height: 800px;
    display: block;
    background: url(../img/smoke.png) no-repeat;
    position: absolute;
    right: -316px;
    top: 207px;
    
}
#shuttlecock {
    width: 800px;
    height: 800px;
    display: block;
    background: url(../img/shuttlecock.png) no-repeat;
    position: absolute;
    left: -350px;
    top: 300px;
    transform: scaleX(-1);
}

/*mobile nav
.mobile {
    display: none;
}
.mobmenu {
    position: fixed;
    top: 0;
    background-color: rgba(255,255,255,.85);
    text-align: center;
    box-shadow: 0 0 7px rgba(128, 128, 128, 0.5);
    height: 100%;
    width: 50%;
    left: 100%;
    padding: 64px 0 0 0;
    transform: translateX(100%);
    transition: .3s ease-in-out;
    list-style: none;
    z-index: 10;
}
.mobmenu li {
    transition: .2s ease-in-out;
}
.mobmenu a {
    display: block;
    padding: .75rem;
    font-size: 1.1rem;
}
#menu-checkbox {
  display: block;
  width: 64px;
  height: 64px;
  position: fixed;
  top: 0;
  right: 0;
  cursor: pointer;
  opacity: 0;
  z-index: 30;
}

.burger__element {
  display: block;
  position: fixed;
  top: 26px;
  right: 13px;
  background-color: #fff;
  width: 30px;
  height: 2px;
  margin: 4px;
  transition: .2s ease-in-out;
  z-index: 20;
  cursor: pointer;
  border-radius: 3px;
}
.burger__element::before, .burger__element::after {
  content: '';
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  border-radius: 3px;
  background-color: #fff;
}
.burger__element::before {
  top: 10px;
}
.burger__element::after {
  top: -10px;
}

#menu-checkbox:checked ~ .burger__element {
  transform: rotate(180deg);
  transition: 0.3s ease-in-out;
  background-color: #000;
}

#menu-checkbox:checked ~ .burger__element::before {
  width: 20px;
  top: 3px;
  left: -8px;
  transform: rotate(45deg) translateX(5px);
  transition: 0.3s ease-in-out;
  background-color: #000;
}

#menu-checkbox:checked ~ .burger__element::after {
  width: 20px;
  top: 1px;
  left: -12px;
  -webkit-transform: rotate(-45deg) translateX(-5px);
  transform: rotate(-45deg) translateX(12px);
  transition: 0.3s ease-in-out;
  background-color: #000;
}

#menu-checkbox:checked ~ .mobmenu {
  transform: translateX(-100%);
}*/

/*content*/
main.site-main {
    padding: 3rem 0;
}
.gallery {
    column-count: 4;
    column-gap: .5rem;
    margin-top: 0.5rem;
}
.gallery.cols-2 {
    column-count: 2;
}
.gallery a:hover {
    text-decoration: none;
}
.gallery a:hover img {
    opacity: 0.9;
}
.gallery img {
    width: 100%;
    transition: 0.2s all ease-in-out;
    display: block;
    margin-bottom: .5rem;
    border-radius: .5rem;
}

.entry-title {
    font-size: 1.6rem;
    font-weight: normal;
}
.page-header {
    background: #3e3f3e;
    color: #fff;
    padding: 1.5rem;
}
.page-title {
    font-size: 1.6rem;
    font-weight: normal;
}

/*gallery home*/
.home-gallery {
    display: flex;
    flex-wrap: wrap;
    margin: 2rem 0 4rem;
}
.card-gallery {
    position: relative;
    flex: 25% 0 0;
}
.card-gallery img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    transition: all .15s ease-in-out;
}
.card-gallery span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #fff;
    padding: 2rem 1rem 1rem;
    display: block;
    line-height: 1.3;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,.9));
    text-shadow: 0 1px 1px rgba(0,0,0,.3);
    text-align: center;
}
.card-gallery:hover img {
    opacity: 0.95;
}

.breadcrumb {
    margin: 0 !important;
    background: none;
    padding: 0;
}
.breadcrumb a {
    color: #fff;
}
.breadcrumb li:last-child {
    opacity: 0.75;
}
.breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255,255,255,.25);
}

/*home-trainers*/
.card-person {
    font-size: 110%;
    text-align: center;
    color: #212529;
    display: block;
    position: relative;
}
.card-person img {
    margin-bottom: 1rem;
    width: 100%;
    max-height: 300px;
    object-fit: contain;
}
.card-person svg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.home-trainers .col-6:nth-child(1) .card-person svg {transform: scale(2) rotate(30deg); fill: #e7f5d8;}
.home-trainers .col-6:nth-child(2) .card-person svg {transform: scale(2) rotate(60deg); fill: #d8f5f5;}
.home-trainers .col-6:nth-child(3) .card-person svg {transform: scale(2) rotate(90deg); fill: #f5d6d6;}
.home-trainers .col-6:nth-child(4) .card-person svg {transform: scale(2) rotate(120deg); fill: #e7f5d8;}

/*submenu*/
.sub-menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
    font-size: 100%;
    background-color: #fff;
    float: left;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 200;
    /*left: -9999px;*/
    overflow: hidden;
    border-radius: .5rem;
    box-shadow: 0 19px 38px rgba(0,0,0,.075), 0 15px 12px rgba(0,0,0,.075);
    animation: dropdown-fadein 200ms forwards;
    display: none;
}
.mainnav li:hover > .sub-menu, .mainnav li.focus > .sub-menu {
    /*left: 1rem;*/
    display: block;
}
.sub-menu a {
    padding: .8em 1.6em;
    display: block;
    color: #333;
    white-space: nowrap;
}
.sub-menu a:hover {
    background: #e5e5e5;
    text-decoration: none;
}
@keyframes dropdown-fadein {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

.card .card-img-top {
    object-fit: cover;
}

a[href$=".pdf"]:before, a[href$=".docx"]:before {
    content: "\f15c";
    font-family: "Font Awesome 5 Free";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    margin-right: 0.5rem;
    font-size: 120%;
    color: var(--c1);
    opacity: 0.75;
}
a[href$=".pdf"]:hover, a[href$=".docx"]:hover,
a[href$=".pdf"]:hover:before, a[href$=".docx"]:hover:before {
    color: #212529;
}
.wp-block-file {
    margin: 0 !important;
}
.wp-block-file a {
    padding: 1rem;
    display: block;
    border-radius: .25rem;
}
.wp-block-file a:hover {
    background: #f5f5f5;
}

aside.widget-area {
    padding: 3rem 0;
}

.mobmenu-toggle {
    border: none;
    background: none;
    display: none;
    color: #fff;
    font-size: 200%;
}

.bordered-figure table td {
    border: 1px solid;
}

.partners a {
    display: block;
    border: 1px solid #eee;
    border-bottom: none;
    opacity: 0.8;
    filter: saturate(0);
    transition: all .2s ease-in-out
}
.partners a:first-child {
    border-radius: .25rem .25rem 0 0;
}
.partners a:last-child {
    border-bottom: 1px solid #eee;
    border-radius: 0 0 .25rem .25rem;
}
.partners a:hover {
    opacity: 1;
    filter: saturate(1);
}


/*media*/
@media (max-width: 1024px) {
    .topbar address {display: none;}
    .slide-content {width: 100%;}
    .slide-content p {width: 90%; margin: 2rem auto;}
}

@media (max-width: 768px) {
    /*#hbg {left: -435px; top: -120px;}
    .gallery {column-count: 2;}*/
    .col-news {margin-bottom: 3rem;}
    #racket, #shuttlecock {display: none;}
    .site-footer .col-footer-nav {display: none; }
}

@media (max-width: 425px) {
    .topbar {padding: 1rem 0;}
    .card-gallery {flex: 50% 0 0;}
    .topbar-phones, .topbar-emails {display: none;}
    .slide-content {text-align: center;}
    .slide-content h1 {font-size: 150%; line-height: 1.4;}
    .slide-content p {font-size: 120%; line-height: 1.4;}
    .slide-content .btn {font-size: 120%; margin: auto;}
    .gallery {column-count: 2;}
    .card-gallery img {height: 220px;}
    .mainnav {
        flex-direction: column;
        justify-content: flex-start;
        position: absolute;
        left: 0;
        top: 92px;
        width: 100%;
        height: calc(100vh - 92px);
        background: rgba(0,0,0,.95);
        display: none;
    }
    .mainnav>li>a {padding: 1rem 2rem;}
    .mobmenu-toggle {display: block;}
    .topbar .col-social .fab{display: none;}
}
@media (max-width: 375px) {
    .topbar .btn {font-size: 90%;}
    .card-gallery img {height: 200px;}
}
