/*!
Theme Name: joy1ka
Theme URI: #
Version: 8.4.7
Tested up to: 7.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: joy1ka
*/

:root {
  --text-color: #2C3A47;
  --heading-color: #FBC531;
  --primary-btn-bg: #6D214F;
  --secondary-btn-bg: #BDC581;
  --primary-btn-color: #FFFFFF;
  --secondary-btn-color: #2C3A47;

  --header-bg-color: #D7E6F7;
  --header-text-color: #FBC531;
  --header-border: 1px solid #6D214F;

  --footer-bg-color: #2C3A47;
  --footer-text-color: #FFFFFF;
  --footer-direction: row;
  --footer-justify: space-between;

  --table-bg-color: #FFFFFF;
  --table-border-color: #FBC531;
  --table-text-color: #333333;

  --body-bg-color: #D7E6F7;
  --card-bg-color: #ffffff;
  --card-text-color: #2C3A47;
  --card-border: {{card-border}};
  --card-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);

  --banner-direction: center;
  --banner-column: 60%;
  --banner-padding: 194.4px;
  --banner-border: 1px solid #6D214F;
  --banner-bg-color: #D7E6F7;
  --banner-text-color: #000000;

  --container-max-width: 1251px;
  --container-padding: 0 15px;
  --border-radius: 5px;
  --py: 31px;
  --py-2: 62px;
  --py-3: 71px;
  --text-align: left;
  --mb: 18px;
  --fz-1: 38.88px;
  --fz-2: 32.4px;
  --fz-3: 27px;
  --logo-width: 194px;
  --menu-margin: 0;

  --animation-duration: 352ms;
  --animation-type: ease-out;
  --animation-effect: fadeInUp;

  --contrast-bg-color: #1c1c1c;
  --contrast-text-color: #ffffff;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Raleway', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: var(--text-color);
  background-color: var(--body-bg-color);
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: var(--text-color);
  transition: color 0.3s ease;
}

img {
  max-width: 100%;
  height: auto;
  max-height: 650px;
  width: auto;
}

ul, ol {
  margin: 0;
}

.cont-bkqtrx {
  width: var(--container-max-width);
  max-width: 100%;
  margin: 0 auto;
  padding: var(--container-padding);
}

.header-dtjhgs {
  background-color: var(--header-bg-color);
  color: var(--header-text-color);
  padding: var(--py) 0;
  border-bottom: var(--header-border);
}

.h-tnsrub {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb);
}

.head-pdkous {
  display: flex;
  gap: var(--mb);
  list-style: none;
  margin: var(--menu-margin);
  padding: 0;
}

.head-aiwnzs {
  color: var(--header-text-color);
  text-decoration: none;
  transition: color 0.3s ease;
}

.head-aiwnzs:hover {
  color: var(--primary-btn-bg);
}


.top-ydvcwe {
  display: flex;
  gap: 10px;
}

.l-ljegax {
  width: var(--logo-width);
  font-weight: 800;
  font-size: 24px;
  display: block;
}

.l-ljegax img {
  max-height: 80px;
}

.primary-fmkjot,
.second-apmdho {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border: none;
  border-radius: var(--border-radius);
  transition: background-color 0.3s ease;
  font-weight: 500;
}

.primary-fmkjot {
  background-color: var(--primary-btn-bg);
  color: var(--primary-btn-color);
}

.primary-fmkjot:hover {
  background-color: var(--secondary-btn-bg);
  color: var(--secondary-btn-color);
}

.second-apmdho {
  background-color: var(--secondary-btn-bg);
  color: var(--secondary-btn-color);
}

.second-apmdho:hover {
  background-color: var(--primary-btn-bg);
  color: var(--primary-btn-color);
}

.foot-ftsvkx{
  position: relative;
}
.foot-ftsvkx * {
  z-index: 1;
  position: relative;
}


    .foot-ftsvkx {
      background-color: var(--footer-bg-color);
      color: var(--footer-text-color);
      padding: var(--py-2) 0;
    }

    .bot-ulizyk {
      max-width: var(--container-max-width);
      margin: 0 auto;
      padding: 0 var(--mb);
    }

    .bottom-ilruan {
      display: flex;
      justify-content: var(--footer-justify);
      flex-direction: var(--footer-direction);
      gap: var(--mb);
      margin-bottom: var(--mb);
    }

    .bottom-blxfsa {
      display: flex;
      flex-direction: column;
    }

    .foot-byihef {
      font-weight: 600;
      font-size: 18px;
      margin-bottom: var(--mb);
      color: var(--footer-text-color);
    }

    .bot-kjoetv {
      display: flex;
      gap: 15px;
      list-style: none;
      flex-direction: column;
      margin: 0;
      padding: 0;
    }

    .bottom-rxians {
      color: var(--footer-text-color);
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .bottom-rxians:hover {
      color: var(--primary-btn-bg);
    }

    .f-emwxcy {
      margin: 0 0 15px 0;
      font-size: 14px;
      color: var(--footer-text-color);
      opacity: 0.8;
    }

    .bottom-hdmgpl {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .f-xdepow {
      padding: 10px 15px;
      border: 1px solid rgba(255, 255, 255, 0.2);
      border-radius: var(--border-radius);
      background: rgba(255, 255, 255, 0.1);
      color: var(--footer-text-color);
      font-size: 14px;
      outline: none;
    }

    .f-xdepow::placeholder {
      color: var(--footer-text-color);
      opacity: 0.6;
    }

    @media (max-width: 768px) {
      .bottom-ilruan {
        flex-direction: column;
      }
    }
    


        .foot-ftsvkx:before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0.05;
            z-index: 0;
            
            background-image: radial-gradient(#000000 1.3px, #415568 1.3px);
            background-size: 79px 79px;
            
        }
        

.bot-kjoetv li:empty {
  display: none;
}

.ban-clkghu {
  text-align: var(--banner-direction);
  color: var(--banner-text-color);
  position: relative;
  overflow: hidden;
}

/*
.ban-clkghu {
  text-align: var(--banner-direction);
  padding: var(--banner-padding) 0;
  background-color: var(--banner-bg-color);
  color: var(--banner-text-color);
  border-bottom: var(--banner-border);
  position: relative;
  overflow: hidden;
}

.ban-clkghu svg {
  position: absolute;
  bottom: -3px;
  left: 0;
  right: 0;
  z-index: 0;
}

.hero-msfwby{
  display: flex;
  justify-content: var(--banner-direction);
  align-items: center;
  gap: var(--mb);
}

.b-iljkqf {
  width: var(--banner-column);
  animation: var(--animation-effect) var(--animation-duration) var(--animation-type);
  animation-fill-mode: both;
}
  */

h1 {
  font-size: var(--fz-1);
  margin-bottom: var(--mb);
  font-weight: 700;
  margin-top: 0;
}

h2 {
  color: var(--heading-color);
  font-size: var(--fz-2);
  margin-bottom: var(--mb);
  font-weight: 700;
  margin-top: var(--py-2);
}

h3 {
  color: var(--heading-color);
  font-size: var(--fz-3);
  margin-bottom: var(--mb);
  font-weight: 700;
  margin-top: 0;
}

.tb-ervyjh{
  overflow-x: auto;
  width: 100%;
}

.text-pmzekj {
  padding: var(--py-2) 0;
  text-align: var(--text-align);
}

.text-pmzekj p {
  margin-top: 0;
  margin-bottom: var(--mb);
}

.text-pmzekj ul {
  width: auto;
  margin-bottom: var(--mb);
  max-width: 100%;
  list-style-position: inside;
}

.text-pmzekj ul {
  list-style: none;
}

.text-pmzekj ul li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: var(--text-align);
}

.text-pmzekj ul li::before {
  content: "";
  margin-right: 10px;
  width: 8px;
  height: 8px;
  background-color: var(--primary-btn-bg);
  border-radius: 50%;
}


    .text-pmzekj ol {
      counter-reset: list-counter;
      list-style: none;
      padding-left: 0;
      margin: 1.5rem 0;
      width: max-content;
      max-width: 100%;
      text-align: left;
      display: inline-block;
    }

    .text-pmzekj ol li {
      counter-increment: list-counter;
      position: relative;
      padding-left: 3rem;
      margin-bottom: 1rem;
      line-height: 1.6;
      color: var(--text-color);
    }

    .text-pmzekj ol li::before {
      content: counter(list-counter);
      position: absolute;
      left: 0;
      top: 0;
      background: linear-gradient(135deg, #6d214f 0%, #a93279 100%);
      color: white;
      width: 2rem;
      height: 2rem;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      font-size: 0.875rem;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }
    


      .aioseo-breadcrumbs {
        margin: 1.25rem 0;
        padding: 0.75rem 0;
        font-size: 0.875rem;
        background: rgba(255, 255, 255, 0.02);
        border-radius: 4px;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
      }

      .aioseo-breadcrumb {
        display: inline-block;
      }

      .aioseo-breadcrumb a {
        color: #6D214F;
        text-decoration: none;
        opacity: 0.9;
        transition: opacity 0.2s ease;
        font-weight: 400;
      }

      .aioseo-breadcrumb a:hover {
        opacity: 1;
        text-decoration: underline;
      }

      .aioseo-breadcrumb:not(:has(a)) {
        color: var(--text-color);
        opacity: 0.7;
        font-weight: 500;
      }

      .aioseo-breadcrumb-separator {
        color: var(--text-color);
        opacity: 0.5;
        margin: 0 0.625rem;
        font-weight: 300;
      }
    

.text-pmzekj table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: var(--mb);
  border: 1px solid var(--table-border-color);
  background-color: var(--table-bg-color);
  color: var(--table-text-color);
}

.text-pmzekj table th,
.text-pmzekj table td {
  padding: 10px;
  border: 1px solid var(--table-border-color);
}

.text-pmzekj img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  margin-bottom: var(--mb);
  border-radius: var(--border-radius);
}

.blog-dqthpy {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.blog-sfhbax {
  background-color: var(--table-bg-color);
  padding: 20px;
  border-radius: 10px;
}



      .cols-lvpsti {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--py-2);
        margin: var(--py-2) 0;
        align-items: center;
      }

      .cols-lvpsti .col-ixogfw:first-child {
        order: 2;
      }

      .cols-lvpsti .col-ixogfw:last-child {
        order: 1;
      }

      .cols-lvpsti h2 {
        margin-top: 0;
      }

      @media (max-width: 1024px) {
        .cols-lvpsti {
          grid-template-columns: 1fr;
        }

        .cols-lvpsti .col-ixogfw:first-child {
          order: 1;
        }

        .cols-lvpsti .col-ixogfw:last-child {
          order: 2;
        }
      }
    

.table-jmgpno {
  background: rgb(from var(--table-bg-color) r g b / 0.5);
  border-radius: var(--border-radius);
  padding: var(--py-3);
  margin: var(--py-2) auto;
  width: max-content;
  max-width: 100%;
}

.table-jmgpno p,
.table-jmgpno h2 {
  max-width: 1000px;
  margin: 0 auto var(--mb);
}

.table-jmgpno table {
  margin: 0 auto;
  border-radius: var(--border-radius);
  border: 0;
  max-width: 1000px;
}

.table-jmgpno table td,
.table-jmgpno table th {
  border: 0;
}

.table-jmgpno table tr {
  border-bottom: 1px solid var(--table-border-color);
}

.table-jmgpno tr:last-child {
  border-bottom: 0;
}

.table-jmgpno h2 {
  margin-top: 0;
}

/*
.row-dmxanj {
  border: var(--card-border);
  background-color: var(--card-bg-color);
  color: var(--card-text-color);
  box-shadow: var(--card-shadow);
  padding: var(--py);
  border-radius: var(--border-radius);
}
  */

.contrast-oarnlg {
  position: relative;
  border-radius: var(--border-radius);
  color: var(--contrast-text-color);
  padding: var(--py-2);
  margin-top: var(--py-2);
  margin-bottom: var(--py-2);
}


    .contrast-oarnlg{
      background: linear-gradient(135deg, #6d214f 0%, #6e2142 50%, #6e2621 100%);
      padding: 42px;
    }
    

.contrast-oarnlg h2 {
  color: inherit;
  margin-top: 0;
}

.header-eikrcf {
  display: none;
}

@media (max-width: 1024px) {
  .head-pdkous {
    opacity: 0;
    visibility: hidden;
    transition: all .3s ease;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--header-bg-color);
    z-index: 100;
    padding: var(--py) 15px;
    display: block;
  }

  .head-aiwnzs {
    padding: 10px 0;
    display: block;
  }

  .head-pdkous.active {
    opacity: 1;
    visibility: visible;
  }

  .header-eikrcf {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    height: 30px;
    width: 30px;
    z-index: 101;
    padding: 2.5px 0px;
  }

  .header-eikrcf span {
    display: block;
    height: 5px;
    width: 30px;
    background: var(--header-text-color);
    border-radius: 30px;
    transition: 0.3s;
  }

  .header-eikrcf.active span:first-child {
    transform: translateY(4px) rotate(45deg)
  }

  .header-eikrcf.active span:nth-child(2) {
    transform: translateY(-9px) rotate(-45deg)
  }

  .hero-msfwby{
    flex-direction: column;
  }

  .b-iljkqf {
    width: 100%;
  }

  .table-jmgpno {
    padding: var(--py);
  }

  .contrast-oarnlg {
    padding: var(--py);
  }
}

.map-yfxrlc{
  display: flex;
  flex-direction: column;
  gap: var(--mb);
  list-style: none;
  margin: 15px 0;
  padding: 15px;
  border-radius: var(--border-radius);
  background: rgb(from var(--table-bg-color) r g b / 0.5);
}
.map-yfxrlc a {
  color: var(--text-color);
  text-decoration: none;
  transition: color 0.3s ease;
  padding: 10px;
  border-radius: var(--border-radius);
  background-color: var(--table-bg-color);
  text-align: left;
}
.map-yfxrlc a:hover {
  color: var(--primary-btn-bg);
}
.map-yfxrlc h2 {
  margin-top: 0;
  margin-bottom: var(--mb);
  padding: 10px;
  border-radius: var(--border-radius);
  background-color: var(--table-bg-color);
  text-align: left;
}


    .frm-cloehr {
      display: flex;
      flex-direction: column;
      gap: 20px;
      margin: var(--mb) 0;
      max-width: 500px;
      width: 100%;
    }

    .fr-ifcyne {
      display: flex;
      flex-direction: column;
    }

    .fr-cljtaw, .form-acfxkh {
      padding: 15px 20px;
      border-radius: var(--border-radius);
      border: 2px solid var(--table-border-color);
      background-color: var(--table-bg-color);
      color: var(--text-color);
      font-size: 16px;
      outline: none;
      transition: all 0.3s ease;
    }

    .fr-cljtaw:focus, .form-acfxkh:focus {
      border-color: var(--primary-btn-bg);
      box-shadow: 0 0 0 3px rgba(var(--primary-btn-bg-rgb), 0.1);
    }

    .form-acfxkh {
      height: 120px;
      resize: vertical;
      font-family: inherit;
    }

    .frm-cloehr button {
      padding: 15px 30px;
      font-size: 16px;
      font-weight: 600;
      border-radius: var(--border-radius);
      transition: all 0.3s ease;
    }

    .frm-cloehr button:hover {
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    }

    @media (max-width: 768px) {
      .frm-cloehr {
        max-width: 100%;
        gap: 15px;
      }

      .fr-cljtaw, .form-acfxkh {
        padding: 12px 15px;
        font-size: 14px;
      }
    }
    


.emnoxhjvp-partners {
  margin: 0 auto 0;
  max-width: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px 35px;
  background: rgb(from var(--table-bg-color) r g b / 0.5);
  border-radius: var(--border-radius);
  padding: 15px;
  box-sizing: border-box;
  margin-bottom: var(--mb);
}

.emnoxhjvp-partners a {
  color: var(--table-text-color);
  text-decoration: none;
  text-transform: capitalize;
  transition: all .3s ease;
}

.emnoxhjvp-partners a:hover {
  opacity: .7;
}

.pqinvydls-or__title {
  font-size: var(--fz-2);
  font-weight: bold;
  color: var(--heading-color);
  margin-bottom: var(--mb);
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0)
  }

  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
  }
}


        .ban-clkghu {
            position: relative;
            min-height: 561px;
            background: linear-gradient(103deg, #6D214F, #BDC581);
            display: flex;
            align-items: center;
            overflow: hidden;
        }

        .b-iljkqf {
            display: flex;
            align-items: center;
            justify-content: var(--banner-direction);
        }

        .main-nlemba {
            position: absolute;
            inset: 0;
        }

        .hr-dgplth {
            position: absolute;
            background: rgba(255, 255, 255, 0.3);
            border-radius: 50%;
            animation: float-particle 20s infinite linear;
        }

        .hr-dgplth:nth-child(1) {
            width: 4px;
            height: 4px;
            left: 10%;
            animation-delay: 0s;
            animation-duration: 15s;
        }

        .hr-dgplth:nth-child(2) {
            width: 6px;
            height: 6px;
            left: 20%;
            animation-delay: 2s;
            animation-duration: 18s;
        }

        .hr-dgplth:nth-child(3) {
            width: 3px;
            height: 3px;
            left: 30%;
            animation-delay: 4s;
            animation-duration: 12s;
        }

        .hr-dgplth:nth-child(4) {
            width: 5px;
            height: 5px;
            left: 40%;
            animation-delay: 6s;
            animation-duration: 16s;
        }

        .hr-dgplth:nth-child(5) {
            width: 4px;
            height: 4px;
            left: 50%;
            animation-delay: 8s;
            animation-duration: 14s;
        }

        .hr-dgplth:nth-child(6) {
            width: 6px;
            height: 6px;
            left: 60%;
            animation-delay: 10s;
            animation-duration: 17s;
        }

        .hr-dgplth:nth-child(7) {
            width: 3px;
            height: 3px;
            left: 70%;
            animation-delay: 12s;
            animation-duration: 13s;
        }

        .hr-dgplth:nth-child(8) {
            width: 5px;
            height: 5px;
            left: 80%;
            animation-delay: 14s;
            animation-duration: 19s;
        }

        .hr-hyxgrs {
            position: relative;
            z-index: 10;
            text-align: var(--banner-direction);
            width: 1196px;
            max-width: 100%;
            padding: var(--py);
        }

        .hero-tuswcq {
            font-size: clamp(3rem, 8vw, 5rem);
            font-weight: bold;
            color: #FFFFFF;
            margin-bottom: 1rem;
            line-height: 1.2;
        }

        .banner-kwqgrf {
            font-size: 19px;
            color: #FFFFFF;
            margin-bottom: 4rem;
            line-height: 1.6;
        }

        @media (max-width: 1024px) {
            .hero-tuswcq {
                font-size: 29px;
            }
        }

        @keyframes float-particle {
            0% {
                transform: translateY(100vh) rotate(0deg);
                opacity: 0;
            }
            10% {
                opacity: 1;
            }
            90% {
                opacity: 1;
            }
            100% {
                transform: translateY(-100px) rotate(360deg);
                opacity: 0;
            }
        }
        


        .rows-boctqn {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 1.5rem;
            padding: 2rem 0;
        }

        .row-dmxanj {
            background: #ffffff;
            border: 2px solid transparent;
            border-radius: var(--border-radius);
            padding: var(--py);
            transition: all 0.3s ease;
            position: relative;
        }

        .row-dmxanj:hover {
            border-color: #6D214F;
            transform: translateY(-4px);
        }

        .row-dmxanj h3 {
            color: #2C3A47;
        }

        .row-dmxanj p {
            color: #2C3A47;
            margin: 0;
        }

        @media (max-width: 768px) {
            .rows-boctqn {
                grid-template-columns: 1fr;
                gap: 1rem;
            }
        }
        