@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Fredoka+One&family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
/*
************
*************************
   Template Name: Kidba – Kindergarten HTML Template
   Description: Kidba is a modern HTML template specially designed for kinder gardens, primary schools, education, and training. It is being created following modern design standards and typography.
   Author: CodeSculptor
   Version: 1.0

-----------------------------------------------------------------------------------

CSS INDEX
=================== 
01. Common
02. Header
03. Banner
04. Features
05. About
06. CTA
07. Class
08. App Download
09. Counter
10. Staff
11. Facility
12. Gallery
13. Testimonial
14. Blog
15. Partner
16. Contact
17. Footer
18. Class Details
19. Staff Details
20. Shop Page
20. Shop Page
22. Checkout
23. Cart
24. Blog Page
25. Contact Page
26. Shop
27. Sign
28. Error
29. Ajax
30. Breakpoints

******************************************************* 
*************************************************************** */
/*
************
*************************
01. Common
******************************************************* 
*************************************************************** */
body {
  font-family: "Roboto", sans-serif;
  color: #717171;
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

h1, h2 {
  font-family: "Fredoka One", cursive;
}

p {
  font-size: 16px;
  line-height: 26px;
}

a {
  transition: 0.3s;
  text-decoration: none;
  color: inherit;
  vertical-align: top;
}
a:hover {
  text-decoration: none;
  color: inherit;
}

span {
  display: inline-block;
}

i {
  display: inline-block;
}

input, textarea, button {
  background: transparent;
  border: 0;
  padding: 0;
  transition: 0.3s;
}
input:focus, textarea:focus, button:focus {
  outline: none;
}

img {
  max-width: 100%;
}

ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

input::placeholder {
  transition: 0.4s;
  opacity: 1;
  color: #53545b;
}

::-moz-selection { /* Code for Firefox */
  color: #fff;
  background: #23cc88;
}

::selection {
  color: #fff;
  background: #23cc88;
}

input:focus::placeholder {
  opacity: 0;
}

textarea::placeholder {
  transition: 0.4s;
  opacity: 1;
  color: #53545b;
}

textarea:focus::placeholder {
  opacity: 0;
}

#loading {
  background-color: #fff;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 999999;
  margin-top: 0px;
  top: 0px;
}

#loading-center {
  width: 100%;
  height: 100%;
  position: relative;
}

#loading-center-absolute {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 15%;
  transform: translate(-50%, -50%);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  #loading-center-absolute {
    width: 40%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  #loading-center-absolute {
    width: 40%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  #loading-center-absolute {
    width: 45%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  #loading-center-absolute {
    width: 50%;
  }
}
@media (max-width: 575px) {
  #loading-center-absolute {
    width: 60%;
  }
}
.object {
  width: 20px;
  height: 20px;
  background-color: #23cc88;
  -moz-border-radius: 50% 50% 50% 50%;
  -webkit-border-radius: 50% 50% 50% 50%;
  border-radius: 50% 50% 50% 50%;
  margin-right: 20px;
  margin-bottom: 20px;
  position: absolute;
}

.loading-content {
  text-align: center;
}

.loading-stroke {
  position: relative;
  width: 100%;
  background: #23cc88;
  height: 3px;
}

.loading-stroke::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 3px;
  background-color: #fff;
  animation: kidba-loading 5s linear infinite;
  animation-timing-function: cubic-bezier(0.75, 0.04, 0, 0.86);
}

.loading-logo-icon {
  position: absolute;
  top: -60px;
  left: 0;
  width: 60px;
  height: 60px;
  animation: kidba-loading 5s linear infinite;
  animation-timing-function: cubic-bezier(0.75, 0.04, 0, 0.86);
}

.loading-logo-icon-2 {
  width: 60px;
  height: 60px;
  transform-origin: center;
  animation: kidba-loading-shake 5s linear infinite;
}

.loading-logo-text {
  padding-bottom: 10px;
}

@keyframes kidba-loading-shake {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-75deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-75deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes kidba-loading {
  0% {
    left: 0;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes kidba-loading {
  0% {
    left: 0;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 0;
  }
}
#object_one {
  -webkit-animation: object 2s linear infinite;
  animation: object 2s linear infinite;
}

#object_two {
  -webkit-animation: object 2s linear infinite -0.4s;
  animation: object 2s linear infinite -0.4s;
}

#object_three {
  -webkit-animation: object 2s linear infinite -0.8s;
  animation: object 2s linear infinite -0.8s;
}

#object_four {
  -webkit-animation: object 2s linear infinite -1.2s;
  animation: object 2s linear infinite -1.2s;
}

#object_five {
  -webkit-animation: object 2s linear infinite -1.6s;
  animation: object 2s linear infinite -1.6s;
}

@-webkit-keyframes object {
  0% {
    left: 100px;
    top: 0;
  }
  80% {
    left: 0;
    top: 0;
  }
  85% {
    left: 0;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  90% {
    width: 40px;
    height: 15px;
  }
  95% {
    left: 100px;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  100% {
    left: 100px;
    top: 0;
  }
}
@keyframes object {
  0% {
    left: 100px;
    top: 0;
  }
  80% {
    left: 0;
    top: 0;
  }
  85% {
    left: 0;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  90% {
    width: 40px;
    height: 15px;
  }
  95% {
    left: 100px;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  100% {
    left: 100px;
    top: 0;
  }
}
@keyframes spin {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.row {
  --bs-gutter-x: 30px;
}

.g-4 {
  --bs-gutter-y: 30px;
}

.g-0 {
  --bs-gutter-x: 0;
}

.w_100 img {
  width: 100%;
}

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pt-25 {
  padding-top: 25px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-35 {
  padding-top: 35px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 45px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-55 {
  padding-top: 55px;
}

.pt-60 {
  padding-top: 60px;
}

.pt-65 {
  padding-top: 65px;
}

.pt-70 {
  padding-top: 70px;
}

.pt-75 {
  padding-top: 75px;
}

.pt-80 {
  padding-top: 80px;
}

.pt-85 {
  padding-top: 85px;
}

.pt-90 {
  padding-top: 90px;
}

.pt-95 {
  padding-top: 95px;
}

.pt-100 {
  padding-top: 100px;
}

.pt-105 {
  padding-top: 105px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-115 {
  padding-top: 115px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-125 {
  padding-top: 125px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-135 {
  padding-top: 135px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-145 {
  padding-top: 145px;
}

.pt-150 {
  padding-top: 150px;
}

.pb-5 {
  padding-bottom: 5px;
}

.pb-7 {
  padding-bottom: 7px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-17 {
  padding-bottom: 17px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-22 {
  padding-bottom: 22px;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-27 {
  padding-bottom: 27px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-35 {
  padding-bottom: 35px;
}

.pb-40 {
  padding-bottom: 40px;
}

.pb-45 {
  padding-bottom: 45px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pb-55 {
  padding-bottom: 55px;
}

.pb-60 {
  padding-bottom: 60px;
}

.pb-65 {
  padding-bottom: 65px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pb-75 {
  padding-bottom: 75px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-85 {
  padding-bottom: 85px;
}

.pb-90 {
  padding-bottom: 90px;
}

.pb-95 {
  padding-bottom: 95px;
}

.pb-100 {
  padding-bottom: 100px;
}

.pb-105 {
  padding-bottom: 105px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-115 {
  padding-bottom: 115px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-125 {
  padding-bottom: 125px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-135 {
  padding-bottom: 135px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-145 {
  padding-bottom: 145px;
}

.pb-150 {
  padding-bottom: 150px;
}

.p-50p {
  padding-top: 50%;
  padding-bottom: 50%;
}

.pb-100p {
  padding-bottom: 100%;
}

.p-5 {
  padding: 5px 0;
}

.p-10 {
  padding: 10px 0;
}

.p-15 {
  padding: 15px 0;
}

.p-20 {
  padding: 20px 0;
}

.p-25 {
  padding: 25px 0;
}

.p-30 {
  padding: 30px 0;
}

.p-35 {
  padding: 35px 0;
}

.p-40 {
  padding: 40px 0;
}

.p-45 {
  padding: 45px 0;
}

.p-50 {
  padding: 50px 0;
}

.p-55 {
  padding: 55px 0;
}

.p-60 {
  padding: 60px 0;
}

.p-65 {
  padding: 65px 0;
}

.p-70 {
  padding: 70px 0;
}

.p-75 {
  padding: 75px 0;
}

.p-80 {
  padding: 80px 0;
}

.p-85 {
  padding: 85px 0;
}

.p-90 {
  padding: 90px 0;
}

.p-95 {
  padding: 95px 0;
}

.p-100 {
  padding: 100px 0;
}

.p-105 {
  padding: 105px 0;
}

.p-110 {
  padding: 110px 0;
}

.p-115 {
  padding: 115px 0;
}

.p-120 {
  padding: 120px 0;
}

.p-125 {
  padding: 125px 0;
}

.p-130 {
  padding: 130px 0;
}

.p-135 {
  padding: 135px 0;
}

.p-140 {
  padding: 140px 0;
}

.p-145 {
  padding: 145px 0;
}

.p-150 {
  padding: 150px 0;
}

.p-180 {
  padding: 180px 0;
}

.p-200 {
  padding-top: 200px;
  padding-bottom: 200px;
}

.pl-5 {
  padding-left: 5px;
}

.pr-5 {
  padding-right: 5px;
}

.px-5 {
  padding-left: 5px;
  padding-right: 5px;
}

.pl-6 {
  padding-left: 6px;
}

.pl-20 {
  padding-left: 20px;
}

.pr-20 {
  padding-right: 20px;
}

.pl-25 {
  padding-left: 25px;
}

.pr-25 {
  padding-right: 25px;
}

.pl-30 {
  padding-left: 30px;
}

.pr-30 {
  padding-right: 30px;
}

.pl-60 {
  padding-left: 60px;
}

.pr-60 {
  padding-right: 60px;
}

.px-10 {
  padding-left: 10px;
  padding-right: 10px;
}

.px-15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.px-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

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

.px-30 {
  padding-left: 30px;
  padding-right: 30px;
}

.px-35 {
  padding-left: 35px;
  padding-right: 35px;
}

.px-45 {
  padding-left: 45px;
  padding-right: 45px;
}

.px-50 {
  padding-left: 50px;
  padding-right: 50px;
}

.px-60 {
  padding-left: 60px;
  padding-right: 60px;
}

.mt-1 {
  margin-top: 1px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mt-7 {
  margin-top: 7px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-25 {
  margin-top: 25px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-55 {
  margin-top: 55px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-65 {
  margin-top: 65px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-75 {
  margin-top: 75px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-85 {
  margin-top: 85px;
}

.mt-90 {
  margin-top: 90px;
}

.mt-95 {
  margin-top: 95px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-105 {
  margin-top: 105px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-115 {
  margin-top: 115px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-125 {
  margin-top: 125px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-135 {
  margin-top: 135px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-145 {
  margin-top: 145px;
}

.mt-150 {
  margin-top: 150px;
}

.mt--1 {
  margin-top: -1px;
}

.mt--2 {
  margin-top: -2px;
}

.mt--3 {
  margin-top: -3px;
}

.mt--4 {
  margin-top: -4px;
}

.mt--5 {
  margin-top: -5px;
}

.mt--6 {
  margin-top: -6px;
}

.mt--7 {
  margin-top: -7px;
}

.mt--8 {
  margin-top: -8px;
}

.mt--9 {
  margin-top: -9px;
}

.mt--10 {
  margin-top: -10px;
}

.mt--14 {
  margin-top: -14px;
}

.mt--16 {
  margin-top: -16px;
}

.mt--17 {
  margin-top: -17px;
}

.mt--23 {
  margin-top: -23px;
}

.facility-icon-minus-top {
  margin-top: -70px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .facility-icon-minus-top {
    margin-top: -45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .facility-icon-minus-top {
    margin-top: -90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .facility-icon-minus-top {
    margin-top: -15px;
  }
}
@media only screen and (min-width: 480px) and (max-width: 575px) {
  .facility-icon-minus-top {
    margin-top: 30px;
  }
}

.mb-1 {
  margin-bottom: 1px !important;
}

.mb-2 {
  margin-bottom: 2px !important;
}

.mb-4 {
  margin-bottom: 4px;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-6 {
  margin-bottom: 6px;
}

.mb-7 {
  margin-bottom: 7px;
}

.mb-8 {
  margin-bottom: 8px;
}

.mb-9 {
  margin-bottom: 9px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-11 {
  margin-bottom: 11px;
}

.mb-12 {
  margin-bottom: 12px;
}

.mb-13 {
  margin-bottom: 13px;
}

.mb-14 {
  margin-bottom: 14px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-16 {
  margin-bottom: 16px;
}

.mb-17 {
  margin-bottom: 17px;
}

.mb-18 {
  margin-bottom: 18px;
}

.mb-19 {
  margin-bottom: 19px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-21 {
  margin-bottom: 21px;
}

.mb-22 {
  margin-bottom: 22px;
}

.mb-23 {
  margin-bottom: 23px;
}

.mb-24 {
  margin-bottom: 24px;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-26 {
  margin-bottom: 26px;
}

.mb-27 {
  margin-bottom: 27px;
}

.mb-29 {
  margin-bottom: 29px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-35 {
  margin-bottom: 35px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-41 {
  margin-bottom: 41px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-47 {
  margin-bottom: 47px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-55 {
  margin-bottom: 55px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-62 {
  margin-bottom: 62px;
}

.mb-65 {
  margin-bottom: 65px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-75 {
  margin-bottom: 75px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-85 {
  margin-bottom: 85px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-95 {
  margin-bottom: 95px;
}

.mb-100 {
  margin-bottom: 100px;
}

.mb-105 {
  margin-bottom: 105px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-115 {
  margin-bottom: 115px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-125 {
  margin-bottom: 125px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-135 {
  margin-bottom: 135px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-145 {
  margin-bottom: 145px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb--1 {
  margin-bottom: -1px;
}

.mb--2 {
  margin-bottom: -2px;
}

.mb--3 {
  margin-bottom: -3px;
}

.mb--4 {
  margin-bottom: -4px;
}

.mb--5 {
  margin-bottom: -5px;
}

.mb--7 {
  margin-bottom: -7px;
}

.mb--8 {
  margin-bottom: -8px;
}

.mb--9 {
  margin-bottom: -9px;
}

.mb--10 {
  margin-bottom: -10px;
}

.mb--11 {
  margin-bottom: -11px;
}

.mb--14 {
  margin-bottom: -14px;
}

.mb--18 {
  margin-bottom: -18px;
}

.mb--60 {
  margin-bottom: -60px;
}

.m-5 {
  margin: 5px 0;
}

.m-10 {
  margin: 10px 0;
}

.m-15 {
  margin: 15px 0;
}

.m-20 {
  margin: 20px 0;
}

.m-25 {
  margin: 25px 0;
}

.m-30 {
  margin: 30px 0;
}

.m-35 {
  margin: 35px 0;
}

.m-40 {
  margin: 40px 0;
}

.m-45 {
  margin: 45px 0;
}

.m-50 {
  margin: 50px 0;
}

.m-55 {
  margin: 55px 0;
}

.m-60 {
  margin: 60px 0;
}

.m-65 {
  margin: 65px 0;
}

.m-70 {
  margin: 70px 0;
}

.m-75 {
  margin: 75px 0;
}

.m-80 {
  margin: 80px 0;
}

.m-85 {
  margin: 85px 0;
}

.m-90 {
  margin: 90px 0;
}

.m-95 {
  margin: 95px 0;
}

.m-100 {
  margin: 100px 0;
}

.m-105 {
  margin: 105px 0;
}

.m-110 {
  margin: 110px 0;
}

.m-115 {
  margin: 115px 0;
}

.m-120 {
  margin: 120px 0;
}

.m-125 {
  margin: 125px 0;
}

.m-130 {
  margin: 130px 0;
}

.m-135 {
  margin: 135px 0;
}

.m-140 {
  margin: 140px 0;
}

.m-145 {
  margin: 145px 0;
}

.m-150 {
  margin: 150px 0;
}

.mx--10 {
  margin-left: -10px;
  margin-right: -10px;
}

.mx-10 {
  margin-left: 10px;
  margin-right: 10px;
}

.mx-20 {
  margin-left: 20px;
  margin-right: 20px;
}

.mx-25 {
  margin-left: 25px;
  margin-right: 25px;
}

.ml-5 {
  margin-left: 5px;
}

.ml-6 {
  margin-left: 6px;
}

.ml-10 {
  margin-left: 10px;
}

.ml-20 {
  margin-left: 20px;
}

.ml-25 {
  margin-left: 25px;
}

.ml-100 {
  margin-left: 100px;
}

.mr-5 {
  margin-right: 5px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-20 {
  margin-right: 20px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-40 {
  margin-right: 40px;
}

.mr-70 {
  margin-right: 70px;
}

.mr-75 {
  margin-right: 75px;
}

@media (min-width: 576px) {
  .mr-sm-5 {
    margin-right: 5px !important;
  }
}
.h-0 {
  height: 0;
}

.fb {
  background: #3b5999;
  color: #fff;
}

.ggl {
  background: #DD4B39;
  color: #fff;
}

.tw {
  background: #55acee;
  color: #fff;
}

.pin {
  background: #bd081c;
  color: #fff;
}

.ld {
  background: #007bb6;
  color: #fff;
}

.skp {
  background: #009ee5;
  color: #fff;
}

.rss {
  background: #fd9f13;
  color: #fff;
}

.drb {
  background: #ea4c89;
  color: #fff;
}

.color-fb {
  color: #3b5999;
}
.color-fb:hover, .color-fb:focus {
  color: #3b5999;
}

.color-ggl {
  color: #DD4B39;
}
.color-ggl:hover, .color-ggl:focus {
  color: #DD4B39;
}

.color-tw {
  color: #55acee;
}
.color-tw:hover, .color-tw:focus {
  color: #55acee;
}

.color-pin {
  color: #bd081c;
}
.color-pin:hover, .color-pin:focus {
  color: #bd081c;
}

.color-ld {
  color: #007bb6;
}
.color-ld:hover, .color-ld:focus {
  color: #007bb6;
}

.color-skp {
  color: #009ee5;
}
.color-skp:hover, .color-skp:focus {
  color: #009ee5;
}

.color-rss {
  color: #fd9f13;
}
.color-rss:hover, .color-rss:focus {
  color: #fd9f13;
}

.color-drb {
  color: #ea4c89;
}
.color-drb:hover, .color-drb:focus {
  color: #ea4c89;
}

.color-ig {
  color: #394b8d;
}
.color-ig:hover, .color-ig:focus {
  color: #394b8d;
}

.color-vmo {
  color: #394b8d;
}
.color-vmo:hover, .color-vmo:focus {
  color: #394b8d;
}

.color-be {
  color: #2d9ad2;
}
.color-be:hover, .color-be:focus {
  color: #2d9ad2;
}

.fb-color {
  color: #3b5999;
}
.fb-color:hover, .fb-color:focus {
  color: #3b5999;
}

.ggl-color {
  color: #DD4B39;
}
.ggl-color:hover, .ggl-color:focus {
  color: #DD4B39;
}

.tw-color {
  color: #55acee;
}
.tw-color:hover, .tw-color:focus {
  color: #55acee;
}

.pin-color {
  color: #bd081c;
}
.pin-color:hover, .pin-color:focus {
  color: #bd081c;
}

.ld-color {
  color: #007bb6;
}
.ld-color:hover, .ld-color:focus {
  color: #007bb6;
}

.skp-color {
  color: #009ee5;
}
.skp-color:hover, .skp-color:focus {
  color: #009ee5;
}

.rss-color {
  color: #fd9f13;
}
.rss-color:hover, .rss-color:focus {
  color: #fd9f13;
}

.isotope-gap {
  margin: 12px;
}

.isotope-n-gap {
  margin: -12px;
}

.navbar-nav .nav-item.pr-20 {
  padding-right: 20px;
}

.gap-10 {
  gap: 10px;
}

.gap-20 {
  gap: 20px;
}

.gap-24 {
  gap: 24px;
}

.gap-30 {
  gap: 30px;
}

.gap-55 {
  gap: 55px;
}

.gap-70 {
  gap: 70px;
}

.r-gap-10 {
  row-gap: 10px;
}

.r-gap-20 {
  row-gap: 20px;
}

.r-gap-24 {
  row-gap: 24px;
}

.r-gap-30 {
  row-gap: 30px;
}

.r-gap-70 {
  row-gap: 70px;
}

.c-gap-10 {
  column-gap: 10px;
}

.c-gap-20 {
  column-gap: 20px;
}

.c-gap-24 {
  column-gap: 24px;
}

.c-gap-30 {
  column-gap: 30px;
}

.c-gap-70 {
  column-gap: 70px;
}

.p-relative {
  position: relative;
}

.p-absolute {
  position: absolute;
}

.top-0 {
  top: 0;
}

.left-0 {
  left: 0;
}

.bottom-0 {
  bottom: 0;
}

.right-0 {
  right: 0;
}

.top-50 {
  top: 50%;
}

.left-50 {
  left: 50%;
}

.bottom-50 {
  bottom: 50%;
}

.right-50 {
  right: 50%;
}

.top-100 {
  top: 100%;
}

.left-100 {
  left: 100%;
}

.bottom-100 {
  bottom: 100%;
}

.right-100 {
  right: 100%;
}

.ff-heading {
  font-family: "Fredoka One", cursive;
}

.ff-body {
  font-family: "Roboto", sans-serif;
}

.ff-special {
  font-family: "Open Sans", sans-serif;
}

.def-btn {
  height: 60px;
  line-height: 60px;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  box-shadow: 0px 5px 10px 0px rgba(35, 204, 136, 0.5);
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  padding: 0 35px;
  position: relative;
  overflow: hidden;
  z-index: 2;
  text-align: center;
  display: inline-block;
}
.def-btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(-145deg, #8ecf35, #23cc88);
  opacity: 0;
  transition: all 0.3s ease-in;
  z-index: -1;
}
.def-btn.def-btn-sm {
  height: 40px;
  line-height: 40px;
  padding: 0 15px;
}
.def-btn.btn-2 {
  background: linear-gradient(145deg, #ff4f58, #ffb400);
  box-shadow: 0px 5px 10px 0px rgba(255, 114, 58, 0.5);
}
.def-btn.btn-2:after {
  background: linear-gradient(-145deg, #ff4f58, #ffb400);
}
.def-btn.btn-3 {
  background: linear-gradient(145deg, #01cbad, #47a1f2);
  box-shadow: 0px 5px 10px 0px rgba(1, 203, 173, 0.5);
}
.def-btn.btn-3:after {
  background: linear-gradient(-145deg, #01cbad, #47a1f2);
}
.def-btn.btn-4 {
  background: linear-gradient(145deg, #e85aca, #fc4e65);
  box-shadow: 0px 5px 10px 0px rgba(232, 90, 202, 0.5);
}
.def-btn.btn-4:after {
  background: linear-gradient(-145deg, #e85aca, #fc4e65);
}
.def-btn:hover {
  color: #fff;
}
.def-btn:hover:after {
  opacity: 1;
}

.section-title {
  font-size: 52px;
  line-height: 1.2;
  font-weight: 600;
  color: #00394f;
}

.paragraph-minus-margin {
  margin-bottom: -8px;
}

.bg-danger {
  background-color: #ff4f58 !important;
}

.bg-gradient-1 {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
}

.bg-gradient-2 {
  background: linear-gradient(145deg, #01cbad, #47a1f2);
}

.bg-gradient-3 {
  background: linear-gradient(145deg, #ff4f58, #ffb400);
}

.bg-gradient-4 {
  background: linear-gradient(145deg, #e85aca, #fc4e65);
}

.color-1 {
  color: #23cc88;
}

.color-2 {
  color: #F95072;
}

.color-3 {
  color: #ff4f58;
}

.color-4 {
  color: #ffc000;
}

.color-5 {
  color: #e84b3a;
}

.color-6 {
  color: #ff723a;
}

.color-7 {
  color: #92278f;
}

.color-8 {
  color: #47a1f2;
}

.color-9 {
  color: #00394f;
}

.shadow-1 {
  box-shadow: 0px 10px 20px 0px rgba(35, 204, 136, 0.5);
}

.shadow-2 {
  box-shadow: 0px 10px 20px 0px rgba(71, 161, 242, 0.5);
}

.shadow-3 {
  box-shadow: 0px 10px 20px 0px rgba(255, 114, 58, 0.5);
}

.shadow-4 {
  box-shadow: 0px 10px 20px 0px rgba(232, 90, 202, 0.5);
}

.filter-shadow-1 {
  filter: drop-shadow(0px 10px 10px rgba(35, 204, 136, 0.5));
}

.filter-shadow-2 {
  filter: drop-shadow(0px 10px 10px rgba(1, 203, 173, 0.5));
}

.filter-shadow-3 {
  filter: drop-shadow(0px 10px 10px rgba(255, 114, 58, 0.5));
}

.filter-shadow-4 {
  filter: drop-shadow(0px 10px 10px rgba(232, 90, 202, 0.5));
}

.fz-16 {
  font-size: 16px;
}

.fz-18 {
  font-size: 18px;
}

.lh-0 {
  line-height: 100% !important;
}

.lh-2 {
  line-height: 2 !important;
}

.lh-24 {
  line-height: 24px;
}

.lh-26 {
  line-height: 26px;
}

.lh-28 {
  line-height: 28px;
}

.lh-30 {
  line-height: 30px;
}

.fw-500 {
  font-weight: 500 !important;
}

.tt-uppercase {
  text-transform: uppercase;
}

.divider {
  width: 80px;
  height: 4px;
}

.gap-4 {
  gap: 24px;
}

.gap-25 {
  row-gap: 25px;
}

.gap-30 {
  row-gap: 30px;
}

.border-light-alpha {
  border-color: #804BFF !important;
}

.btn-box {
  display: flex;
  gap: 20px;
}

.btn-box-2 {
  display: flex;
  gap: 10px;
}

.pr-70 {
  padding-right: 70px;
}

.py-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.ml-30 {
  margin-left: 30px;
}

/*  Default CSS  */
.pt-200 {
  padding-top: 200px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-185 {
  padding-top: 185px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-190 {
  padding-bottom: 190px;
}

/*
************
*************************
02. Header
******************************************************* 
*************************************************************** */
.header-container {
  width: 100%;
  max-width: 1480px;
}
@media only screen and (min-width: 1400px) and (max-width: 1580px) {
  .header-container {
    max-width: 1320px;
  }
}

.bottom-header {
  box-shadow: 0 1px 0px rgba(0, 0, 0, 0.1);
}

.navbar-nav ul.dropdown-menu li:not(:last-child) {
  margin-bottom: 5px;
}

.top-header {
  background-image: linear-gradient(11deg, #8ecf35, #23cc88);
}

.header-txt {
  font-size: 16px;
  color: #fff;
  height: 50px;
  line-height: 50px;
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
.header-txt:first-child {
  border-left: 0;
}

.header-right-txt {
  text-align: center;
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 18px;
  color: #fff;
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
.header-right-txt:last-child {
  border-right: 1px solid rgba(255, 255, 255, 0.3);
}
.header-right-txt:hover, .header-right-txt:focus {
  color: #23cc88;
  background: #fff;
}

.nav-item:hover .nav-link:after, .nav-item:focus-within .nav-link:after {
  width: 100%;
}
.nav-item:hover .dropdown-menu, .nav-item:focus-within .dropdown-menu {
  opacity: 1;
  visibility: visible;
  top: 100%;
}

.nav-link {
  font-size: 14px;
  height: 20px;
  line-height: 21px;
  font-weight: 700;
  color: #00394f;
  text-transform: uppercase;
  position: relative;
}
.nav-link:after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 2px;
  background: #23cc88;
  transition: all 0.3s ease-in;
}
.nav-link:hover, .nav-link:focus {
  color: #00394f;
}
.nav-link:hover:after, .nav-link:focus:after {
  width: 100%;
}

.dropdown-menu {
  display: block;
  border-radius: 0;
  min-width: 240px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
  border: 0;
  top: 120%;
  background-color: #fff;
  border-top: 4px solid #23CC88;
  box-shadow: 0 13px 29px rgba(0, 0, 0, 0.1);
  padding: 15px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .dropdown-menu {
    padding-left: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .dropdown-menu {
    background-color: transparent;
    box-shadow: none;
    border-top-width: 0;
    opacity: 1;
    visibility: visible;
  }
}

.dropdown-menu[data-bs-popper] {
  left: inherit;
  margin-top: inherit;
}

.dropdown-item {
  font-size: 14px;
  font-weight: 500;
  color: #717171;
}
.dropdown-item:hover, .dropdown-item:focus {
  background: #23cc88;
  color: #fff;
}

.nav-cart-icon {
  width: 60px;
  height: 60px;
  background: linear-gradient(-145deg, #ff4f58, #ffb400);
  border-radius: 50%;
  position: relative;
}

.logo img {
  width: 120px;
}

.item_count {
  position: absolute;
  right: -10px;
  top: -10px;
  min-width: 30px;
  height: 30px;
  background-color: #32CC7C;
  border-radius: 50%;
  text-align: center;
  line-height: 30px;
  font-size: 13px;
  color: #fff;
}

.navbar-nav li.nav-item {
  padding: 13px 0;
}

@media (min-width: 768px) and (max-width: 991px) {
  .top-header {
    padding-top: 20px;
    padding-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .top-header {
    padding: 20px 0;
    padding-bottom: 30px;
  }
  .top-header {
    padding: 20px 0;
    padding-bottom: 30px;
  }
  .header-txt {
    margin-bottom: 7px;
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .header-container.style-2 {
    padding: 0 40px !important;
  }
}
.navbar-nav li a {
  text-transform: uppercase;
  font-size: 16px;
  color: #00394F;
  padding: 10px 0;
  font-weight: 700;
  transition: 0.4s;
  transform-origin: left;
  display: inline-block;
}
.navbar-nav li a:hover {
  color: #23CC88;
}
.navbar-nav li ul li a {
  padding: 5px 0;
}
.navbar-nav li ul li a:hover {
  letter-spacing: 1px;
}
.navbar-nav li:is(.dropdown) > a::after {
  content: "\eab2";
  font-family: "IcoFont";
}
.navbar-nav > li:hover > a {
  color: #23CC88;
}

.navbar-nav li {
  margin: 0 25px;
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .header-style-1 .navbar .navbar-nav {
    background-image: linear-gradient(-145deg, #8ecf35, #23cc88);
    margin-top: 30px !important;
    padding: 20px 25px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .header-style-1 .navbar .navbar-nav li {
    margin: 0;
    padding: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .header-style-1 .navbar .navbar-nav li a {
    padding: 0;
    color: #fff;
    display: block;
    position: relative;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .header-style-1 .navbar .navbar-nav li:not(:last-child) {
    margin-bottom: 8px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .navbar-nav > li.dropdown > a::after {
    position: absolute;
    right: 0;
    top: 0;
    font-family: "IcoFont";
    font-weight: 600;
    content: "\eab2";
  }
  .navbar-nav > li.dropdown > a.show::after {
    font-weight: 600;
    content: "\eab9";
  }
}

/*
************
*************************
03. Banner
******************************************************* 
*************************************************************** */
.breadcrumb-txt span.dvdr {
  display: inline-block;
  margin: 0 10px;
  font-size: 16px;
  font-weight: 300;
}

.breadcrumb-txt a {
  font-weight: 700;
}
.breadcrumb-txt a:hover {
  color: #23CC88;
}

.banner {
  background: url(../images/banner-bg-1.jpg) bottom center no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .banner.pt-185 {
    padding-top: 130px;
  }
}
@media (max-width: 767px) {
  .banner.pb-190 {
    padding-bottom: 120px;
  }
}
@media (max-width: 767px) {
  .banner::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #AA734A;
    z-index: -1;
  }
}

.breadcrumb-banner {
  background: url(../images/breadcrumb-bg.jpg) bottom center no-repeat;
  background-size: cover;
}

.banner-subtitle {
  font-size: 29px;
  line-height: 1.2;
  font-weight: 400;
  color: #fff;
}

.banner-subtitle-2 {
  font-size: 29px;
  line-height: 1.2;
  font-weight: 400;
  color: #fff;
}

.banner-title {
  font-size: 96px;
  line-height: 1.2;
  text-transform: capitalize;
  color: #fff;
  font-weight: 600;
}

.banner-title-2 {
  font-size: 96px;
  font-weight: 600;
  line-height: 1.2;
  text-transform: capitalize;
  color: #fff;
}

.breadcrumb-title {
  font-size: 72px;
  line-height: 1.2;
  font-weight: 600;
  color: #fff;
  margin-bottom: 15px;
}

.breadcrumb-txt {
  font-size: 20px;
  color: #fff;
}

.banner-paragraph {
  font-size: 20px;
  line-height: 1.5;
  color: #fff;
}

.banner-paragraph-2 {
  font-size: 20px;
  line-height: 1.5;
  color: #fff;
}

.mr-25 {
  margin-right: 25px;
}

.rounded-pill-space {
  margin-top: 10px;
  margin-bottom: 17px;
}

@keyframes hero-border {
  0% {
    -webkit-border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
    -moz-border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
    border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
  }
  100% {
    -webkit-border-radius: 30% 70% 28% 72%/53% 69% 31% 47%;
    -moz-border-radius: 30% 70% 28% 72%/53% 69% 31% 47%;
    border-radius: 30% 70% 28% 72%/53% 69% 31% 47%;
  }
}
.feature-img-2 img {
  -webkit-border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
  -moz-border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
  border-radius: 51% 49% 77% 23%/65% 50% 50% 35%;
  -webkit-animation: hero-border 5s linear infinite alternate;
  -moz-animation: hero-border 5s linear infinite alternate;
  -o-animation: hero-border 5s linear infinite alternate;
  animation: hero-border 5s linear infinite alternate;
}

.box.kitba-box-2 {
  grid-gap: 14px;
}

.kitba-slide-height {
  height: 950px;
  display: flex;
  align-items: center;
  background-size: cover;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .kitba-slide-height {
    height: 850px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .kitba-slide-height {
    height: 800px;
  }
}
@media (max-width: 767px) {
  .kitba-slide-height {
    height: 750px;
  }
}

.bg_cover {
  background-size: cover;
}

/*
************
*************************
04. Features
******************************************************* 
*************************************************************** */
.feature-part-icon {
  width: 100px;
  height: 100px;
}

.feature-icon {
  width: 100px;
  height: 100px;
}

.feature-txt {
  width: calc(100% - 120px);
}

.feature-sub-title {
  font-size: 24px;
  line-height: 34px;
  font-weight: 700;
  color: #00394f;
}

.feature-sub-title-2 {
  font-size: 72px;
  line-height: 100%;
}

.video-btn {
  width: 100px;
  height: 100px;
  line-height: 100px;
  font-size: 48px;
  display: inline-block;
}
.video-btn.video-btn-2 {
  font-size: 36px;
}

.feature-title {
  font-size: 152px;
  font-weight: 600;
  line-height: 1.1;
  color: #00394f;
}

.r-gap-40 {
  row-gap: 40px;
}

.has-gradient-service > *:nth-child(1) a:hover {
  color: #38CD78;
}

.has-gradient-service > *:nth-child(2) a:hover {
  color: #35ACE0;
}

.has-gradient-service > *:nth-child(3) a:hover {
  color: #FF5454;
}

.has-gradient-service > *:nth-child(4) a:hover {
  color: #E85AC9;
}

.feature-sub-title.prnt-clr:hover a {
  color: #35ACE0;
}

.feature-sub-title.msc-clr:hover a {
  color: #FF5454;
}

.feature-sub-title.lrn-clr:hover a {
  color: #38CD78;
}

.feature-icon img, .feature-part-icon img {
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  transition: transform 0.3s cubic-bezier(0.21, 0.6, 0.44, 2.18);
}

.feature-card:hover .feature-icon img, .feature-box:hover .feature-part-icon img {
  transform: translate3d(0, -5px, 0);
}

/*
************
*************************
05. About
******************************************************* 
*************************************************************** */
.about {
  background: url(../images/about-bg.png) center center no-repeat;
  background-size: cover;
  color: #fff;
}

.about-2 {
  background: url(../images/about-bg-2.jpg);
  background-size: cover;
  color: #fff;
}

.about-title {
  font-size: 52px;
  line-height: 1.2;
  font-weight: 600;
}

.feature-img.p-relative::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  content: "";
  opacity: 0.25;
}

.feature-img.p-relative a.video-btn {
  z-index: 9;
}
.feature-img.p-relative a.video-btn i {
  transition: all 0.3s;
}
.feature-img.p-relative a.video-btn:hover i {
  color: #FF5A4C;
}

p.app-download-txt {
  font-size: 20px;
}

.bg-top-center {
  background-position: top center;
}

@media (max-width: 767px), only screen and (min-width: 768px) and (max-width: 991px) {
  .about-2 {
    position: relative;
  }
  .about-2::after {
    position: absolute;
    left: 0;
    top: 15px;
    width: 100%;
    height: calc(100% - 30px);
    background: linear-gradient(to top, rgba(22, 251, 54, 0), #53cd64);
    content: "";
    opacity: 0.6;
  }
  .about-2 > * {
    position: relative;
    z-index: 9;
  }
}
/*
************
*************************
06. CTA
******************************************************* 
*************************************************************** */
.cta {
  background: url(../images/cta-bg.png) center center no-repeat;
  background-size: cover;
}

.cta-title {
  font-size: 52px;
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
}

/*
************
*************************
07. Class
******************************************************* 
*************************************************************** */
.class-card {
  box-shadow: 0px 0px 10px 0px rgba(113, 113, 113, 0.1);
}

.class-title {
  font-size: 24px;
  font-weight: 700;
}
.class-title a {
  color: #00394f;
}
.class-title:hover a {
  color: #23cc88;
}

.vertical-border {
  width: 1px;
  background: rgba(113, 113, 113, 0.2);
}

.class-card:hover .part-img img {
  transform: scale(1.1);
}

.class-card .part-img {
  overflow: hidden;
  position: relative;
}

.class-card .part-img img {
  transition: all 0.3s;
}

@keyframes wobble-vertical {
  16.65% {
    transform: translateY(8px);
  }
  33.3% {
    transform: translateY(-6px);
  }
  49.95% {
    transform: translateY(4px);
  }
  66.6% {
    transform: translateY(-2px);
  }
  83.25% {
    transform: translateY(1px);
  }
  100% {
    transform: translateY(0);
  }
}
.counter-box:hover img {
  animation-name: wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .class-info.d-flex {
    flex-direction: row;
    grid-gap: 5px;
  }
}
.class-card.class-card-2 {
  display: flex;
  align-items: center;
}

.class-card.class-card-2 .part-img {
  flex: 0 0 45%;
  max-width: 45%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .class-card.class-card-2 .part-img {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .class-card.class-card-2 .part-img {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

.class-card.class-card-2 .popular-class-txt {
  padding: 0 30px;
}

.list-wrapper .class-card.class-card-2 .popular-class-txt {
  padding: 0 40px;
}

.class-card.class-card-2 .part-img {
  height: 300px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.list-wrapper .class-card.class-card-2 .part-img {
  height: 330px;
}

.gallery-image.gallery-image-2 .img {
  height: 350px;
  width: 100%;
}
@media only screen and (min-width: 1200px) and (max-width: 1599px) {
  .gallery-image.gallery-image-2 .img {
    height: 280px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .gallery-image.gallery-image-2 .img {
    height: 240px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .gallery-image.gallery-image-2 .img {
    height: 240px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .gallery-image.gallery-image-2 .img {
    height: 200px;
  }
}
@media only screen and (min-width: 480px) and (max-width: 575px) {
  .gallery-image.gallery-image-2 .img {
    height: 260px;
  }
}
@media only screen and (max-width: 479px) {
  .gallery-image.gallery-image-2 .img {
    height: 200px;
  }
}
.gallery-image.gallery-image-2 .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .box.box-1.text-center {
    flex-direction: column;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .box.box-1.text-center {
    flex-direction: column;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .class-info .box.box-1.text-center {
    align-items: start;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .class-info .box.box-1.text-center {
    align-items: start;
  }
}

.class-catname {
  display: inline-block;
  color: #fff;
  margin-bottom: 25px;
  font-size: 16px;
  color: #23cc88;
  border: 1px solid #23cc88;
  padding: 3px 10px;
}

.class-catname:hover {
  background-color: #23cc88;
  color: #fff;
}

.class-catname.bg-theme {
  background-color: #23cc88;
  color: #fff;
}
.class-catname.bg-theme:hover {
  color: #23cc88;
  border: 1px solid #23cc88;
  background-color: transparent;
}

.class-filter-btn {
  font-size: 16px;
  color: #00394f;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 10px;
}

.class-filter-btn:not(:last-child) {
  margin-right: 30px;
}

.class-filter-btn.active {
  color: #23CC88;
}

.class-filter-btn:hover {
  color: #23CC88;
}

.part-txt.part-text-list {
  padding: 40px 70px 40px 40px;
}

.grey-bg-2 {
  background-color: #f6f6f6;
}

.course__tab-inner {
  padding: 20px 25px;
}

.course__view h4 {
  color: #00394f;
  font-size: 16px;
  margin-bottom: 0;
}

.course__tab-btn li button {
  color: #00394f;
  font-size: 16px;
  margin-right: 5px;
  padding: 5px 10px;
  background-color: #d7d7d7;
}

.course__tab-btn li button#list-tab {
  margin-right: 15px;
}

.course__tab-btn li button.active {
  background-color: #00394f;
  color: #fff;
}

.course__sort-inner .nice-select {
  border: 0;
  color: #00394f;
  padding-right: 33px;
}

.course__sort-inner .nice-select .list {
  left: auto;
  right: 0;
}

.course__sort-inner .nice-select::after {
  width: 7px;
  height: 7px;
  border-width: 1px;
  border-color: #00394f;
  right: 20px;
}

.basic-pagination ul li {
  display: inline-block;
}

.basic-pagination ul li:not(:last-child) {
  margin-right: 20px;
}

.basic-pagination ul li.prev a, .basic-pagination ul li.next a {
  width: inherit;
  height: inherit;
  line-height: inherit;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border: none;
}

.basic-pagination ul li a {
  position: relative;
  overflow: hidden;
  background: transparent;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 38px;
  text-align: center;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  font-weight: 500;
  font-size: 16px;
  border: 2px solid #f6f6f6;
  color: #00394f;
}

.basic-pagination ul li.active a {
  color: #ffffff;
  background: #23cc88;
  border-color: #23cc88;
}

.basic-pagination ul li.active a {
  color: #ffffff;
}

.link-btn {
  position: relative;
  font-size: 16px;
  color: #00394f;
  font-weight: 500;
  display: inline-block;
}

.basic-pagination ul li.prev a:hover, .basic-pagination ul li.next a:hover {
  color: #23cc88;
  background: inherit;
}

.basic-pagination ul li a:hover {
  background: #23cc88;
  color: #ffffff;
  border-color: #23cc88;
}

.course__video-thumb {
  position: relative;
  z-index: 1;
}

.course__video-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.course__video-price h5 {
  font-size: 24px;
  display: inline-block;
  margin-bottom: 0;
  color: #1a1a1a;
}

.course__video-price h5 span {
  font-size: 20px;
  font-weight: 600;
}

.course__video-discount span {
  display: inline-block;
  font-size: 14px;
  height: 24px;
  line-height: 24px;
  padding: 0 12px;
  color: #F95072;
  background: rgba(255, 70, 144, 0.08);
  font-weight: 600;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.course__video-info h5 {
  margin-bottom: 0;
  font-weight: 400;
  color: #717171;
  font-size: 15px;
  line-height: 1;
}

.course__video-info h5 span {
  font-weight: 500;
  color: #1a1a1a;
  padding-right: 5px;
}

.course__payment h3 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #1a1a1a;
}

.e-btn-7 {
  height: 50px;
  line-height: 50px;
}

.course__video-price h5.old-price {
  text-decoration: line-through;
  color: #717171;
  font-weight: 500;
  font-size: 16px;
  padding-left: 10px;
}

.course__video-icon {
  margin-right: 10px;
}
.course__video-icon i {
  color: #23cc88;
}

.course__video-content ul li:not(:last-child) {
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #eef0f6;
}

/*
************
*************************
08. App Download
******************************************************* 
*************************************************************** */
.app-download-2 {
  background: url(../images/app-download-bg.jpg) center center no-repeat;
  background-size: cover;
}

.app-download-title {
  font-size: 52px;
  line-height: 1.2;
  font-weight: 600;
  color: #fff;
}

/*
************
*************************
09. Counter
******************************************************* 
*************************************************************** */
.counter {
  background: url(../images/counter-bg.png) center center no-repeat;
  background-size: cover;
}

.counter-inner {
  background: url(../images/counter-bg-2.jpg) center center no-repeat;
  background-size: cover;
}

.counter-box-2 {
  border-radius: 50%;
}

.counter-part-txt {
  color: #fff;
}

.counter-txt {
  font-size: 52px;
  font-weight: 600;
  line-height: 100%;
}

.counter-sub-txt {
  font-size: 22px;
}
@media (max-width: 767px) {
  .counter-sub-txt {
    font-size: 20px;
  }
}

.counter-box-2:hover .counter-icon {
  animation-name: wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/*
************
*************************
10. Staff
******************************************************* 
*************************************************************** */
.staff-name {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
}
.staff-name a {
  color: #00394f;
}
.staff-name:hover a {
  color: #23cc88;
}

.staff-social-btn {
  text-align: center;
  width: 50px;
  height: 50px;
  line-height: 50px;
  background: url(../images/vector-bg-1.png) center center no-repeat;
  background-size: 50px;
  color: #fff;
  position: relative;
  display: inline-block;
}
.staff-social-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  box-shadow: 0px 25px 20px 0px rgba(35, 204, 136, 0.25);
}
.staff-social-btn.bg-1 {
  background: url(../images/vector-bg-2.png) center center no-repeat;
  background-size: 50px;
}
.staff-social-btn.bg-1:before {
  box-shadow: 0px 25px 20px 0px rgba(255, 114, 58, 0.25);
}
.staff-social-btn.bg-2 {
  background: url(../images/vector-bg-3.png) center center no-repeat;
  background-size: 50px;
}
.staff-social-btn.bg-2:before {
  box-shadow: 0px 25px 20px 0px rgba(71, 161, 242, 0.25);
}
.staff-social-btn.bg-3 {
  background: url(../images/vector-bg-4.png) center center no-repeat;
  background-size: 50px;
}
.staff-social-btn.bg-3:before {
  box-shadow: 0px 25px 20px 0px rgba(232, 90, 202, 0.25);
}
.staff-social-btn:hover {
  color: #fff;
}

.staff-card-img {
  position: relative;
  z-index: 1;
}
.staff-card-img:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #00394f;
  opacity: 0.5;
  z-index: 1;
  transition: 0.4s;
}
.staff-card-img img {
  transition: 0.4s;
}
.staff-card-img:hover img {
  filter: contrast(0.5);
}
.staff-card-img:hover:before {
  opacity: 0;
}

.staff-card-img > a {
  display: block;
}

.w_100 img {
  width: 100%;
}

.pl-70 {
  padding-left: 70px;
}

/*
************
*************************
11. Facility
******************************************************* 
*************************************************************** */
.facility {
  background: url(../images/facility-bg.jpg) center center no-repeat;
  background-size: cover;
}

.facility-card.facility-card-one {
  background: url(../images/facility-img-1.jpg) center center no-repeat;
  background-size: cover;
  background-position: top center;
}
.facility-card.facility-card-two {
  background: url(../images/facility-img-2.jpg) center center no-repeat;
  background-size: cover;
  background-position: top center;
}
.facility-card.facility-card-two .facility-icon {
  background: linear-gradient(-145deg, #ff4f58, #ffb400);
  box-shadow: 0px 25px 20px 0px rgba(255, 114, 58, 0.3);
}
.facility-card.facility-card-three {
  background: url(../images/facility-img-3.jpg) center center no-repeat;
  background-size: cover;
  background-position: top center;
}
.facility-card.facility-card-three .facility-icon {
  background: linear-gradient(-145deg, #e85aca, #fc4e65);
  box-shadow: 0px 25px 20px 0px rgba(232, 90, 202, 0.3);
}

.facility-img-area {
  min-height: 190px;
}

.facility-icon {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  box-shadow: 0px 25px 20px 0px rgba(35, 204, 136, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
}

.facility-title {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
}
.facility-title a {
  color: #00394f;
}
.facility-title:hover a {
  color: #23cc88;
}

.facility-card:hover .facility-icon img {
  animation-name: wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

.single-client img {
  width: 100%;
}

/*
************
*************************
12. Gallery
******************************************************* 
*************************************************************** */
.gallery-container {
  max-width: 1920px;
}

.controls {
  border-bottom: 1px solid rgba(113, 113, 113, 0.2);
}

.gallery-filter-btn {
  font-size: 16px;
  font-weight: 700;
  line-height: 100%;
  text-transform: uppercase;
  position: relative;
}
.gallery-filter-btn:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%) rotate(-45deg);
  width: 15px;
  height: 15px;
  background: #fff;
  border-top: 1px solid rgba(113, 113, 113, 0.2);
  border-right: 1px solid rgba(113, 113, 113, 0.2);
  opacity: 0;
  transition: 0.3s;
}
.gallery-filter-btn.active:after {
  opacity: 1;
}

.gallery-image:hover .gallery-txt, .gallery-image:focus-within .gallery-txt {
  opacity: 1;
}

.gallery-txt {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(146, 39, 143, 0.94);
  color: #fff;
  opacity: 0;
  transition: all 0.3s ease-in;
}

.gallery-popup {
  text-align: center;
  width: 58px;
  height: 58px;
  line-height: 50px;
  background: #fff;
  border: 4px solid rgba(146, 39, 143, 0.5);
  border-radius: 50%;
}
.gallery-popup:hover {
  border-color: #23cc88;
}

.gallery-title {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
}
.gallery-title:hover a {
  color: #23cc88;
}

.gallery-sub-title {
  font-size: 16px;
  line-height: 100%;
}

.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.mfp-with-zoom.mfp-ready .mfp-container {
  opacity: 1;
}

.mfp-with-zoom.mfp-ready.mfp-bg {
  opacity: 0.8;
}

.mfp-with-zoom.mfp-removing .mfp-container,
.mfp-with-zoom.mfp-removing.mfp-bg {
  opacity: 0;
}

.mfp-figure:after {
  display: none;
}

/*
************
*************************
13. Testimonial
******************************************************* 
*************************************************************** */
.testimonial {
  background: url(../images/testimonial-bg.jpg) center center no-repeat;
  background-size: cover;
}

.feedback-title {
  font-size: 39px;
  line-height: 1.2;
  font-weight: 600;
  color: #fff;
}

.feedback-txt {
  font-size: 20px;
  line-height: 30px;
  font-weight: 300;
  color: #fff;
}

.client-name {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 100%;
  padding-bottom: 15px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
}

.slick-dots {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.slick-dots > * {
  width: 10px;
  height: 10px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0.2;
  transition: 0.3s;
}
.slick-dots > *.slick-active {
  opacity: 1;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
}
.slick-dots > * button {
  font-size: 0;
}

@media (min-width: 768px) and (max-width: 991px) {
  .client-feedback.pr-70 {
    padding-right: 30px;
    padding-left: 10px;
  }
}
@media (max-width: 768px) {
  .client-feedback.pr-70.pl-30 {
    padding-left: 0;
    padding-right: 20px;
  }
  .class-info.d-flex.justify-content-between .box > span {
    text-align: left;
  }
}
/*
************
*************************
14. Blog
******************************************************* 
*************************************************************** */
.blog-card {
  box-shadow: 0px 0px 10px 0px rgba(113, 113, 113, 0.15);
}

.blog-title {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
}
.blog-title a {
  color: #00394f;
}
.blog-title:hover a {
  color: #23cc88;
}

.blog-bottom-part {
  border-top: 1px solid rgba(113, 113, 113, 0.15);
}

.blog-single-stat {
  line-height: 100%;
}

.part-img.w_100 a {
  display: block;
}

.single-blog-info > span {
  display: inline-block;
  margin-right: 25px;
}
.single-blog-info > span:last-child {
  margin-right: 0;
}

/*
************
*************************
15. Partner
******************************************************* 
*************************************************************** */
.partner-slider {
  overflow: hidden;
}
.partner-slider .slick-list {
  margin-left: -10px;
  margin-right: -10px;
}

.kb-staff-card-social-share-1-1 {
  position: absolute;
  left: 25px;
  right: 25px;
  bottom: 30px;
  text-align: center;
  z-index: 2;
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .kb-staff-card-social-share-1-1 {
    left: 15px;
    right: 15px;
  }
}

.staff-card-img {
  position: relative;
}

.kb-staff-card-social-share-1-1 a:not(:last-child) {
  margin-right: 3px;
}

.kb-staff-card-social-share-1-1 a:not(:first-child) {
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}

.staff-card-img:hover .kb-staff-card-social-share-1-1 a {
  opacity: 1;
  visibility: visible;
}

.kb-staff-card-social-share-1-1 a:nth-child(2) {
  transition-delay: 0.1s;
}
.kb-staff-card-social-share-1-1 a:nth-child(3) {
  transition-delay: 0.2s;
}
.kb-staff-card-social-share-1-1 a:nth-child(4) {
  transition-delay: 0.3s;
}

.mb-5-px {
  margin-bottom: 5px;
}

.footer-card .footer-card-txt {
  line-height: 30px;
}

.class-fee {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  padding: 5px 10px;
  background-color: #ff4f58;
  color: #fff;
  margin: 20px;
  z-index: 2;
}

.kb-class-tooltip-1 {
  position: absolute;
  left: 27px;
  top: 20px;
  z-index: 1;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  background: #23cc88;
  line-height: 1;
  padding: 9px 13px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}
.kb-class-tooltip-1::after {
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  width: 15px;
  height: 20px;
  clip-path: polygon(100% 0, 0 50%, 100% 100%, 100% 0);
  content: "";
  background-color: #23cc88;
}

.part-img:hover .kb-class-tooltip-1 {
  opacity: 1;
  visibility: visible;
  left: 113px;
}

.class-info .box.text-center {
  display: flex;
  align-items: center;
  grid-gap: 10px;
}
@media (max-width: 768px) {
  .class-info .box.text-center {
    flex-wrap: wrap;
  }
}

.class-info .box span.single-info {
  margin-bottom: 0;
  line-height: 1;
  margin-top: 0px;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .blog-bottom-part.px-30.d-flex {
    padding: 0 21px;
  }
}
/*
************
*************************
16. Contact
******************************************************* 
*************************************************************** */
.contact {
  background: url(../images/contact-bg.png) top center no-repeat;
  background-size: cover;
}

.contact-info-sub-txt {
  min-width: 80px;
}

.contact-social {
  font-size: 18px;
}
.contact-social:hover {
  color: #23cc88;
}

.def-form {
  width: 100%;
  height: 60px;
  background: #fff;
}
.def-form:focus {
  border-color: #23cc88;
}

.def-textarea {
  width: 100%;
  height: 190px;
  background: #fff;
  vertical-align: top;
}
.def-textarea:focus {
  border-color: #23cc88;
}

.class-card-2 .box.kitba-box-2.text-center {
  flex-wrap: wrap;
}

.ui-datepicker-header {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
}

.ui-datepicker-title {
  color: #fff;
}

.ui-widget-header .ui-icon {
  position: relative;
  z-index: 1;
}
.ui-widget-header .ui-icon:after {
  position: absolute;
  left: -3px;
  top: -6.5px;
  font-size: 18px;
  content: "\eac9";
  font-family: "IcoFont";
  display: inline-block;
  color: #23cc88;
  width: 15px;
  height: 15px;
  z-index: 999;
  text-indent: 0;
}
.ui-widget-header .ui-datepicker-next .ui-icon {
  position: relative;
  z-index: 1;
}
.ui-widget-header .ui-datepicker-next .ui-icon:after {
  position: absolute;
  right: -3px;
  top: -5.5px;
  font-size: 18px;
  content: "\eaca";
  font-family: "IcoFont";
  display: inline-block;
  color: #23cc88;
  width: 15px;
  height: 15px;
  z-index: 999;
  text-indent: 0;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid #fff;
  border-radius: 50%;
}
.ui-datepicker .ui-datepicker-prev.ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next.ui-datepicker-prev-hover {
  top: 50%;
  left: 2px;
  background: #fff;
}
.ui-datepicker .ui-datepicker-prev.ui-datepicker-next-hover, .ui-datepicker .ui-datepicker-next.ui-datepicker-next-hover {
  top: 50%;
  right: 2px;
  background: #fff;
}

.ui-state-default {
  border: 0 !important;
}

.ui-state-highlight {
  background: linear-gradient(145deg, #8ecf35, #23cc88) !important;
  color: #fff !important;
}

.ui-datepicker td {
  padding: 0;
  border: 1px solid rgba(113, 113, 113, 0.1);
}
.ui-datepicker td a {
  text-align: center;
}

.contact-info.kitba-contact {
  background: #00394f;
  padding: 50px 40px;
  display: block;
}
.contact-info.kitba-contact span.contact-info-sub-txt {
  color: #fff;
  display: block;
  margin-bottom: 10px;
}
.contact-info.kitba-contact .contact-info-txt {
  color: #fff;
  line-height: 1.7;
}

.contact-info a:hover {
  color: #23cc88;
}

/*
************
*************************
17. Footer
******************************************************* 
*************************************************************** */
.footer {
  background: url(../images/footer-bg.jpg) center center no-repeat;
  background-size: cover;
}

.footer-2 {
  background: url(../images/footer-bg-2.jpg) center center no-repeat;
  background-size: cover;
}

.footer-info {
  background: #5C2CCE;
}

.footer-info-2 {
  background: #5c2ccf;
}

.footer-single-info.border-l {
  border-left: 1px solid #804BFF;
}

.footer-info-icon-wrap {
  height: 50px;
  width: auto;
}

.footer-info-icon {
  height: 100%;
  width: auto;
}

.footer-info-title {
  font-size: 16px;
  line-height: 100%;
}

.footer-info-txt {
  font-size: 19px;
  line-height: 100%;
  font-weight: 700;
}

.footer-card-title {
  font-size: 24px;
  line-height: 100%;
  font-weight: 700;
  color: #fff;
  position: relative;
}
.footer-card-title:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 90px;
  height: 1px;
  background: linear-gradient(to left, transparent, #804BFF);
}

.footer-follow-dialogue {
  font-size: 18px;
  line-height: 100%;
  font-weight: 500;
  color: #fff;
}

.footer-socials {
  display: flex;
  align-items: center;
  column-gap: 20px;
}

.footer-social {
  font-size: 16px;
  line-height: 100%;
  color: #edf5f8;
}
.footer-social:hover {
  color: #23cc88;
}

.footer-link {
  font-size: 16px;
  line-height: 26px;
  color: #fff;
}
.footer-link:hover {
  color: #23cc88;
}

.footer-input {
  width: 100%;
  height: 60px;
  background: #6231d6;
  border: 1px solid #804BFF;
  color: #fff;
}
.footer-input::placeholder {
  color: #edf5f8;
}

.footer-blog-img {
  width: 90px;
  height: 90px;
}
.footer-blog-img img {
  height: 100%;
  object-fit: cover;
}

.footer-blog-txt {
  width: calc(100% - 120px);
  color: #fff;
}
.footer-blog-txt p a {
  font-size: 20px;
  color: #fff;
}
.footer-blog-txt p a:hover {
  color: #23cc88;
}

.bottom-footer {
  background: #fff;
}

.bottom-footer-social {
  color: #717171;
}

.footer-social-icon {
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  border-radius: 50%;
  color: #fff;
}

.footer-links ul li {
  margin-bottom: 10px;
  transition: all 0.3s;
}

.footer-links ul li:hover {
  padding-left: 5px;
}

.branding-theme {
  color: #23cc88;
}

.footer-single-info.px-30 {
  padding-right: 0;
}

/*
************
*************************
18. Class Details
******************************************************* 
*************************************************************** */
.class-details-title {
  font-size: 48px;
  line-height: 1.2;
  font-weight: 700;
  color: #00394f;
}

.class-details-info {
  border-bottom: 1px solid rgba(113, 113, 113, 0.2);
}

.class-details-video {
  background-size: cover;
}

.class-comment-title {
  font-size: 24px;
  font-weight: 700;
  color: #00394f;
  line-height: 1.3;
}

.class-comment {
  display: flex;
  border: 1px solid #e9e9e9;
  padding: 40px;
}

.class-comment-img {
  width: 70px;
  height: 70px;
}
.class-comment-img img {
  border-radius: 50%;
}

.class-comment-txt {
  width: calc(100% - 100px);
}

.class-comment-username {
  font-size: 18px;
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
}

.class-comment-actions {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.class-comment-actions a:hover {
  color: #23cc88;
}

.product-details-bottom-part .contact-form label {
  color: #00394f;
  font-weight: 500;
}

.class-comment-single-action {
  color: #717171;
  margin-bottom: -3px;
}

.comment-textarea {
  height: 200px;
}

.sidebar-box {
  border: 1px solid #e9e9e9;
}

.sidebar-title {
  font-size: 24px;
  font-weight: 700;
  color: #00394f;
}

.sidebar-search-box {
  display: flex;
  border: 1px solid #e9e9e9;
  transition: 0.3s;
}
.sidebar-search-box:focus-within {
  border-color: #23cc88;
}

.sidebar-search-input {
  width: 100%;
  height: 60px;
  font-size: 16px;
}

.sidebar-search-btn {
  font-size: 18px;
}
.sidebar-search-btn i {
  color: #23cc88;
}

.sidebar-class-category {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
  line-height: 36px;
  color: #717171;
  position: relative;
}
.sidebar-class-category:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-55%);
  width: 15px;
  height: 15px;
  background: #F3F3F4;
  border: 1px solid #e9e9e9;
  border-radius: 3px;
  transition: 0.3s;
}
.sidebar-class-category:hover:after {
  background: #e9e9e9;
}

.class-thumb {
  width: 60px;
}
.class-thumb:hover img {
  filter: grayscale(50%);
}

.class-thumb img {
  height: 100%;
  object-fit: cover;
}

.sidebar-class-txt {
  width: calc(100% - 80px);
}

.sidebar-class-title {
  display: block;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 700;
  color: #00394f;
  transition: 0.3s;
}
.sidebar-class-title:hover {
  color: #23cc88;
}

.sidebar-sub-txt {
  display: block;
  font-size: 15px;
  line-height: 1.5;
  color: #717171;
}

.sidebar-box .checkbox-lists li {
  position: relative;
  display: block;
  overflow: hidden;
}

.sidebar-box .checkbox-lists li:not(:last-child) {
  margin-bottom: 10px;
}

.sidebar-box .checkbox-lists input[type=checkbox] {
  display: none !important;
}

.sidebar-box .checkbox-lists label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  margin-bottom: 0;
}

.widget .site-checkbox-lists input[type=checkbox]:checked + label {
  color: #000;
  text-shadow: 0px 0px 0px;
}

.sidebar-box .checkbox-lists label span, .termscheck label span {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 15px;
  flex: 0 0 15px;
  max-width: 15px;
  width: 100%;
  height: 15px;
  border: 1px solid #e9e9e9;
  background-color: #F3F3F4;
  margin-right: 15px;
  top: -1px;
  border-radius: 2px;
}

.sidebar-box .checkbox-lists label span::before, .termscheck label span::before {
  position: relative;
  font-family: "IcoFont";
  font-size: 0.5rem;
  content: "\eed6";
  line-height: 1;
  left: 0.5px;
  opacity: 0;
  font-weight: 900;
  font-size: 10px;
}

.sidebar-box .checkbox-lists input[type=checkbox]:checked + label span, .termscheck input[type=checkbox]:checked + label span {
  background-color: #23cc88;
}

.sidebar-box .checkbox-lists input[type=checkbox]:checked + label span::before, .termscheck input[type=checkbox]:checked + label span::before {
  color: #fff;
  opacity: 1;
}

.sidebar-box .checkbox-lists ul.children {
  display: none;
}

.sidebar-box .checkbox-lists .children {
  padding-left: 0;
  margin-left: 1.75rem;
}

.sidebar-box .checkbox-lists .children {
  width: 100%;
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

span.subDropdown.plus:before {
  content: "\f067";
  position: absolute;
  color: #717171;
  top: 2px;
  right: 0;
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: normal;
  display: inline-block;
  text-decoration: inherit;
  font-size: 14px;
  margin-right: 0;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  margin-left: 5px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  cursor: pointer;
}

.sidebar-box .checkbox-lists input[type=checkbox]:checked + label span, .termscheck input[type=checkbox]:checked + label span {
  background-color: #23cc88;
  border-color: transparent;
}

.subDropdown.plus {
  width: 16px;
  height: 23px;
  display: inline-block;
}

.def-sidebar ul li:not(:last-child) a.product_cat {
  margin-bottom: 10px;
}

.termscheck input {
  display: none;
}

.termscheck label {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.class-details-teacher-name {
  font-size: 18px;
  color: #00394f;
}

.about-class {
  font-size: 18px;
  font-weight: 400;
}

/*
************
*************************
19. Staff Details
******************************************************* 
*************************************************************** */
.staff-details-title {
  font-size: 24px;
  font-weight: 700;
  color: #00394f;
}

.staff-position {
  font-size: 16px;
  line-height: 100%;
}

.staff-details-txt {
  line-height: 29px;
}

.staff-details-img img {
  max-height: 700px;
  object-fit: cover;
  object-position: top center;
}

/*
************
*************************
20. Shop Page
******************************************************* 
*************************************************************** */
.shop-control-btn {
  text-align: center;
  width: 30px;
  height: 30px;
  line-height: 30px;
  font-size: 14px;
  border: 1px solid #e9e9e9;
  border-radius: 4px;
  color: transparent;
  background: #717171;
  background-clip: text;
}
.shop-control-btn.active {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  background-clip: text;
}

.shop-control-form {
  max-width: 85px;
  height: 30px;
  background: #fff;
  border: 1px solid #e9e9e9;
  border-radius: 4px;
  font-size: 14px;
  color: #717171;
  padding: 0 5px;
  outline: none;
}
.shop-control-form:focus {
  border-color: #23cc88;
}

.def-pagination {
  gap: 10px;
}

.pagination-btn {
  text-align: center;
  width: 50px;
  height: 50px;
  line-height: 50px;
  border: 1px solid #e9e9e9;
  border-radius: 5px;
  font-size: 16px;
  color: #717171;
  transition: 0.3s;
}
.pagination-btn:hover {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
}
.pagination-btn.active {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
}

.shop-card:hover .shop-card-overlay {
  top: 0;
  opacity: 1;
}

.shop-card-img {
  position: relative;
  overflow: hidden;
}

.shop-card-overlay {
  position: absolute;
  top: 50%;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 57, 79, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in;
  opacity: 0;
}

.shop-card-buy-now-btn {
  text-align: center;
  width: 65px;
  height: 65px;
  line-height: 60px;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  border-radius: 5px;
}

.shop-card-txt {
  text-align: center;
}

.shop-card-title {
  font-size: 20px;
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
}
.shop-card-title:hover {
  color: #23cc88;
}

.shop-card-rating {
  display: flex;
  justify-content: center;
}

.shop-card-star {
  font-size: 18px;
  line-height: 100%;
  color: #e9e9e9;
}
.shop-card-star.filled {
  color: #ffc000;
}

.shop-card-price {
  font-size: 16px;
  line-height: 100%;
  font-weight: 700;
  color: #717171;
}

.shop-card-discount {
  font-weight: 400;
  text-decoration: line-through;
}

.shop-details-share a i {
  font-size: 18px;
}

.shop-details-lg-img.slick-slide {
  border: 1px solid #e9e9e9;
  padding: 70px;
}

.pl-50 {
  padding-left: 50px;
}

/*
************
*************************
21. Shop Details
******************************************************* 
*************************************************************** */
.shop-slick-prev {
  position: absolute;
  top: 50%;
  left: -25px;
  transform: translateY(-50%);
  color: #798795;
  font-size: 20px;
  z-index: 5;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
.shop-slick-prev:hover, .shop-slick-prev:focus {
  color: #fff;
}

.shop-slick-next {
  position: absolute;
  top: 50%;
  right: -25px;
  transform: translateY(-50%);
  color: #798795;
  font-size: 20px;
  z-index: 5;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
.shop-slick-next:hover, .shop-slick-next:focus {
  color: #fff;
}

.shop-details-sm-img {
  border: 1px solid transparent;
  cursor: pointer;
}

.shop-details-sm-images .slick-slide {
  border-color: #e9e9e9;
  border-right: 0;
}
.shop-details-sm-images:hover .shop-slick-prev {
  left: -20px;
  opacity: 1;
  visibility: visible;
}
.shop-details-sm-images:hover .shop-slick-next {
  right: -20px;
  opacity: 1;
  visibility: visible;
}

.slick-arrow i {
  font-weight: 700;
}

.shop-details-product-title {
  font-size: 52px;
  line-height: 1.3;
  font-weight: 700;
  color: #00394f;
}

.shop-details-price {
  font-size: 24px;
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
  margin-bottom: 0;
}

.shop-details-discount {
  font-size: 14px;
  font-weight: 400;
  text-decoration: line-through;
  color: #717171;
}

.product-details-bottom-part {
  border: 1px solid #e9e9e9;
}

.product-details-btn {
  height: 50px;
  line-height: 50px;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  color: #00394f;
  background: #e9e9e9;
  padding: 0 30px;
  margin-bottom: 10px;
}
.product-details-btn.active {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
}
.product-details-btn:hover {
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
}

.product-information-list {
  font-size: 16px;
  line-height: 30px;
  color: #00394f;
  border-bottom: 1px solid #e9e9e9;
}
.product-information-list:last-child {
  border-bottom: 0;
}

.product-information-list-subject {
  min-width: 120px;
}

#inputStar {
  width: max-content;
  font-size: 14px;
  line-height: 100%;
}

.shop-details-sm-images .slick-list {
  padding-right: 1px !important;
}

.product-information-list {
  padding: 10px 0;
}
.product-information-list:last-child {
  padding-bottom: 0;
}
.product-information-list:first-child {
  padding-top: 0;
}

.nav.product-details-nav li:not(:last-child) {
  margin-right: 10px;
}

.shop-details-cart-buttons {
  gap: 30px;
}
.shop-details-cart-buttons .quantity {
  width: 170px;
}
.shop-details-cart-buttons .quantity-input {
  height: 60px;
  line-height: 60px;
  font-weight: 600;
  color: #00394f;
  font-size: 18px;
}
.shop-details-cart-buttons .quantity-nav {
  height: 100%;
  padding: 0 15px;
}
.shop-details-cart-buttons .quantity-btn {
  height: 60px;
  line-height: 60px;
  font-size: 14px;
}

.shop-details-category p strong {
  text-transform: uppercase;
  color: #00394f;
  margin-right: 5px;
}
.shop-details-category p a {
  display: inline-block;
  font-size: 16px;
  height: 30px;
  line-height: 30px;
  background-color: #e9e9e9;
  padding: 0 10px;
  color: #00394f;
  border-radius: 3px;
  margin-right: 5px;
  margin-bottom: 10px;
}
.shop-details-category p a:hover {
  background-color: #23cc88;
  color: #fff;
}
.shop-details-category > p {
  margin-bottom: 5px;
}

.product-description-title {
  font-size: 20px;
}

.availability {
  font-size: 24px;
}

.shop-details-sm-images .slick-list {
  border-right: 1px solid #e9e9e9;
}

/*
************
*************************
22. Checkout
******************************************************* 
*************************************************************** */
.panel {
  border: 1px solid #e9e9e9;
}

.panel-heading {
  height: 70px;
  border-bottom: 1px solid #e9e9e9;
}

.panel-heading-txt {
  font-size: 24px;
  line-height: 70px;
  font-weight: 700;
  color: #00394f;
}

.checkout-label {
  font-weight: 500;
  color: #00394f;
}

.checkout-form {
  height: 60px;
  width: 100%;
  background-color: transparent;
  color: #717171;
  font-size: 16px;
  padding: 0 25px;
  border: 1px solid #e9e9e9;
  border-radius: 0px;
}
.checkout-form:invalid {
  color: rgba(113, 113, 113, 0.75);
}
.checkout-form:invalid option {
  color: #717171;
}
.checkout-form:focus {
  background: transparent;
  border-color: #23cc88;
}

.panel-body .form-group .nice-select {
  line-height: 60px;
  margin-bottom: 20px;
  padding-right: 40px;
}

.panel-body .form-group .nice-select::after {
  border-bottom: 1px solid #999;
  border-right: 1px solid #999;
  height: 8px;
  right: 25px;
  width: 8px;
}
.panel-body .form-group .nice-select .option {
  line-height: 60px;
  min-height: 60px;
  outline: none;
  padding-left: 25px;
  padding-right: 25px;
}
.panel-body .form-group .nice-select .list {
  border-radius: 0;
  width: 100%;
}

.billing-details-title {
  border-bottom: 1px solid #e9e9e9;
}

.billing-details {
  border-bottom: 1px solid #e9e9e9;
}

.billing-details-list {
  min-width: 80px;
}

.kitba-checkout-form-main-space {
  padding: 40px;
}

/*
************
*************************
23. Cart
******************************************************* 
*************************************************************** */
.cart-table {
  border-color: #e9e9e9;
}
.cart-table thead tr {
  border-top: 0;
}
.cart-table tr > *:first-child {
  border-left: 0;
}
.cart-table tr > *:last-child {
  border-right: 0;
}
.cart-table th {
  text-align: center;
  padding: 20px 15px;
  font-weight: 700;
  text-transform: uppercase;
  color: #00394f;
  border-top: 0;
}
.cart-table td {
  vertical-align: middle;
  text-align: center;
  padding: 30px;
  font-size: 16px;
  color: #717171;
  white-space: nowrap;
}

.cart-txt {
  text-align: left;
  height: 100%;
}
.cart-txt > * {
  white-space: pre-wrap;
}

.cart-product-title {
  font-size: 18px;
  line-height: 1.2;
  font-weight: 700;
  color: #00394f;
}
.cart-product-title:hover {
  color: #23cc88;
}

.cart-action-btn {
  padding: 5px 0;
  font-size: 14px;
  line-height: 100%;
  color: #00394f;
}
.cart-action-btn:hover, .cart-action-btn:focus {
  color: #23cc88;
}

.quantity {
  position: relative;
  width: 90px;
}

.quantity-nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  border: 1px solid #e9e9e9;
  border-radius: 0px;
}

.quantity-btn {
  height: 40px;
  line-height: 40px;
  font-size: 12px;
  padding: 0 15px;
  color: #717171;
  cursor: pointer;
}

.quantity-input {
  text-align: center;
  width: 100%;
  height: 40px;
  font-size: 16px;
  padding: 0;
  color: #00394f;
  appearance: none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

.cart-table-bottom {
  border-top: 0;
}

.cart-label {
  font-size: 16px;
  line-height: 100%;
  color: #00394f;
  font-weight: 500;
}

.panel-heading .panel-heading-txt {
  padding: 0 30px;
}

.panel .panel-body {
  padding: 30px;
}

.text-grandtotal .f-right {
  float: right;
  color: #717171;
}
.text-grandtotal h4 {
  font-size: 20px;
}

.panel-heading-txt-check {
  font-size: 24px;
  line-height: 70px;
  font-weight: 700;
  color: #00394f;
}

@media only screen and (min-width: 992px) and (max-width: 1199px), (max-width: 767px) {
  .has-checkout-btn-space {
    padding: 0 22px;
  }
}

/*
************
*************************
24. Blog Page
******************************************************* 
*************************************************************** */
.single-blog {
  border: 1px solid #e9e9e9;
}
.single-blog:hover .blog-slider-btn {
  left: 40px;
  opacity: 1;
  visibility: visible;
}
.single-blog:hover .blog-slider-btn.btn-next {
  right: 40px;
  left: auto;
}

.blog-page-blog-title {
  font-size: 36px;
  line-height: 1.3;
  font-weight: 700;
  color: #00394f;
}
.blog-page-blog-title:hover, .blog-page-blog-title:focus {
  color: #23cc88;
}

.blog-slider-btn {
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  text-align: center;
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 25px;
  color: #fff;
  background: #23cc88;
  border-radius: 50%;
  z-index: 5;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.blog-slider-btn.btn-next {
  left: auto;
  right: 20px;
}
.blog-slider-btn:hover {
  color: #23cc88;
  background-color: #fff;
}

.blog-page-video {
  width: 100%;
  height: auto;
}

.blog-img-txt {
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
  color: #fff;
}

.blog-details-video {
  background: url(../images/blog-img-5.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
}

.blog-video-btn {
  width: 80px;
  height: 80px;
  text-align: center;
  line-height: 80px;
  background: #fff;
  color: red;
  font-size: 26px;
  position: relative;
  z-index: 2;
  display: inline-block;
  border-radius: 50%;
}
.blog-video-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 50%;
  animation: 1s video 1.5s linear infinite;
  z-index: -1;
}
.blog-video-btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 50%;
  animation: 1s video linear infinite;
  z-index: -1;
}
.blog-video-btn:hover {
  color: red;
}

@keyframes video {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}
.popular-post-title {
  color: #00394f;
}

.blog-sidebar-box {
  border-radius: 0;
  border: 1px solid #e9e9e9;
}

.blog-sidebar-title-box {
  border-bottom: 1px solid #e9e9e9;
  height: 70px;
}

.blog-sidebar-title {
  font-size: 24px;
  line-height: 70px;
  font-weight: 700;
  color: #00394f;
}

.blog-search-form {
  background: #fafafa;
  border-radius: 5px;
  overflow: hidden;
}

.blog-search {
  width: 100%;
  height: 50px;
  font-size: 16px;
}

.blog-sidebar-link {
  font-size: 16px;
  line-height: 100%;
  color: #717171;
}
.blog-sidebar-link:hover {
  color: #23cc88;
}

.popular-post:hover .popular-post-title {
  color: #23cc88;
}

.popular-post-txt {
  color: #717171;
}

.popular-post-date {
  font-size: 15px;
}

.popular-post-title {
  display: block;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 500;
  transition: 0.3s;
}

.popular-post-img {
  flex: 0 0 70px;
  max-width: 70px;
  min-height: 70px;
}
.popular-post-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ig-posts {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.ig-posts a {
  flex: 0 0 calc(33% - 0px);
  max-width: calc(33% - 10px);
}

.blog-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tag-btn {
  height: 40px;
  line-height: 38px;
  font-size: 16px;
  color: #717171;
  border: 1px solid #e9e9e9;
  border-radius: 0px;
  position: relative;
  z-index: 2;
  padding: 0 15px;
}
.tag-btn:after {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  border-radius: 3px;
  opacity: 0;
  transition: 0.3s;
  z-index: -1;
}
.tag-btn:hover {
  color: #fff;
}
.tag-btn:hover:after {
  opacity: 1;
}

.blog-details-bottom {
  border-top: 1px solid #e9e9e9;
}

.blog-tag-btn {
  height: 40px;
  line-height: 38px;
  font-size: 16px;
  color: #00394f;
  padding: 0 15px;
  border: 1px solid #e9e9e9;
  position: relative;
  z-index: 2;
}
.blog-tag-btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  opacity: 0;
  transition: 0.3s;
  z-index: -1;
}
.blog-tag-btn:hover {
  color: #fff;
}
.blog-tag-btn:hover:after {
  opacity: 1;
}

.blog-social-btn {
  text-align: center;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 14px;
  border-radius: 2px;
}
.blog-social-btn:hover {
  color: #fff;
  box-shadow: 0px 5px 20px 0px rgba(113, 113, 113, 0.3);
}

.blog-admin {
  box-shadow: 0px 0px 5px 0px rgba(113, 113, 113, 0.1);
  border: 1px solid #e9e9e9;
}

.admin-name {
  font-size: 20px;
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
  display: block;
}

.admin-social {
  font-size: 16px;
  line-height: 100%;
  display: flex;
  gap: 25px;
}

.blog-comment-panel {
  box-shadow: 0px 0px 5px 0px rgba(113, 113, 113, 0.1);
  border: 1px solid #e9e9e9;
}

.blog-panel-title {
  height: 70px;
  border-bottom: 1px solid #e9e9e9;
}
.blog-panel-title h3 {
  font-size: 24px;
  line-height: 70px;
  font-weight: 700;
  color: #00394f;
}

.blog-single-comment {
  border-bottom: 1px solid #e9e9e9;
}
.blog-single-comment:last-child {
  border-bottom: 0;
}

.blog-comment-avatar {
  width: 80px;
  height: 80px;
}

.blog-comment-txt {
  width: calc(100% - 100px);
}

.blog-comment-name {
  font-size: 18px;
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
}

.blog-comment-date {
  display: block;
  font-size: 16px;
  line-height: 100%;
}

.blog-comment-reply {
  line-height: 100%;
  font-weight: 700;
  color: #00394f;
  margin-bottom: 15px;
}
.blog-comment-reply i {
  display: inline-block;
  margin-right: 5px;
}
.blog-comment-reply:hover {
  color: #23cc88;
}

.blog-comment-textarea {
  height: 130px;
}

.blog-card .part-img {
  overflow: hidden;
  position: relative;
}

.blog-card .part-img img {
  transition: all 0.3s;
}

.blog-card:hover .part-img img {
  transform: scale(1.1);
}

span.lv-part-blog-calendar-date {
  position: absolute;
  left: 20px;
  font-size: 16px;
  top: 20px;
  background: #5CCD5C;
  color: #fff;
  line-height: 1;
  padding: 10px 13px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

span.lv-part-blog-calendar-date i {
  margin-right: 6px;
}

h4.footer-info-txt a:hover {
  color: #23cc88;
}

@media (min-width: 768px) and (max-width: 991px) {
  .blog-bottom-part.px-30 {
    padding: 0 22px;
  }
}
@media (max-width: 767px) {
  .header-right-txt {
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
  div div.banner-txt.p-180 {
    padding: 180px 0;
    padding-bottom: 120px;
  }
}
.blog-image a {
  display: block;
}

.single-blog-info span > a:hover {
  color: #23cc88;
}

.video-image {
  position: relative;
  z-index: 1;
}
.video-image .blog-video-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
}
.video-image .blog-video-btn i {
  transition: 0.3s;
}
.video-image .blog-video-btn:hover i {
  color: #23cc88;
}

.ig-posts a:hover img {
  filter: contrast(0.7);
}

.single-blog-txt {
  padding: 50px 40px;
}

.blog-page-blog-single-title {
  font-size: 42px;
  font-weight: 700;
  color: #00394f;
}

.blog-quote-txt-p {
  font-size: 28px;
  line-height: 1.3;
  font-weight: 400;
}

.blog-quote-txt span.d-block {
  font-size: 20px;
}

.blog-quote-wrapper {
  padding: 40px;
}

.px-40 {
  padding-left: 40px;
  padding-right: 40px;
}

.blog-nav-title {
  transition: 0.3s;
}
.blog-nav-title:hover {
  color: #23cc88;
}

.blog-admin {
  padding: 40px;
}

.pr-40 {
  padding-right: 40px;
}

.admin-name:hover {
  color: #23cc88;
}

.blog-details-bottom.d-flex {
  padding-top: 40px;
  padding-bottom: 20px;
}

.blog-quote-txt {
  position: relative;
  padding-left: 85px;
}

.blog-quote-txt .blog-quote-i {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 60px;
  color: #fff;
  line-height: 1;
}

/*
************
*************************
25. Contact Page
******************************************************* 
*************************************************************** */
.contact-page-title {
  font-size: 36px;
  font-weight: 700;
  color: #00394f;
}

.contact-form {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.contact-col-6 {
  width: calc(50% - 10px);
}

.contact-col {
  width: 100%;
}

.contact-textarea {
  height: 195px;
}

.contact-info-txt {
  font-size: 16px;
  color: #717171;
  border-bottom: 1px solid #205468;
  padding-bottom: 15px;
}
.contact-info-txt:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.contact-info-icon {
  display: flex;
  align-items: center;
  width: 25px;
}

.map {
  width: 100%;
  height: 520px;
}
.map iframe {
  width: 100%;
  height: 100%;
}

.contact-form input {
  height: 60px;
  width: 100%;
  background-color: transparent;
  color: #0e1133;
  font-size: 16px;
  padding: 0 25px;
  border: 1px solid #e9e9e9;
}
.contact-form input:focus {
  border-color: #23cc88;
}
.contact-form textarea {
  height: 200px;
  width: 100%;
  background-color: transparent;
  color: #0e1133;
  font-size: 16px;
  padding: 25px;
  border: 1px solid #e9e9e9;
}
.contact-form textarea:focus {
  border-color: #23cc88;
}
.contact-form textarea::placeholder {
  font-size: 16px;
}

.ml-40 {
  margin-left: 40px;
}

.ml-60 {
  margin-left: 60px;
}

.pt-190 {
  padding-top: 190px;
}

.contact-titletext {
  font-size: 39px;
  color: #00394F;
  line-height: 1.2;
  font-weight: 700;
}

.contact-subtext {
  font-size: 18px;
}

.contact-info-wrapper ul li {
  display: flex;
  align-items: center;
  color: #00394f;
  font-size: 20px;
}
.contact-info-wrapper ul li i {
  width: 65px;
  height: 65px;
  background-color: #F6F7F8;
  text-align: center;
  line-height: 65px;
  font-size: 30px;
  border-radius: 50%;
  margin-right: 25px;
  color: #23cc88;
  transition: 0.4s;
}
.contact-info-wrapper ul li a {
  transition: 0.3s;
}
.contact-info-wrapper ul li a:hover {
  color: #23cc88;
}
.contact-info-wrapper ul li:hover i {
  background-color: #23cc88;
  color: #fff;
}
.contact-info-wrapper ul li:not(:last-child) {
  margin-bottom: 25px;
  border-bottom: 1px solid #E7E9EE;
  padding-bottom: 25px;
}

.contact-info-content-text {
  display: block;
  font-size: 14px;
  text-transform: uppercase;
  color: #53545b;
}

@media (max-width: 991px) {
  .contact-info-wrapper.ml-60 {
    margin-left: 0;
  }
}

@media (max-width: 991px) {
  .contact-3.pt-120 {
    padding-top: 115px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .contact .heading-sub-txt br {
    display: none;
  }
}

/*
************
*************************
26. Shop
******************************************************* 
*************************************************************** */
.filter-widget-title {
  font-size: 20px;
  font-weight: 600;
  position: relative;
  margin-bottom: 0;
  cursor: pointer;
}

.filter-widget-title:before {
  position: absolute;
  content: "\f107";
  font-family: "Font Awesome 5 Pro";
  right: 0;
  top: 0;
  font-weight: 300;
  color: #00394f;
  transition: 0.3s;
  transform: rotate(180deg);
}

.child-content-hidden .filter-widget-title::before {
  transform: rotate(0deg);
}

.filter-widget-search input {
  width: 100%;
  height: 50px;
  border-radius: 5px;
  border: 1px solid #e9e9e9;
  padding: 0 10px;
  padding-right: 30px;
  outline: none;
}

.filter-widget-search button {
  position: absolute;
  right: 10px;
  top: 12px;
}

.filter-widget-search {
  position: relative;
}

.filter-widget .category-items {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.filter-widget .category-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.filter-widget .category-sizes {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.filter-widget .category-ratings {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.filter-widget .category-brands {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

input.check-box {
  border: 1px solid #e9e9e9;
  border-radius: 2px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 18px;
  height: 18px;
  cursor: pointer;
  position: relative;
  top: 5px;
  font-size: 15px;
  margin-right: 8px;
  background: #fbfbfb;
}

input.check-box[type=checkbox]:checked {
  border: none;
  background-color: #00394f;
  color: #fff;
}

input.check-box[type=checkbox]:checked::before {
  position: absolute;
  content: "\f00c";
  font-family: "Font Awesome 5 Pro";
  line-height: 16px;
  top: 0;
  left: 2px;
  font-size: 14px;
}

input.radio-box[type=radio] {
  border: 1px solid #e9e9e9;
  border-radius: 9px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 18px;
  height: 18px;
  cursor: pointer;
  position: relative;
  top: 5px;
  font-size: 15px;
  margin-right: 8px;
}

input.radio-box[type=radio]:checked::before {
  position: absolute;
  content: "";
  font-family: "Font Awesome 5 Pro";
  top: 0;
  left: 0;
  height: 18px;
  width: 18px;
  background: #00394f;
  border-radius: 50%;
}

.category-tags a {
  padding: 0 5px;
  flex-grow: 1;
  max-width: 110px;
}

.category-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.category-tags a:hover {
  color: #00394f;
}

.sidebar-widget-wrapper {
  position: sticky;
  top: 90px;
}

.product-filters {
  display: flex;
  flex-direction: column;
  gap: 35px;
  padding: 10px;
  background: #FFF;
}

.filter-widget {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.content-hidden {
  display: none;
}

.radio-star i.fas {
  color: #00394f;
}

.shop-main-wrapper-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.sorting-type {
  display: flex;
  align-items: center;
  gap: 10px;
}

.sorting-list {
  border: 1px solid #e9e9e9;
  padding: 0 15px;
  min-width: 130px;
}

.sorting-type span {
  color: #00394f;
}

.sorting-list span {
  color: #53545b;
}

.sorting-list:after {
  right: 15px;
}

.sort-type-filter {
  display: flex;
  align-items: center;
}

.action-item-filter {
  margin-left: 20px;
}

.shop-main-wrapper .products-wrapper > div {
  width: calc((100% - 90px) / 4);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .shop-main-wrapper .products-wrapper > div {
    width: calc((100% - 60px) / 3);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .shop-main-wrapper .products-wrapper > div {
    width: calc((100% - 30px) / 2);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .shop-main-wrapper .products-wrapper > div {
    width: calc((100% - 60px) / 3);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .shop-main-wrapper .products-wrapper > div {
    width: calc((100% - 30px) / 2);
  }
}
@media (max-width: 499px) {
  .shop-main-wrapper .products-wrapper > div {
    width: calc((100% - 0px) / 1);
  }
}
.swowing-list span {
  color: #00394f;
}

@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-5-column > div {
    width: calc((100% - 120px) / 5);
  }
}
@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-4-column > div {
    width: calc((100% - 90px) / 4);
  }
}
@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-3-column > div {
    width: calc((100% - 60px) / 3);
  }
}
@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-full-6-column > div {
    width: calc((100% - 150px) / 6);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .shop-main-wrapper .products-wrapper.products-full-6-column > div {
    width: calc((100% - 120px) / 5);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .shop-main-wrapper .products-wrapper.products-full-6-column > div {
    width: calc((100% - 90px) / 4);
  }
}
@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-full-5-column > div {
    width: calc((100% - 120px) / 5);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .shop-main-wrapper .products-wrapper.products-full-5-column > div {
    width: calc((100% - 90px) / 4);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .shop-main-wrapper .products-wrapper.products-full-5-column > div {
    width: calc((100% - 60px) / 3);
  }
}
@media (min-width: 1400px) {
  .shop-main-wrapper .products-wrapper.products-full-4-column > div {
    width: calc((100% - 90px) / 4);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .shop-main-wrapper .products-wrapper.products-full-4-column > div {
    width: calc((100% - 90px) / 4);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .shop-main-wrapper .products-wrapper.products-full-4-column > div {
    width: calc((100% - 60px) / 3);
  }
}
.product-details-nav .nav-tabs {
  display: flex;
  gap: 20px;
}

.product-details-nav .nav-tabs > li {
  width: calc((100% - 60px) / 4);
}

.product-details-nav .nav-tabs > li img {
  width: 100%;
}

.product-details-tab .tab-content .tab-pane img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  object-position: center;
}

.product-details-tab .tab-content {
  margin-bottom: 20px;
}

.product-quantity-cart {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.product-details-tab-wrapper .nav-tabs .nav-link:not(.active) {
  opacity: 0.8;
}

.product-side-info .product-name {
  font-size: 40px;
}

.product-side-info .product-price {
  font-size: 20px;
  color: #00394f;
  font-weight: 600;
}

.product-side-info .border-btn {
  height: 60px;
  line-height: 58px;
}

.product__details__tag a {
  padding: 0 10px;
  background: #777;
  height: 30px;
  display: inline-block;
  line-height: 30px;
  border-radius: 3px;
}

.product__details__tag a:hover {
  background: #23cc88;
  color: #FFF;
}

.available-sizes {
  display: flex;
  gap: 5px;
  margin-bottom: 25px;
}

.product-details-tab .tab-content .tab-pane {
  width: 100%;
  padding-top: 110%;
  position: relative;
}

.product-details-nav .nav-item {
  position: relative;
  border: 0;
  font-size: 16px;
  margin-right: 0px;
  font-weight: 600;
  color: #53545b;
}

.product-details-nav .nav-item.active {
  color: #00394f;
  font-weight: 600;
}

.product-details-nav .nav-item::before {
  position: absolute;
  content: "";
  width: 0%;
  height: 1px;
  background: #00394f;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s;
}

.product-details-nav .nav-item.active::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background: #00394f;
  bottom: 0;
  left: 0;
  right: 0;
}

.product_info-faq-area .nav-tabs {
  border-bottom: 1px solid #777;
}

.course-review-item {
  display: flex;
  align-items: normal;
}

.course-review-list {
  margin-left: 20px;
}

.course-review-list span {
  color: #00394f;
  margin-left: 10px;
  font-size: 14px;
  font-weight: 400;
}

.course-start-icon i {
  color: #23cc88;
  font-size: 13px;
}

.course-start-icon {
  margin-bottom: 10px;
}

.comment-title h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 5px;
}

.comment-title p {
  color: #454545;
}

.comment-rating span {
  font-size: 15px;
  color: #454545;
  margin-right: 5px;
}

.comment-rating ul li {
  display: inline-block;
}

.comment-rating ul li a {
  font-size: 14px;
  color: #23cc88;
}

.comment-rating ul {
  display: inline-block;
}

.comment-agree input {
  margin: 0;
  appearance: none;
  display: inline-block;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 2px solid #e9e9e9;
  border-radius: 2px;
  outline: none;
}

.comment-agree label {
  margin-left: 5px;
  font-size: 15px;
  color: #454545;
}

.comment-agree input::placeholder {
  color: #53545b;
  font-size: 14px;
  opacity: 1;
}

.comment-input input {
  height: 60px;
  width: 100%;
  background: #f8f8f9;
  border: none;
  padding: 15px 20px;
  border-radius: 4px;
  outline: 0;
}

.comment-input input::placeholder {
  color: #53545b;
  font-size: 14px;
  opacity: 1;
}

.comment-textarea {
  height: 170px;
  width: 100%;
  background: #f8f8f9;
  border: none;
  padding: 15px 20px;
  border-radius: 4px;
  resize: none;
  outline: 0;
}

.comment-textarea::placeholder {
  color: #53545b;
  font-size: 14px;
  opacity: 1;
}

.product-available-sizes span {
  border: 1px solid #e9e9e9;
  width: 30px;
  height: 30px;
  display: inline-block;
  text-align: center;
  border-radius: 3px;
}

.cart-area .table-content table {
  background: #ffffff;
  border-color: #edeef2;
  border-radius: 0;
  border-style: solid;
  border-width: 1px 0 0 1px;
  text-align: center;
  width: 100%;
  margin-bottom: 0;
}

.cart-area .table-content .product-quantity {
  float: none;
}

.cart-area .table-content table td.product-name {
  font-size: 16px;
  font-weight: 400;
  text-transform: capitalize;
}

.cart-area .table > :not(:last-child) > :last-child > * {
  border-bottom-color: #edeef2;
}

.cart-area .table-content table td.product-name a:hover {
  color: #00394f;
}

.cart-area .table-content table td {
  border-top: medium none;
  padding: 20px 10px;
  vertical-align: middle;
  font-size: 16px;
}

.cart-area .table-content table th,
.cart-area .table-content table td {
  border-bottom: 1px solid #edeef2;
  border-right: 1px solid #edeef2;
}

.cart-area .table td,
.cart-area .table th {
  border-top: 1px solid #edeef2;
}

.cart-area .table-content table td.product-subtotal {
  font-size: 16px;
}

.cart-area .table-content table td .cart-plus-minus {
  float: none;
  margin: 0 auto;
}

.cart-area .coupon-all {
  margin-top: 50px;
}

.cart-area .coupon {
  float: left;
  gap: 15px;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .cart-area .coupon {
    float: none;
  }
}
.cart-area #coupon_code {
  height: 50px;
  border: 1px solid #edeef2;
  padding: 0 15px;
  outline: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.cart-area #coupon_code:focus {
  border-color: #00394f;
}

.cart-area .coupon2 {
  float: right;
}

@media (max-width: 767px) {
  .cart-area .coupon2 {
    float: none;
    margin-top: 15px;
  }
}
.cart-area .cart-page-total {
  padding-top: 50px;
}

.cart-area .cart-page-total > h2 {
  font-size: 20px;
  margin-bottom: 20px;
  text-transform: capitalize;
}

.cart-area .cart-page-total > ul {
  border: 1px solid #edeef2;
}

.cart-area .cart-page-total > ul > li {
  list-style: none;
  font-size: 15px;
  color: #575757;
  padding: 14px 30px;
  border-bottom: 1px solid #edeef2;
  font-weight: 400;
}

.cart-area .cart-page-total ul > li > span {
  float: right;
}

.cart-area .cart-page-total li:last-child {
  border-bottom: 0;
}

.cart-area td.product-thumbnail img {
  width: 125px;
}

.cart-area .product-quantity-form {
  margin: auto;
  width: 122px;
  height: 58px;
  border: 1px solid #e9e9e9;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -ms-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}

.cart-area .product-quantity-form:hover {
  border-color: #00394f;
}

.cart-area .cart-plus, .cart-area .cart-minus {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 45px;
  height: 40px;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  background: transparent;
  border: none;
  outline: none;
}

.cart-area .cart-plus:hover, .cart-area .cart-minus:hover {
  cursor: pointer;
  color: #00394f;
  background: transparent;
}

.cart-area .cart-plus {
  left: auto;
  right: 0;
}

.cart-area .cart-input {
  height: 58px;
  width: 32px;
  text-align: center;
  font-size: 14px;
  border: none;
  display: inline-block;
  vertical-align: middle;
  margin: 0 -3px;
  padding-bottom: 4px;
  background: transparent;
}

.cart-area .cart-input:focus {
  outline: none;
}

.cart-area .coupon .fill-btn {
  height: 50px;
  line-height: 48px;
}

.cart-area .coupon2 .fill-btn {
  height: 50px;
  line-height: 48px;
}

.product-quantity a {
  white-space: nowrap;
}

.coupon-accordion h3 {
  background-color: #f6f6f6;
  border-top: 3px solid #00394f;
  font-size: 14px;
  font-weight: 400;
  margin: 0 0 25px;
  padding: 1em 2em 1em 3.5em;
  position: relative;
  width: auto;
}

.coupon-accordion h3::before {
  content: "\f07b";
  left: 15px;
  top: 13px;
  position: absolute;
  color: #575757;
  font-family: "Font Awesome 5 Pro";
  font-weight: 700;
}

.coupon-accordion span {
  color: #575757;
  cursor: pointer;
  transition: 0.3s;
  font-weight: 500;
}

.coupon-accordion span:hover,
p.lost-password a:hover {
  color: #00394f;
}

.coupon-content {
  border: 1px solid #e9e9e9;
  display: none;
  margin-bottom: 20px;
  padding: 30px;
}

.coupon-info p.coupon-text {
  margin-bottom: 15px;
}

.coupon-info p {
  margin-bottom: 0;
}

.coupon-info p.form-row-first label,
.coupon-info p.form-row-last label {
  display: block;
  color: #00394f;
}

.coupon-info p.form-row-first label span.required,
.coupon-info p.form-row-last label span.required {
  color: #00394f;
  font-weight: 700;
}

.coupon-info p.form-row-first input,
.coupon-info p.form-row-last input {
  border: 1px solid #e9e9e9;
  height: 60px;
  line-height: 60px;
  margin: 0 0 14px;
  max-width: 100%;
  padding: 0 0 0 10px;
  width: 100%;
  outline: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.coupon-info p.form-row-first input:focus,
.coupon-info p.form-row-last input:focus {
  border-color: #00394f;
}

.coupon-info p.form-row input[type=submit]:hover,
p.checkout-coupon input[type=submit]:hover {
  background: #3e976c none repeat scroll 0 0;
}

.coupon-info p.form-row input[type=checkbox] {
  position: relative;
  top: 2px;
}

.form-row > label {
  margin-top: 15px;
  margin-left: 15px;
  color: #575757;
}

.buttons-cart input,
.coupon input[type=submit],
.buttons-cart a,
.coupon-info p.form-row input[type=submit] {
  background: #252525 none repeat scroll 0 0;
  border: medium none;
  color: #fff;
  display: inline-block;
  float: left;
  font-size: 12px;
  font-weight: 700;
  height: 40px;
  line-height: 40px;
  margin-right: 15px;
  padding: 0 15px;
  text-transform: uppercase;
  transition: all 0.3s ease 0s;
}

p.lost-password {
  margin-top: 15px;
}

p.lost-password a {
  color: #6f6f6f;
}

p.checkout-coupon input[type=text] {
  height: 60px;
  line-height: 60px;
  padding: 0 20px;
  width: 100%;
  border: 1px solid #e9e9e9;
  margin-bottom: 15px;
  outline: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

p.checkout-coupon input[type=text]:focus {
  border-color: #e9e9e9;
}

.coupon-checkout-content {
  display: none;
}

.checkbox-form .ship-different-title {
  border-bottom: 1px solid #e9e9e9;
  margin: 0 0 20px;
  padding-bottom: 10px;
  width: 100%;
}

.country-select {
  margin-bottom: 30px;
  position: relative;
}

.country-select select {
  width: 100%;
  background-color: transparent;
  border: 1px solid #e9e9e9;
  padding: 0 10px;
  height: 50px;
}

.country-select label,
.checkout-form-list label {
  color: #00394f;
  display: block;
  margin: 0 0 5px;
}

.country-select label span.required,
.checkout-form-list label span.required {
  color: #00394f;
}

.country-select .nice-select {
  border: 1px solid #e9e9e9;
  height: 60px;
  line-height: 60px;
  padding-left: 20px;
  width: 100%;
  color: #575757;
  margin-bottom: 20px;
}

.country-select .nice-select .list {
  width: 100%;
}

.checkout-form-list {
  margin-bottom: 30px;
}

.checkout-form-list label {
  color: #00394f;
}

.checkout-form-list input[type=text],
.checkout-form-list input[type=password],
.checkout-form-list input[type=email] {
  background: #ffffff;
  border: 1px solid #e9e9e9;
  border-radius: 0;
  height: 60px;
  line-height: 60px;
  padding: 0 0 0 20px;
  width: 100%;
  outline: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.checkout-form-list input[type=text]:focus,
.checkout-form-list input[type=password]:focus,
.checkout-form-list input[type=email]:focus {
  border-color: #e9e9e9;
}

.checkout-form-list input[type=text]::-moz-placeholder,
.checkout-form-list input[type=password]::-moz-placeholder,
.checkout-form-list input[type=email]::-moz-placeholder {
  color: #575757;
  opacity: 1;
}

.checkout-form-list input[type=text]::placeholder,
.checkout-form-list input[type=password]::placeholder,
.checkout-form-list input[type=email]::placeholder {
  color: #575757;
  opacity: 1;
}

.checkout-form-list input[type=checkbox] {
  display: inline-block;
  margin-right: 10px;
  position: relative;
  top: 1px;
}

.create-acc label {
  color: #575757;
  display: inline-block;
}

.create-account {
  display: none;
}

.ship-different-title label {
  display: inline-block;
  margin-right: 10px;
}

.order-notes textarea {
  border: 1px solid #e9e9e9;
  height: 90px;
  padding: 15px;
  width: 100%;
  resize: none;
  padding-left: 20px;
  outline: none;
}

.order-notes textarea::-moz-placeholder {
  color: #575757;
  opacity: 1;
}

.order-notes textarea::placeholder {
  color: #575757;
  opacity: 1;
}

#ship-box-info {
  display: none;
}

.panel-group .panel {
  border-radius: 0;
}

.panel-default > .panel-heading {
  border-radius: 0;
}

.your-order {
  border: 2px solid #e9e9e9;
}

.your-order h3 {
  border-bottom: 1px solid #e9e9e9;
  font-size: 24px;
  margin: 0 0 20px;
  width: 100%;
  color: #00394f;
  font-weight: 700;
  line-height: 70px;
  padding: 0 40px;
}

.your-order-table {
  padding: 0 40px;
}
.your-order-table table {
  background: none;
  border: 0;
  width: 100%;
}

.payment-method {
  padding: 0 40px;
}

.your-order-table table th,
.your-order-table table td {
  border-bottom: 1px solid #e9e9e9;
  border-right: medium none;
  color: #575757;
  font-size: 16px;
  padding: 15px 0;
  text-align: left;
}

@media (max-width: 767px) {
  .your-order-table table th,
  .your-order-table table td {
    padding-right: 10px;
  }
}
.your-order-table table th {
  border-top: medium none;
  color: #00394f;
  font-weight: 500;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}

.panel-body > p {
  color: #222;
}

.your-order-table table .shipping ul li input {
  position: relative;
}

.your-order-table table .shipping ul li label {
  color: #575757;
}

.your-order-table table .shipping th {
  vertical-align: top;
}

.your-order-table table .order-total th {
  border-bottom: 0;
}

.your-order-table table .order-total td {
  border-bottom: medium none;
}

.your-order-table table tr.order-total td span {
  color: #00394f;
  font-size: 18px;
  font-weight: 500;
}

.payment-method {
  margin-top: 20px;
}

.payment-method .accordion-item:last-of-type {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.payment-method .accordion-item {
  background-color: #fff;
  border: 0;
  border-bottom: 1px solid #e9e9e9;
}

.payment-method .accordion-button {
  font-size: 18px;
  font-weight: 400;
  color: #00394f;
  padding: 23px 0;
  border: none;
}

.payment-method .accordion-button:focus {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.payment-method .accordion-button::after {
  position: absolute;
  content: "\eac8";
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-family: "IcoFont";
  font-size: 16px;
  font-weight: 600;
  margin-left: 0;
  background-image: none;
}

.payment-method .accordion-button:not(.collapsed) {
  color: #00394f;
  background-color: #FFF;
  box-shadow: none;
}

.payment-method .accordion-button:not(.collapsed)::after {
  content: "\eacb";
}

.payment-method .accordion-body {
  padding: 8px 0;
  padding-bottom: 40px;
}

.payment-method .accordion-collapse {
  border: none;
}

.panel-title > a {
  display: block;
}

.order-button-payment input {
  background: #232323 none repeat scroll 0 0;
  border: medium none;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  height: 40px;
  margin: 0px 0 0;
  padding: 0;
  text-transform: uppercase;
  transition: all 0.3s ease 0s;
  width: 100%;
}

.order-button-payment input:hover {
  background: #3e976c none repeat scroll 0 0;
}

.payment-method .btn-link {
  user-select: none;
  -moz-user-select: none;
  background: no-repeat;
  border: medium none;
  border-radius: 0;
  color: #444;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1;
  margin-bottom: 0;
  padding: 3px 10px;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.3s ease 0s;
  vertical-align: middle;
  white-space: nowrap;
  text-decoration: none;
}

.payment-method .card {
  background-color: #ffffff;
  border: 1px solid #e9e9e9;
  border-radius: 0;
  margin-bottom: 10px;
}

.payment-method .accordion .card:first-of-type {
  border: 1px solid #e9e9e9;
}

.card-header:first-child {
  border-radius: 0;
}

.payment-method .card-header {
  background-color: #ffffff;
  border-bottom: 1px solid #e9e9e9;
}

.order-button-payment button {
  width: 100%;
}

.product-details-img {
  margin-right: 50px;
}

@media (max-width: 575px) {
  .product-details-img {
    margin-right: 0;
  }
}
.product-details-img img {
  width: 100%;
}

.product-side-info .product-name {
  font-size: 38px;
}

@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .product-side-info .product-name {
    font-size: 28px;
  }
}
.product-side-info .product-price {
  font-size: 22px;
  font-weight: 600;
  color: #23cc88;
}

@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .product-side-info .product-price {
    font-size: 18px;
  }
}
.product-side-info p {
  margin-top: 30px;
  margin-bottom: 40px;
}

.product-quantity-cart {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.product-quantity-cart .cart-minus {
  height: 55px;
  width: 55px;
  border: none;
}

.product-quantity-form .cart-plus {
  height: 55px;
  width: 55px;
  border: none;
}

.product-quantity-cart .cart-input {
  height: 55px;
  width: 55px;
  border: none;
  text-align: center;
}

.product-quantity-cart .product-quantity-form {
  border: 1px solid #e9e9e9;
  border-radius: 4px;
}

/*range slider css start*/
#slider-range {
  position: relative;
  margin-bottom: 25px;
}

.ui-widget.ui-widget-content {
  border: none;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  background: #fff;
  border-radius: 50%;
  border: none;
  outline: none;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.004);
}

.ui-slider-horizontal {
  height: 6px;
}

.ui-widget-content {
  background: #f0f0f0;
}

.ui-widget-header {
  background: #222;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -5px;
}

.ui-slider .ui-slider-handle {
  height: 15px;
  width: 15px;
}

.ui-slider .ui-slider-handle:before {
  position: absolute;
  content: "";
  height: 6px;
  width: 6px;
  background: #222;
  left: 4.5px;
  top: 4.5px;
  border-radius: 50%;
}

.slider-range p {
  line-height: 1;
  margin-top: 25px;
  margin-bottom: 0;
}

.slider-range p label {
  font-size: 14px;
  font-weight: 400;
  color: #6b6b6b;
  margin-top: 7px;
}

.slider-range input {
  font-size: 14px;
  font-weight: 400;
  color: #6b6b6b;
  border: none;
  outline: none;
  background: none;
  margin-left: 10px;
  width: 100px;
}

.slider-active-2 .slider-pagination > * {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.slider-active-2 .slider-pagination > *:hover {
  background-color: #222;
}

.slider-active-2 .slider-pagination > *:hover i {
  color: #FFF;
}

.ui-widget.ui-widget-content {
  border: none;
}

.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  background: #23cc88;
  border-radius: 50%;
  border: none;
  outline: none;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.004);
}

.ui-slider-horizontal {
  height: 6px;
}

.ui-widget-content {
  background: #f0f0f0;
}

.ui-widget-header {
  background: #23cc88;
}

.amount-btn {
  color: #23cc88;
  cursor: pointer;
  font-size: 18px;
  font-weight: 600;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -5px;
}

.ui-slider .ui-slider-handle {
  height: 15px;
  width: 15px;
  -webkit-transition: all 0s linear 0s;
  -moz-transition: all 0s linear 0s;
  -ms-transition: all 0s linear 0s;
  -o-transition: all 0s linear 0s;
  transition: all 0s linear 0s;
}

.ui-slider .ui-slider-handle:before {
  position: absolute;
  content: "";
  height: 6px;
  width: 6px;
  background: #23cc88;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
}

.sidebar-action {
  background: #FFF;
  height: 100%;
  position: fixed;
  z-index: 99999;
  top: 0;
  width: 390px;
  padding: 30px 30px;
  transition: 0.6s;
  overflow-y: scroll;
}

@media (max-width: 575px) {
  .sidebar-action {
    width: 320px;
  }
}
.close-sidebar {
  background: #23cc88;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 30px;
  padding: 0 10px;
  border-radius: 4px;
  color: #FFF;
  position: absolute;
  right: 30px;
  top: 30px;
}

.sidebar-cart {
  right: -100%;
}

.sidebar-cart.cart-open {
  right: 0;
}

.sidebar-wishlist {
  right: -100%;
}

.sidebar-wishlist.wishlist-open {
  right: 0;
}

.sidebar-filter {
  right: -100%;
}

.sidebar-filter.filter-open {
  right: 0;
}

.sidebar-filter .product-filters {
  padding: 0px;
}

.sidebar-filter .filter-widget-title {
  font-size: 18px;
}

.sidebar-action-title {
  font-size: 20px;
  margin-bottom: 20px;
}

.sidebar-list-item {
  display: flex;
  gap: 20px;
}

.sidebar-action-btn {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.sidebar-action-btn a {
  width: 100%;
  flex-wrap: wrap;
  white-space: nowrap;
}

.sidebar-action-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.product-pricing span {
  font-size: 15px;
  font-weight: 500;
  color: #00394f;
  line-height: 1;
}

.sidebar-list-item {
  display: flex;
  gap: 20px;
  border-top: 1px solid #e9e9e9;
  padding-top: 20px;
  position: relative;
  padding-right: 20px;
}

.sidebar-list-item .product-image {
  min-width: 100px;
  height: 100px;
}

.sidebar-list-item .product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-list-item .product-desc {
  padding: 0px 0 0px;
}

.sidebar-list-item .remove-item {
  position: absolute;
  right: 0;
  top: 20px;
  color: #00394f;
}

.product-price-total {
  padding-top: 20px;
  border-top: 1px solid #e9e9e9;
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  padding-bottom: 20px;
}

.product-price-total span {
  color: #00394f;
  font-weight: 500;
}

.sidebar-action-btn a {
  flex-grow: 1;
  height: 60px;
  line-height: 58px;
}

.m-30 {
  margin-top: 30px;
  margin-bottom: 30px;
}

.mx-30 {
  margin-left: 30px;
  margin-right: 30px;
}

/*
************
*************************
27. Sign
******************************************************* 
*************************************************************** */
.signup-wrapper {
  box-shadow: 0 5px 29px rgba(0, 0, 0, 0.1);
}

.signup-wrapper-header {
  padding: 60px 40px;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  color: #fff;
}

.signup-wrapper-body {
  padding: 40px;
  padding-bottom: 50px;
}

.signup-body-subtitle {
  text-transform: uppercase;
  font-size: 14px;
}

.signup-body-title {
  font-size: 36px;
  color: #00394f;
  font-weight: 700;
  line-height: 1.2;
}

.signtext a {
  color: #23cc88;
  display: inline-block;
}
.signtext a:hover {
  color: #00394f;
}

.sign-single-input label {
  font-size: 18px;
  color: #00394f;
  margin-bottom: 10px;
}

.signup-title {
  font-size: 52px;
  text-transform: uppercase;
}

.sign-input {
  position: relative;
  z-index: 1;
}
.sign-input input {
  width: 100%;
  height: 60px;
  border: 1px solid #e9e9e9;
  padding: 0 55px;
  padding-right: 25px;
}
.sign-input input:focus {
  border-color: #23cc88;
}
.sign-input i {
  position: absolute;
  left: 25px;
  top: 50%;
  transform: translateY(-50%);
  color: #23cc88;
}

.gbutton {
  border: 1px solid #e9e9e9;
  height: 60px;
  line-height: 60px;
  color: #23cc88;
  transition: all 0.3s;
  height: 60px;
  display: inline-block;
  padding: 0 25px;
  position: relative;
  z-index: 1;
  min-width: 290px;
  text-align: start;
  text-transform: uppercase;
}
.gbutton i {
  font-size: 30px;
  display: inline-block;
  transform: translateY(3px);
  margin-right: 35px;
  color: #fff;
}
.gbutton:hover {
  color: #fff;
}
.gbutton:hover:before {
  width: 100%;
  border-radius: 0;
}
.gbutton:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 75px;
  height: 100%;
  z-index: -1;
  background: linear-gradient(145deg, #8ecf35, #23cc88);
  content: "";
  border-radius: 0 30px 30px 0;
  transition: all 0.3s;
}

.sign-buttons .def-btn {
  padding: 0 60px;
}

/*
************
*************************
28. Error
******************************************************* 
*************************************************************** */
.error-title {
  font-size: 52px;
  color: #00394f;
  margin-bottom: 15px;
  font-weight: 600;
  line-height: 1.2;
}

.dark_mode nav.right_menu_togle {
  background: #f7f7f7;
}

.cinkes-dark-light-view-box {
  position: fixed;
  left: 25px;
  top: 50%;
  transition: all 0.3s;
  transform: translateY(-50%);
  width: 36px;
  height: 70px;
  border-radius: 18px;
  z-index: 999;
  background-color: #111;
  cursor: pointer;
}
.cinkes-dark-light-view-box.has-clicked {
  background: #23cc88;
}
.cinkes-dark-light-view-box .cinkes-dark-light-view-toogle-dot {
  position: absolute;
  width: 36px;
  height: 36px;
  transition: all 0.3s;
  background: #fff;
  border-radius: 50%;
  left: 0;
  top: 0;
}
.cinkes-dark-light-view-box .cinkes-dark-light-view-toogle-dot.pos-bottom {
  top: 34px;
}
.cinkes-dark-light-view-box::before {
  position: absolute;
  left: 50%;
  top: 5px;
  font-family: "IcoFont";
  content: "\ef9e";
  color: #fff;
  transform: translateX(-50%);
}
.cinkes-dark-light-view-box::after {
  position: absolute;
  left: 50%;
  bottom: 5px;
  font-family: "IcoFont";
  content: "\ee81";
  color: #fff;
  transform: translateX(-50%);
}

/* Dark Mode CSS */
.dark_mode .feature {
  background-color: #f7f7f7;
}
.dark_mode .class {
  background-color: #f7f7f7;
}
.dark_mode .class-card {
  background-color: #fff;
}
.dark_mode .our-staff {
  background-color: #f7f7f7;
}
.dark_mode .app-download {
  background-color: #f7f7f7;
}
.dark_mode .gallery {
  background-color: #f7f7f7;
}
.dark_mode .latest-news {
  background-color: #f7f7f7;
}
.dark_mode .blog-card {
  background-color: #fff;
}
.dark_mode .partner {
  background-color: #f7f7f7;
}
.dark_mode .feature {
  background-color: #f7f7f7;
}
.dark_mode .grey-bg-2 {
  background-color: #fff;
}
.dark_mode .counter-2 {
  background-color: #f7f7f7;
}
.dark_mode .contact {
  background-color: #f7f7f7;
}
.dark_mode .blog {
  background-color: #f7f7f7;
}
.dark_mode .single-blog {
  background-color: #fff;
}
.dark_mode .blog-sidebar-box {
  background-color: #fff;
}
.dark_mode .blog-admin {
  background-color: #fff;
}
.dark_mode .blog-comment-panel {
  background-color: #fff;
}
.dark_mode .cart {
  background-color: #f7f7f7;
}
.dark_mode .table-responsive {
  background-color: #fff;
}
.dark_mode .cart-table-bottom {
  background-color: #fff;
}
.dark_mode .panel {
  background-color: #fff;
}
.dark_mode .checkout {
  background-color: #f7f7f7;
}
.dark_mode .your-order {
  background-color: #fff;
}
.dark_mode .sidebar-box {
  background-color: #fff;
}
.dark_mode .class-comment {
  background-color: #fff;
}
.dark_mode .contact-form input {
  background-color: #fff;
}
.dark_mode .contact-form textarea {
  background-color: #fff;
}
.dark_mode .course__sort-inner .nice-select {
  background-color: #f7f7f7;
}
.dark_mode .contact-3 {
  background-color: #f7f7f7;
}
.dark_mode .contact-info-wrapper ul li i {
  background-color: #fff;
}
.dark_mode .contact-info-wrapper ul li:hover i {
  color: #23cc88;
}
.dark_mode .contact-info-wrapper ul li i:hover {
  background-color: #23cc88;
}
.dark_mode .neterror {
  background-color: #f7f7f7;
}
.dark_mode .error {
  background-color: #f7f7f7;
}
.dark_mode .shop {
  background-color: #f7f7f7;
}
.dark_mode .releted-product {
  background-color: #f7f7f7;
}
.dark_mode .shop-card-overlay {
  background: rgba(255, 255, 255, 0.7);
}
.dark_mode .shop-details-lg-img {
  background-color: #fff;
}
.dark_mode .product-details-bottom-part {
  background-color: #fff;
}
.dark_mode .shop-details-sm-images .slick-slide {
  background-color: #fff;
}
.dark_mode .shop-details-cart-buttons .quantity {
  background-color: #fff;
}
.dark_mode .signup-area {
  background-color: #f7f7f7;
}
.dark_mode .signup-area .signup-wrapper {
  background-color: #fff;
}

/*
************
*************************
29. Ajax
******************************************************* 
*************************************************************** */
.hidden {
  visibility: hidden;
  height: 0px;
  visibility: hidden;
  opacity: 0;
}

.simple-pagination ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}

.simple-pagination li {
  display: inline-block;
}
.simple-pagination li:not(:last-child) {
  margin-right: 10px;
}

.simple-pagination li a,
.simple-pagination li span {
  background: transparent;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 38px;
  padding: 0;
  text-align: center;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  font-weight: 500;
  font-size: 16px;
  border: 2px solid #f6f6f6;
  color: #00394f;
}
.simple-pagination li a:hover,
.simple-pagination li span:hover {
  color: #fff;
  border-color: transparent;
}
.simple-pagination li a:focus, .simple-pagination li a:focus-within,
.simple-pagination li span:focus,
.simple-pagination li span:focus-within {
  box-shadow: none;
}

.simple-pagination li a {
  transform: translateY(-8px);
}

.simple-pagination .current {
  color: #FFF;
  background-color: #23cc88;
  border-color: #23cc88;
}

.simple-pagination .prev.current,
.simple-pagination .next.current {
  background: #23cc88;
  opacity: 0.3;
}

.pagination-container ul li a {
  box-shadow: 0;
}

.pagination-container ul li a:hover {
  background: #23cc88;
}

/*
************
*************************
30. Breakpoints
******************************************************* 
*************************************************************** */
/*col-lg*/
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .part-txt.pl-70 {
    padding-left: 40px;
  }
  .blog-page-blog-title {
    font-size: 32px;
  }
  .blog-page-blog-single-title {
    font-size: 38px;
  }
  .blog-quote-txt-p {
    font-size: 26px;
  }
  .contact-info-wrapper.ml-60 {
    margin-left: 40px;
  }
}
/*laptop*/
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  /* ====================================================
  global style
  ==================================================== */
  .counter-box-2.mt-120 {
    margin-top: 0;
  }
  .sidebar-class-title {
    font-size: 16px;
  }
  .class-thumb.mr-20 {
    margin-right: 15px;
  }
  .shop-details-txt.pl-50 {
    padding-left: 30px;
  }
  .blog-sidebar-title {
    font-size: 22px;
  }
  .navbar-nav li {
    margin: 0 18px;
  }
  .contact-info-wrapper.ml-60 {
    margin-left: 30px;
  }
  .blog-page-blog-single-title {
    font-size: 34px;
  }
  .blog-quote-txt-p {
    font-size: 24px;
  }
  .popular-post-title {
    font-size: 16px;
  }
  .popular-post-date {
    font-size: 14px;
  }
  .blog-content-wrapper.mr-30 {
    margin-right: 20px;
  }
  .part-txt.pl-70 {
    padding-left: 30px;
  }
  .class-details-title {
    font-size: 42px;
  }
  .course-sidebar .class-info .box.text-center {
    flex-direction: column;
  }
  .footer-card-title {
    font-size: 24px;
  }
  .section-heading.mb-70 {
    margin-bottom: 60px;
  }
  .bottom-footer-social.mr-30 {
    margin-right: 15px;
  }
  .facility-card-txt.px-50 {
    padding-left: 40px;
    padding-right: 40px;
  }
  .kidba-features-wrapper.pl-60 {
    padding-left: 30px;
  }
  /* ======================
  Header section Two (2)
  ====================== */
  .nav-cart.mr-75 {
    margin-right: 25px;
  }
  /* ======================
  Banner section
  ====================== */
  .banner.pt-150 {
    padding-top: 140px;
  }
  .banner-subtitle.mb-7 {
    margin-bottom: 8px;
  }
  .banner-title {
    font-size: 70px;
    line-height: 80px;
  }
  .banner-title.mb-7 {
    margin-bottom: 8px;
  }
  /* ======================
  Banner section Two (2)
  ====================== */
  .banner-subtitle-2.mb-7 {
    margin-bottom: 8px;
  }
  .banner-title-2.mb-7 {
    margin-bottom: 8px;
  }
  .banner-txt.p-200 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  /* ======================
  Feature section
  ====================== */
  .r-gap-70 {
    row-gap: 30px;
  }
  .feature-part-icon {
    width: 70px;
    height: 70px;
  }
  .feature-part-icon.mr-20 {
    margin-right: 15px;
  }
  .feature-txt {
    width: calc(100% - 85px);
  }
  .divider.m-30 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  /* ======================
  Feature section Two (2)
  ====================== */
  .feature-title {
    font-size: 130px;
  }
  .feature-title.mt--16 {
    margin-top: -12px;
  }
  .feature-sub-title-2.mt-1 {
    margin-top: 2px !important;
  }
  /* ======================
  CTA section
  ====================== */
  .cta-title {
    font-size: 45px;
  }
  .cta-title.mt--14 {
    margin-top: -11px;
  }
  /* ======================
  App Download section Two (2)
  ====================== */
  .app-download-title {
    font-size: 45px;
    line-height: 60px;
  }
  .app-download-title.mt--14 {
    margin-top: -11px;
  }
  .app-download-title.mb-40 {
    margin-bottom: 33px;
  }
  /* ======================
  Blog section
  ====================== */
  .blog-card-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-card-txt.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-bottom-part.px-20 {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .gallery-title {
    font-size: 24px;
  }
  /* ======================
  Footer section
  ====================== */
  .footer-single-info.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer-info-icon-wrap {
    height: 35px;
  }
  .footer-info-icon-wrap.mr-20 {
    margin-right: 15px;
  }
  .footer-info-txt {
    font-size: 18px;
  }
  .footer-card.pr-30 {
    padding-right: 0;
  }
  .bottom-footer-social.mr-40 {
    margin-right: 20px;
  }
  .footer-social-icon {
    width: 35px;
    height: 35px;
    line-height: 35px;
  }
  .footer-social-icon.mr-15 {
    margin-right: 5px;
  }
  /* ====================================================
  About page
  ==================================================== */
  .feature-card.px-20 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* ====================================================
  Class Details page
  ==================================================== */
  .class-details-video.p-125 {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  /* ====================================================
  Cart page
  ==================================================== */
  .panel-heading.px-60 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .panel-body.p-50 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .panel-body.px-50 {
    padding-left: 30px;
    padding-right: 30px;
  }
  /* ====================================================
  Blog page
  ==================================================== */
  .blog-page-blog-title {
    font-size: 32px;
  }
}
/*as col-md*/
/*tablet device*/
@media only screen and (min-width: 768px) and (max-width: 991px) {
  /* ====================================================
  global style
  ==================================================== */
  .part-img.pl-30 {
    padding-left: 10px;
  }
  .shop-details-txt.pl-50 {
    padding-left: 0;
  }
  .blog-panel-title h3 {
    font-size: 24px;
  }
  .single-content-wrapper.ml-30 {
    margin-left: 0;
  }
  .blog-page-blog-single-title {
    font-size: 36px;
  }
  .ig-posts a {
    flex: 0 0 calc(20% - 0px);
    max-width: calc(20% - 12px);
  }
  .blog-content-wrapper.mr-30 {
    margin-right: 0;
  }
  .part-txt.pl-70 {
    padding-left: 0;
  }
  .uptomd-padding-20 {
    padding-top: 20px;
  }
  .uptomd-padding-30 {
    padding-top: 30px;
  }
  .uptomd-padding-50 {
    padding-top: 50px;
  }
  .single-content-wrapper.ml-20 {
    margin-left: 0;
  }
  .part-txt.part-text-list {
    padding: 40px;
  }
  .part-txt.part-text-list .box.box-1.text-center {
    flex-direction: row;
  }
  .pl-30.contact-wrapp {
    padding-left: 0;
  }
  .contact-info.kitba-contact {
    margin-bottom: 20px;
  }
  .kidba-features-wrapper.pl-60 {
    padding-left: 10px;
  }
  .single-content-wrapper.mr-20 {
    margin-right: 0;
  }
  .section-title {
    font-size: 40px;
  }
  .class-title {
    font-size: 24px;
  }
  .footer-single-info {
    justify-content: center;
  }
  .footer-single-info.p-35 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .footer-single-info.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer-single-info.border-l {
    border-top: 1px solid #804BFF;
    border-left: 0;
  }
  .footer-info-icon-wrap {
    height: 40px;
  }
  .footer-info-txt-area {
    width: max-content;
  }
  /* ======================
  Header section
  ====================== */
  .logo {
    width: 100px;
  }
  .navbar-toggler {
    width: 30px;
    height: 25px;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
    color: #fff;
    padding: 0;
    font-size: 16px;
  }
  .navbar-toggler:focus {
    box-shadow: 0 0;
  }
  .top-left {
    padding: 5px 0;
  }
  .top-left .d-sm-flex {
    flex-wrap: wrap;
    justify-content: center;
  }
  .header-txt {
    padding: 0 10px;
    border: 0;
    height: 30px;
    line-height: 30px;
    text-align: center;
    margin-bottom: 10px;
  }
  .header-right-txt {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
  .bottom-header {
    background: #fff;
    padding: 30px 0;
  }
  .nav-link:after {
    display: none;
  }
  .dropdown-menu {
    display: none;
  }
  .navbar-nav.mb-2 {
    margin-bottom: 0 !important;
  }
  .navbar-nav.p-40 {
    padding-top: 10px;
    padding-bottom: 0;
  }
  .nav-item.pr-20, .nav-item.px-20, .nav-item.pl-20 {
    padding: 0 !important;
  }
  .nav-link {
    height: 35px;
    line-height: 35px;
  }
  /* ======================
  Header section Two(2)
  ====================== */
  .header-2 {
    background: #fff;
  }
  .header-2.pt-35 {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  /* ======================
  Banner section
  ====================== */
  .banner.pt-150 {
    padding-top: 115px;
  }
  .banner-txt.p-180 {
    padding: 220px 0;
    padding-bottom: 130px;
  }
  .banner-subtitle {
    font-size: 24px;
  }
  .banner-subtitle.mt--9 {
    margin-top: -8px;
  }
  .banner-subtitle.mb-7 {
    margin-bottom: 9px;
  }
  .banner-title {
    font-size: 70px;
  }
  .banner-title.mb-7 {
    margin-bottom: 9px;
  }
  .btn-box {
    gap: 15px;
  }
  /* ======================
  Banner section two (2)
  ====================== */
  .banner-2.pt-90 {
    padding-top: 55px;
  }
  .banner-subtitle-2.mt--9 {
    margin-top: -8px;
  }
  .banner-subtitle-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-title-2 {
    font-size: 75px;
  }
  .banner-title-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-paragraph-2.mb-11 {
    margin-bottom: 7px;
  }
  /* ======================
  Banner section for inner pages (2)
  ====================== */
  .banner-txt.p-200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .breadcrumb-title {
    font-size: 60px;
  }
  .breadcrumb-title.mt--23 {
    margin-top: -7px;
  }
  .breadcrumb-title.mb-0 {
    margin-bottom: 11px !important;
  }
  /* ======================
  Feature section
  ====================== */
  .r-gap-70 {
    row-gap: 24px;
  }
  .feature-part-icon {
    width: 70px;
    height: 70px;
  }
  .feature-txt {
    width: calc(100% - 90px);
  }
  .feature-sub-title.mt--7 {
    margin-top: -6px;
  }
  .divider.m-30 {
    margin: 15px 0;
  }
  .feature-txt p.mt--6 {
    margin-top: -5px;
  }
  .feature-img {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .feature-img img {
    max-height: 600px;
    width: 100%;
    object-fit: cover;
  }
  /* ======================
  Feature section Two (2)
  ====================== */
  .feature-title {
    font-size: 100px;
    line-height: 1.2;
  }
  .feature-title.mt--16 {
    margin-top: -6px;
  }
  .feature-title.mb-14 {
    margin-bottom: 20px;
  }
  .feature-sub-title-2 {
    font-size: 45px;
  }
  .feature-box.mb-70 {
    margin-bottom: 25px;
  }
  /* ======================
  Cta section
  ====================== */
  .cta-title {
    font-size: 40px;
  }
  .cta-title.mt--14 {
    margin-top: -9px;
  }
  /* ======================
  About section
  ====================== */
  .about-title {
    font-size: 40px;
  }
  .about-list span.mr-30 {
    margin-right: 15px;
  }
  .btn-box.pt-40 {
    padding-top: 30px;
  }
  /* ======================
  Popular Class section
  ====================== */
  .amount {
    font-size: 16px;
  }
  /* ======================
  Counter Class section
  ====================== */
  .counter-img {
    width: 150px;
  }
  .counter-img.mb--60 {
    margin-bottom: -45px;
  }
  .counter-txt {
    font-size: 40px;
  }
  .counter-txt.mb-20 {
    margin-bottom: 10px;
  }
  .counter-box-2 .counter-txt {
    font-size: 52px;
  }
  /* ======================
  Counter section Two(2)
  ====================== */
  .counter-box-2.mt-120 {
    margin-top: 0;
  }
  /* ======================
  Staff section
  ====================== */
  .staff-name {
    font-size: 24px;
  }
  .staff-name.mb-0 {
    margin-bottom: 2px !important;
  }
  /* ======================
  App Download section
  ====================== */
  .app-download-btn {
    max-width: 115px;
  }
  .app-download-btn.mr-75 {
    margin-right: 25px;
  }
  /* ======================
  App Download section Two(2)
  ====================== */
  .app-download-title {
    font-size: 30px;
    line-height: 40px;
  }
  .app-download-title.mt--14 {
    margin-top: -8px;
  }
  .app-download-title.mb-40 {
    margin-bottom: 18px;
  }
  .app-download-txt.mb-60 {
    margin-bottom: 30px;
  }
  /* ======================
  Facility section
  ====================== */
  .facility-card-txt.px-50 {
    padding-left: 35px;
    padding-right: 35px;
  }
  .facility-icon {
    width: 50px;
    height: 50px;
  }
  .facility-icon img {
    width: 60%;
  }
  .facility-title {
    font-size: 24px;
  }
  /* ======================
  Gallery section
  ====================== */
  .control-panel.mb-30 {
    margin-bottom: 20px;
  }
  .controls {
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 25px;
  }
  .gallery-filter-btn {
    font-size: 16px;
  }
  .gallery-filter-btn.ml-20 {
    margin-left: 0;
  }
  .gallery-filter-btn.mr-20 {
    margin-right: 0;
  }
  .gallery-filter-btn.mx-20 {
    margin-left: 0;
    margin-right: 0;
  }
  .gallery-title {
    font-size: 20px;
  }
  .gallery-title.mt--3 {
    margin-top: -1px;
  }
  .gallery-title.mb-10 {
    margin-bottom: 12px;
  }
  .gallery-sub-title.mb--2 {
    margin-bottom: -3px;
  }
  /* ======================
  Testimonial section
  ====================== */
  .quote-icon {
    width: 80px;
  }
  .quote-icon.mb-30 {
    margin-bottom: 25px;
  }
  .feedback-title {
    font-size: 29px;
  }
  .feedback-txt {
    font-size: 16px;
  }
  .client-name {
    font-size: 16px;
  }
  .divider.mb-30 {
    margin-bottom: 25px;
  }
  /* ======================
  Blog section
  ====================== */
  .blog-card-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-card-txt.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-title {
    font-size: 24px;
  }
  .blog-title.mt--2 {
    margin-top: -6px;
  }
  .blog-bottom-part.px-20 {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  /* ======================
  Footer section
  ====================== */
  .footer-single-info {
    justify-content: center;
  }
  .footer-single-info.p-35 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .footer-single-info.px-30 {
    padding-left: 10px;
    padding-right: 10px;
  }
  .footer-info-icon-wrap {
    height: 45px;
  }
  .footer-info-icon-wrap img {
    height: auto;
    max-height: 100%;
  }
  .footer-card.pr-30 {
    padding-right: 0;
  }
  .footer-card-title {
    font-size: 24px;
  }
  .footer-card-title.pb-27 {
    padding-bottom: 18px;
  }
  .footer-card-title.mb-25 {
    margin-bottom: 20px;
  }
  .footer-card-txt.mt--6 {
    margin-top: -5px;
  }
  .footer-follow-dialogue.mb-23 {
    margin-bottom: 18px;
  }
  .footer-links.mt--17 {
    margin-top: -9px;
  }
  .footer-links.mb--18 {
    margin-bottom: -11px;
  }
  .footer-link {
    font-size: 16px;
    line-height: 30px;
  }
  .bottom-footer p {
    text-align: center;
    margin-top: 20px;
  }
  .footer-social-box {
    flex-wrap: wrap;
    justify-content: center !important;
    gap: 10px;
  }
  .bottom-footer-social {
    height: 30px;
    font-size: 16px;
  }
  .bottom-footer-social.mr-40 {
    margin-right: 0;
  }
  .footer-social-icon {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  .footer-social-icon.mr-15 {
    margin-right: 5px;
  }
  /* ====================================================
  About page
  ==================================================== */
  .feature-icon {
    width: 80px;
    height: 80px;
    padding: 20px;
  }
  .feature-icon.mb-50 {
    margin-bottom: 25px;
  }
  .feature-sub-title.mb-25 {
    margin-bottom: 15px;
  }
  .feature-txt-2.mt--6 {
    margin-top: -10px;
  }
  /* ====================================================
  Class Details page
  ==================================================== */
  .class {
    overflow: hidden;
  }
  .class-details-title {
    font-size: 40px;
  }
  .class-details-teacher-name.mb-11 {
    margin-bottom: 14px;
  }
  .about-class-box {
    flex-direction: column !important;
  }
  .about-class-box.mb-20 {
    margin-bottom: 9px;
  }
  .about-class-box.r-gap-30 {
    row-gap: 0px;
  }
  .class-details-info.mb-30 {
    margin-bottom: 25px;
  }
  .class-details-txt.mt--9 {
    margin-top: -7px;
  }
  .class-details-txt.mb-25 {
    margin-bottom: 15px;
  }
  .class-details-video.p-125 {
    padding-top: 105px;
    padding-bottom: 105px;
  }
  .class-details-video.mb-35 {
    margin-bottom: 25px;
  }
  .class-comment-title.mb-21 {
    margin-bottom: 13px;
  }
  .class-comment.ml-100 {
    margin-left: 30px;
  }
  .class-comment-txt {
    width: 100%;
  }
  .class-comment-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .class-comment-txt.px-60 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sidebar-class-txt {
    width: calc(100% - 70px);
  }
  /* ====================================================
  Shop page
  ==================================================== */
  .shop.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .shop-page-top-bar.mb-50 {
    margin-bottom: 30px;
  }
  .shop-control.mr-30 {
    margin-right: 10px;
  }
  .shop-control-txt {
    font-size: 12px;
  }
  .shop-control-txt.mr-10 {
    margin-right: 5px;
  }
  .shop-control-btn {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
  }
  .shop-control-form {
    height: 25px;
  }
  /* ====================================================
  Shop Details page
  ==================================================== */
  .shop-details-product-title {
    font-size: 40px;
  }
  /* ====================================================
  Cart page
  ==================================================== */
  .cart-table {
    min-width: max-content;
  }
  /* ====================================================
  Blog page
  ==================================================== */
  .blog-image.p-70 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .blog-image.px-50 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-image.mb-35 {
    margin-bottom: 30px;
  }
  .blog-image.d-flex {
    flex-direction: column;
  }
  .blog-image.p-35 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-image.px-35 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-page-blog-title {
    font-size: 32px;
  }
  .blog-img-txt {
    font-size: 18px;
    line-height: 28px;
  }
  .blog-sidebar-title {
    font-size: 24px;
  }
  .popular-post-img.ml-25 {
    margin-left: 15px;
  }
  /* ====================================================
  Blog Details page
  ==================================================== */
  .blog-quote-icon {
    width: 45px;
  }
  .blog-quote-icon.mr-15 {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .blog-quote-txt {
    width: 100%;
  }
  .blog-quote-txt-p {
    font-size: 25px;
  }
  .blog-details-video.p-145 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .blog-nav.px-30 {
    padding-left: 15px;
    padding-right: 15px;
  }
  .blog-single-comment {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .blog-single-comment.pr-30 {
    padding-right: 20px;
  }
  .blog-comment-avatar.mr-20 {
    margin-right: 0;
    margin-bottom: 25px;
  }
  .blog-comment-txt {
    width: 100%;
  }
  .blog-comment-textarea {
    height: 100px;
  }
  /* ====================================================
  Contact page
  ==================================================== */
  .contact-3.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .contact-page-title {
    font-size: 20px;
  }
  .contact-page-title.mt--1 {
    margin-top: -2px;
  }
  .contact-page-title.mb-26 {
    margin-bottom: 27px;
  }
  .contact-textarea {
    height: 120px;
  }
  .contact-info-icon {
    width: 16px;
  }
  .contact-info-icon img {
    width: 70%;
  }
  .map {
    height: 300px;
  }
}
/*as col-sm*/
/*large mobile device*/
@media only screen and (min-width: 576px) and (max-width: 767px) {
  /* ====================================================
  global style
  ==================================================== */
  .clients {
    margin-bottom: 40px;
  }
  .admin-name {
    font-size: 20px;
  }
  .contact-titletext {
    font-size: 36px;
  }
  .blog-page-blog-single-title {
    font-size: 28px;
  }
  .ig-posts a {
    flex: 0 0 calc(20% - 0px);
    max-width: calc(20% - 12px);
  }
  .signup-title {
    font-size: 45px;
  }
  .signup-body-title {
    font-size: 32px;
  }
  .class-comment-title {
    font-size: 24px;
  }
  .course__sort {
    margin-top: 15px;
  }
  .error-title {
    font-size: 36px;
  }
  .section-title {
    font-size: 38px;
  }
  .counter-box-2 .counter-txt.mb-14 {
    margin-bottom: 10px;
  }
  .counter-box-2 .counter-icon.mb-21 {
    margin-bottom: 15px;
  }
  .counter-box-2 .counter-part-txt {
    padding: 0 25px;
  }
  .counter-sub-txt {
    font-size: 20px;
  }
  /* ======================
  Header section
  ====================== */
  .logo {
    width: 100px;
  }
  .navbar-toggler {
    width: 30px;
    height: 25px;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
    color: #fff;
    padding: 0;
    font-size: 16px;
  }
  .navbar-toggler:focus {
    box-shadow: 0 0;
  }
  .top-left {
    padding: 5px 0;
  }
  .top-left .d-sm-flex {
    flex-wrap: wrap;
    justify-content: center;
  }
  .header-txt {
    padding: 0 10px;
    border: 0;
    height: 25px;
    line-height: 25px;
    text-align: center;
  }
  .header-right-txt {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
  .bottom-header {
    background: #fff;
    padding: 30px 0;
  }
  .nav-link:after {
    display: none;
  }
  .dropdown-menu {
    display: none;
  }
  .navbar-nav.mb-2 {
    margin-bottom: 0 !important;
  }
  .navbar-nav.p-40 {
    padding-top: 10px;
    padding-bottom: 0;
  }
  .nav-item.pr-20, .nav-item.px-20, .nav-item.pl-20 {
    padding: 0 !important;
  }
  .nav-link {
    height: 35px;
    line-height: 35px;
  }
  /* ======================
  Header section Two(2)
  ====================== */
  .header-2 {
    background: #fff;
  }
  .header-2.pt-35 {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  /* ======================
  Banner section
  ====================== */
  .banner.pt-150 {
    padding-top: 140px;
  }
  .banner-txt.p-180 {
    padding: 80px 0;
  }
  .banner-subtitle {
    font-size: 22px;
  }
  .banner-title {
    font-size: 52px;
  }
  .btn-box {
    gap: 15px;
  }
  /* ======================
  Banner section two (2)
  ====================== */
  .banner-2.pt-90 {
    padding-top: 55px;
  }
  .banner-subtitle-2 {
    font-size: 24px;
  }
  .banner-subtitle-2.mt--9 {
    margin-top: -8px;
  }
  .banner-subtitle-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-title-2 {
    font-size: 62px;
  }
  .banner-title-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-paragraph-2.mb-11 {
    margin-bottom: 7px;
  }
  /* ======================
  Banner section for inner pages (2)
  ====================== */
  .banner-txt.p-200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .breadcrumb-title {
    font-size: 55px;
  }
  .breadcrumb-title.mt--23 {
    margin-top: -7px;
  }
  .breadcrumb-title.mb-0 {
    margin-bottom: 11px !important;
  }
  /* ======================
  Feature section
  ====================== */
  .feature-part-icon {
    width: 70px;
    height: 70px;
  }
  .feature-txt {
    width: calc(100% - 90px);
  }
  .feature-sub-title.mt--7 {
    margin-top: -6px;
  }
  .divider.m-30 {
    margin: 15px 0;
  }
  .feature-txt p.mt--6 {
    margin-top: -5px;
  }
  /* ======================
  Feature section Two (2)
  ====================== */
  .feature-title {
    font-size: 90px;
    line-height: 1.2;
  }
  .feature-title.mt--16 {
    margin-top: -6px;
  }
  .feature-title.mb-14 {
    margin-bottom: 20px;
  }
  .feature-sub-title-2 {
    font-size: 40px;
  }
  .feature-txt-area.mb-70 {
    margin-bottom: 30px;
  }
  .feature-box.mb-70 {
    margin-bottom: 25px;
  }
  .feature-txt p.mb--8 {
    margin-bottom: -7px;
  }
  /* ======================
  Cta section
  ====================== */
  .cta-title {
    font-size: 35px;
  }
  .cta-title.mt--14 {
    margin-top: -9px;
  }
  br {
    display: none;
  }
  /* ======================
  About section
  ====================== */
  .about-title {
    font-size: 38px;
  }
  .about-list span.mr-30 {
    margin-right: 15px;
  }
  /* ======================
  Popular Class section
  ====================== */
  .class-title {
    font-size: 24px;
  }
  .amount {
    font-size: 16px;
  }
  /* ======================
  Counter Class section
  ====================== */
  .counter-box.pt-120 {
    padding-top: 70px;
  }
  .counter-img {
    width: 116px;
  }
  .counter-img.mb--60 {
    margin-bottom: -35px;
  }
  .counter-txt {
    font-size: 42px;
  }
  .counter-txt.mb-20 {
    margin-bottom: 10px;
  }
  /* ======================
  Counter section Two(2)
  ====================== */
  .counter-box-2.mt-120 {
    margin-top: 0;
  }
  /* ======================
  Staff section
  ====================== */
  .staff-name {
    font-size: 22px;
  }
  .staff-name.mb-0 {
    margin-bottom: 2px !important;
  }
  .staff-position.mb--8 {
    margin-bottom: -3px;
  }
  .staff-social-btn {
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-size: 40px;
  }
  .staff-social-btn.bg-1 {
    background-size: 40px;
  }
  .staff-social-btn.bg-2 {
    background-size: 40px;
  }
  .staff-social-btn.bg-3 {
    background-size: 40px;
  }
  /* ======================
  App Download section
  ====================== */
  .app-download-btn {
    max-width: 115px;
  }
  .app-download-btn.mr-75 {
    margin-right: 25px;
  }
  /* ======================
  App Download section Two(2)
  ====================== */
  .app-download-title {
    font-size: 30px;
    line-height: 40px;
  }
  .app-download-title.mt--14 {
    margin-top: -8px;
  }
  .app-download-title.mb-40 {
    margin-bottom: 18px;
  }
  .app-download-txt.mb-60 {
    margin-bottom: 30px;
  }
  /* ======================
  Facility section
  ====================== */
  .facility-title {
    font-size: 24px;
  }
  /* ======================
  Gallery section
  ====================== */
  .control-panel.mb-30 {
    margin-bottom: 20px;
  }
  .controls {
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 25px;
  }
  .gallery-filter-btn {
    font-size: 16px;
  }
  .gallery-filter-btn.ml-20 {
    margin-left: 0;
  }
  .gallery-filter-btn.mr-20 {
    margin-right: 0;
  }
  .gallery-filter-btn.mx-20 {
    margin-left: 0;
    margin-right: 0;
  }
  .gallery-title {
    font-size: 20px;
  }
  .gallery-title.mt--3 {
    margin-top: -1px;
  }
  .gallery-title.mb-10 {
    margin-bottom: 12px;
  }
  .gallery-sub-title.mb--2 {
    margin-bottom: -3px;
  }
  /* ======================
  Testimonial section
  ====================== */
  .quote-icon {
    width: 80px;
  }
  .feedback-title {
    font-size: 29px;
  }
  .feedback-txt {
    font-size: 18px;
    padding-right: 20px;
  }
  /* ======================
  Blog section
  ====================== */
  .blog-title {
    font-size: 24px;
  }
  /* ======================
  Footer section
  ====================== */
  .footer-single-info {
    justify-content: center;
  }
  .footer-single-info.p-35 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .footer-single-info.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer-single-info.border-l {
    border-top: 1px solid #804BFF;
    border-left: 0;
  }
  .footer-info-icon-wrap {
    height: 40px;
  }
  .footer-info-txt-area {
    width: max-content;
  }
  .footer-card.pr-30 {
    padding-right: 0;
  }
  .footer-card-title {
    font-size: 22px;
  }
  .footer-card-title.pb-27 {
    padding-bottom: 18px;
  }
  .footer-card-title.mb-25 {
    margin-bottom: 20px;
  }
  .footer-card-txt.mt--6 {
    margin-top: -5px;
  }
  .footer-follow-dialogue.mb-23 {
    margin-bottom: 18px;
  }
  .footer-links.mt--17 {
    margin-top: -9px;
  }
  .footer-links.mb--18 {
    margin-bottom: -11px;
  }
  .footer-link {
    line-height: 30px;
  }
  .bottom-footer p {
    text-align: center;
    margin-top: 20px;
  }
  .footer-social-box {
    flex-wrap: wrap;
    justify-content: center !important;
    gap: 10px;
  }
  .bottom-footer-social {
    height: 30px;
    font-size: 16px;
  }
  .bottom-footer-social.mr-40 {
    margin-right: 0;
  }
  .footer-social-icon {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  .footer-social-icon.mr-15 {
    margin-right: 5px;
  }
  /* ====================================================
  About page
  ==================================================== */
  .feature-icon {
    width: 80px;
    height: 80px;
    padding: 20px;
  }
  .feature-icon.mb-50 {
    margin-bottom: 25px;
  }
  .feature-sub-title.mb-25 {
    margin-bottom: 15px;
  }
  .feature-txt-2.mt--6 {
    margin-top: -10px;
  }
  .counter-img-2.mb-40 {
    margin-bottom: 30px;
  }
  /* ====================================================
  Class Details page
  ==================================================== */
  .class {
    overflow: hidden;
  }
  .class-details-txt-box.pb-120 {
    padding-bottom: 60px;
  }
  .class-details-title {
    font-size: 40px;
  }
  .class-details-teacher-name.mb-11 {
    margin-bottom: 14px;
  }
  .about-class-box {
    flex-direction: column !important;
  }
  .about-class-box.mb-20 {
    margin-bottom: 9px;
  }
  .about-class-box.r-gap-30 {
    row-gap: 0px;
  }
  .about-class.fz-16 {
    font-size: 14px;
  }
  .class-details-info.mb-30 {
    margin-bottom: 25px;
  }
  .class-details-txt.mt--9 {
    margin-top: -7px;
  }
  .class-details-txt.mb-25 {
    margin-bottom: 15px;
  }
  .class-details-video.p-125 {
    padding-top: 65px;
    padding-bottom: 65px;
  }
  .class-details-video.mb-35 {
    margin-bottom: 25px;
  }
  .class-comment-title.mb-47 {
    margin-bottom: 18px;
  }
  .class-comment {
    flex-direction: column;
    align-items: flex-start;
  }
  .class-comment.ml-100 {
    margin-left: 30px;
  }
  .class-comment-img.mr-30 {
    margin-right: 0;
    margin-bottom: 25px;
  }
  .class-comment-txt {
    width: 100%;
  }
  .class-comment-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .class-comment-txt.px-60 {
    padding-left: 20px;
    padding-right: 20px;
  }
  /* ====================================================
  Staff Details page
  ==================================================== */
  .staff-details-title {
    font-size: 24px;
  }
  .staff-details-txt {
    line-height: 29px;
  }
  /* ====================================================
  Shop page
  ==================================================== */
  .shop.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .shop-page-top-bar.mb-50 {
    margin-bottom: 30px;
  }
  .shop-control.mr-30 {
    margin-right: 10px;
  }
  .shop-control-txt {
    font-size: 12px;
  }
  .shop-control-txt.mr-10 {
    margin-right: 5px;
  }
  .shop-control-btn {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
  }
  .shop-control-form {
    height: 25px;
  }
  /* ====================================================
  Shop Details page
  ==================================================== */
  .shop-details-product-title {
    font-size: 38px;
  }
  .shop-details-price {
    font-size: 20px;
  }
  .product-details-bottom-part.p-50 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .product-details-bottom-part.px-50 {
    padding-left: 40px;
    padding-right: 40px;
  }
  /* ====================================================
  Cart page
  ==================================================== */
  .cart-table {
    min-width: max-content;
  }
  /* ====================================================
  Blog page
  ==================================================== */
  .blog-slider-btn.btn-next {
    right: 10px;
  }
  .blog-image.p-70 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .blog-image.px-50 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-image.mb-35 {
    margin-bottom: 30px;
  }
  .blog-image.d-flex {
    flex-direction: column;
  }
  .blog-image.p-35 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-image.px-35 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-img-txt {
    font-size: 18px;
    line-height: 28px;
  }
  .blog-img-txt.mt--8 {
    margin-top: -11px;
  }
  .blog-img-txt.mb--11 {
    margin-bottom: -8px;
  }
  .blog-page-blog-title.mt--10 {
    margin-top: -3px;
  }
  .blog-page-blog-title.mb-8 {
    margin-bottom: 14px;
  }
  .single-blog-info.mb-21 {
    margin-bottom: 16px;
  }
  .blog-page-blog-title {
    font-size: 28px;
  }
  .single-blog-p.mt--6 {
    margin-top: -10px;
  }
  .single-blog-p.mb-22 {
    margin-bottom: 17px;
  }
  .single-blog-p.mb-27 {
    margin-bottom: 17px;
  }
  .blog-sidebar-box.p-25 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-sidebar-box.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-search-form.px-25 {
    padding-left: 10px;
    padding-right: 10px;
  }
  .blog-sidebar-title {
    font-size: 22px;
  }
  .blog-panel-title h3 {
    font-size: 22px;
  }
  .popular-post-img {
    width: 70px;
  }
  .popular-post-img.ml-25 {
    margin-left: 15px;
  }
  /* ====================================================
  Blog Details page
  ==================================================== */
  .blog-quote-icon {
    width: 45px;
  }
  .blog-quote-icon.mr-15 {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .blog-quote-txt {
    width: 100%;
  }
  .blog-quote-txt-p {
    font-size: 22px;
  }
  .blog-quote-txt {
    padding-left: 70px;
  }
  .blog-quote-txt .blog-quote-i {
    font-size: 50px;
  }
  .blog-quote-txt-p.mt--6 {
    margin-top: -7px;
  }
  .blog-quote-txt-p.mb-7 {
    margin-bottom: 2px;
  }
  .blog-details-video.mb-35 {
    margin-bottom: 30px;
  }
  .blog-details-video.p-145 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .blog-video-btn {
    width: 60px;
    height: 60px;
    line-height: 60px;
  }
  .blog-single-comment {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .blog-single-comment.pr-30 {
    padding-right: 20px;
  }
  .blog-comment-avatar.mr-20 {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .blog-comment-txt {
    width: 100%;
  }
  .blog-comment-textarea {
    height: 100px;
  }
  /* ====================================================
  Contact page
  ==================================================== */
  .contact-3.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .contact-page-title {
    font-size: 20px;
  }
  .contact-page-title.mt--1 {
    margin-top: -2px;
  }
  .contact-page-title.mb-26 {
    margin-bottom: 27px;
  }
  .contact-textarea {
    height: 120px;
  }
  .contact-info-icon {
    width: 16px;
  }
  .contact-info-icon img {
    width: 70%;
  }
  .map {
    height: 200px;
  }
}
/*medium mobile device*/
@media only screen and (min-width: 480px) and (max-width: 575px) {
  /* ====================================================
  global style
  ==================================================== */
  .popular-post-img.mr-20 {
    margin-right: 15px;
  }
  .class-info.class-details-info.d-flex {
    flex-wrap: wrap;
  }
  .shop-details-lg-img.slick-slide {
    padding: 50px;
  }
  .shop-details-sm-images:hover .shop-slick-prev {
    left: 0px;
  }
  .shop-details-sm-images:hover .shop-slick-next {
    right: 0px;
  }
  .contact-titletext {
    font-size: 30px;
  }
  .contact-col-6 {
    width: 100%;
  }
  .blog-comment-reply {
    font-size: 15px;
  }
  .blog-single-comment.pl-60.pr-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-single-comment.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-panel-body.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-details-bottom.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-admin {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-panel-title.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-panel-title h3 {
    font-size: 22px;
  }
  .blog-quote-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
  .single-blog-txt {
    padding: 50px 25px;
  }
  .blog-page-blog-single-title {
    font-size: 28px;
  }
  .blog-quote-txt .blog-quote-i {
    position: static;
    margin-bottom: 20px;
  }
  .blog-quote-txt {
    padding-left: 0;
  }
  .single-blog:hover .blog-slider-btn {
    left: 35px;
  }
  .single-blog:hover .blog-slider-btn.btn-next {
    right: 35px;
  }
  .blog-page-blog-title {
    font-size: 26px;
  }
  .signup-title {
    font-size: 40px;
  }
  .signup-body-title {
    font-size: 32px;
  }
  .class-details-title {
    font-size: 36px;
  }
  .blog-sidebar-title {
    font-size: 22px;
  }
  .list-wrapper .class-card.class-card-2 .popular-class-txt {
    padding: 40px 30px;
  }
  .error-title {
    font-size: 36px;
  }
  .course__sort {
    margin-top: 15px;
  }
  .course__sort-inner .nice-select .list {
    left: 0;
    right: auto;
  }
  .part-txt.part-text-list {
    padding: 40px 30px;
  }
  .section-title {
    font-size: 36px;
  }
  .counter-part-txt {
    padding: 0;
  }
  .class-card.class-card-2 .part-img {
    flex: 0 0 auto;
    max-width: 100%;
    width: 100%;
  }
  .class-card.class-card-2 {
    flex-direction: column;
  }
  .class-card.class-card-2 .popular-class-txt {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  /* ======================
  Header section
  ====================== */
  .logo {
    width: 100px;
  }
  .navbar-toggler {
    width: 30px;
    height: 25px;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
    color: #fff;
    padding: 0;
    font-size: 16px;
  }
  .navbar-toggler:focus {
    box-shadow: 0 0;
  }
  .top-left {
    padding: 5px 0;
  }
  .header-txt {
    padding: 0;
    border: 0;
    height: 25px;
    line-height: 25px;
    text-align: center;
  }
  .header-right-txt {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
  .bottom-header {
    background: #fff;
    padding: 30px 0;
  }
  .nav-link:after {
    display: none;
  }
  .dropdown-menu {
    display: none;
  }
  .navbar-nav.mb-2 {
    margin-bottom: 0 !important;
  }
  .navbar-nav.p-40 {
    padding-top: 10px;
    padding-bottom: 0;
  }
  .nav-item.pr-20, .nav-item.px-20, .nav-item.pl-20 {
    padding: 0 !important;
  }
  .nav-link {
    height: 35px;
    line-height: 35px;
  }
  /* ======================
  Header section Two(2)
  ====================== */
  .header-2 {
    background: #fff;
  }
  .header-2.pt-35 {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  /* ======================
  Banner section
  ====================== */
  .banner.pt-150 {
    padding-top: 165px;
  }
  .banner-txt.p-180 {
    padding: 80px 0;
  }
  .banner-subtitle {
    font-size: 22px;
  }
  .banner-title {
    font-size: 50px;
  }
  .banner-paragraph {
    font-size: 18px;
  }
  .btn-box {
    gap: 15px;
  }
  /* ======================
  Banner section two (2)
  ====================== */
  .banner-2.pt-90 {
    padding-top: 55px;
  }
  .banner-subtitle-2 {
    font-size: 24px;
  }
  .banner-subtitle-2.mt--9 {
    margin-top: -8px;
  }
  .banner-subtitle-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-title-2 {
    font-size: 48px;
  }
  .banner-title-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-paragraph-2.mb-11 {
    margin-bottom: 7px;
  }
  /* ======================
  Banner section for inner pages (2)
  ====================== */
  .banner-txt.p-200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .breadcrumb-title {
    font-size: 50px;
  }
  .breadcrumb-title.mt--23 {
    margin-top: -7px;
  }
  .breadcrumb-title.mb-0 {
    margin-bottom: 11px !important;
  }
  /* ======================
  Feature section
  ====================== */
  .feature-part-icon {
    width: 70px;
    height: 70px;
  }
  .feature-txt {
    width: calc(100% - 90px);
  }
  /* ======================
  Feature section Two (2)
  ====================== */
  .feature-title {
    font-size: 75px;
    line-height: 1.2;
  }
  .feature-sub-title-2 {
    font-size: 35px;
  }
  /* ======================
  Cta section
  ====================== */
  .cta-title {
    font-size: 35px;
    line-height: 45px;
  }
  .cta-title.mt--14 {
    margin-top: -9px;
  }
  /* ======================
  About section
  ====================== */
  .about-title {
    font-size: 36px;
  }
  .about-list span.mr-30 {
    margin-right: 15px;
  }
  .btn-box.pt-40 {
    padding-top: 30px;
  }
  /* ======================
  Popular Class section
  ====================== */
  .class-title {
    font-size: 24px;
  }
  .amount {
    font-size: 16px;
  }
  /* ======================
  Popular Class section Two(2)
  ====================== */
  .popular-class-txt.pl-5 {
    padding: 20px;
  }
  /* ======================
  Counter Class section
  ====================== */
  .counter-box.pt-120 {
    padding-top: 70px;
  }
  .counter-img {
    width: 116px;
  }
  .counter-img.mb--60 {
    margin-bottom: -35px;
  }
  .counter-txt {
    font-size: 39px;
  }
  .counter-txt.mb-20 {
    margin-bottom: 10px;
  }
  .counter-box-2 .counter-txt {
    font-size: 52px;
  }
  /* ======================
  Counter section Two(2)
  ====================== */
  .counter-box-2 {
    width: 300px;
    height: 300px;
    margin-left: auto;
    margin-right: auto;
  }
  .counter-box-2.p-50p {
    padding-top: 0;
    padding-bottom: 0;
  }
  .counter-box-2.mt-120 {
    margin-top: 0;
  }
  /* ======================
  Staff section
  ====================== */
  .staff-name {
    font-size: 24px;
  }
  .staff-name.mb-0 {
    margin-bottom: 2px !important;
  }
  .kb-staff-card-social-share-1-1 a:not(:last-child) {
    margin-right: 10px;
  }
  /* ======================
  Staff section
  ====================== */
  .app-download-btn {
    max-width: 100px;
  }
  .app-download-btn.mr-75 {
    margin-right: 25px;
  }
  /* ======================
  App Download section Two(2)
  ====================== */
  .app-download-title {
    font-size: 30px;
    line-height: 40px;
  }
  .app-download-title.mt--14 {
    margin-top: -8px;
  }
  .app-download-title.mb-40 {
    margin-bottom: 18px;
  }
  .app-download-txt.mb-60 {
    margin-bottom: 30px;
  }
  /* ======================
  Facility section
  ====================== */
  .facility-title {
    font-size: 24px;
  }
  .facility-img-area {
    min-height: 190px;
    height: 190px;
  }
  /* ======================
  Gallery section
  ====================== */
  .control-panel.mb-30 {
    margin-bottom: 20px;
  }
  .controls {
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 20px;
  }
  .gallery-filter-btn {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .gallery-filter-btn.ml-20 {
    margin-left: 0;
  }
  .gallery-filter-btn.mr-20 {
    margin-right: 0;
  }
  .gallery-filter-btn.mx-20 {
    margin-left: 0;
    margin-right: 0;
  }
  .gallery-filter-btn:after {
    width: 6px;
    height: 6px;
    bottom: 8px;
    border: 0;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
  }
  .gallery-popup {
    width: 58px;
    height: 58px;
    line-height: 50px;
  }
  .gallery-popup.mb-30 {
    margin-bottom: 20px;
  }
  .gallery-title {
    font-size: 24px;
  }
  .gallery-title.mt--3 {
    margin-top: -1px;
  }
  .gallery-title.mb-10 {
    margin-bottom: 12px;
  }
  /* ======================
  Testimonial section
  ====================== */
  .clients {
    margin-bottom: 40px;
  }
  .quote-icon {
    width: 80px;
  }
  .feedback-title {
    font-size: 29px;
  }
  .feedback-txt.mb-41 {
    margin-bottom: 17px;
  }
  .divider.mb-30 {
    margin-bottom: 25px;
  }
  /* ======================
  Blog section
  ====================== */
  .blog-title {
    font-size: 24px;
  }
  /* ======================
  Footer section
  ====================== */
  .footer-single-info {
    justify-content: center;
  }
  .footer-single-info.p-35 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .footer-single-info.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer-single-info.border-l {
    border-top: 1px solid #804BFF;
    border-left: 0;
  }
  .footer-info-icon-wrap {
    height: 40px;
  }
  .footer-info-txt-area {
    width: max-content;
  }
  .footer-card-title {
    font-size: 22px;
  }
  .footer-card.pr-30 {
    padding-right: 0;
  }
  .footer-card-title.mb-25 {
    margin-bottom: 20px;
  }
  .footer-card-txt.mt--6 {
    margin-top: -5px;
  }
  .footer-follow-dialogue.mb-23 {
    margin-bottom: 18px;
  }
  .footer-links.mt--17 {
    margin-top: -9px;
  }
  .footer-links.mb--18 {
    margin-bottom: -11px;
  }
  .footer-link {
    line-height: 30px;
  }
  .bottom-footer p {
    text-align: center;
    margin-top: 20px;
  }
  .footer-social-box {
    flex-wrap: wrap;
    justify-content: center !important;
    gap: 10px;
  }
  .bottom-footer-social {
    height: 30px;
    font-size: 16px;
  }
  .bottom-footer-social.mr-40 {
    margin-right: 0;
  }
  .footer-social-icon {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  .footer-social-icon.mr-15 {
    margin-right: 5px;
  }
  /* ====================================================
  About page
  ==================================================== */
  .feature-icon {
    width: 80px;
    height: 80px;
    padding: 20px;
  }
  .feature-icon.mb-50 {
    margin-bottom: 25px;
  }
  .feature-sub-title.mb-25 {
    margin-bottom: 15px;
  }
  .feature-txt-2.mt--6 {
    margin-top: -10px;
  }
  .about-2.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .counter-inner.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .counter-img-2.mb-40 {
    margin-bottom: 30px;
  }
  /* ====================================================
  Class Details page
  ==================================================== */
  .class {
    overflow: hidden;
  }
  .class-details-txt-box.pb-120 {
    padding-bottom: 60px;
  }
  .class-details-teacher-name.mb-11 {
    margin-bottom: 14px;
  }
  .class-details-teacher-name .fz-16 {
    font-size: 14px;
  }
  .about-class-box {
    flex-direction: column !important;
  }
  .about-class-box.mb-20 {
    margin-bottom: 9px;
  }
  .about-class-box.r-gap-30 {
    row-gap: 0px;
  }
  .about-class.fz-16 {
    font-size: 14px;
  }
  .class-details-info.mb-30 {
    margin-bottom: 25px;
  }
  .class-details-txt.mt--9 {
    margin-top: -7px;
  }
  .class-details-txt.mb-25 {
    margin-bottom: 15px;
  }
  .class-details-video.p-125 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .class-details-video.mb-35 {
    margin-bottom: 25px;
  }
  .video-btn.video-btn-2 {
    width: 85px;
    height: 85px;
    line-height: 85px;
    font-size: 35px;
  }
  .class-comment-title {
    font-size: 24px;
  }
  .class-comment-title.mb-47 {
    margin-bottom: 18px;
  }
  .class-comment {
    flex-direction: column;
    align-items: flex-start;
  }
  .class-comment.ml-100 {
    margin-left: 30px;
  }
  .class-comment-img.mr-30 {
    margin-right: 0;
    margin-bottom: 25px;
  }
  .class-comment-txt {
    width: 100%;
  }
  .class-comment-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .class-comment-txt.px-60 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .class-comment-username.mb-22 {
    margin-bottom: 12px;
  }
  .class-comment-details.mb-22 {
    margin-bottom: 12px;
  }
  .def-form.mb-30 {
    margin-bottom: 20px;
  }
  .comment-textarea {
    height: 100px;
  }
  .comment-textarea.mb-50 {
    margin-bottom: 20px;
  }
  .sidebar-box.p-50 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .sidebar-box.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sidebar-title {
    font-size: 16px;
  }
  .class-thumb.mr-20 {
    margin-right: 15px;
  }
  /* ====================================================
  Staff Details page
  ==================================================== */
  .staff-details-title {
    font-size: 24px;
  }
  /* ====================================================
  Shop page
  ==================================================== */
  .shop.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .shop-page-top-bar.mb-50 {
    margin-bottom: 30px;
  }
  .shop-control.mr-30 {
    margin-right: 10px;
  }
  .shop-control-txt {
    font-size: 12px;
  }
  .shop-control-txt.mr-10 {
    margin-right: 5px;
  }
  .shop-control-btn {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
  }
  .shop-control-form {
    height: 25px;
  }
  /* ====================================================
  Shop Details page
  ==================================================== */
  .shop-details-product-title {
    font-size: 36px;
  }
  .shop-details-price {
    font-size: 20px;
  }
  .product-details-bottom-part.p-50 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .product-details-bottom-part.px-50 {
    padding-left: 30px;
    padding-right: 30px;
  }
  /* ====================================================
  Cart page
  ==================================================== */
  .cart-table {
    min-width: max-content;
  }
  /* ====================================================
  Blog page
  ==================================================== */
  .blog-image.d-flex {
    flex-direction: column;
  }
  .blog-image.p-35 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-image.px-35 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .single-blog-txt {
    padding: 50px 35px;
  }
  .popular-post-title {
    font-size: 16px;
  }
  .popular-post-date {
    font-size: 14px;
  }
  .popular-post-img {
    width: 70px;
  }
  .popular-post-img.ml-25 {
    margin-left: 15px;
  }
  /* ====================================================
  Blog Details page
  ==================================================== */
  .blog-quote-icon {
    width: 45px;
  }
  .blog-quote-icon.mr-15 {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .blog-quote-txt {
    width: 100%;
  }
  .blog-quote-txt-p {
    font-size: 22px;
  }
  .blog-quote-txt-p.mt--6 {
    margin-top: -7px;
  }
  .blog-quote-txt-p.mb-7 {
    margin-bottom: 2px;
  }
  .blog-details-video.mb-35 {
    margin-bottom: 30px;
  }
  .blog-details-video.p-145 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .blog-video-btn {
    width: 60px;
    height: 60px;
    line-height: 60px;
  }
  .blog-nav.px-30 {
    padding-left: 15px;
    padding-right: 15px;
  }
  .blog-admin.p-25 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-admin.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-admin.mb-35 {
    margin-bottom: 30px;
  }
  .admin-name {
    font-size: 20px;
  }
  .blog-panel-title.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-single-comment {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .blog-single-comment.p-25 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-single-comment.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-single-comment.pr-30 {
    padding-right: 20px;
  }
  .blog-comment-panel.mb-35 {
    margin-bottom: 30px;
  }
  .blog-comment-avatar.mr-20 {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .blog-comment-txt {
    width: 100%;
  }
  .blog-comment-name {
    font-size: 18px;
  }
  .blog-panel-body.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-panel-body.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-comment-textarea {
    height: 100px;
  }
  /* ====================================================
  Contact page
  ==================================================== */
  .contact-3.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .contact-page-title {
    font-size: 20px;
  }
  .contact-page-title.mt--1 {
    margin-top: -2px;
  }
  .contact-page-title.mb-26 {
    margin-bottom: 27px;
  }
  .contact-textarea {
    height: 120px;
  }
  .contact-info-icon {
    width: 16px;
  }
  .contact-info-icon img {
    width: 70%;
  }
  .map {
    height: 200px;
  }
}
/*small mobile device*/
@media only screen and (max-width: 479px) {
  /* ====================================================
  global style
  ==================================================== */
  .footer-info-icon-wrap {
    height: 40px;
  }
  .banner-txt .btn-box.sm-padd-btn {
    flex-direction: column;
  }
  .banner-txt .btn-box.sm-padd-btn .def-btn {
    padding: 0 25px;
    max-width: 296px;
  }
  .footer-single-info {
    justify-content: center;
  }
  .popular-post-img.mr-20 {
    margin-right: 15px;
  }
  .class-info.class-details-info.d-flex {
    flex-wrap: wrap;
  }
  .shop-details-sm-images:hover .shop-slick-prev {
    left: 0px;
  }
  .shop-details-sm-images:hover .shop-slick-next {
    right: 0px;
  }
  .contact-info-wrapper ul li {
    font-size: 18px;
  }
  .contact-titletext {
    font-size: 28px;
  }
  .blog-comment-reply {
    font-size: 15px;
  }
  .blog-single-comment.pl-60.pr-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-single-comment.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-panel-body.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-panel-title.px-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
  .blog-details-bottom.d-flex {
    padding: 40px 30px;
  }
  .blog-admin {
    padding: 40px 30px;
  }
  .blog-panel-title h3 {
    font-size: 22px;
  }
  .blog-quote-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
  .single-blog-txt {
    padding: 50px 25px;
  }
  .blog-page-blog-single-title {
    font-size: 28px;
  }
  .blog-quote-txt .blog-quote-i {
    position: static;
    margin-bottom: 20px;
  }
  .blog-quote-txt {
    padding-left: 0;
  }
  .blog-slider-btn {
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
  .single-blog:hover .blog-slider-btn {
    left: 25px;
  }
  .single-blog:hover .blog-slider-btn.btn-next {
    right: 25px;
  }
  .signup-title {
    font-size: 38px;
  }
  .signup-body-title {
    font-size: 29px;
  }
  .gbutton {
    padding: 0 15px;
    font-size: 15px;
    min-width: 246px;
  }
  .gbutton i {
    font-size: 24px;
    margin-right: 22px;
  }
  .gbutton::before {
    width: 55px;
  }
  .sign-buttons .def-btn {
    padding: 0 46px;
  }
  .signup-wrapper-body {
    padding-left: 25px;
    padding-right: 25px;
  }
  .sign-input input {
    padding: 0 35px;
    padding-right: 15px;
  }
  .sign-input i {
    left: 15px;
  }
  .class-comment-actions {
    gap: 10px;
  }
  .contact-col-6 {
    width: 100%;
  }
  .list-wrapper .class-card.class-card-2 .popular-class-txt {
    padding: 40px 30px;
  }
  br {
    display: none;
  }
  .error-title {
    font-size: 29px;
  }
  .course__sort {
    margin-top: 15px;
  }
  .course__sort-inner .nice-select .list {
    left: 0;
    right: auto;
  }
  .basic-pagination ul li:not(:last-child) {
    margin-right: 10px;
  }
  .part-txt.part-text-list {
    padding: 40px 30px;
  }
  .class-card.class-card-2 .part-img {
    flex: 0 0 auto;
    max-width: 100%;
    width: 100%;
  }
  .counter-part-txt {
    padding: 0 0;
  }
  .class-card.class-card-2 {
    flex-direction: column;
  }
  .class-card.class-card-2 .popular-class-txt {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .section-title {
    font-size: 29px;
  }
  .banner-txt .btn-box .def-btn {
    padding: 0 18px;
  }
  .vertical-border {
    display: none;
  }
  .facility-icon-minus-top {
    margin-top: 0px;
  }
  /* ======================
  Header section
  ====================== */
  .logo {
    width: 100px;
  }
  .navbar-toggler {
    width: 30px;
    height: 25px;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
    color: #fff;
    padding: 0;
    font-size: 16px;
  }
  .navbar-toggler:focus {
    box-shadow: 0 0;
  }
  .top-left {
    padding: 5px 0;
  }
  .header-txt {
    padding: 0;
    border: 0;
    height: 25px;
    line-height: 25px;
    text-align: center;
  }
  .header-right-txt {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
  .bottom-header {
    background: #fff;
    padding: 30px 0;
  }
  .nav-link:after {
    display: none;
  }
  .dropdown-menu {
    display: none;
  }
  .navbar-nav.mb-2 {
    margin-bottom: 0 !important;
  }
  .navbar-nav.p-40 {
    padding-top: 10px;
    padding-bottom: 0;
  }
  .nav-item.pr-20, .nav-item.px-20, .nav-item.pl-20 {
    padding: 0 !important;
  }
  .nav-link {
    height: 35px;
    line-height: 35px;
  }
  /* ======================
  Header section Two(2)
  ====================== */
  .header-2 {
    background: #fff;
  }
  .header-2.pt-35 {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  /* ======================
  Banner section
  ====================== */
  .banner.pt-150 {
    padding-top: 165px;
  }
  .banner-txt.p-180 {
    padding: 80px 0;
  }
  .banner-subtitle {
    font-size: 20px;
  }
  .banner-title {
    font-size: 45px;
  }
  .banner-paragraph {
    font-size: 18px;
  }
  .btn-box {
    gap: 15px;
  }
  /* ======================
  Banner section two (2)
  ====================== */
  .banner-2.pt-90 {
    padding-top: 55px;
  }
  .banner-subtitle-2 {
    font-size: 20px;
  }
  .banner-subtitle-2.mt--9 {
    margin-top: -8px;
  }
  .banner-subtitle-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-title-2 {
    font-size: 40px;
  }
  .banner-title-2.mb-7 {
    margin-bottom: 9px;
  }
  .banner-paragraph-2 {
    font-size: 16px;
    line-height: 26px;
  }
  .banner-paragraph-2.mb-11 {
    margin-bottom: 7px;
  }
  /* ======================
  Banner section for inner pages (2)
  ====================== */
  .banner-txt.p-200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .breadcrumb-title {
    font-size: 40px;
  }
  .breadcrumb-title.mt--23 {
    margin-top: -7px;
  }
  .breadcrumb-title.mb-0 {
    margin-bottom: 11px !important;
  }
  /* ======================
  Feature section
  ====================== */
  .r-gap-70 {
    row-gap: 24px;
  }
  .feature-part-icon {
    width: 70px;
    height: 70px;
  }
  .feature-txt {
    width: calc(100% - 90px);
  }
  .feature-sub-title {
    font-size: 22px;
  }
  .divider.m-30 {
    margin: 15px 0;
  }
  .feature-part-icon.mr-30 {
    margin-right: 20px;
  }
  br {
    display: none;
  }
  /* ======================
  Feature section Two (2)
  ====================== */
  .feature-title {
    font-size: 60px;
    line-height: 1.2;
  }
  .feature-title.mt--16 {
    margin-top: -6px;
  }
  .feature-title.mb-14 {
    margin-bottom: 20px;
  }
  .feature-sub-title-2 {
    font-size: 35px;
  }
  .feature-txt-area.mb-70 {
    margin-bottom: 30px;
  }
  .feature-box.mb-70 {
    margin-bottom: 25px;
  }
  .feature-txt p.mb--8 {
    margin-bottom: -7px;
  }
  /* ======================
  Cta section
  ====================== */
  .cta-title {
    font-size: 27px;
    line-height: 45px;
  }
  .cta-title.mt--14 {
    margin-top: -9px;
  }
  /* ======================
  About section
  ====================== */
  .about-title {
    font-size: 29px;
  }
  .about-list span.mr-30 {
    margin-right: 15px;
  }
  /* ======================
  Popular Class section
  ====================== */
  .class-title {
    font-size: 22px;
  }
  .class-time {
    font-size: 14px;
  }
  .amount {
    font-size: 16px;
  }
  /* ======================
  Popular Class section Two(2)
  ====================== */
  .popular-class-txt.pl-5 {
    padding: 20px;
  }
  /* ======================
  Counter section
  ====================== */
  .counter-box.pt-120 {
    padding-top: 70px;
  }
  .counter-img {
    width: 116px;
  }
  .counter-img.mb--60 {
    margin-bottom: -35px;
  }
  .counter-txt {
    font-size: 39px;
  }
  .counter-txt.mb-20 {
    margin-bottom: 10px;
  }
  /* ======================
  Counter section Two(2)
  ====================== */
  .counter-box-2 {
    width: 290px;
    height: 290px;
    margin-left: auto;
    margin-right: auto;
  }
  .counter-box-2.p-50p {
    padding-top: 0;
    padding-bottom: 0;
  }
  .counter-box-2.mt-120 {
    margin-top: 0;
  }
  /* ======================
  Staff section
  ====================== */
  .staff-name {
    font-size: 22px;
  }
  .staff-name.mb-0 {
    margin-bottom: 2px !important;
  }
  /* ======================
  App Download section
  ====================== */
  .app-download-btn {
    max-width: 110px;
  }
  .app-download-btn.mr-75 {
    margin-right: 25px;
  }
  /* ======================
  App Download section Two(2)
  ====================== */
  .app-download-title {
    font-size: 30px;
    line-height: 40px;
  }
  .app-download-title.mt--14 {
    margin-top: -8px;
  }
  .app-download-title.mb-40 {
    margin-bottom: 18px;
  }
  .app-download-txt.mb-60 {
    margin-bottom: 30px;
  }
  /* ======================
  Facility section
  ====================== */
  .facility-card-txt.px-50 {
    padding-left: 35px;
    padding-right: 35px;
  }
  .facility-icon {
    width: 50px;
    height: 50px;
  }
  .facility-icon img {
    width: 60%;
  }
  .facility-icon.mb-30 {
    margin-bottom: 25px;
  }
  .facility-title {
    font-size: 22px;
  }
  /* ======================
  Gallery section
  ====================== */
  .control-panel.mb-30 {
    margin-bottom: 20px;
  }
  .controls {
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 20px;
  }
  .gallery-filter-btn {
    font-size: 16px;
  }
  .gallery-filter-btn.pb-17 {
    padding-bottom: 15px;
    margin-bottom: 10px;
  }
  .gallery-filter-btn.ml-20 {
    margin-left: 0;
  }
  .gallery-filter-btn.mr-20 {
    margin-right: 0;
  }
  .gallery-filter-btn.mx-20 {
    margin-left: 0;
    margin-right: 0;
  }
  .gallery-filter-btn:after {
    width: 6px;
    height: 6px;
    bottom: 8px;
    border: 0;
    background: linear-gradient(145deg, #8ecf35, #23cc88);
  }
  .gallery-title {
    font-size: 20px;
  }
  .gallery-title.mt--3 {
    margin-top: -1px;
  }
  .gallery-title.mb-10 {
    margin-bottom: 12px;
  }
  .gallery-sub-title.mb--2 {
    margin-bottom: -3px;
  }
  /* ======================
  Testimonial section
  ====================== */
  .clients {
    margin-bottom: 40px;
  }
  .quote-icon {
    width: 70px;
  }
  .quote-icon.mb-30 {
    margin-bottom: 25px;
  }
  .feedback-title {
    font-size: 27px;
    line-height: 35px;
  }
  .feedback-txt {
    font-size: 16px;
  }
  .divider.mb-30 {
    margin-bottom: 25px;
  }
  /* ======================
  Blog section
  ====================== */
  .blog-title {
    font-size: 22px;
  }
  /* ======================
  Footer section
  ====================== */
  .footer-single-info {
    justify-content: center;
  }
  .footer-single-info.p-35 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .footer-single-info.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer-single-info.border-l {
    border-top: 1px solid #804BFF;
    border-left: 0;
  }
  .footer-info-title {
    font-size: 16px;
  }
  .footer-info-txt {
    font-size: 18px;
  }
  .footer-card.pr-30 {
    padding-right: 0;
  }
  .footer-card-title {
    font-size: 22px;
  }
  .footer-card-title.pb-27 {
    padding-bottom: 18px;
  }
  .footer-card-title.mb-25 {
    margin-bottom: 20px;
  }
  .footer-card-txt.mt--6 {
    margin-top: -5px;
  }
  .footer-follow-dialogue.mb-23 {
    margin-bottom: 18px;
  }
  .footer-links.mt--17 {
    margin-top: -9px;
  }
  .footer-links.mb--18 {
    margin-bottom: -11px;
  }
  .footer-link {
    line-height: 30px;
  }
  .bottom-footer p {
    text-align: center;
    margin-top: 20px;
  }
  .footer-social-box {
    flex-wrap: wrap;
    justify-content: center !important;
    gap: 10px;
  }
  .bottom-footer-social {
    height: 30px;
    font-size: 16px;
  }
  .bottom-footer-social.mr-40 {
    margin-right: 0;
  }
  .footer-social-icon {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  .footer-social-icon.mr-15 {
    margin-right: 5px;
  }
  /* ====================================================
  About page
  ==================================================== */
  .feature-icon {
    width: 80px;
    height: 80px;
    padding: 20px;
  }
  .feature-icon.mb-50 {
    margin-bottom: 25px;
  }
  .feature-sub-title.mb-25 {
    margin-bottom: 15px;
  }
  .feature-txt-2.mt--6 {
    margin-top: -10px;
  }
  .counter-img-2.mb-40 {
    margin-bottom: 30px;
  }
  /* ====================================================
  Class Details page
  ==================================================== */
  .class {
    overflow: hidden;
  }
  .class-details-txt-box.pb-120 {
    padding-bottom: 60px;
  }
  .class-details-title {
    font-size: 29px;
  }
  .class-details-teacher-name, .about-class {
    font-size: 16px;
  }
  .class-details-teacher-name.mb-11 {
    margin-bottom: 14px;
  }
  .class-details-teacher-name .fz-16 {
    font-size: 14px;
  }
  .about-class-box {
    flex-direction: column !important;
  }
  .about-class-box.mb-20 {
    margin-bottom: 9px;
  }
  .about-class-box.r-gap-30 {
    row-gap: 0px;
  }
  .about-class.fz-16 {
    font-size: 14px;
  }
  .class-details-info.mb-30 {
    margin-bottom: 25px;
  }
  .class-details-txt.mt--9 {
    margin-top: -7px;
  }
  .class-details-txt.mb-25 {
    margin-bottom: 15px;
  }
  .class-details-video.p-125 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .class-details-video.mb-35 {
    margin-bottom: 25px;
  }
  .video-btn.video-btn-2 {
    width: 55px;
    height: 55px;
    line-height: 55px;
    font-size: 25px;
  }
  .class-comment-title {
    font-size: 22px;
  }
  .class-comment-title.mb-47 {
    margin-bottom: 18px;
  }
  .class-comment-title.mb-21 {
    margin-bottom: 13px;
  }
  .class-comment {
    flex-direction: column;
    align-items: flex-start;
  }
  .class-comment.ml-100 {
    margin-left: 15px;
  }
  .class-comment-img.mr-30 {
    margin-right: 0;
    margin-bottom: 25px;
  }
  .class-comment-txt {
    width: 100%;
  }
  .class-comment-txt.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .class-comment-txt.px-60 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .class-comment-username.mb-22 {
    margin-bottom: 12px;
  }
  .class-comment-details.mb-22 {
    margin-bottom: 12px;
  }
  .def-form.mb-30 {
    margin-bottom: 20px;
  }
  .comment-textarea {
    height: 100px;
  }
  .comment-textarea.mb-50 {
    margin-bottom: 20px;
  }
  .def-sidebar {
    max-width: 320px;
    margin: auto;
  }
  .sidebar-box.p-50 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .sidebar-box.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sidebar-title {
    font-size: 16px;
  }
  .sidebar-title.mb-30 {
    margin-bottom: 20px;
  }
  .class-thumb.mr-20 {
    margin-right: 15px;
  }
  .sidebar-class-txt {
    width: calc(100% - 70px);
  }
  /* ====================================================
  Staff Details page
  ==================================================== */
  .staff-details-title {
    font-size: 24px;
  }
  /* ====================================================
  Shop page
  ==================================================== */
  .shop.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .shop-page-top-bar.mb-50 {
    margin-bottom: 30px;
  }
  .shop-control.mr-30 {
    margin-right: 10px;
  }
  .shop-control-txt {
    font-size: 12px;
  }
  .shop-control-txt.mr-10 {
    margin-right: 5px;
  }
  .shop-control-btn {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
  }
  .shop-control-form {
    height: 25px;
  }
  .popular-post-title {
    font-size: 16px;
  }
  /* ====================================================
  Shop Details page
  ==================================================== */
  .shop-details-product-title {
    font-size: 29px;
  }
  .shop-details-price {
    font-size: 20px;
  }
  .product-details-bottom-part.px-50 {
    padding-left: 25px;
    padding-right: 25px;
  }
  .product-details-bottom-part.p-50 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .shop-details-cart-buttons.d-flex {
    flex-direction: column;
    align-items: start;
  }
  .class-comment {
    padding: 40px 25px;
  }
  .availability {
    font-size: 20px;
  }
  .shop-details-price-box.d-flex.gap-55 {
    flex-direction: column;
    align-items: start !important;
    gap: 15px;
  }
  .shop-details-lg-img.slick-slide {
    padding: 40px;
  }
  /* ====================================================
  Checkout page
  ==================================================== */
  .panel-heading.px-40 {
    padding-left: 25px;
    padding-right: 25px;
  }
  .kitba-checkout-form-main-space {
    padding: 40px 25px;
  }
  .your-order h3 {
    padding-left: 25px;
    padding-right: 25px;
  }
  .your-order-table {
    padding: 0 25px;
    overflow-x: auto;
  }
  .table-responsive {
    overflow-x: auto;
    min-width: 470px;
  }
  .payment-method {
    padding: 0 25px;
  }
  /* ====================================================
  Cart page
  ==================================================== */
  .cart-table {
    min-width: max-content;
  }
  .panel-heading-txt {
    font-size: 20px;
  }
  /* ====================================================
  Blog page
  ==================================================== */
  .blog-image.d-flex {
    flex-direction: column;
  }
  .single-blog-txt.px-45 {
    padding-left: 25px;
    padding-right: 25px;
  }
  .blog-page-blog-title {
    font-size: 24px;
  }
  .blog-sidebar-title {
    font-size: 22px;
  }
  .sidebar-class-title {
    font-size: 16px;
  }
  .sidebar-sub-txt {
    font-size: 14px;
  }
  .popular-post-date {
    font-size: 14px;
  }
  .popular-post-img {
    width: 70px;
  }
  .popular-post-img.ml-25 {
    margin-left: 15px;
  }
  /* ====================================================
  Blog Details page
  ==================================================== */
  .blog-quote-icon {
    width: 45px;
  }
  .blog-quote-icon.mr-15 {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .blog-quote-txt {
    width: 100%;
  }
  .blog-quote-txt-p {
    font-size: 20px;
  }
  .blog-quote-txt-p.mt--6 {
    margin-top: -7px;
  }
  .blog-quote-txt-p.mb-7 {
    margin-bottom: 2px;
  }
  .blog-details-video.mb-35 {
    margin-bottom: 30px;
  }
  .blog-details-video.p-145 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .blog-video-btn {
    width: 60px;
    height: 60px;
    line-height: 60px;
  }
  .blog-nav.pb-35 {
    padding-bottom: 30px;
  }
  .blog-nav.px-30 {
    padding-left: 15px;
    padding-right: 15px;
  }
  .blog-nav-title.mb-9 {
    margin-bottom: 11px;
  }
  .blog-admin.p-25 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-admin.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-admin.mb-35 {
    margin-bottom: 30px;
  }
  .admin-name {
    font-size: 20px;
  }
  .blog-panel-title.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-single-comment {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .blog-single-comment.p-25 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-single-comment.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-single-comment.pl-60 {
    padding-left: 35px;
  }
  .blog-single-comment.pr-30 {
    padding-right: 20px;
  }
  .blog-comment-panel.mb-35 {
    margin-bottom: 30px;
  }
  .blog-comment-avatar.mr-20 {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .blog-comment-txt {
    width: 100%;
  }
  .blog-comment-name {
    font-size: 18px;
  }
  .blog-panel-body.p-30 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .blog-panel-body.px-30 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .blog-comment-textarea {
    height: 100px;
  }
  .blog-comment-txt .d-flex {
    flex-direction: column;
    align-items: start !important;
  }
  /* ====================================================
  Contact page
  ==================================================== */
  .contact-3.p-120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .contact-page-title {
    font-size: 20px;
  }
  .contact-page-title.mt--1 {
    margin-top: -2px;
  }
  .contact-page-title.mb-26 {
    margin-bottom: 27px;
  }
  .contact-textarea {
    height: 120px;
  }
  .contact-info-icon {
    width: 16px;
  }
  .contact-info-icon img {
    width: 70%;
  }
  .map {
    height: 200px;
  }
}
@media (max-width: 767px) {
  .counter-sub-txt.mb-0 br {
    display: inherit;
  }
  .shop-details-txt.pl-50 {
    padding-left: 0;
  }
  .course__tab-inner {
    padding: 30px 25px;
  }
  .single-content-wrapper.ml-30 {
    margin-left: 0;
  }
  .blog-details-bottom .btn-box-2.mr-25 {
    margin-right: 0;
  }
  .blog-content-wrapper.mr-30 {
    margin-right: 0;
  }
  .part-txt.pl-70 {
    padding-left: 0;
  }
  .uptomd-padding-20 {
    padding-top: 20px;
  }
  .uptomd-padding-30 {
    padding-top: 30px;
  }
  .uptomd-padding-50 {
    padding-top: 50px;
  }
  .part-img.pl-30 {
    padding-left: 0;
  }
  .single-content-wrapper.ml-20 {
    margin-left: 0;
  }
  .top-right {
    margin-top: 10px;
  }
  .kidba-features-wrapper.pl-60 {
    padding-left: 0;
  }
  .contact-info.kitba-contact {
    margin-bottom: 20px;
  }
  br {
    display: none;
  }
  .staff-card.mb-30 {
    margin-bottom: 30px;
  }
  .spacetopbottomxs {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .pl-30.contact-wrapp {
    padding-left: 0;
  }
  .single-content-wrapper.mr-20 {
    margin-right: 0;
  }
  .about {
    background-position: top right;
  }
  .feature-img.ml-30 {
    margin-left: 0;
  }
}

/*# sourceMappingURL=style.css.map */
/* yusuf */
/* =========================================================
   ELINA KINDER GARTEN HEADER
   FINAL RESPONSIVE HEADER
   ========================================================= */


/* =========================================================
   HEADER
   ========================================================= */

.elina-header {
    width: 100%;
    height: 78px;
    background: #ffffff;
    position: relative;
    z-index: 99999;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.04);
}

.elina-header-inner {
    width: 100%;
    max-width: 1320px;
    height: 78px;
    margin: 0 auto;

    padding: 0 25px;

    display: flex;
    align-items: center;
}


/* =========================================================
   LOGO
   ========================================================= */

.elina-logo {
    width: 155px;
    flex: 0 0 155px;

    display: flex;
    align-items: center;

    text-decoration: none;
}

.elina-logo img {
    width: auto;
    max-width: 125px;
    max-height: 55px;

    display: block;
}


/* =========================================================
   DESKTOP NAVIGATION
   ========================================================= */

.elina-nav {
    flex: 1;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.elina-menu {
    height: 100%;

    margin: 0;
    padding: 0;

    list-style: none;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    gap: 4px;
}


/* Menu item */

.elina-menu-item {
    position: relative;
    list-style: none;
}


/* Normal menu links + dropdown buttons */

.elina-menu-item > a,
.elina-dropdown-toggle {

    height: 78px;

    padding: 0 16px;

    border: 0;
    background: transparent;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

    font-family: "Roboto", sans-serif;
    font-size: 15px;
    font-weight: 600;

    line-height: 1;
    text-transform: uppercase;

    color: #071d2b;

    text-decoration: none;

    cursor: pointer;

    transition: all 0.25s ease;
}


/* Hover */

.elina-menu-item > a:hover,
.elina-dropdown-toggle:hover {
    color: #65c93a;
}


/* =========================================================
   ARROW
   ========================================================= */

.elina-arrow {
    width: 7px;
    height: 7px;

    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform: rotate(45deg);
    position: relative;
    top: -2px;

    transition: transform 0.25s ease;
}


/* Arrow when dropdown open */

.elina-has-dropdown.is-open > .elina-dropdown-toggle .elina-arrow {
    transform: rotate(225deg);
    top: 2px;
}


/* =========================================================
   DESKTOP DROPDOWN
   ========================================================= */

.elina-dropdown {

    position: absolute;

    top: calc(100% - 1px);
    left: 50%;

    width: 220px;

    transform: translateX(-50%) translateY(10px);

    margin: 0;
    padding: 8px 0;

    list-style: none;

    background: #ffffff;

    border-top: 3px solid #70d33a;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        visibility 0.2s ease;

    z-index: 100000;
}


/* Desktop dropdown open */

.elina-has-dropdown.is-open > .elina-dropdown {

    opacity: 1;
    visibility: visible;

    pointer-events: auto;

    transform: translateX(-50%) translateY(0);
}


/* Dropdown item */

.elina-dropdown li {
    width: 100%;
    margin: 0;
    padding: 0;

    list-style: none;
}


/* Dropdown link */

.elina-dropdown li a {

    display: flex;

    width: 100%;

    padding: 11px 18px;

    color: #333333;

    background: #ffffff;

    font-family: "Roboto", sans-serif;

    font-size: 14px;
    font-weight: 500;

    line-height: 20px;

    text-decoration: none;

    transition:
        color 0.2s ease,
        background 0.2s ease,
        padding-left 0.2s ease;
}


/* Dropdown hover */

.elina-dropdown li a:hover {

    color: #ffffff;

    background: #70d33a;

    padding-left: 23px;
}


/* =========================================================
   MOBILE BUTTON
   ========================================================= */

.elina-mobile-toggle {

    display: none;

    width: 42px;
    height: 42px;

    padding: 0;
    margin: 0;

    border: 0;
    outline: 0;

    background: #70d33a;

    border-radius: 2px;

    cursor: pointer;

    align-items: center;
    justify-content: center;

    flex-direction: column;

    gap: 4px;
}


/* Hamburger lines */

.elina-mobile-toggle span {

    display: block;

    width: 20px;
    height: 2px;

    background: #ffffff;

    border-radius: 2px;

    transition: all 0.25s ease;
}


/* Hamburger open animation */

.elina-mobile-toggle.is-open span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}

.elina-mobile-toggle.is-open span:nth-child(2) {
    opacity: 0;
}

.elina-mobile-toggle.is-open span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199px) and (min-width: 992px) {

    .elina-header-inner {
        padding: 0 18px;
    }

    .elina-logo {
        width: 135px;
        flex-basis: 135px;
    }

    .elina-logo img {
        max-width: 115px;
    }

    .elina-menu-item > a,
    .elina-dropdown-toggle {
        padding: 0 10px;
        font-size: 13px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 991px) {

    /* Header */
    .elina-header {
        height: 62px;

        position: relative;
        z-index: 99999;
    }

    .elina-header-inner {

        height: 62px;

        padding: 0 15px;

        position: relative;

        display: flex;
        align-items: center;
        justify-content: space-between;
    }


    /* Logo */

    .elina-logo {

        width: auto;
        flex: 0 0 auto;

        display: flex;
        align-items: center;
    }

    .elina-logo img {

        max-width: 110px;
        max-height: 43px;

        width: auto;
    }


    /* Hamburger */

    .elina-mobile-toggle {

        display: flex;

        flex: 0 0 42px;
    }


    /* =====================================================
       MOBILE NAVIGATION

       IMPORTANT:
       position:absolute means opening menu will NOT
       push the hero section downward.
       ===================================================== */

    .elina-nav {

        position: absolute;

        top: 62px;
        left: 0;

        width: 100%;

        height: auto;

        display: block;

        background: transparent;

        z-index: 99998;

        opacity: 0;
        visibility: hidden;

        pointer-events: none;

        transform: translateY(-5px);

        transition:
            opacity 0.2s ease,
            visibility 0.2s ease,
            transform 0.2s ease;
    }


    /* Mobile nav open */

    .elina-nav.is-open {

        opacity: 1;
        visibility: visible;

        pointer-events: auto;

        transform: translateY(0);
    }


    /* Main mobile menu */

    .elina-menu {

        width: calc(100% - 30px);

        max-height: calc(100vh - 75px);

        overflow-y: auto;

        margin: 0 15px;
        padding: 7px 10px;

        display: block;

        background: linear-gradient(
            135deg,
            #78d638 0%,
            #24ca83 100%
        );

        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);

        border-radius: 0;

        list-style: none;
    }


    /* Menu item */

    .elina-menu-item {

        width: 100%;

        margin: 0;
        padding: 0;

        display: block;
    }


    /* Mobile normal links */

    .elina-menu-item > a,
    .elina-dropdown-toggle {

        width: 100%;
        height: auto;

        min-height: 40px;

        padding: 9px 12px;

        justify-content: space-between;

        color: #ffffff;

        font-size: 13px;
        font-weight: 600;

        text-transform: uppercase;

        background: transparent;

        border: 0;

        text-align: left;
    }


    /* Hover */

    .elina-menu-item > a:hover,
    .elina-dropdown-toggle:hover {

        color: #ffffff;

        background: rgba(255, 255, 255, 0.12);
    }


    /* =====================================================
       MOBILE DROPDOWN

       It stays INSIDE the absolute menu, therefore
       hero position never changes.
       ===================================================== */

    .elina-dropdown {

        position: static;

        width: 100%;

        transform: none !important;

        margin: 0;

        padding: 0;

        background: rgba(255, 255, 255, 0.97);

        border: 0;

        box-shadow: none;

        opacity: 1;
        visibility: visible;

        pointer-events: auto;

        display: none;
    }


    /* Open mobile dropdown */

    .elina-has-dropdown.is-open > .elina-dropdown {

        display: block;

        opacity: 1;
        visibility: visible;
    }


    /* Mobile submenu */

    .elina-dropdown li a {

        min-height: 38px;

        padding: 9px 18px;

        color: #333333;

        background: #ffffff;

        font-size: 13px;

        font-weight: 500;

        line-height: 20px;
    }


    .elina-dropdown li a:hover {

        color: #ffffff;

        background: #70d33a;

        padding-left: 22px;
    }


    /* Mobile arrow */

    .elina-arrow {

        width: 7px;
        height: 7px;

        border-width: 2px;

        border-color: #ffffff;

        flex-shrink: 0;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-header {
        height: 58px;
    }

    .elina-header-inner {
        height: 58px;

        padding: 0 12px;
    }

    .elina-logo img {
        max-width: 105px;
        max-height: 40px;
    }

    .elina-mobile-toggle {
        width: 38px;
        height: 38px;

        flex-basis: 38px;
    }

    .elina-mobile-toggle span {
        width: 19px;
    }

    .elina-nav {
        top: 58px;
    }

    .elina-menu {
        width: calc(100% - 24px);
        margin-left: 12px;
        margin-right: 12px;
    }
}
/* =========================================================
   DESKTOP - PERFECT LOGO / MENU ALIGNMENT
   ========================================================= */

@media (min-width: 992px) {

    .elina-header-inner {
        max-width: 1150px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .elina-logo {
        width: 145px;
        flex: 0 0 145px;
    }

    .elina-logo img {
        max-width: 125px;
    }

    .elina-nav {
        justify-content: flex-start;
    }

    .elina-menu {
        margin-left: 15px;
    }
}
/* =========================================================
   ELINA KINDER GARTEN
   FINAL RESPONSIVE HEADER + LOGO
   ========================================================= */


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 1200px) {

    .elina-header {
        height: 82px !important;
    }

    .elina-header-inner {
        height: 82px !important;

        max-width: 1250px !important;

        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Logo */
    .elina-logo {
        width: 180px !important;
        flex: 0 0 180px !important;

        height: 82px !important;

        display: flex !important;
        align-items: center !important;
    }

    .elina-logo img {
        width: 180px !important;
        max-width: none !important;

        height: auto !important;
        max-height: 70px !important;

        object-fit: contain !important;
        display: block !important;
    }

    /* Menu */
    .elina-nav {
        justify-content: flex-start !important;
    }

    .elina-menu {
        margin-left: 5px !important;
    }
}


/* =========================================================
   LAPTOP / SMALL DESKTOP
   ========================================================= */

@media (min-width: 992px) and (max-width: 1199px) {

    .elina-header {
        height: 78px !important;
    }

    .elina-header-inner {
        height: 78px !important;

        max-width: 1100px !important;

        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Logo */
    .elina-logo {
        width: 155px !important;
        flex: 0 0 155px !important;

        height: 78px !important;

        display: flex !important;
        align-items: center !important;
    }

    .elina-logo img {
        width: 155px !important;
        max-width: none !important;

        height: auto !important;
        max-height: 64px !important;

        object-fit: contain !important;
        display: block !important;
    }

    /* Menu */
    .elina-nav {
        justify-content: flex-start !important;
    }

    .elina-menu {
        margin-left: 0 !important;
    }

    .elina-menu-item > a,
    .elina-dropdown-toggle {
        padding-left: 10px !important;
        padding-right: 10px !important;

        font-size: 13px !important;
    }
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 991px) {

    .elina-header {
        height: 64px !important;
    }

    .elina-header-inner {
        height: 64px !important;

        padding-left: 15px !important;
        padding-right: 15px !important;

        max-width: none !important;
    }

    /* Logo */
    .elina-logo {
        width: 170px !important;
        flex: 0 0 170px !important;

        height: 64px !important;

        display: flex !important;
        align-items: center !important;
    }

    .elina-logo img {
        width: 170px !important;
        max-width: none !important;

        height: auto !important;
        max-height: 55px !important;

        object-fit: contain !important;
        display: block !important;
    }

    /* Hamburger */
    .elina-mobile-toggle {
        width: 42px !important;
        height: 42px !important;

        flex: 0 0 42px !important;
    }

    /* Mobile dropdown position */
    .elina-nav {
        top: 64px !important;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-header {
        height: 60px !important;
    }

    .elina-header-inner {
        height: 60px !important;

        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Logo */
    .elina-logo {
        width: 155px !important;
        flex: 0 0 155px !important;

        height: 60px !important;
    }

    .elina-logo img {
        width: 155px !important;

        max-width: none !important;
        max-height: 52px !important;
    }

    /* Hamburger */
    .elina-mobile-toggle {
        width: 40px !important;
        height: 40px !important;

        flex-basis: 40px !important;
    }

    /* Dropdown starts exactly below header */
    .elina-nav {
        top: 60px !important;
    }
}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media (max-width: 380px) {

    .elina-logo {
        width: 145px !important;
        flex-basis: 145px !important;
    }

    .elina-logo img {
        width: 145px !important;
    }
}
/* =========================================================
   ELINA KINDER GARTEN - HOME SLIDER
   ========================================================= */

.elina-slider {
    width: 100%;
    height: 610px;

    position: relative;

    overflow: hidden;

    background: #f3f3f3;
}


/* =========================================================
   SLIDES
   ========================================================= */

.elina-slides {
    width: 100%;
    height: 100%;

    position: relative;
}

.elina-slide {
    width: 100%;
    height: 100%;

    position: absolute;
    top: 0;
    left: 0;

    opacity: 0;
    visibility: hidden;

    transition:
        opacity 0.7s ease,
        visibility 0.7s ease;
}

.elina-slide.active {
    opacity: 1;
    visibility: visible;

    z-index: 2;
}


/* =========================================================
   IMAGE
   ========================================================= */

.elina-slide-image {
    width: 100%;
    height: 100%;

    position: absolute;
    inset: 0;
}

.elina-slide-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;
}


/* =========================================================
   OVERLAY
   ========================================================= */

.elina-slide-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.58) 0%,
            rgba(0, 0, 0, 0.35) 42%,
            rgba(0, 0, 0, 0.08) 75%,
            rgba(0, 0, 0, 0.02) 100%
        );

    z-index: 1;
}


/* =========================================================
   CONTENT
   ========================================================= */

.elina-slide-content {
    width: 100%;
    max-width: 1320px;

    padding: 0 60px;

    position: relative;
    z-index: 3;

    height: 100%;

    margin: 0 auto;

    display: flex;
    flex-direction: column;

    justify-content: center;
    align-items: flex-start;
}


/* Small heading */

.elina-slide-small-title {

    margin-bottom: 14px;

    color: #ffffff;

    font-family: "Roboto", sans-serif;

    font-size: 22px;
    font-weight: 400;

    line-height: 1.3;
}


/* Main heading */

.elina-slide-content h1,
.elina-slide-content h2 {

    max-width: 750px;

    margin: 0 0 18px;

    color: #ffffff;

    font-family: "Roboto", sans-serif;

    font-size: clamp(48px, 5vw, 76px);

    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -1px;
}


/* Highlight */

.elina-slide-content h1 span,
.elina-slide-content h2 span {
    color: #ffffff;
}


/* Paragraph */

.elina-slide-content p {

    max-width: 590px;

    margin: 0 0 30px;

    color: #ffffff;

    font-family: "Roboto", sans-serif;

    font-size: 18px;

    font-weight: 400;

    line-height: 1.65;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.elina-slide-buttons {

    display: flex;

    align-items: center;

    gap: 18px;

    flex-wrap: wrap;
}

.elina-btn {

    min-width: 180px;

    min-height: 56px;

    padding: 0 25px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    font-family: "Roboto", sans-serif;

    font-size: 14px;

    font-weight: 700;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}


/* Primary */

.elina-btn-primary {

    color: #ffffff;

    background: #ff9d1c;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.elina-btn-primary:hover {

    color: #ffffff;

    background: #70d33a;

    transform: translateY(-2px);
}


/* Secondary */

.elina-btn-secondary {

    color: #ffffff;

    background: #21b9d0;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.elina-btn-secondary:hover {

    color: #ffffff;

    background: #70d33a;

    transform: translateY(-2px);
}


/* =========================================================
   ARROWS
   ========================================================= */

.elina-slider-arrow {

    width: 48px;
    height: 48px;

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    z-index: 10;

    border: 0;

    background: rgba(255, 255, 255, 0.22);

    color: #ffffff;

    font-size: 22px;

    display: flex;

    align-items: center;
    justify-content: center;

    cursor: pointer;

    transition: all 0.3s ease;
}

.elina-slider-arrow:hover {

    background: #70d33a;

    color: #ffffff;
}

.elina-slider-prev {
    left: 25px;
}

.elina-slider-next {
    right: 25px;
}


/* =========================================================
   DOTS
   ========================================================= */

.elina-slider-dots {

    position: absolute;

    left: 50%;

    bottom: 25px;

    transform: translateX(-50%);

    z-index: 10;

    display: flex;

    align-items: center;

    gap: 8px;
}

.elina-slider-dots button {

    width: 10px;
    height: 10px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.55);

    cursor: pointer;

    transition: all 0.3s ease;
}

.elina-slider-dots button.active {

    width: 28px;

    border-radius: 10px;

    background: #70d33a;
}


/* =========================================================
   LAPTOP
   ========================================================= */

@media (max-width: 1199px) {

    .elina-slider {
        height: 560px;
    }

    .elina-slide-content {
        padding: 0 50px;
    }

    .elina-slide-content h1,
    .elina-slide-content h2 {
        font-size: 60px;
    }

    .elina-slide-content p {
        font-size: 17px;
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .elina-slider {
        height: 540px;
    }

    .elina-slide-content {
        padding: 0 45px;
    }

    .elina-slide-content h1,
    .elina-slide-content h2 {
        font-size: 52px;
    }

    .elina-slide-small-title {
        font-size: 20px;
    }

    .elina-slide-content p {
        max-width: 500px;
        font-size: 16px;
    }

    .elina-slider-arrow {
        width: 42px;
        height: 42px;
    }

    .elina-slider-prev {
        left: 15px;
    }

    .elina-slider-next {
        right: 15px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .elina-slider {
        height: 560px;
    }

    .elina-slide-image img {
        object-position: 65% center;
    }

    .elina-slide-overlay {

        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, 0.62) 0%,
                rgba(0, 0, 0, 0.45) 55%,
                rgba(0, 0, 0, 0.18) 100%
            );
    }

    .elina-slide-content {

        padding: 0 28px;

        justify-content: center;
    }

    .elina-slide-small-title {

        margin-bottom: 10px;

        font-size: 17px;
    }

    .elina-slide-content h1,
    .elina-slide-content h2 {

        max-width: 100%;

        margin-bottom: 15px;

        font-size: 42px;

        line-height: 1.08;

        letter-spacing: -0.5px;
    }

    .elina-slide-content p {

        max-width: 100%;

        margin-bottom: 25px;

        font-size: 15px;

        line-height: 1.55;
    }

    .elina-slide-buttons {

        width: 100%;

        gap: 10px;
    }

    .elina-btn {

        min-width: 0;

        width: auto;

        min-height: 48px;

        padding: 0 18px;

        font-size: 12px;
    }

    .elina-slider-arrow {

        display: none;
    }

    .elina-slider-dots {
        bottom: 18px;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-slider {
        height: 520px;
    }

    .elina-slide-image img {
        object-position: 67% center;
    }

    .elina-slide-content {
        padding: 0 22px;
    }

    .elina-slide-small-title {
        font-size: 15px;
    }

    .elina-slide-content h1,
    .elina-slide-content h2 {
        font-size: 35px;
    }

    .elina-slide-content p {
        font-size: 14px;
        line-height: 1.5;
    }

    .elina-slide-buttons {
        gap: 8px;
    }

    .elina-btn {
        min-height: 46px;
        padding: 0 15px;
        font-size: 11px;
    }
}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media (max-width: 380px) {

    .elina-slider {
        height: 500px;
    }

    .elina-slide-content {
        padding: 0 18px;
    }

    .elina-slide-content h1,
    .elina-slide-content h2 {
        font-size: 31px;
    }

    .elina-slide-content p {
        font-size: 13px;
    }

    .elina-btn {
        min-height: 44px;
        padding: 0 12px;
    }
}
/* Feature image - increase height from bottom */
.feature-img img {
    width: 100%;
    height: 480px;
    object-fit: cover;
    display: block;
}
.elina-about-image {
    width: 100%;
    padding-right: 30px;
}

.elina-about-image img {
    width: 100%;
    height: 560px;
    display: block;
    object-fit: cover;
    object-position: center;
}


/* Tablet */
@media (max-width: 991px) {

    .elina-about-image {
        padding-right: 0;
        margin-bottom: 50px;
    }

    .elina-about-image img {
        height: 500px;
    }
}


/* Mobile */
@media (max-width: 575px) {

    .elina-about-image img {
        height: 400px;
    }
}
/* =========================================================
   ELINA KINDER GARTEN - ABOUT SECTION
   FULL WIDTH IMAGE + RIGHT CONTENT
   ========================================================= */

.elina-about-section {
    position: relative;
    width: 100%;
    min-height: 650px;

    overflow: hidden;

    display: flex;
    align-items: center;

    padding: 100px 0;
}


/* Full width image */

.elina-about-image-bg {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    background-image: url("../images/slider/about2.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left center;

    z-index: 0;
}


/* Soft overlay on right side */

.elina-about-image-bg::after {
    content: "";

    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 25%,
        rgba(255, 255, 255, 0.35) 48%,
        rgba(255, 255, 255, 0.92) 70%,
        rgba(255, 255, 255, 0.98) 100%
    );
}


/* Content */

.elina-about-section .container {
    position: relative;
    z-index: 2;
}

.elina-about-content {
    padding: 55px 45px;
}


/* Heading */

.elina-about-content .about-title {
    margin-top: 0;

    font-size: 42px;
    line-height: 1.15;
}


/* Paragraph */

.elina-about-content p {
    line-height: 1.7;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .elina-about-section {
        min-height: auto;

        padding: 70px 0;
    }

    .elina-about-image-bg {
        background-position: center center;
    }

    .elina-about-image-bg::after {
        background: rgba(255, 255, 255, 0.82);
    }

    .elina-about-content {
        padding: 35px 25px;
    }

    .elina-about-content .about-title {
        font-size: 36px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-about-section {
        padding: 50px 0;
    }

    .elina-about-image-bg {
        background-position: 35% center;
    }

    .elina-about-image-bg::after {
        background: rgba(255, 255, 255, 0.88);
    }

    .elina-about-content {
        padding: 25px 15px;
    }

    .elina-about-content .about-title {
        font-size: 30px;
    }

    .elina-about-content p {
        font-size: 14px;
    }
}
/* =========================================================
   MOBILE - ABOUT SECTION
   IMAGE TOP + CONTENT BELOW
   ========================================================= */

@media (max-width: 767px) {

    .elina-about-section {
        display: block;
        min-height: auto;

        padding: 0 !important;

        background: #ffffff;
    }


    /* Image */

    .elina-about-image-bg {
        position: relative;

        width: 100%;
        height: 360px;

        background-size: cover;
        background-position: center center;

        z-index: 1;
    }


    /* Remove desktop gradient on mobile */

    .elina-about-image-bg::after {
        display: none;
    }


    /* Content */

    .elina-about-section .container {
        width: 100%;
        max-width: 100%;

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


    .elina-about-content {
        padding: 50px 10px 60px;

        background: #ffffff;
    }


    /* Heading */

    .elina-about-content .about-title {
        margin-top: 0;

        font-size: 30px;
        line-height: 1.2;
    }


    /* Paragraph */

    .elina-about-content p {
        font-size: 15px;

        line-height: 1.65;
    }


    /* About points */

    .elina-about-content .about-list {
        font-size: 14px;

        line-height: 1.6;

        margin-bottom: 12px;
    }


    /* Button */

    .elina-about-content .btn-box {
        padding-top: 30px;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-about-image-bg {
        height: 330px;

        background-position: 35% center;
    }


    .elina-about-content {
        padding: 40px 5px 50px;
    }


    .elina-about-content .about-title {
        font-size: 28px;
    }


    .elina-about-content p {
        font-size: 14px;
    }


    .elina-about-content .about-list {
        font-size: 13px;
    }
}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

    .elina-about-image-bg {
        height: 300px;
    }

    .elina-about-content .about-title {
        font-size: 25px;
    }
}
/* =========================================================
   ELINA KINDER GARTEN
   OUR POPULAR CLASSES
   ========================================================= */

.elina-classes-section {
    padding: 110px 0 90px;
    background: #ffffff;
}


/* =========================
   SECTION HEADING
   ========================= */

.elina-classes-heading {
    max-width: 650px;
    margin: 0 auto 55px;
    text-align: center;
}

.elina-classes-heading h2 {
    margin: 0 0 18px;

    color: #073b4c;

    font-size: 38px;
    line-height: 1.2;
    font-weight: 700;
}

.elina-classes-heading p {
    margin: 0 auto;

    color: #777777;

    font-size: 14px;
    line-height: 1.7;

    max-width: 600px;
}


/* =========================
   GRID
   ========================= */

.elina-classes-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 30px;
}


/* =========================
   CARD
   ========================= */

.elina-class-card {
    background: #ffffff;

    border: 1px solid #eeeeee;

    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.06);

    transition: all 0.3s ease;

    overflow: hidden;
}

.elina-class-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);
}


/* =========================
   IMAGE
   ========================= */

.elina-class-image {
    width: 100%;
    height: 215px;

    overflow: hidden;
}

.elina-class-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.elina-class-card:hover .elina-class-image img {
    transform: scale(1.05);
}


/* =========================
   CONTENT
   ========================= */

.elina-class-content {
    padding: 24px 25px 22px;
}


/* =========================
   CATEGORY
   ========================= */

.elina-class-category {
    display: inline-block;

    padding: 5px 11px;

    margin-bottom: 12px;

    background: linear-gradient(
        135deg,
        #7ed321,
        #25c68a
    );

    color: #ffffff;

    font-size: 10px;
    line-height: 1;

    font-weight: 600;

    text-transform: uppercase;

    border-radius: 2px;
}


/* =========================
   TITLE
   ========================= */

.elina-class-content h3 {
    margin: 0 0 6px;

    font-size: 20px;

    line-height: 1.3;

    font-weight: 700;
}

.elina-class-content h3 a {
    color: #073b4c;

    text-decoration: none;

    transition: color 0.3s ease;
}

.elina-class-content h3 a:hover {
    color: #55c98b;
}


/* =========================
   TIME / SUBTITLE
   ========================= */

.elina-class-time {
    display: block;

    margin-bottom: 17px;

    color: #777777;

    font-size: 11px;
}


/* =========================
   DESCRIPTION
   ========================= */

.elina-class-content p {
    margin: 0;

    min-height: 58px;

    color: #777777;

    font-size: 12px;

    line-height: 1.7;
}


/* =========================
   META
   ========================= */

.elina-class-meta {
    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-top: 22px;

    padding-top: 17px;

    border-top: 1px solid #eeeeee;
}

.elina-class-meta > div {
    width: 50%;

    text-align: center;
}

.elina-class-meta > div + div {
    border-left: 1px solid #eeeeee;
}

.elina-class-meta small {
    display: block;

    margin-bottom: 5px;

    color: #999999;

    font-size: 10px;

    text-transform: uppercase;
}

.elina-class-meta strong {
    display: block;

    color: #073b4c;

    font-size: 12px;

    font-weight: 600;
}


/* =========================
   BUTTON
   ========================= */

.elina-classes-button {
    text-align: center;

    margin-top: 40px;
}

.elina-classes-button a {
    display: inline-block;

    padding: 13px 25px;

    background: linear-gradient(
        135deg,
        #7ed321,
        #25c68a
    );

    color: #ffffff;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    text-decoration: none;

    box-shadow: 0 5px 15px rgba(37, 198, 138, 0.25);

    transition: all 0.3s ease;
}

.elina-classes-button a:hover {
    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(37, 198, 138, 0.35);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .elina-classes-section {
        padding: 90px 0 70px;
    }

    .elina-classes-grid {
        grid-template-columns: repeat(2, 1fr);

        gap: 25px;
    }

    .elina-classes-heading h2 {
        font-size: 34px;
    }

    .elina-class-image {
        height: 220px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-classes-section {
        padding: 70px 15px 60px;
    }

    .elina-classes-heading {
        margin-bottom: 35px;
    }

    .elina-classes-heading h2 {
        font-size: 28px;
    }

    .elina-classes-heading p {
        font-size: 13px;
    }

    .elina-classes-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    .elina-class-image {
        height: 230px;
    }

    .elina-class-content {
        padding: 22px 20px;
    }

    .elina-class-content h3 {
        font-size: 19px;
    }

    .elina-class-content p {
        min-height: auto;
    }
}
/* =========================
   BIGGER CLASS SECTION TEXT
   ========================= */

.elina-classes-heading h2 {
    font-size: 42px;
}

.elina-classes-heading p {
    font-size: 16px;
}


/* Card content */

.elina-class-content {
    padding: 28px 28px 25px;
}


/* Category */

.elina-class-category {
    font-size: 12px;
    padding: 6px 12px;
}


/* Class title */

.elina-class-content h3 {
    font-size: 23px;
    line-height: 1.35;
    margin-bottom: 8px;
}


/* Subtitle */

.elina-class-time {
    font-size: 13px;
    margin-bottom: 18px;
}


/* Description */

.elina-class-content p {
    font-size: 14px;
    line-height: 1.7;
    min-height: 70px;
}


/* Bottom information */

.elina-class-meta small {
    font-size: 11px;
}

.elina-class-meta strong {
    font-size: 13px;
}
@media (max-width: 575px) {

    .elina-classes-heading h2 {
        font-size: 32px;
    }

    .elina-classes-heading p {
        font-size: 14px;
    }

    .elina-class-content {
        padding: 25px 22px;
    }

    .elina-class-category {
        font-size: 11px;
    }

    .elina-class-content h3 {
        font-size: 22px;
    }

    .elina-class-time {
        font-size: 13px;
    }

    .elina-class-content p {
        font-size: 14px;
        line-height: 1.7;
    }

    .elina-class-meta small {
        font-size: 10px;
    }

    .elina-class-meta strong {
        font-size: 12px;
    }
}
/* =========================================================
   WHY CHOOSE ELINA KINDER GARTEN
   ========================================================= */

.elina-why-section {
    padding: 60px 0 80px;
    background: #f8fbf7;
}


/* Heading */

.elina-why-heading {
    max-width: 700px;
    margin: 0 auto 60px;
    text-align: center;
}

.elina-why-heading > span {
    display: inline-block;

    margin-bottom: 12px;

    color: #25c68a;

    font-size: 14px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 1px;
}

.elina-why-heading h2 {
    margin: 0 0 18px;

    color: #073b4c;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 700;
}

.elina-why-heading p {
    margin: 0;

    color: #777;

    font-size: 15px;
    line-height: 1.7;
}


/* Card */

.elina-why-card {
    height: 100%;

    padding: 35px 28px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #eeeeee;

    transition: all 0.3s ease;
}

.elina-why-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.09);
}


/* Icon */

.elina-why-icon {
    width: 75px;
    height: 75px;

    margin: 0 auto 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #7ed321,
        #25c68a
    );

    color: #ffffff;

    font-size: 32px;
}


/* Card Heading */

.elina-why-card h3 {
    margin: 0 0 15px;

    color: #073b4c;

    font-size: 21px;
    line-height: 1.35;
    font-weight: 700;
}


/* Card Text */

.elina-why-card p {
    margin: 0;

    color: #777;

    font-size: 14px;
    line-height: 1.7;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .elina-why-section {
        padding: 90px 0 80px;
    }

    .elina-why-heading h2 {
        font-size: 36px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .elina-why-section {
        padding: 50px 15px 70px;
    }

    .elina-why-heading {
        margin-bottom: 40px;
    }

    .elina-why-heading h2 {
        font-size: 30px;
    }

    .elina-why-heading p {
        font-size: 14px;
    }

    .elina-why-card {
        padding: 30px 22px;
    }

    .elina-why-card h3 {
        font-size: 20px;
    }

    .elina-why-card p {
        font-size: 14px;
    }

}
/* =========================================
   LEARNING APPROACH
========================================= */

.learning-approach {
    padding-top: 30px;
    padding-bottom: 90px;
    background: #ffffff;
}

.learning-image {
    width: 100%;
    height: 430px;
    overflow: hidden;
    border-radius: 8px;
}

.learning-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.learning-content {
    padding-left: 45px;
}

.learning-subtitle {
    display: inline-block;
    color: #45c83a;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.learning-content h2 {
    color: #063b52;
    font-size: 38px;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 20px;
}

.learning-content > p {
    color: #666;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 25px;
}

.learning-points {
    margin-bottom: 30px;
}

.learning-point {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 18px;
}

.learning-point > i {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background: #45c83a;
    color: #fff;
    font-size: 16px;
    margin-top: 3px;
}

.learning-point h4 {
    color: #063b52;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 5px;
}

.learning-point p {
    color: #666;
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

.learning-content .def-btn {
    display: inline-block;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .learning-approach {
        padding-top: 25px;
        padding-bottom: 70px;
    }

    .learning-content {
        padding-left: 25px;
    }

    .learning-content h2 {
        font-size: 32px;
    }

    .learning-image {
        height: 400px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .learning-approach {
        padding-top: 15px;
        padding-bottom: 55px;
    }

    .learning-image {
        height: 300px;
        margin-bottom: 30px;
    }

    .learning-content {
        padding-left: 0;
    }

    .learning-content h2 {
        font-size: 28px;
        line-height: 1.25;
        margin-bottom: 15px;
    }

    .learning-content > p {
        font-size: 15px;
        line-height: 1.7;
    }

    .learning-point {
        gap: 12px;
        margin-bottom: 16px;
    }

    .learning-point h4 {
        font-size: 17px;
    }

    .learning-point p {
        font-size: 14px;
    }
}
/* =========================================
   MAIN SCHOOL STORY HEADING
========================================= */

.school-story-heading {
    max-width: 720px;
    margin: 0 auto 60px;
    text-align: center;
}

.school-story-heading h2 {
    color: #063b52;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 700;
    margin: 0 0 15px;
}

.school-story-heading p {
    max-width: 650px;
    margin: 0 auto;
    color: #777;
    font-size: 15px;
    line-height: 1.8;
}

.school-story-heading .story-divider {
    margin: 20px auto 0;
}


/* MOBILE */
@media (max-width: 767px) {

    .school-story-heading {
        margin-bottom: 40px;
    }

    .school-story-heading h2 {
        font-size: 28px;
        line-height: 1.3;
    }

    .school-story-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

}
/* =========================================================
   SCHOOL FACILITIES
========================================================= */

.school-facilities {
    position: relative;
    padding: 70px 0 80px;
    background: linear-gradient(135deg, #48a8ee 0%, #08cbb0 100%);
    overflow: hidden;
}


/* -------------------------
   Heading
------------------------- */

.facility-heading {
    max-width: 760px;
    margin: 0 auto 48px;
    text-align: center;
}

.facility-small-title {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #ffffff;
    text-transform: uppercase;
}

.facility-heading h2 {
    margin: 0 0 15px;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    color: #ffffff;
}

.facility-heading p {
    max-width: 650px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.7;
    color: #ffffff;
}


/* -------------------------
   Cards Grid
------------------------- */

.facility-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    align-items: stretch;
}


/* -------------------------
   Card
------------------------- */

.facility-item {
    position: relative;
    background: #ffffff;
    border-radius: 0;
    overflow: visible;
    text-align: center;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.10);
    transition: all 0.35s ease;
}

.facility-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 45px rgba(0, 0, 0, 0.16);
}


/* -------------------------
   Image
------------------------- */

.facility-image {
    width: 100%;
    height: 230px;
    overflow: hidden;
    position: relative;
}

.facility-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.02),
        rgba(0, 0, 0, 0.12)
    );
    pointer-events: none;
}

.facility-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.facility-item:hover .facility-image img {
    transform: scale(1.06);
}


/* -------------------------
   Icon
------------------------- */

.facility-icon {
    position: relative;
    z-index: 2;

    width: 58px;
    height: 58px;

    margin: -29px auto 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #55d34a;

    border: 5px solid #ffffff;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.facility-item:nth-child(2) .facility-icon {
    background: #ff8b20;
}

.facility-item:nth-child(3) .facility-icon {
    background: #ef4f9a;
}

.facility-icon img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}


/* -------------------------
   Content
------------------------- */

.facility-content {
    min-height: 245px;
    padding: 24px 30px 30px;
}

.facility-content h3 {
    margin: 0 0 15px;
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
}

.facility-content h3 a {
    color: #062b45;
    text-decoration: none;
    transition: color 0.3s ease;
}

.facility-content h3 a:hover {
    color: #20bfae;
}

.facility-content p {
    margin: 0 auto 18px;
    max-width: 310px;
    font-size: 15px;
    line-height: 1.75;
    color: #687783;
}


/* -------------------------
   Learn More
------------------------- */

.facility-read-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    font-size: 14px;
    font-weight: 700;

    color: #20bfae;
    text-decoration: none;

    transition: all 0.3s ease;
}

.facility-read-more i {
    font-size: 15px;
    transition: transform 0.3s ease;
}

.facility-read-more:hover {
    color: #ff7b22;
}

.facility-read-more:hover i {
    transform: translateX(5px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .school-facilities {
        padding: 60px 0 70px;
    }

    .facility-heading {
        margin-bottom: 40px;
    }

    .facility-heading h2 {
        font-size: 36px;
    }

    .facility-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .facility-image {
        height: 220px;
    }

    .facility-content {
        padding-left: 22px;
        padding-right: 22px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .school-facilities {
        padding: 50px 15px 60px;
    }

    .facility-heading {
        margin-bottom: 35px;
    }

    .facility-small-title {
        font-size: 11px;
    }

    .facility-heading h2 {
        font-size: 30px;
        line-height: 1.2;
    }

    .facility-heading p {
        font-size: 14px;
        line-height: 1.65;
    }

    .facility-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .facility-item {
        width: 100%;
    }

    .facility-image {
        height: 220px;
    }

    .facility-content {
        min-height: auto;
        padding: 22px 25px 28px;
    }

    .facility-content h3 {
        font-size: 21px;
    }

    .facility-content p {
        font-size: 14px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .school-facilities {
        padding-left: 12px;
        padding-right: 12px;
    }

    .facility-heading h2 {
        font-size: 27px;
    }

    .facility-image {
        height: 205px;
    }

    .facility-content {
        padding-left: 20px;
        padding-right: 20px;
    }

}
/* =========================================
   ELINA KINDER GARTEN GALLERY
========================================= */

.elina-gallery-section {
    padding: 90px 0 100px;
    background: #ffffff;
}


/* Heading */

.elina-gallery-heading {
    max-width: 750px;
    margin: 0 auto 50px;
    text-align: center;
}

.elina-gallery-subtitle {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    color: #5fcf3d;
    text-transform: uppercase;
}

.elina-gallery-heading h2 {
    margin: 0 0 18px;
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
    color: #073b4c;
}

.elina-gallery-heading h2 span {
    color: #5fcf3d;
}

.elina-gallery-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
    color: #666;
}


/* Gallery Grid */

.elina-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}


/* Gallery Item */

.elina-gallery-item {
    position: relative;
    height: 300px;
    overflow: hidden;
    border-radius: 12px;
    background: #f5f5f5;
}

.elina-gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}


/* Overlay */

.elina-gallery-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    padding: 25px;

    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.78),
        rgba(0, 0, 0, 0.05)
    );

    opacity: 0;
    transform: translateY(15px);
    transition: all 0.4s ease;
}


/* Hover */

.elina-gallery-item:hover img {
    transform: scale(1.08);
}

.elina-gallery-item:hover .elina-gallery-overlay {
    opacity: 1;
    transform: translateY(0);
}


/* Overlay Text */

.elina-gallery-overlay span {
    display: block;
    margin-bottom: 6px;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #5fcf3d;
}

.elina-gallery-overlay h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    font-weight: 700;
}


/* Popup Button */

.elina-gallery-popup {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    background: #5fcf3d;

    color: #ffffff;
    font-size: 20px;

    flex-shrink: 0;
    transition: all 0.3s ease;
}

.elina-gallery-popup:hover {
    background: #ffffff;
    color: #5fcf3d;
}


/* Button */

.elina-gallery-button {
    text-align: center;
    margin-top: 45px;
}

.elina-gallery-button .def-btn {
    display: inline-block;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-gallery-section {
        padding: 75px 0 80px;
    }

    .elina-gallery-heading {
        margin-bottom: 40px;
    }

    .elina-gallery-heading h2 {
        font-size: 36px;
    }

    .elina-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .elina-gallery-item {
        height: 280px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .elina-gallery-section {
        padding: 60px 15px 70px;
    }

    .elina-gallery-heading {
        margin-bottom: 30px;
    }

    .elina-gallery-subtitle {
        font-size: 12px;
    }

    .elina-gallery-heading h2 {
        font-size: 29px;
    }

    .elina-gallery-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .elina-gallery-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .elina-gallery-item {
        height: 280px;
        border-radius: 10px;
    }

    /* Mobile par overlay visible rahega */
    .elina-gallery-overlay {
        opacity: 1;
        transform: translateY(0);
        padding: 18px;
    }

    .elina-gallery-overlay h3 {
        font-size: 18px;
    }

    .elina-gallery-popup {
        width: 42px;
        height: 42px;
        font-size: 17px;
    }

    .elina-gallery-button {
        margin-top: 35px;
    }

}
/* =========================================================
   ELINA KINDERGARTEN - SCHOOL STORY SECTION
   HTML STRUCTURE REMAINS UNCHANGED
========================================================= */

.school-story {
    position: relative;
    padding: 85px 0 100px;
    background: #ffffff;
    overflow: hidden;
}

/* Decorative background circles */

.school-story::before {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(53, 200, 120, 0.07);
    top: -140px;
    left: -150px;
}

.school-story::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 174, 35, 0.07);
    bottom: -120px;
    right: -130px;
}

.school-story .container {
    position: relative;
    z-index: 2;
}


/* =========================================================
   MAIN SECTION HEADING
========================================================= */

.school-story-heading {
    max-width: 760px;
    margin: 0 auto 65px;
    text-align: center;
}

.story-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.school-story-heading h2 {
    margin: 0 auto 18px;
    color: #073b56;
    font-size: 42px;
    line-height: 1.18;
    font-weight: 800;
}

.school-story-heading > p {
    max-width: 680px;
    margin: 0 auto;
    color: #6f7c83;
    font-size: 15px;
    line-height: 1.8;
}

.story-divider {
    width: 65px;
    height: 4px;
    margin: 22px 0 28px;
    border-radius: 20px;
    background: linear-gradient(
        90deg,
        #35c878 0%,
        #22b8d5 50%,
        #ffad20 100%
    );
}

.school-story-heading .story-divider {
    margin: 25px auto 0;
}


/* =========================================================
   FOUNDER ROW
========================================================= */

.founder-row {
    position: relative;
    margin-bottom: 85px;
}


/* =========================================================
   FOUNDER IMAGE
========================================================= */

.founder-image-wrap {
    position: relative;
    max-width: 440px;
    margin: 0 auto;
    padding: 15px;
}

/* Decorative shape behind image */

.founder-image-wrap::before {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    background: #35c878;
    opacity: 0.12;
    border-radius: 25px;
    top: -5px;
    left: -5px;
    z-index: 0;
}

.founder-image-wrap::after {
    content: "";
    position: absolute;
    width: 130px;
    height: 130px;
    background: #ffae23;
    opacity: 0.12;
    border-radius: 50%;
    bottom: -15px;
    right: -15px;
    z-index: 0;
}

.founder-image {
    position: relative;
    z-index: 1;
    height: 570px;
    overflow: hidden;
    border-radius: 22px;
    background: #f5f8f9;
    box-shadow: 0 20px 50px rgba(0, 47, 70, 0.14);
}

.founder-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.5s ease;
}

.founder-image:hover img {
    transform: scale(1.025);
}


/* =========================================================
   FOUNDER BADGE
========================================================= */

.founder-badge {
    position: absolute;
    z-index: 3;
    left: 35px;
    right: 35px;
    bottom: 35px;
    padding: 18px 22px;
    text-align: center;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(8px);
}

.founder-badge span {
    display: block;
    margin-bottom: 5px;
    color: #35c878;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.founder-badge strong {
    display: block;
    color: #073b56;
    font-size: 23px;
    line-height: 1.2;
    font-weight: 800;
}


/* =========================================================
   FOUNDER CONTENT
========================================================= */

.founder-content {
    padding: 35px 25px 35px 45px;
}

.founder-content h2 {
    max-width: 600px;
    margin: 0;
    color: #073b56;
    font-size: 36px;
    line-height: 1.25;
    font-weight: 800;
}

.founder-content .story-divider {
    margin-bottom: 25px;
}

.founder-content > p {
    margin-bottom: 17px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}

.founder-content > p strong {
    color: #073b56;
    font-weight: 700;
}


/* =========================================================
   FOUNDER HIGHLIGHT
========================================================= */

.founder-highlight {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    margin: 28px 0;
    padding: 24px;
    border-radius: 16px;
    background: linear-gradient(
        135deg,
        #f1fcf6 0%,
        #f8fcfd 100%
    );
    border-left: 4px solid #35c878;
    box-shadow: 0 8px 25px rgba(0, 70, 80, 0.06);
}

.founder-highlight > i {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 23px;
    box-shadow: 0 8px 18px rgba(53, 200, 120, 0.25);
}

.founder-highlight h4 {
    margin: 0 0 7px;
    color: #073b56;
    font-size: 18px;
    font-weight: 800;
}

.founder-highlight p {
    margin: 0;
    color: #6b797f;
    font-size: 13px;
    line-height: 1.7;
}


/* =========================================================
   ABOUT OUR SCHOOL
========================================================= */

.school-about-row {
    position: relative;
    padding: 60px 65px 65px;
    border-radius: 25px;
    background: #f7fbfc;
    border: 1px solid #edf3f5;
    box-shadow: 0 15px 45px rgba(0, 50, 70, 0.06);
}


/* About Heading */

.school-about-heading {
    max-width: 760px;
    margin: 0 auto 35px;
    text-align: center;
}

.school-about-heading h2 {
    margin: 0;
    color: #073b56;
    font-size: 38px;
    line-height: 1.2;
    font-weight: 800;
}

.school-about-heading .story-divider {
    margin: 22px auto 0;
}


/* About Content */

.school-about-content {
    max-width: 1000px;
    margin: 0 auto;
}

.school-about-content > p {
    margin-bottom: 18px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}

.school-about-content .lead-text {
    margin-bottom: 20px;
    color: #073b56;
    font-size: 19px;
    line-height: 1.7;
    font-weight: 600;
}


/* =========================================================
   SCHOOL VALUES
========================================================= */

.school-values {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin: 32px 0;
}

.school-value {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 22px;
    border-radius: 15px;
    background: #ffffff;
    border: 1px solid #edf1f3;
    box-shadow: 0 7px 22px rgba(0, 50, 70, 0.045);
    transition: all 0.3s ease;
}

.school-value:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(0, 50, 70, 0.09);
}


/* Value Icons */

.school-value > i {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 21px;
}

.school-value:nth-child(2) > i {
    background: #21b8d4;
}

.school-value:nth-child(3) > i {
    background: #ff9e20;
}

.school-value:nth-child(4) > i {
    background: #ed4c91;
}

.school-value h4 {
    margin: 0 0 6px;
    color: #073b56;
    font-size: 17px;
    font-weight: 800;
}

.school-value p {
    margin: 0;
    color: #758188;
    font-size: 13px;
    line-height: 1.65;
}


/* =========================================================
   PRINCIPAL MESSAGE
========================================================= */

.principal-message {
    position: relative;
    margin-top: 32px;
    padding: 25px 30px 25px 35px;
    background: #ffffff;
    border-radius: 15px;
    border-left: 4px solid #ffae23;
    box-shadow: 0 8px 25px rgba(0, 50, 70, 0.06);
}

.principal-message::before {
    content: "“";
    position: absolute;
    top: -10px;
    left: 15px;
    color: #ffae23;
    font-family: Georgia, serif;
    font-size: 65px;
    line-height: 1;
    opacity: 0.25;
}

.principal-message p {
    margin: 0 0 12px;
    color: #073b56;
    font-size: 17px;
    line-height: 1.7;
    font-weight: 600;
}

.principal-message strong {
    display: block;
    color: #073b56;
    font-size: 18px;
}

.principal-message span {
    display: block;
    margin-top: 3px;
    color: #35c878;
    font-size: 13px;
    font-weight: 600;
}


/* =========================================================
   LARGE TABLET
========================================================= */

@media (max-width: 1199px) {

    .founder-content {
        padding-left: 30px;
    }

    .founder-content h2 {
        font-size: 32px;
    }

    .founder-image {
        height: 530px;
    }

    .school-about-row {
        padding-left: 45px;
        padding-right: 45px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .school-story {
        padding: 70px 0 80px;
    }

    .school-story-heading {
        margin-bottom: 45px;
    }

    .school-story-heading h2 {
        font-size: 36px;
    }

    .founder-row {
        margin-bottom: 60px;
    }

    .founder-image-wrap {
        margin-bottom: 25px;
    }

    .founder-image {
        height: 520px;
    }

    .founder-content {
        padding: 20px 10px 20px 25px;
    }

    .founder-content h2 {
        font-size: 30px;
    }

    .school-about-row {
        padding: 45px 35px 50px;
    }

    .school-about-heading h2 {
        font-size: 34px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .school-story {
        padding: 55px 0 65px;
    }

    .school-story-heading {
        padding: 0 15px;
        margin-bottom: 35px;
    }

    .school-story-heading h2 {
        font-size: 30px;
        line-height: 1.25;
    }

    .school-story-heading > p {
        font-size: 14px;
        line-height: 1.7;
    }

    .founder-row {
        margin-bottom: 50px;
    }

    .founder-image-wrap {
        padding: 10px;
        max-width: 430px;
    }

    .founder-image {
        height: 480px;
        border-radius: 18px;
    }

    .founder-badge {
        left: 25px;
        right: 25px;
        bottom: 28px;
    }

    .founder-badge strong {
        font-size: 20px;
    }

    .founder-content {
        padding: 25px 10px 10px;
    }

    .founder-content h2 {
        font-size: 28px;
    }

    .founder-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .founder-highlight {
        padding: 20px;
    }

    .school-about-row {
        padding: 40px 20px 45px;
        border-radius: 18px;
    }

    .school-about-heading {
        margin-bottom: 28px;
    }

    .school-about-heading h2 {
        font-size: 28px;
        line-height: 1.25;
    }

    .school-about-content .lead-text {
        font-size: 17px;
    }

    .school-about-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .school-values {
        grid-template-columns: 1fr;
        gap: 12px;
        margin: 25px 0;
    }

    .school-value {
        padding: 18px;
    }

    .school-value h4 {
        font-size: 16px;
    }

    .principal-message {
        padding: 22px 20px 22px 25px;
    }

    .principal-message p {
        font-size: 15px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .school-story-heading h2 {
        font-size: 27px;
    }

    .founder-image {
        height: 420px;
    }

    .founder-badge {
        padding: 14px 12px;
    }

    .founder-badge strong {
        font-size: 18px;
    }

    .founder-content h2 {
        font-size: 25px;
    }

    .founder-highlight {
        gap: 12px;
        padding: 17px;
    }

    .founder-highlight > i {
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        font-size: 19px;
    }

    .school-about-row {
        padding: 35px 16px 40px;
    }

    .school-about-heading h2 {
        font-size: 25px;
    }

    .school-value {
        gap: 12px;
        padding: 16px;
    }

    .school-value > i {
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        font-size: 18px;
    }
}
/* ==========================================
   PRINCIPAL SECTION
========================================== */

.principal-message {
    display: flex;
    align-items: center;
    gap: 65px;
    margin-top: 80px;
    padding: 55px 0;
    border-top: 1px solid #eeeeee;
}

/* Large Principal Image */
.principal-image {
    width: 45%;
    flex-shrink: 0;
    position: relative;
}

.principal-image::after {
    content: "";
    position: absolute;
    width: 90%;
    height: 90%;
    right: -20px;
    bottom: -20px;
    background: #35c878;
    border-radius: 18px;
    z-index: 0;
    opacity: 0.15;
}

.principal-image img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 540px;
    object-fit: cover;
    object-position: center top;
    display: block;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(0, 50, 70, 0.15);
}

/* Content */
.principal-content {
    flex: 1;
}

.principal-content .story-label {
    display: inline-block;
    margin-bottom: 12px;
}

.principal-content h2 {
    font-size: 38px;
    line-height: 1.2;
    color: #073b56;
    margin: 0 0 20px;
    font-weight: 800;
}

.principal-content .story-divider {
    margin-bottom: 25px;
}

.principal-content p {
    color: #687b86;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 18px;
}

.principal-content .principal-quote {
    color: #073b56;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 600;
    position: relative;
    padding-left: 22px;
    border-left: 4px solid #ffae23;
}

.principal-name {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eeeeee;
}

.principal-name strong {
    display: block;
    color: #073b56;
    font-size: 22px;
    font-weight: 800;
}

.principal-name span {
    display: block;
    margin-top: 5px;
    color: #35c878;
    font-size: 14px;
    font-weight: 700;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .principal-message {
        gap: 40px;
    }

    .principal-image {
        width: 42%;
    }

    .principal-image img {
        height: 450px;
    }

    .principal-content h2 {
        font-size: 30px;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .principal-message {
        flex-direction: column;
        gap: 40px;
        padding: 40px 0;
        margin-top: 50px;
    }

    .principal-image {
        width: 100%;
        max-width: 500px;
    }

    .principal-image img {
        height: 500px;
    }

    .principal-content {
        width: 100%;
    }

    .principal-content h2 {
        font-size: 28px;
    }

    .principal-content p {
        font-size: 15px;
    }

    .principal-content .principal-quote {
        font-size: 18px;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

    .principal-image img {
        height: 430px;
    }

    .principal-content h2 {
        font-size: 25px;
    }

}
@media (max-width: 767px) {

    .principal-message {
        margin-left: 15px;
        margin-right: 15px;
        padding-left: 0;
        padding-right: 0;
    }

    .principal-content {
        padding-left: 5px;
        padding-right: 5px;
    }

}
/* =========================================
   ABOUT PAGE HERO
========================================= */

.about-hero {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

    /* ONLY IMAGE - NO COLOR OVERLAY */
    background-image: url("../images/std5.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.about-hero .container {
    position: relative;
    z-index: 2;
}

.about-hero-content {
    max-width: 850px;
    margin: 0 auto;
    padding: 80px 20px;
    text-align: center;
}

/* Small Heading */

.about-hero-subtitle {
    display: inline-block;
    margin-bottom: 12px;

    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;

    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.6);
}

/* Main Heading */

.about-hero-content h1 {
    margin: 0 0 18px;

    color: #ffffff;
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;

    text-shadow: 0 3px 8px rgba(0, 0, 0, 0.65);
}

/* Description */

.about-hero-content p {
    max-width: 650px;
    margin: 0 auto 25px;

    color: #ffffff;
    font-size: 17px;
    line-height: 1.7;

    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.65);
}

/* Breadcrumb */

.about-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    font-size: 14px;

    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.6);
}

.about-breadcrumb a {
    color: #ffffff;
    font-weight: 700;
}

.about-breadcrumb a:hover {
    color: #ffd166;
}

.about-breadcrumb span {
    color: #ffffff;
}

.about-breadcrumb strong {
    color: #ffffff;
    font-weight: 700;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .about-hero {
        min-height: 340px;
    }

    .about-hero-content {
        padding: 70px 20px;
    }

    .about-hero-content h1 {
        font-size: 48px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .about-hero {
        min-height: 310px;

        background-position: center center;
    }

    .about-hero-content {
        padding: 60px 18px;
    }

    .about-hero-subtitle {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .about-hero-content h1 {
        font-size: 40px;
        margin-bottom: 14px;
    }

    .about-hero-content p {
        font-size: 14px;
        line-height: 1.6;
        margin-bottom: 20px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .about-hero {
        min-height: 290px;
    }

    .about-hero-content h1 {
        font-size: 34px;
    }

    .about-hero-content p {
        font-size: 13px;
    }

}
/* =========================================================
   ELINA KINDERGARTEN - ABOUT SCHOOL
========================================================= */

.elina-about-school {
    position: relative;
    padding: 100px 0;
    background: #f8fcfd;
    overflow: hidden;
}

.elina-about-school::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: rgba(53, 200, 120, 0.07);
    left: -170px;
    top: 80px;
}

.elina-about-school::after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: rgba(255, 174, 35, 0.07);
    right: -120px;
    bottom: 40px;
}

.elina-about-school .container {
    position: relative;
    z-index: 2;
}


/* =========================================================
   IMAGE
========================================================= */

.elina-about-image {
    position: relative;
    max-width: 470px;
    margin: 0 auto;
    padding: 15px;
}

.elina-about-image::before {
    content: "";
    position: absolute;
    width: 115px;
    height: 115px;
    left: -5px;
    top: -5px;
    border-radius: 20px;
    background: #35c878;
    opacity: 0.13;
}

.elina-about-image::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    right: -5px;
    bottom: -5px;
    border-radius: 50%;
    background: #ffae23;
    opacity: 0.14;
}

.elina-about-image-main {
    position: relative;
    z-index: 2;
    height: 570px;
    overflow: hidden;
    border-radius: 22px;
    box-shadow: 0 20px 45px rgba(0, 55, 75, 0.13);
}

.elina-about-image-main img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.elina-about-image:hover .elina-about-image-main img {
    transform: scale(1.04);
}


/* Experience Badge */

.elina-about-experience {
    position: absolute;
    z-index: 4;
    left: 0;
    bottom: 45px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 25px;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.13);
}

.elina-about-experience strong {
    color: #35c878;
    font-size: 42px;
    line-height: 1;
    font-weight: 800;
}

.elina-about-experience span {
    color: #073b56;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 700;
}


/* =========================================================
   CONTENT
========================================================= */

.elina-about-content {
    padding-left: 45px;
}

.elina-about-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-about-content h2 {
    max-width: 650px;
    margin: 0 0 18px;
    color: #073b56;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-about-line {
    width: 65px;
    height: 4px;
    margin-bottom: 25px;
    border-radius: 20px;
    background: linear-gradient(
        90deg,
        #35c878,
        #21b8d4,
        #ffae23
    );
}

.elina-about-content > p {
    margin-bottom: 16px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}

.elina-about-content .elina-about-lead {
    color: #073b56;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 600;
}


/* =========================================================
   HIGHLIGHTS
========================================================= */

.elina-about-highlights {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 28px 0 32px;
}

.elina-about-highlight {
    padding: 18px 15px;
    background: #ffffff;
    border: 1px solid #edf2f4;
    border-radius: 12px;
    box-shadow: 0 7px 22px rgba(0, 50, 70, 0.045);
}

.elina-about-icon {
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 18px;
}

.elina-about-highlight:nth-child(2) .elina-about-icon {
    background: #21b8d4;
}

.elina-about-highlight:nth-child(3) .elina-about-icon {
    background: #ff9e20;
}

.elina-about-highlight h4 {
    margin: 0 0 6px;
    color: #073b56;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 800;
}

.elina-about-highlight p {
    margin: 0;
    color: #758188;
    font-size: 12px;
    line-height: 1.6;
}


/* Button */

.elina-about-btn {
    margin-top: 3px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .elina-about-content {
        padding-left: 25px;
    }

    .elina-about-content h2 {
        font-size: 35px;
    }

    .elina-about-image-main {
        height: 530px;
    }

    .elina-about-highlights {
        gap: 8px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .elina-about-school {
        padding: 75px 0;
    }

    .elina-about-image {
        margin-bottom: 50px;
    }

    .elina-about-content {
        padding-left: 0;
    }

    .elina-about-content h2 {
        font-size: 34px;
    }

    .elina-about-highlights {
        grid-template-columns: repeat(3, 1fr);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .elina-about-school {
        padding: 60px 0;
    }

    .elina-about-image {
        padding: 10px;
        margin-bottom: 40px;
    }

    .elina-about-image-main {
        height: 450px;
        border-radius: 18px;
    }

    .elina-about-experience {
        left: 20px;
        bottom: 25px;
        padding: 14px 18px;
    }

    .elina-about-experience strong {
        font-size: 34px;
    }

    .elina-about-content {
        padding: 0 5px;
    }

    .elina-about-content h2 {
        font-size: 29px;
    }

    .elina-about-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .elina-about-content .elina-about-lead {
        font-size: 16px;
    }

    .elina-about-highlights {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .elina-about-highlight {
        display: flex;
        align-items: flex-start;
        gap: 14px;
    }

    .elina-about-icon {
        flex-shrink: 0;
        margin-bottom: 0;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .elina-about-image-main {
        height: 390px;
    }

    .elina-about-content h2 {
        font-size: 26px;
    }

    .elina-about-experience {
        left: 20px;
        right: 20px;
        bottom: 22px;
        justify-content: center;
    }

}
/* =========================================================
   ELINA KINDERGARTEN
   EDUCATIONAL APPROACH SECTION
========================================================= */

.elina-approach-section {
    position: relative;
    padding: 55px 0 100px;
    background: #ffffff;
    overflow: hidden;
}

.elina-approach-section::before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(33, 184, 212, 0.06);
    top: -130px;
    right: -120px;
}

.elina-approach-section .container {
    position: relative;
    z-index: 2;
}


/* Heading */

.elina-approach-heading {
    max-width: 750px;
    margin: 0 auto 65px;
}

.elina-approach-heading > span {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-approach-heading h2 {
    margin: 0 0 18px;
    color: #073b56;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-approach-heading p {
    margin: 0;
    color: #6f7c83;
    font-size: 15px;
    line-height: 1.8;
}


/* Content */

.elina-approach-content {
    padding-right: 50px;
}

.elina-approach-content h3 {
    margin: 0 0 18px;
    color: #073b56;
    font-size: 31px;
    line-height: 1.3;
    font-weight: 800;
}

.elina-approach-content > p {
    margin-bottom: 17px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}


/* List */

.elina-approach-list {
    margin-top: 30px;
}

.elina-approach-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 20px;
}

.elina-approach-icon {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 18px;
}

.elina-approach-item:nth-child(2) .elina-approach-icon {
    background: #21b8d4;
}

.elina-approach-item:nth-child(3) .elina-approach-icon {
    background: #ff9e20;
}

.elina-approach-item h4 {
    margin: 0 0 5px;
    color: #073b56;
    font-size: 17px;
    font-weight: 800;
}

.elina-approach-item p {
    margin: 0;
    color: #758188;
    font-size: 13px;
    line-height: 1.65;
}


/* Image */

.elina-approach-image {
    position: relative;
    margin-left: 20px;
    padding: 15px;
}

.elina-approach-image::before {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    left: -5px;
    top: -5px;
    border-radius: 20px;
    background: #ffae23;
    opacity: 0.13;
}

.elina-approach-image::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    right: -5px;
    bottom: -5px;
    border-radius: 50%;
    background: #35c878;
    opacity: 0.13;
}

.elina-approach-image img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 520px;
    display: block;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 45px rgba(0, 50, 70, 0.13);
}


/* Image Card */

.elina-approach-image-card {
    position: absolute;
    z-index: 4;
    left: 0;
    bottom: 45px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 22px;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.13);
}

.elina-approach-image-card strong {
    color: #35c878;
    font-size: 30px;
    line-height: 1;
    font-weight: 800;
}

.elina-approach-image-card span {
    color: #073b56;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 700;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .elina-approach-section {
        padding: 50px 0 75px;
    }

    .elina-approach-heading {
        margin-bottom: 45px;
    }

    .elina-approach-heading h2 {
        font-size: 34px;
    }

    .elina-approach-content {
        padding-right: 15px;
    }

    .elina-approach-content h3 {
        font-size: 28px;
    }

    .elina-approach-image {
        margin-left: 10px;
    }

    .elina-approach-image img {
        height: 470px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .elina-approach-section {
        padding: 40px 0 60px;
    }

    .elina-approach-heading {
        margin-bottom: 35px;
    }

    .elina-approach-heading h2 {
        font-size: 29px;
    }

    .elina-approach-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .elina-approach-content {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .elina-approach-content h3 {
        font-size: 26px;
    }

    .elina-approach-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .elina-approach-image {
        margin-left: 0;
        padding: 10px;
    }

    .elina-approach-image img {
        height: 420px;
        border-radius: 17px;
    }

    .elina-approach-image-card {
        left: 15px;
        bottom: 25px;
    }

}


/* Small Mobile */

@media (max-width: 480px) {

    .elina-approach-heading h2 {
        font-size: 26px;
    }

    .elina-approach-content h3 {
        font-size: 24px;
    }

    .elina-approach-image img {
        height: 380px;
    }

}
/* =========================================
   ABOUT PAGE - COUNTER SECTION
========================================= */

.counter-inner {
    padding-top: 70px;
    padding-bottom: 50px;
}

.counter-inner .counter-box {
    min-height: 230px;
    justify-content: flex-start;
}

/* Icons */
.counter-inner .counter-img-2 {
    height: 55px;
    margin-bottom: 25px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.counter-inner .counter-img-2 img {
    max-width: 52px;
    max-height: 52px;
}

/* Numbers */
.counter-inner .counter-txt {
    margin: 0 0 12px !important;
    font-size: 52px;
    line-height: 1;
    font-weight: 800;
    white-space: nowrap;
}

/* Text */
.counter-inner .counter-sub-txt {
    font-size: 17px;
    line-height: 1.45;
    font-weight: 500;
    max-width: 180px;
    margin: 0 auto;
}


/* =========================================
   THIRD CARD - PRE NURSERY
========================================= */

.counter-inner .col-md-3:nth-child(3) .counter-txt {
    font-size: 34px;
    line-height: 1.1;
    white-space: normal;
    max-width: 190px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.counter-inner .col-md-3:nth-child(3) .counter-sub-txt {
    font-size: 16px;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .counter-inner {
        padding-top: 50px;
        padding-bottom: 35px;
    }

    .counter-inner .counter-box {
        min-height: 190px;
    }

    .counter-inner .counter-img-2 {
        margin-bottom: 18px !important;
    }

    .counter-inner .counter-txt {
        font-size: 38px;
    }

    .counter-inner .counter-sub-txt {
        font-size: 14px;
        max-width: 150px;
    }

    .counter-inner .col-md-3:nth-child(3) .counter-txt {
        font-size: 27px;
        max-width: 130px;
    }
}
/* =========================================
   MISSION & VISION HERO
========================================= */

.mission-vision-hero {
    position: relative;
    min-height: 430px;

    display: flex;
    align-items: center;
    justify-content: center;

    background-image: url("../images/lkg.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}

/* Very light overlay only for text readability */
.mission-vision-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    background: rgba(0, 35, 55, 0.18);

    z-index: 1;
}

.mission-vision-hero-content {
    position: relative;
    z-index: 2;

    width: 90%;
    max-width: 800px;

    text-align: center;
}

.mission-vision-hero-content span {
    display: inline-block;

    margin-bottom: 14px;

    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
}

.mission-vision-hero-content h1 {
    margin: 0 0 18px;

    color: #ffffff;
    font-size: 56px;
    line-height: 1.15;
    font-weight: 800;
}

.mission-vision-hero-content p {
    max-width: 650px;
    margin: 0 auto;

    color: #ffffff;
    font-size: 17px;
    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .mission-vision-hero {
        min-height: 380px;
    }

    .mission-vision-hero-content h1 {
        font-size: 46px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .mission-vision-hero {
        min-height: 340px;
        background-position: center center;
    }

    .mission-vision-hero-content {
        width: 92%;
    }

    .mission-vision-hero-content span {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .mission-vision-hero-content h1 {
        font-size: 36px;
        line-height: 1.2;
        margin-bottom: 14px;
    }

    .mission-vision-hero-content p {
        font-size: 14px;
        line-height: 1.6;
    }

}
/* =========================================
   MISSION & VISION SECTION
========================================= */

.mission-vision-section {
    position: relative;
    padding: 90px 0 70px;
    background: #ffffff;
    overflow: hidden;
}

.mission-vision-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.mission-vision-heading > span {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.mission-vision-heading h2 {
    margin: 0 0 18px;
    color: #073b56;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.mission-vision-heading p {
    margin: 0;
    color: #6f7c83;
    font-size: 15px;
    line-height: 1.8;
}


/* =========================================
   MISSION / VISION CARD
========================================= */

.mv-card {
    position: relative;
    height: 100%;
    padding: 45px 40px 40px;
    margin-bottom: 30px;
    border-radius: 18px;
    background: #ffffff;
    border: 1px solid #edf1f2;
    box-shadow: 0 12px 35px rgba(0, 50, 70, 0.08);
    overflow: hidden;
    transition: all 0.3s ease;
}

.mv-card::before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    right: -45px;
    top: -45px;
    opacity: 0.08;
}

.mv-mission::before {
    background: #35c878;
}

.mv-vision::before {
    background: #21b8d4;
}

.mv-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 45px rgba(0, 50, 70, 0.12);
}


/* Icon */

.mv-icon {
    width: 68px;
    height: 68px;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    color: #ffffff;
    font-size: 30px;
}

.mv-mission .mv-icon {
    background: #35c878;
}

.mv-vision .mv-icon {
    background: #21b8d4;
}


/* Content */

.mv-content > span {
    display: block;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.mv-mission .mv-content > span {
    color: #35c878;
}

.mv-vision .mv-content > span {
    color: #21b8d4;
}

.mv-content h3 {
    margin: 0 0 18px;
    color: #073b56;
    font-size: 27px;
    line-height: 1.3;
    font-weight: 800;
}

.mv-content p {
    margin-bottom: 14px;
    color: #687780;
    font-size: 14px;
    line-height: 1.8;
}


/* List */

.mv-content ul {
    margin: 25px 0 0;
    padding: 0;
    list-style: none;
}

.mv-content ul li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
    color: #4f6068;
    font-size: 14px;
    line-height: 1.5;
}

.mv-content ul li i {
    margin-top: 2px;
    font-size: 17px;
}

.mv-mission .mv-content ul li i {
    color: #35c878;
}

.mv-vision .mv-content ul li i {
    color: #21b8d4;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .mission-vision-section {
        padding: 60px 0 40px;
    }

    .mission-vision-heading {
        margin-bottom: 35px;
    }

    .mission-vision-heading h2 {
        font-size: 29px;
    }

    .mission-vision-heading p {
        font-size: 14px;
    }

    .mv-card {
        padding: 32px 25px;
    }

    .mv-content h3 {
        font-size: 24px;
    }

    .mv-content p,
    .mv-content ul li {
        font-size: 13px;
    }

}
/* =========================================
   ELINA KINDERGARTEN - CORE VALUES
========================================= */

.elina-values-section {
    position: relative;
    padding: 80px 0 70px;
    background: #f8fbfc;
    overflow: hidden;
}

.elina-values-heading {
    max-width: 700px;
    margin: 0 auto 50px;
}

.elina-values-heading span {
    display: inline-block;
    margin-bottom: 10px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-values-heading h2 {
    margin: 0 0 15px;
    color: #073b56;
    font-size: 38px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-values-heading p {
    margin: 0;
    color: #6d7b82;
    font-size: 15px;
    line-height: 1.8;
}


/* Card */

.elina-value-card {
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 35px 25px 30px;
    text-align: center;

    background: #ffffff;
    border: 1px solid #edf1f2;
    border-radius: 16px;

    box-shadow: 0 8px 25px rgba(0, 50, 70, 0.06);

    transition: all 0.3s ease;
}

.elina-value-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 15px 35px rgba(0, 50, 70, 0.11);
}


/* Icon */

.elina-value-icon {
    width: 65px;
    height: 65px;
    margin: 0 auto 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: #ffffff;
    font-size: 27px;
}

.value-green {
    background: #35c878;
}

.value-blue {
    background: #21b8d4;
}

.value-orange {
    background: #ff9e20;
}

.value-pink {
    background: #ef6195;
}


/* Content */

.elina-value-card h3 {
    margin: 0 0 14px;

    color: #073b56;
    font-size: 19px;
    line-height: 1.3;
    font-weight: 800;
}

.elina-value-card p {
    margin: 0;

    color: #718087;
    font-size: 13px;
    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-values-section {
        padding: 65px 0 50px;
    }

    .elina-values-heading h2 {
        font-size: 34px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-values-section {
        padding: 55px 0 35px;
    }

    .elina-values-heading {
        margin-bottom: 35px;
    }

    .elina-values-heading h2 {
        font-size: 29px;
    }

    .elina-values-heading p {
        font-size: 14px;
    }

    .elina-value-card {
        padding: 30px 22px;
    }

    .elina-value-card h3 {
        font-size: 18px;
    }

}
/* =========================================
   ELINA KINDERGARTEN
   COMMITMENT SECTION
========================================= */

.elina-commitment-section {
    position: relative;
    padding: 90px 0;
    background: #ffffff;
    overflow: hidden;
}

.elina-commitment-section .container {
    position: relative;
    z-index: 2;
}


/* Content */

.elina-commitment-content {
    padding-right: 45px;
}

.elina-commitment-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-commitment-content h2 {
    max-width: 550px;
    margin: 0 0 18px;
    color: #073b56;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-commitment-line {
    width: 65px;
    height: 4px;
    margin-bottom: 25px;
    border-radius: 20px;
    background: linear-gradient(
        90deg,
        #35c878,
        #21b8d4,
        #ffae23
    );
}

.elina-commitment-content > p {
    margin-bottom: 17px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}

.elina-commitment-content .elina-commitment-lead {
    color: #073b56;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 600;
}


/* Points */

.elina-commitment-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 20px;
    margin-top: 28px;
}

.elina-commitment-point {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #073b56;
    font-size: 13px;
    font-weight: 600;
}

.elina-commitment-point i {
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 13px;
}


/* Image */

.elina-commitment-image {
    position: relative;
    margin-left: 20px;
    padding: 15px;
}

.elina-commitment-image::before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    left: -5px;
    top: -5px;
    border-radius: 22px;
    background: #21b8d4;
    opacity: 0.12;
}

.elina-commitment-image::after {
    content: "";
    position: absolute;
    width: 115px;
    height: 115px;
    right: -5px;
    bottom: -5px;
    border-radius: 50%;
    background: #ffae23;
    opacity: 0.13;
}

.elina-commitment-image img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 530px;
    display: block;
    object-fit: cover;
    object-position: center;
    border-radius: 20px;
    box-shadow: 0 20px 45px rgba(0, 50, 70, 0.14);
}


/* Badge */

.elina-commitment-badge {
    position: absolute;
    z-index: 4;
    left: 0;
    bottom: 45px;
    display: flex;
    flex-direction: column;
    padding: 18px 25px;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.14);
}

.elina-commitment-badge strong {
    color: #073b56;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-commitment-badge span {
    margin-top: 3px;
    color: #35c878;
    font-size: 12px;
    font-weight: 700;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-commitment-section {
        padding: 70px 0;
    }

    .elina-commitment-content {
        padding-right: 15px;
    }

    .elina-commitment-content h2 {
        font-size: 34px;
    }

    .elina-commitment-image {
        margin-left: 10px;
        margin-top: 40px;
    }

    .elina-commitment-image img {
        height: 480px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-commitment-section {
        padding: 55px 0 65px;
    }

    .elina-commitment-content {
        padding-right: 0;
    }

    .elina-commitment-content h2 {
        font-size: 29px;
    }

    .elina-commitment-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .elina-commitment-content .elina-commitment-lead {
        font-size: 16px;
    }

    .elina-commitment-points {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .elina-commitment-image {
        margin-left: 0;
        margin-top: 35px;
        padding: 10px;
    }

    .elina-commitment-image img {
        height: 420px;
        border-radius: 17px;
    }

    .elina-commitment-badge {
        left: 15px;
        bottom: 25px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .elina-commitment-content h2 {
        font-size: 26px;
    }

    .elina-commitment-image img {
        height: 380px;
    }

}
/* =========================================
   PARENTS & SCHOOL SECTION
========================================= */

.elina-parent-section {
    position: relative;
    padding: 85px 0 95px;
    background: #f8fbfc;
    overflow: hidden;
}

.elina-parent-section .container {
    position: relative;
    z-index: 2;
}


/* Image */

.elina-parent-image {
    position: relative;
    max-width: 470px;
    margin: 0 auto;
    padding: 15px;
}

.elina-parent-image::before {
    content: "";
    position: absolute;
    width: 115px;
    height: 115px;
    left: -5px;
    top: -5px;
    border-radius: 20px;
    background: #35c878;
    opacity: 0.13;
}

.elina-parent-image::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    right: -5px;
    bottom: -5px;
    border-radius: 50%;
    background: #21b8d4;
    opacity: 0.13;
}

.elina-parent-image img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 480px;
    display: block;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 18px 45px rgba(0, 50, 70, 0.13);
}


/* Badge */

.elina-parent-badge {
    position: absolute;
    z-index: 4;
    left: 0;
    bottom: 40px;

    display: flex;
    align-items: center;
    gap: 13px;

    padding: 16px 22px;

    border-radius: 12px;
    background: #ffffff;

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.13);
}

.elina-parent-badge > i {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 19px;
}

.elina-parent-badge strong {
    display: block;
    color: #073b56;
    font-size: 15px;
    font-weight: 800;
}

.elina-parent-badge span {
    display: block;
    margin-top: 3px;
    color: #758188;
    font-size: 11px;
}


/* Content */

.elina-parent-content {
    padding-left: 45px;
}

.elina-parent-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #35c878;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-parent-content h2 {
    max-width: 600px;
    margin: 0 0 18px;
    color: #073b56;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-parent-line {
    width: 65px;
    height: 4px;
    margin-bottom: 25px;
    border-radius: 20px;
    background: linear-gradient(
        90deg,
        #35c878,
        #21b8d4,
        #ffae23
    );
}

.elina-parent-content > p {
    margin-bottom: 17px;
    color: #687780;
    font-size: 15px;
    line-height: 1.85;
}

.elina-parent-content .elina-parent-lead {
    color: #073b56;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 600;
}


/* Points */

.elina-parent-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 13px 20px;
    margin-top: 28px;
}

.elina-parent-point {
    display: flex;
    align-items: center;
    gap: 9px;

    color: #073b56;
    font-size: 13px;
    font-weight: 600;
}

.elina-parent-point i {
    flex: 0 0 25px;
    width: 25px;
    height: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    background: #35c878;
    color: #ffffff;
    font-size: 13px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-parent-section {
        padding: 70px 0 75px;
    }

    .elina-parent-image {
        margin-bottom: 45px;
    }

    .elina-parent-content {
        padding-left: 15px;
    }

    .elina-parent-content h2 {
        font-size: 34px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-parent-section {
        padding: 55px 0 65px;
    }

    .elina-parent-image {
        padding: 10px;
        margin-bottom: 35px;
    }

    .elina-parent-image img {
        height: 410px;
        border-radius: 17px;
    }

    .elina-parent-badge {
        left: 15px;
        bottom: 25px;
    }

    .elina-parent-content {
        padding-left: 0;
    }

    .elina-parent-content h2 {
        font-size: 29px;
    }

    .elina-parent-content > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .elina-parent-content .elina-parent-lead {
        font-size: 16px;
    }

    .elina-parent-points {
        grid-template-columns: 1fr;
        gap: 11px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .elina-parent-image img {
        height: 370px;
    }

    .elina-parent-content h2 {
        font-size: 26px;
    }

}
/* =========================================
   GALLERY HERO
========================================= */

.gallery-hero {
    position: relative;
    min-height: 470px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #f5fbff;
}


/* Background Image */

.gallery-hero-bg {
    position: absolute;
    inset: 0;

    background-image: url("../images/slider2.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;

    z-index: 1;
}


/* Very Light Overlay
   Image remains clearly visible */

.gallery-hero-bg::after {
    content: "";
    position: absolute;
    inset: 0;

    background: rgba(255, 255, 255, 0.22);

    z-index: 2;
}


/* Decorative Shapes */

.gallery-hero::before {
    content: "";
    position: absolute;

    width: 180px;
    height: 180px;

    left: -70px;
    top: -70px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.20);

    z-index: 3;
}

.gallery-hero::after {
    content: "";
    position: absolute;

    width: 210px;
    height: 210px;

    right: -90px;
    bottom: -100px;

    border-radius: 50%;

    background: rgba(255, 174, 35, 0.22);

    z-index: 3;
}


/* Content */

.gallery-hero-content {
    position: relative;
    z-index: 5;

    width: 100%;
    max-width: 850px;

    padding: 80px 20px;

    text-align: center;
}


/* Small Label */

.gallery-hero-label {
    display: inline-block;

    margin-bottom: 15px;

    color: #159b69;

    font-size: 13px;
    font-weight: 800;

    letter-spacing: 3px;
    text-transform: uppercase;
}


/* Heading */

.gallery-hero-content h1 {
    margin: 0;

    color: #073b56;

    font-size: 64px;
    line-height: 1.08;

    font-weight: 800;
}

.gallery-hero-content h1 span {
    color: #f39b21;
}


/* Description */

.gallery-hero-content > p {
    max-width: 620px;

    margin: 22px auto 0;

    color: #385c6d;

    font-size: 16px;
    line-height: 1.8;
}


/* Divider */

.gallery-hero-divider {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    margin: 25px auto 22px;
}

.gallery-hero-divider span {
    display: block;

    width: 42px;
    height: 3px;

    border-radius: 10px;

    background: #35c878;
}

.gallery-hero-divider span:last-child {
    background: #ffae23;
}

.gallery-hero-divider i {
    color: #f39b21;
    font-size: 17px;
}


/* Breadcrumb */

.gallery-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;
}

.gallery-breadcrumb a {
    color: #159b69;

    font-size: 14px;
    font-weight: 700;

    transition: 0.3s;
}

.gallery-breadcrumb a:hover {
    color: #f39b21;
}

.gallery-breadcrumb i {
    color: #71848d;
    font-size: 13px;
}

.gallery-breadcrumb span {
    color: #5c6f78;

    font-size: 14px;
    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .gallery-hero {
        min-height: 420px;
    }

    .gallery-hero-content h1 {
        font-size: 52px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .gallery-hero {
        min-height: 390px;
    }

    .gallery-hero-bg {
        background-position: center center;
    }

    .gallery-hero-bg::after {
        background: rgba(255, 255, 255, 0.28);
    }

    .gallery-hero-content {
        padding: 65px 20px;
    }

    .gallery-hero-label {
        font-size: 11px;
        letter-spacing: 2px;
        margin-bottom: 12px;
    }

    .gallery-hero-content h1 {
        font-size: 42px;
        line-height: 1.12;
    }

    .gallery-hero-content > p {
        margin-top: 17px;
        font-size: 14px;
        line-height: 1.7;
    }

    .gallery-hero-divider {
        margin: 20px auto;
    }

    .gallery-hero-divider span {
        width: 32px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .gallery-hero {
        min-height: 360px;
    }

    .gallery-hero-content {
        padding: 55px 18px;
    }

    .gallery-hero-content h1 {
        font-size: 36px;
    }

    .gallery-hero-content > p {
        font-size: 13px;
    }

    .gallery-hero::before {
        width: 130px;
        height: 130px;
    }

    .gallery-hero::after {
        width: 150px;
        height: 150px;
    }

}
/* =========================================
   ELINA GALLERY INTRO
========================================= */

.elina-gallery-intro {
    padding: 75px 0 65px;
    background: #ffffff;
}


/* Heading */

.elina-gallery-heading {
    max-width: 760px;
    margin: 0 auto;
}

.elina-gallery-label {
    display: inline-block;
    margin-bottom: 12px;

    color: #25ae72;
    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2.5px;
}

.elina-gallery-heading h2 {
    margin: 0 0 18px;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-gallery-heading h2 span {
    color: #f3a21b;
}

.elina-gallery-heading p {
    max-width: 650px;
    margin: 0 auto;

    color: #71818a;

    font-size: 15px;
    line-height: 1.8;
}


/* Divider */

.elina-gallery-divider {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 10px;

    margin-top: 22px;
}

.elina-gallery-divider span {
    width: 40px;
    height: 3px;

    display: block;

    border-radius: 20px;
    background: #35c878;
}

.elina-gallery-divider span:last-child {
    background: #ffad22;
}

.elina-gallery-divider i {
    color: #f39b21;
    font-size: 16px;
}


/* =========================================
   GALLERY FILTERS
========================================= */

.elina-gallery-filters {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 12px;

    margin-top: 42px;
}

.elina-gallery-filters button {
    border: 0;
    outline: none;

    padding: 11px 22px;

    border-radius: 30px;

    background: #f2f7f8;

    color: #49626e;

    font-family: inherit;
    font-size: 13px;
    font-weight: 700;

    cursor: pointer;

    transition: all 0.3s ease;
}

.elina-gallery-filters button:hover {
    color: #ffffff;
    background: #35c878;

    transform: translateY(-2px);
}

.elina-gallery-filters button.active {
    color: #ffffff;
    background: linear-gradient(
        135deg,
        #35c878,
        #21b8d4
    );

    box-shadow: 0 8px 20px rgba(53, 200, 120, 0.20);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-gallery-intro {
        padding: 65px 0 55px;
    }

    .elina-gallery-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-gallery-intro {
        padding: 55px 0 45px;
    }

    .elina-gallery-heading h2 {
        font-size: 30px;
    }

    .elina-gallery-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .elina-gallery-filters {
        margin-top: 30px;
        gap: 9px;
    }

    .elina-gallery-filters button {
        padding: 9px 16px;
        font-size: 12px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .elina-gallery-heading h2 {
        font-size: 27px;
    }

    .elina-gallery-filters {
        padding: 0 10px;
    }

    .elina-gallery-filters button {
        padding: 8px 14px;
    }

}
/* =========================================
   GALLERY CARDS INSIDE INTRO SECTION
========================================= */

.elina-gallery-cards {
    margin-top: 55px;
    row-gap: 30px;
}

.elina-gallery-card {
    height: 100%;
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid #edf1f3;
    box-shadow: 0 10px 30px rgba(25, 60, 75, 0.08);
    transition: all 0.35s ease;
}

.elina-gallery-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 18px 40px rgba(25, 60, 75, 0.14);
}


/* Image */

.elina-gallery-image {
    position: relative;
    height: 270px;
    overflow: hidden;
    background: #eef5f7;
}

.elina-gallery-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.elina-gallery-card:hover .elina-gallery-image img {
    transform: scale(1.07);
}


/* Overlay */

.elina-gallery-overlay {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(7, 59, 86, 0.35);

    opacity: 0;
    transition: 0.35s ease;
}

.elina-gallery-card:hover .elina-gallery-overlay {
    opacity: 1;
}


/* Search Button */

.elina-gallery-view {
    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffffff;
    color: #159b69;

    font-size: 19px;

    transform: translateY(15px);
    transition: 0.35s ease;
}

.elina-gallery-card:hover .elina-gallery-view {
    transform: translateY(0);
}

.elina-gallery-view:hover {
    background: #35c878;
    color: #ffffff;
}


/* Tag */

.elina-gallery-tag {
    position: absolute;
    left: 18px;
    bottom: 18px;

    padding: 7px 14px;

    border-radius: 30px;

    background: #ffffff;
    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}


/* Content */

.elina-gallery-content {
    padding: 24px 24px 27px;
}

.elina-gallery-content > span {
    display: block;
    margin-bottom: 7px;

    color: #f2a01d;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.elina-gallery-content h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 20px;
    line-height: 1.3;
    font-weight: 800;
}

.elina-gallery-content p {
    margin: 0;

    color: #71818a;

    font-size: 13px;
    line-height: 1.75;
}


/* Mobile */

@media (max-width: 767px) {

    .elina-gallery-cards {
        margin-top: 40px;
        row-gap: 25px;
    }

    .elina-gallery-image {
        height: 250px;
    }

    .elina-gallery-content {
        padding: 21px 20px 24px;
    }

    .elina-gallery-content h3 {
        font-size: 19px;
    }

}
/* =========================================
   ELINA GALLERY CARDS
========================================= */

.elina-gallery-cards {
    margin-top: 55px;
    row-gap: 30px;
}

.elina-gallery-card {
    overflow: hidden;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(25, 60, 75, 0.10);
    transition: all 0.35s ease;
}

.elina-gallery-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(25, 60, 75, 0.15);
}


/* Image */

.elina-gallery-image {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
}

.elina-gallery-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.elina-gallery-card:hover .elina-gallery-image img {
    transform: scale(1.07);
}


/* Hover Overlay */

.elina-gallery-overlay {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(7, 59, 86, 0.35);

    opacity: 0;
    transition: all 0.35s ease;
}

.elina-gallery-card:hover .elina-gallery-overlay {
    opacity: 1;
}


/* Search Button */

.elina-gallery-view {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffffff;
    color: #159b69;

    font-size: 20px;

    text-decoration: none;

    transform: scale(0.7);
    transition: all 0.35s ease;
}

.elina-gallery-card:hover .elina-gallery-view {
    transform: scale(1);
}

.elina-gallery-view:hover {
    background: #35c878;
    color: #ffffff;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-gallery-image {
        height: 270px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-gallery-cards {
        margin-top: 40px;
        row-gap: 25px;
    }

    .elina-gallery-image {
        height: 260px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .elina-gallery-image {
        height: 230px;
    }

}
/* =========================================
   ENQUIRY HERO
========================================= */

.enquiry-hero {
    position: relative;
    min-height: 450px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background-image: url("../images/school-front.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* Light overlay */

.enquiry-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    background: rgba(255, 255, 255, 0.25);

    z-index: 1;
}


/* Decorative circles */

.enquiry-hero::after {
    content: "";
    position: absolute;

    width: 190px;
    height: 190px;

    right: -75px;
    bottom: -85px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.18);

    z-index: 2;
}


/* Content */

.enquiry-hero-content {
    position: relative;
    z-index: 3;

    width: 90%;
    max-width: 850px;

    padding: 75px 20px;

    text-align: center;
}


/* Label */

.enquiry-hero-label {
    display: inline-block;

    margin-bottom: 14px;

    color: #159b69;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2.5px;
}


/* Heading */

.enquiry-hero-content h1 {
    margin: 0;

    color: #073b56;

    font-size: 56px;
    line-height: 1.15;

    font-weight: 800;
}

.enquiry-hero-content h1 span {
    color: #f2a01d;
}


/* Description */

.enquiry-hero-content > p {
    max-width: 650px;

    margin: 20px auto 0;

    color: #385c6d;

    font-size: 16px;
    line-height: 1.8;
}


/* Divider */

.enquiry-hero-divider {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin: 24px auto 20px;
}

.enquiry-hero-divider span {
    width: 40px;
    height: 3px;

    display: block;

    border-radius: 20px;

    background: #35c878;
}

.enquiry-hero-divider span:last-child {
    background: #ffae23;
}

.enquiry-hero-divider i {
    color: #f2a01d;
    font-size: 16px;
}


/* Breadcrumb */

.enquiry-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;
}

.enquiry-breadcrumb a {
    color: #159b69;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}

.enquiry-breadcrumb i {
    color: #71818a;
    font-size: 13px;
}

.enquiry-breadcrumb span {
    color: #5d7079;

    font-size: 14px;
    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .enquiry-hero {
        min-height: 410px;
    }

    .enquiry-hero-content h1 {
        font-size: 48px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .enquiry-hero {
        min-height: 370px;

        background-position: center center;
    }

    .enquiry-hero::before {
        background: rgba(255, 255, 255, 0.30);
    }

    .enquiry-hero-content {
        padding: 60px 18px;
    }

    .enquiry-hero-label {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .enquiry-hero-content h1 {
        font-size: 37px;
        line-height: 1.15;
    }

    .enquiry-hero-content > p {
        margin-top: 16px;

        font-size: 14px;
        line-height: 1.65;
    }

    .enquiry-hero-divider {
        margin: 19px auto;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .enquiry-hero {
        min-height: 350px;
    }

    .enquiry-hero-content h1 {
        font-size: 32px;
    }

    .enquiry-hero-content > p {
        font-size: 13px;
    }

}
/* =========================================
   ELINA ENQUIRY SECTION
========================================= */

.elina-enquiry-section {
    padding: 90px 0;
    background: #ffffff;
}

.elina-enquiry-content {
    padding-right: 45px;
}

.elina-section-label {
    display: inline-block;
    margin-bottom: 12px;

    color: #159b69;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.elina-enquiry-content h2 {
    margin-bottom: 20px;

    color: #073b56;
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-enquiry-content h2 span {
    color: #f2a01d;
}

.elina-enquiry-intro {
    margin-bottom: 30px;

    color: #647883;
    font-size: 15px;
    line-height: 1.8;
}


/* Points */

.elina-enquiry-points {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.elina-enquiry-point {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.elina-enquiry-icon {
    flex: 0 0 42px;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #e9f9f1;
    color: #159b69;

    font-size: 20px;
}

.elina-enquiry-point h4 {
    margin: 0 0 5px;

    color: #073b56;
    font-size: 17px;
    font-weight: 700;
}

.elina-enquiry-point p {
    margin: 0;

    color: #71828b;
    font-size: 13px;
    line-height: 1.6;
}


/* =========================================
   FORM BOX
========================================= */

.elina-enquiry-form-box {
    padding: 40px;

    background: #ffffff;

    border-radius: 20px;

    box-shadow: 0 15px 45px rgba(7, 59, 86, 0.12);

    border: 1px solid #edf2f3;
}

.elina-form-heading {
    margin-bottom: 25px;
}

.elina-form-heading > span {
    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1.8px;
}

.elina-form-heading h3 {
    margin: 8px 0 8px;

    color: #073b56;

    font-size: 28px;
    font-weight: 800;
}

.elina-form-heading p {
    margin: 0;

    color: #7b8990;

    font-size: 13px;
    line-height: 1.6;
}


/* Form */

.elina-form-group {
    margin-bottom: 18px;
}

.elina-form-group label {
    display: block;

    margin-bottom: 7px;

    color: #073b56;

    font-size: 13px;
    font-weight: 700;
}

.elina-form-group input,
.elina-form-group select,
.elina-form-group textarea {
    width: 100%;

    padding: 13px 16px;

    border: 1px solid #e3eaed;
    border-radius: 8px;

    outline: none;

    background: #f9fbfc;

    color: #425b66;

    font-size: 13px;

    transition: all 0.3s ease;
}

.elina-form-group input:focus,
.elina-form-group select:focus,
.elina-form-group textarea:focus {
    border-color: #35c878;

    background: #ffffff;

    box-shadow: 0 0 0 3px rgba(53, 200, 120, 0.08);
}

.elina-form-group textarea {
    resize: vertical;
}


/* Button */

.elina-enquiry-btn {
    width: 100%;

    padding: 14px 25px;

    border: none;
    border-radius: 8px;

    background: linear-gradient(90deg, #159b69, #35c878);

    color: #ffffff;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: all 0.3s ease;
}

.elina-enquiry-btn i {
    margin-left: 8px;
}

.elina-enquiry-btn:hover {
    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(21, 155, 105, 0.25);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-enquiry-section {
        padding: 75px 0;
    }

    .elina-enquiry-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .elina-enquiry-content h2 {
        font-size: 36px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-enquiry-section {
        padding: 60px 0;
    }

    .elina-enquiry-content h2 {
        font-size: 31px;
    }

    .elina-enquiry-form-box {
        padding: 25px 20px;
        border-radius: 15px;
    }

    .elina-form-heading h3 {
        font-size: 24px;
    }

}
/* =========================================
   ELINA EVENTS HERO
========================================= */

.elina-events-hero {
    position: relative;
    min-height: 450px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background-image: url("../images/classroom1.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* Soft overlay for readable text */

.elina-events-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    background: rgba(255, 255, 255, 0.28);

    z-index: 1;
}


/* Decorative circle */

.elina-events-hero::after {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    right: -90px;
    bottom: -100px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.18);

    z-index: 2;
}


/* Content */

.elina-events-hero-content {
    position: relative;
    z-index: 3;

    width: 90%;
    max-width: 850px;

    padding: 75px 20px;

    text-align: center;
}


/* Label */

.elina-events-label {
    display: inline-block;

    margin-bottom: 14px;

    color: #159b69;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2.5px;
}


/* Heading */

.elina-events-hero-content h1 {
    margin: 0;

    color: #073b56;

    font-size: 56px;
    line-height: 1.15;

    font-weight: 800;
}

.elina-events-hero-content h1 span {
    color: #f2a01d;
}


/* Description */

.elina-events-hero-content > p {
    max-width: 670px;

    margin: 20px auto 0;

    color: #385c6d;

    font-size: 16px;
    line-height: 1.8;
}


/* Divider */

.elina-events-divider {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin: 24px auto 20px;
}

.elina-events-divider span {
    width: 42px;
    height: 3px;

    display: block;

    border-radius: 20px;

    background: #35c878;
}

.elina-events-divider span:last-child {
    background: #ffae23;
}

.elina-events-divider i {
    color: #f2a01d;
    font-size: 16px;
}


/* Breadcrumb */

.elina-events-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;
}

.elina-events-breadcrumb a {
    color: #159b69;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}

.elina-events-breadcrumb i {
    color: #71818a;
    font-size: 13px;
}

.elina-events-breadcrumb span {
    color: #5d7079;

    font-size: 14px;
    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-events-hero {
        min-height: 410px;
    }

    .elina-events-hero-content h1 {
        font-size: 48px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-events-hero {
        min-height: 370px;

        background-position: center center;
    }

    .elina-events-hero::before {
        background: rgba(255, 255, 255, 0.32);
    }

    .elina-events-hero-content {
        padding: 60px 18px;
    }

    .elina-events-label {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .elina-events-hero-content h1 {
        font-size: 37px;
        line-height: 1.15;
    }

    .elina-events-hero-content > p {
        margin-top: 16px;

        font-size: 14px;
        line-height: 1.65;
    }

    .elina-events-divider {
        margin: 19px auto;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .elina-events-hero {
        min-height: 350px;
    }

    .elina-events-hero-content h1 {
        font-size: 32px;
    }

    .elina-events-hero-content > p {
        font-size: 13px;
    }

}
/* =========================================
   ELINA EVENTS OVERVIEW
========================================= */

.elina-events-overview {
    padding: 85px 0 70px;
    background: #ffffff;
}


/* Heading */

.elina-events-heading {
    margin-bottom: 55px;
}

.elina-events-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-events-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-events-heading h2 span {
    color: #f2a01d;
}

.elina-events-heading p {
    max-width: 720px;

    margin: 18px auto 0;

    color: #6b7d86;

    font-size: 15px;
    line-height: 1.8;
}


/* Divider */

.elina-events-divider {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-top: 22px;
}

.elina-events-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-events-divider span:last-child {
    background: #ffae23;
}

.elina-events-divider i {
    color: #f2a01d;
    font-size: 15px;
}


/* =========================================
   EVENT BOXES
========================================= */

.elina-event-highlights {
    row-gap: 30px;
}

.elina-event-box {
    height: 100%;

    display: flex;
    align-items: flex-start;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #edf1f2;
    border-radius: 15px;

    box-shadow: 0 8px 28px rgba(7, 59, 86, 0.07);

    transition: all 0.35s ease;
}

.elina-event-box:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.12);
}


/* Icon */

.elina-event-icon {
    flex: 0 0 58px;

    width: 58px;
    height: 58px;

    margin-right: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    font-size: 25px;

    transition: all 0.3s ease;
}

.elina-event-box:hover .elina-event-icon {
    transform: rotate(5deg) scale(1.08);
}


/* Different Icon Backgrounds */

.event-icon-one {
    background: #fff0f4;
    color: #ed5b8a;
}

.event-icon-two {
    background: #eef8ff;
    color: #368fd1;
}

.event-icon-three {
    background: #fff7e7;
    color: #e99a19;
}

.event-icon-four {
    background: #f3efff;
    color: #8064c8;
}

.event-icon-five {
    background: #eaf9f1;
    color: #159b69;
}

.event-icon-six {
    background: #fff0ee;
    color: #ed6a54;
}


/* Content */

.elina-event-box-content h3 {
    margin: 3px 0 8px;

    color: #073b56;

    font-size: 19px;
    font-weight: 750;
}

.elina-event-box-content p {
    margin: 0;

    color: #74838a;

    font-size: 13px;
    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-events-overview {
        padding: 70px 0 55px;
    }

    .elina-events-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-events-overview {
        padding: 60px 0 40px;
    }

    .elina-events-heading {
        margin-bottom: 40px;
    }

    .elina-events-heading h2 {
        font-size: 30px;
    }

    .elina-events-heading p {
        font-size: 14px;
    }

    .elina-event-box {
        padding: 25px 20px;
    }

}
/* =========================================
   EVENT MEMORIES
========================================= */

.elina-event-memories {
    padding: 80px 0 90px;
    background: #f8fbfc;
}


/* Heading */

.elina-event-memories-heading {
    margin-bottom: 50px;
}

.elina-event-memories-heading > span {
    display: inline-block;

    margin-bottom: 10px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-event-memories-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.elina-event-memories-heading h2 strong {
    color: #f2a01d;
    font-weight: 800;
}

.elina-event-memories-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Small line */

.elina-event-line {
    margin-top: 20px;
}

.elina-event-line i {
    display: inline-flex;

    width: 35px;
    height: 3px;

    align-items: center;
    justify-content: center;

    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   PHOTO GRID
========================================= */

.elina-event-photo-grid {
    row-gap: 25px;
}

.elina-event-photo {
    position: relative;

    height: 270px;

    overflow: hidden;

    border-radius: 16px;

    background: #ffffff;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.10);
}

.elina-event-photo.large {
    height: 365px;
}

.elina-event-photo img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.elina-event-photo:hover img {
    transform: scale(1.08);
}


/* Overlay */

.elina-event-photo-overlay {
    position: absolute;

    inset: 0;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    padding: 25px;

    background: linear-gradient(
        to top,
        rgba(7, 59, 86, 0.85),
        rgba(7, 59, 86, 0.05) 65%
    );

    opacity: 0;

    transition: all 0.35s ease;
}

.elina-event-photo:hover .elina-event-photo-overlay {
    opacity: 1;
}


/* Text */

.elina-event-photo-overlay span {
    display: block;

    margin-bottom: 5px;

    color: #35c878;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1px;
}

.elina-event-photo-overlay h3 {
    margin: 0;

    color: #ffffff;

    font-size: 20px;
    font-weight: 700;
}


/* View Button */

.elina-event-photo-overlay a {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border-radius: 50%;

    background: #ffffff;

    color: #159b69;

    font-size: 18px;

    text-decoration: none;

    transform: scale(0.7);

    transition: all 0.3s ease;
}

.elina-event-photo:hover .elina-event-photo-overlay a {
    transform: scale(1);
}

.elina-event-photo-overlay a:hover {
    background: #35c878;
    color: #ffffff;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-event-memories {
        padding: 70px 0;
    }

    .elina-event-memories-heading h2 {
        font-size: 35px;
    }

    .elina-event-photo.large {
        height: 320px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-event-memories {
        padding: 60px 0;
    }

    .elina-event-memories-heading {
        margin-bottom: 35px;
    }

    .elina-event-memories-heading h2 {
        font-size: 30px;
    }

    .elina-event-photo,
    .elina-event-photo.large {
        height: 260px;
    }

    .elina-event-photo-overlay {
        padding: 18px;
    }

    .elina-event-photo-overlay h3 {
        font-size: 17px;
    }

}
/* =========================================
   WHY EVENTS MATTER
========================================= */

.elina-events-purpose {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* Content */

.elina-events-purpose-content {
    padding-right: 45px;
}

.elina-events-purpose-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-events-purpose-content h2 {
    margin: 0 0 18px;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-events-purpose-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-events-purpose-intro {
    margin-bottom: 30px;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Purpose List */

.elina-purpose-list {
    display: flex;
    flex-direction: column;

    gap: 20px;
}

.elina-purpose-item {
    display: flex;
    align-items: flex-start;

    gap: 15px;
}

.elina-purpose-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f2;

    color: #159b69;

    font-size: 21px;
}

.elina-purpose-item h4 {
    margin: 2px 0 5px;

    color: #073b56;

    font-size: 17px;
    font-weight: 700;
}

.elina-purpose-item p {
    margin: 0;

    color: #74838a;

    font-size: 13px;
    line-height: 1.65;
}


/* =========================================
   VISUAL
========================================= */

.elina-events-purpose-visual {
    position: relative;

    min-height: 500px;

    padding-left: 25px;
}

.elina-purpose-main-image {
    position: relative;

    width: 88%;
    height: 450px;

    overflow: hidden;

    border-radius: 25px 25px 25px 70px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.16);

    z-index: 2;
}

.elina-purpose-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.elina-purpose-main-image:hover img {
    transform: scale(1.05);
}


/* Floating Card */

.elina-purpose-card {
    position: absolute;

    right: 0;
    bottom: 25px;

    width: 260px;

    display: flex;
    align-items: center;

    gap: 14px;

    padding: 18px 20px;

    background: #ffffff;

    border-radius: 14px;

    box-shadow: 0 12px 35px rgba(7, 59, 86, 0.15);

    z-index: 4;
}

.elina-purpose-card > i {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border-radius: 50%;

    background: #fff3dc;

    color: #f2a01d;

    font-size: 20px;
}

.elina-purpose-card strong {
    display: block;

    margin-bottom: 3px;

    color: #073b56;

    font-size: 15px;
}

.elina-purpose-card span {
    display: block;

    color: #7a898f;

    font-size: 11px;
    line-height: 1.5;
}


/* Decorative Shape */

.elina-purpose-shape {
    position: absolute;

    width: 170px;
    height: 170px;

    left: -5px;
    bottom: 0;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);

    z-index: 1;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-events-purpose {
        padding: 70px 0;
    }

    .elina-events-purpose-content {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .elina-events-purpose-content h2 {
        font-size: 35px;
    }

    .elina-events-purpose-visual {
        padding-left: 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-events-purpose {
        padding: 60px 0;
    }

    .elina-events-purpose-content h2 {
        font-size: 30px;
    }

    .elina-events-purpose-visual {
        min-height: 390px;
    }

    .elina-purpose-main-image {
        width: 92%;
        height: 350px;

        border-radius: 20px 20px 20px 50px;
    }

    .elina-purpose-card {
        right: 0;
        bottom: 10px;

        width: 235px;

        padding: 14px 15px;
    }

    .elina-purpose-shape {
        width: 120px;
        height: 120px;
    }

}
/* =========================================
   ACTIVITIES & CHILD DEVELOPMENT
========================================= */

.elina-activity-growth {
    padding: 85px 0 90px;
    background: #ffffff;
}

.elina-growth-image {
    position: relative;
    max-width: 470px;
    margin: 0 auto;
    padding: 12px;
}

.elina-growth-image::before {
    content: "";

    position: absolute;

    width: 120px;
    height: 120px;

    left: -10px;
    top: -10px;

    border-radius: 25px;

    background: rgba(53, 200, 120, 0.13);
}

.elina-growth-image::after {
    content: "";

    position: absolute;

    width: 100px;
    height: 100px;

    right: -10px;
    bottom: -10px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.15);
}

.elina-growth-image img {
    position: relative;
    z-index: 2;

    width: 100%;
    height: 450px;

    display: block;

    object-fit: cover;

    border-radius: 22px;

    box-shadow: 0 18px 40px rgba(7, 59, 86, 0.14);
}


/* Badge */

.elina-growth-badge {
    position: absolute;

    z-index: 5;

    left: -5px;
    bottom: 35px;

    display: flex;
    align-items: center;

    gap: 12px;

    padding: 15px 20px;

    background: #ffffff;

    border-radius: 12px;

    box-shadow: 0 10px 30px rgba(7, 59, 86, 0.14);
}

.elina-growth-badge > i {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff3dc;

    color: #f2a01d;

    font-size: 18px;
}

.elina-growth-badge strong {
    display: block;

    color: #073b56;

    font-size: 14px;
}

.elina-growth-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 11px;
}


/* Content */

.elina-growth-content {
    padding-left: 45px;
}

.elina-growth-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-growth-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-growth-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-growth-intro {
    margin-bottom: 30px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Points */

.elina-growth-points {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 22px 25px;
}

.elina-growth-point {
    display: flex;

    align-items: flex-start;

    gap: 12px;
}

.elina-growth-icon {
    flex: 0 0 42px;

    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 18px;
}

.elina-growth-point h4 {
    margin: 2px 0 5px;

    color: #073b56;

    font-size: 16px;

    font-weight: 700;
}

.elina-growth-point p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activity-growth {
        padding: 70px 0;
    }

    .elina-growth-image {
        margin-bottom: 45px;
    }

    .elina-growth-content {
        padding-left: 0;
    }

    .elina-growth-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activity-growth {
        padding: 60px 0;
    }

    .elina-growth-image img {
        height: 370px;
    }

    .elina-growth-content h2 {
        font-size: 30px;
    }

    .elina-growth-points {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .elina-growth-badge {
        left: 5px;
        bottom: 25px;
    }

}
/* =========================================
   EVENTS CTA
========================================= */

.elina-events-cta {
    position: relative;

    padding: 85px 0;

    overflow: hidden;

    background: #073b56;
}


/* Decorative circles */

.elina-events-cta::before {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    left: -100px;
    top: -100px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);
}

.elina-events-cta::after {
    content: "";

    position: absolute;

    width: 250px;
    height: 250px;

    right: -110px;
    bottom: -130px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.13);
}


/* Content */

.elina-events-cta-content {
    position: relative;
    z-index: 2;

    text-align: center;
}

.elina-events-cta-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-events-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 42px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-events-cta-content h2 span {
    color: #f2a01d;
}

.elina-events-cta-content p {
    max-width: 720px;

    margin: 20px auto 30px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;
    line-height: 1.8;
}


/* Buttons */

.elina-events-cta-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 15px;

    flex-wrap: wrap;
}

.elina-events-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-width: 165px;

    padding: 13px 24px;

    border-radius: 7px;

    background: #35c878;

    color: #ffffff;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-events-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}


/* Outline Button */

.elina-events-btn-outline {
    background: transparent;

    border: 1px solid rgba(255, 255, 255, 0.55);

    color: #ffffff;
}

.elina-events-btn-outline:hover {
    background: #ffffff;

    color: #073b56;

    border-color: #ffffff;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-events-cta {
        padding: 70px 0;
    }

    .elina-events-cta-content h2 {
        font-size: 36px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-events-cta {
        padding: 60px 15px;
    }

    .elina-events-cta-content h2 {
        font-size: 30px;
    }

    .elina-events-cta-content p {
        font-size: 13px;
        line-height: 1.7;
    }

    .elina-events-cta-buttons {
        flex-direction: column;
        gap: 12px;
    }

    .elina-events-btn {
        width: 100%;
        max-width: 250px;
    }

}
/* =========================================
   CURRICULUM HERO
========================================= */

.elina-curriculum-hero {
    position: relative;

    min-height: 470px;

    display: flex;
    align-items: center;

    background-image: url("../images/lkg.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* Light overlay for text readability */

.elina-curriculum-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(7, 59, 86, 0.78) 0%,
        rgba(7, 59, 86, 0.45) 45%,
        rgba(7, 59, 86, 0.08) 100%
    );
}


/* Content */

.elina-curriculum-hero-content {
    position: relative;

    z-index: 2;

    padding: 70px 0;
}

.elina-curriculum-hero-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-curriculum-hero-content h1 {
    max-width: 700px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 52px;
    line-height: 1.15;

    font-weight: 800;
}

.elina-curriculum-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-curriculum-hero-content p {
    max-width: 650px;

    margin: 0;

    color: rgba(255, 255, 255, 0.9);

    font-size: 15px;
    line-height: 1.8;
}


/* Decorative line */

.elina-curriculum-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-curriculum-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 10px;

    background: #35c878;
}

.elina-curriculum-hero-line span:last-child {
    background: #f2a01d;
}

.elina-curriculum-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-curriculum-hero {
        min-height: 420px;
    }

    .elina-curriculum-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-curriculum-hero {
        min-height: 430px;

        background-position: center;
    }

    .elina-curriculum-hero-overlay {
        background: rgba(7, 59, 86, 0.65);
    }

    .elina-curriculum-hero-content {
        padding: 55px 15px;
    }

    .elina-curriculum-hero-content h1 {
        font-size: 34px;
        line-height: 1.2;
    }

    .elina-curriculum-hero-content p {
        font-size: 13px;
        line-height: 1.7;
    }

}
/* =========================================
   CURRICULUM APPROACH
========================================= */

.elina-curriculum-approach {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   LEFT CONTENT
========================================= */

.elina-curriculum-intro {
    padding-right: 45px;
}

.elina-curriculum-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-curriculum-intro h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-curriculum-intro h2 span {
    display: block;

    color: #f2a01d;
}

.elina-curriculum-intro > p {
    margin-bottom: 17px;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Learning Note */

.elina-curriculum-note {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-top: 28px;

    padding: 16px 18px;

    background: #ffffff;

    border-left: 4px solid #35c878;

    border-radius: 10px;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.06);
}

.elina-curriculum-note > i {
    color: #35c878;

    font-size: 27px;
}

.elina-curriculum-note strong {
    display: block;

    margin-bottom: 3px;

    color: #073b56;

    font-size: 15px;
}

.elina-curriculum-note p {
    margin: 0;

    color: #7a898f;

    font-size: 12px;

    line-height: 1.5;
}


/* =========================================
   LEARNING GRID
========================================= */

.elina-learning-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.elina-learning-card {
    position: relative;

    min-height: 190px;

    padding: 30px 25px;

    background: #ffffff;

    border-radius: 18px;

    border: 1px solid #edf1f3;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.055);

    transition: all 0.35s ease;
}

.elina-learning-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 16px 35px rgba(7, 59, 86, 0.11);
}


/* Icon */

.elina-learning-icon {
    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 18px;

    border-radius: 14px;

    font-size: 23px;
}

.learning-blue {
    background: #edf7ff;
    color: #328dcc;
}

.learning-orange {
    background: #fff5e5;
    color: #e99a19;
}

.learning-green {
    background: #eaf9f1;
    color: #159b69;
}

.learning-pink {
    background: #fff0f5;
    color: #e45c88;
}


/* Card Content */

.elina-learning-card h3 {
    margin: 0 0 9px;

    color: #073b56;

    font-size: 17px;

    font-weight: 800;

    line-height: 1.3;
}

.elina-learning-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-curriculum-approach {
        padding: 70px 0;
    }

    .elina-curriculum-intro {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .elina-curriculum-intro h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-curriculum-approach {
        padding: 60px 15px;
    }

    .elina-curriculum-intro h2 {
        font-size: 30px;
    }

    .elina-learning-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .elina-learning-card {
        min-height: auto;

        padding: 25px 22px;
    }

}
/* =========================================
   WHAT CHILDREN LEARN
========================================= */

.elina-learning-section {
    padding: 90px 0;

    background: #ffffff;
}


/* Heading */

.elina-learning-heading {
    margin-bottom: 55px;
}

.elina-learning-heading > span {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-learning-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-learning-heading h2 strong {
    color: #f2a01d;

    font-weight: 800;
}

.elina-learning-heading p {
    max-width: 720px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Divider */

.elina-learning-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-top: 22px;
}

.elina-learning-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-learning-divider span:last-child {
    background: #f2a01d;
}

.elina-learning-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   CARDS
========================================= */

.elina-learning-cards {
    row-gap: 25px;
}

.elina-learn-card {
    position: relative;

    height: 100%;

    padding: 32px 28px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.055);

    overflow: hidden;

    transition: all 0.35s ease;
}

.elina-learn-card:hover {
    transform: translateY(-7px);

    border-color: transparent;

    box-shadow: 0 16px 38px rgba(7, 59, 86, 0.12);
}


/* Number */

.elina-learn-number {
    position: absolute;

    top: 18px;
    right: 22px;

    color: #edf2f4;

    font-size: 32px;

    line-height: 1;

    font-weight: 800;
}


/* Icon */

.elina-learn-icon {
    position: relative;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    border-radius: 15px;

    font-size: 24px;
}

.learn-blue {
    background: #edf7ff;
    color: #328dcc;
}

.learn-orange {
    background: #fff5e4;
    color: #e99a19;
}

.learn-green {
    background: #eaf9f1;
    color: #159b69;
}

.learn-pink {
    background: #fff0f5;
    color: #e35b87;
}

.learn-yellow {
    background: #fff9df;
    color: #d9a414;
}

.learn-purple {
    background: #f4efff;
    color: #8564c8;
}


/* Content */

.elina-learn-card h3 {
    position: relative;

    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;

    line-height: 1.35;

    font-weight: 800;
}

.elina-learn-card p {
    position: relative;

    margin: 0;

    color: #74838a;

    font-size: 13px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-learning-section {
        padding: 70px 0;
    }

    .elina-learning-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-learning-section {
        padding: 60px 15px;
    }

    .elina-learning-heading {
        margin-bottom: 40px;
    }

    .elina-learning-heading h2 {
        font-size: 30px;
    }

    .elina-learn-card {
        padding: 28px 23px;
    }

}
/* =========================================
   LEARNING BY AGE GROUP
========================================= */

.elina-age-learning {
    padding: 90px 0;

    background: #f8fbfc;
}


/* Heading */

.elina-age-heading {
    margin-bottom: 55px;
}

.elina-age-heading > span {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-age-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-age-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-age-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Divider */

.elina-age-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-top: 22px;
}

.elina-age-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-age-divider span:last-child {
    background: #f2a01d;
}

.elina-age-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   TIMELINE
========================================= */

.elina-age-timeline {
    position: relative;

    max-width: 900px;

    margin: 0 auto;
}

.elina-age-timeline::before {
    content: "";

    position: absolute;

    left: 50%;

    top: 0;
    bottom: 0;

    width: 2px;

    background: #dceee7;

    transform: translateX(-50%);
}


/* Item */

.elina-age-item {
    position: relative;

    display: flex;

    align-items: center;

    min-height: 180px;

    margin-bottom: 25px;
}

.elina-age-item:last-child {
    margin-bottom: 0;
}


/* Alternate Cards */

.elina-age-item:nth-child(odd) {
    justify-content: flex-start;

    padding-right: 51%;
}

.elina-age-item:nth-child(even) {
    justify-content: flex-end;

    padding-left: 51%;
}


/* Number */

.elina-age-dot {
    position: absolute;

    left: 50%;
    top: 50%;

    z-index: 3;

    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    transform: translate(-50%, -50%);

    border: 5px solid #f8fbfc;

    border-radius: 50%;

    background: #35c878;

    color: #ffffff;

    font-size: 12px;

    font-weight: 800;

    box-shadow: 0 5px 15px rgba(53, 200, 120, 0.25);
}


/* Card */

.elina-age-card {
    position: relative;

    width: 100%;

    padding: 28px 30px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 16px;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.06);

    transition: all 0.3s ease;
}

.elina-age-card:hover {
    transform: translateY(-5px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.11);
}

.elina-age-card > span {
    display: block;

    margin-bottom: 6px;

    color: #159b69;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;
}

.elina-age-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 22px;

    font-weight: 800;
}

.elina-age-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.7;
}


/* Tags */

.elina-age-tags {
    display: flex;

    flex-wrap: wrap;

    gap: 7px;

    margin-top: 16px;
}

.elina-age-tags small {
    padding: 5px 10px;

    border-radius: 20px;

    background: #eef9f3;

    color: #159b69;

    font-size: 10px;

    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-age-learning {
        padding: 70px 0;
    }

    .elina-age-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-age-learning {
        padding: 60px 15px;
    }

    .elina-age-heading {
        margin-bottom: 40px;
    }

    .elina-age-heading h2 {
        font-size: 30px;
    }

    .elina-age-timeline::before {
        left: 23px;

        transform: none;
    }

    .elina-age-item,
    .elina-age-item:nth-child(odd),
    .elina-age-item:nth-child(even) {
        justify-content: flex-start;

        padding: 0 0 0 65px;

        min-height: auto;
    }

    .elina-age-item {
        margin-bottom: 20px;
    }

    .elina-age-dot {
        left: 23px;
        top: 30px;

        width: 45px;
        height: 45px;

        transform: translate(-50%, 0);
    }

    .elina-age-card {
        padding: 24px 20px;
    }

    .elina-age-card h3 {
        font-size: 20px;
    }

}
/* =========================================
   CURRICULUM BENEFITS
========================================= */

.elina-curriculum-benefits {
    padding: 85px 0 90px;
    background: #073b56;
    overflow: hidden;
}


/* Left Content */

.elina-benefits-content {
    padding-right: 45px;
}

.elina-benefits-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-benefits-content h2 {
    margin: 0 0 20px;

    color: #ffffff;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-benefits-content h2 span {
    display: block;
    color: #f2a01d;
}

.elina-benefits-content p {
    margin-bottom: 16px;

    color: rgba(255, 255, 255, 0.76);

    font-size: 14px;
    line-height: 1.8;
}


/* Button */

.elina-benefits-btn {
    display: inline-flex;

    align-items: center;
    gap: 8px;

    margin-top: 12px;

    padding: 13px 23px;

    border-radius: 7px;

    background: #35c878;

    color: #ffffff;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-benefits-btn:hover {
    background: #f2a01d;
    color: #ffffff;
    transform: translateY(-3px);
}


/* =========================================
   BENEFIT GRID
========================================= */

.elina-benefits-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.elina-benefit-card {
    padding: 28px 25px;

    background: #ffffff;

    border-radius: 16px;

    transition: all 0.35s ease;
}

.elina-benefit-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}


/* Icons */

.elina-benefit-icon {
    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 18px;

    border-radius: 14px;

    font-size: 22px;
}

.benefit-green {
    background: #eaf9f1;
    color: #159b69;
}

.benefit-orange {
    background: #fff4df;
    color: #e99a19;
}

.benefit-blue {
    background: #edf7ff;
    color: #328dcc;
}

.benefit-pink {
    background: #fff0f5;
    color: #e35b87;
}


/* Card Text */

.elina-benefit-card h3 {
    margin: 0 0 9px;

    color: #073b56;

    font-size: 17px;
    font-weight: 800;
}

.elina-benefit-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;
    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-curriculum-benefits {
        padding: 70px 0;
    }

    .elina-benefits-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .elina-benefits-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-curriculum-benefits {
        padding: 60px 15px;
    }

    .elina-benefits-content h2 {
        font-size: 30px;
    }

    .elina-benefits-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .elina-benefit-card {
        padding: 25px 22px;
    }

}
/* =========================================
   CLASSES HERO
========================================= */

.elina-classes-hero {
    position: relative;

    min-height: 470px;

    display: flex;
    align-items: center;

    background-image: url("../images/classes-hero.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* Overlay */

.elina-classes-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(7, 59, 86, 0.80) 0%,
        rgba(7, 59, 86, 0.48) 48%,
        rgba(7, 59, 86, 0.08) 100%
    );
}


/* Content */

.elina-classes-hero-content {
    position: relative;

    z-index: 2;

    padding: 70px 0;
}

.elina-classes-hero-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classes-hero-content h1 {
    max-width: 700px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 52px;
    line-height: 1.15;

    font-weight: 800;
}

.elina-classes-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-classes-hero-content p {
    max-width: 650px;

    margin: 0;

    color: rgba(255, 255, 255, 0.92);

    font-size: 15px;
    line-height: 1.8;
}


/* Decorative Line */

.elina-classes-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-classes-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 10px;

    background: #35c878;
}

.elina-classes-hero-line span:last-child {
    background: #f2a01d;
}

.elina-classes-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classes-hero {
        min-height: 420px;
    }

    .elina-classes-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classes-hero {
        min-height: 430px;

        background-position: center center;
    }

    .elina-classes-hero-overlay {
        background: rgba(7, 59, 86, 0.66);
    }

    .elina-classes-hero-content {
        padding: 55px 15px;
    }

    .elina-classes-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-classes-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

}
/* =========================================
   CLASSES OVERVIEW
========================================= */

.elina-classes-overview {
    padding: 90px 0;

    background: #f8fbfc;
}


/* Heading */

.elina-classes-heading {
    margin-bottom: 55px;
}

.elina-classes-heading > span {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classes-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-classes-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-classes-heading p {
    max-width: 720px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Divider */

.elina-classes-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-top: 22px;
}

.elina-classes-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-classes-divider span:last-child {
    background: #f2a01d;
}

.elina-classes-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   CLASS CARDS
========================================= */

.elina-class-grid {
    row-gap: 25px;
}

.elina-class-card {
    position: relative;

    height: 100%;

    padding: 32px 25px;

    background: #ffffff;

    border-radius: 18px;

    border: 1px solid #edf1f3;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.055);

    overflow: hidden;

    transition: all 0.35s ease;
}

.elina-class-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 16px 35px rgba(7, 59, 86, 0.12);
}


/* Number */

.elina-class-number {
    position: absolute;

    top: 18px;
    right: 20px;

    color: #edf2f4;

    font-size: 32px;

    font-weight: 800;

    line-height: 1;
}


/* Icon */

.elina-class-icon {
    position: relative;

    width: 60px;
    height: 60px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 15px;

    font-size: 24px;
}

.class-blue {
    background: #edf7ff;
    color: #328dcc;
}

.class-orange {
    background: #fff5e4;
    color: #e99a19;
}

.class-green {
    background: #eaf9f1;
    color: #159b69;
}

.class-pink {
    background: #fff0f5;
    color: #e35b87;
}


/* Card Text */

.elina-class-card > span {
    display: block;

    margin-bottom: 7px;

    color: #159b69;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;
}

.elina-class-card h3 {
    margin: 0 0 11px;

    color: #073b56;

    font-size: 20px;

    font-weight: 800;
}

.elina-class-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* Tags */

.elina-class-tags {
    display: flex;

    flex-wrap: wrap;

    gap: 7px;

    margin-top: 18px;
}

.elina-class-tags small {
    padding: 5px 10px;

    border-radius: 20px;

    background: #eef9f3;

    color: #159b69;

    font-size: 10px;

    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classes-overview {
        padding: 70px 0;
    }

    .elina-classes-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classes-overview {
        padding: 60px 15px;
    }

    .elina-classes-heading {
        margin-bottom: 40px;
    }

    .elina-classes-heading h2 {
        font-size: 30px;
    }

    .elina-class-card {
        padding: 28px 23px;
    }

}
/* =========================================
   LEARNING SUPPORT
========================================= */

.elina-learning-support {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.elina-support-image {
    position: relative;

    width: 90%;
    min-height: 480px;

    margin: 0 auto;
}

.elina-support-image img {
    width: 100%;
    height: 450px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.14);
}


/* Badge */

.elina-support-badge {
    position: absolute;

    left: -25px;
    bottom: 15px;

    z-index: 3;

    display: flex;
    align-items: center;

    gap: 12px;

    padding: 16px 20px;

    background: #ffffff;

    border-radius: 13px;

    box-shadow: 0 12px 35px rgba(7, 59, 86, 0.14);
}

.elina-support-badge > i {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 20px;
}

.elina-support-badge strong {
    display: block;

    color: #073b56;

    font-size: 14px;
}

.elina-support-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 10px;
}


/* =========================================
   CONTENT
========================================= */

.elina-support-content {
    padding-left: 40px;
}

.elina-support-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-support-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-support-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-support-intro {
    margin-bottom: 30px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* =========================================
   SUPPORT POINTS
========================================= */

.elina-support-points {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 22px 25px;
}

.elina-support-point {
    display: flex;

    align-items: flex-start;

    gap: 12px;
}

.elina-support-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    background: #edf8f3;

    color: #159b69;

    font-size: 18px;
}

.elina-support-point h4 {
    margin: 2px 0 5px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-support-point p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-learning-support {
        padding: 70px 0;
    }

    .elina-support-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .elina-support-content {
        padding-left: 0;
    }

    .elina-support-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-learning-support {
        padding: 60px 15px;
    }

    .elina-support-image {
        width: 100%;
        min-height: 390px;
    }

    .elina-support-image img {
        height: 360px;

        border-radius: 20px 20px 50px 20px;
    }

    .elina-support-badge {
        left: 5px;
        bottom: 15px;

        padding: 13px 15px;
    }

    .elina-support-content h2 {
        font-size: 30px;
    }

    .elina-support-points {
        grid-template-columns: 1fr;

        gap: 18px;
    }

}
/* =========================================
   WHAT MAKES OUR CLASSES SPECIAL
========================================= */

.elina-class-benefits {
    padding: 85px 0 90px;
    background: #f8fbfc;
}


/* Heading */

.elina-class-benefits-heading {
    margin-bottom: 50px;
}

.elina-class-benefits-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-class-benefits-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-class-benefits-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-class-benefits-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Divider */

.elina-class-benefits-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-top: 21px;
}

.elina-class-benefits-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-class-benefits-divider span:last-child {
    background: #f2a01d;
}

.elina-class-benefits-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   CARDS
========================================= */

.elina-class-benefit-grid {
    row-gap: 25px;
}

.elina-class-benefit-card {
    height: 100%;

    padding: 32px 24px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.055);

    transition: all 0.35s ease;
}

.elina-class-benefit-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.12);
}


/* Icons */

.elina-class-benefit-icon {
    width: 64px;
    height: 64px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 20px;

    border-radius: 18px;

    font-size: 25px;

    transition: transform 0.3s ease;
}

.elina-class-benefit-card:hover
.elina-class-benefit-icon {
    transform: scale(1.08);
}

.benefit-one {
    background: #eaf9f1;
    color: #159b69;
}

.benefit-two {
    background: #fff4df;
    color: #e99a19;
}

.benefit-three {
    background: #edf7ff;
    color: #328dcc;
}

.benefit-four {
    background: #fff0f5;
    color: #e35b87;
}


/* Text */

.elina-class-benefit-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;
    font-weight: 800;
}

.elina-class-benefit-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-class-benefits {
        padding: 70px 0;
    }

    .elina-class-benefits-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-class-benefits {
        padding: 60px 15px;
    }

    .elina-class-benefits-heading {
        margin-bottom: 38px;
    }

    .elina-class-benefits-heading h2 {
        font-size: 30px;
    }

    .elina-class-benefit-card {
        padding: 28px 22px;
    }

}
/* =========================================
   CLASSES FINAL CTA
========================================= */

.elina-classes-final-cta {
    position: relative;

    padding: 85px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Shapes */

.elina-classes-final-cta::before {
    content: "";

    position: absolute;

    width: 240px;
    height: 240px;

    left: -110px;
    top: -110px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);
}

.elina-classes-final-cta::after {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: -130px;
    bottom: -150px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-classes-final-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-classes-final-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classes-final-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 42px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-classes-final-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-classes-final-content p {
    max-width: 720px;

    margin: 20px auto 30px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Buttons */

.elina-classes-final-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 14px;
}

.elina-classes-final-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-width: 175px;

    padding: 13px 23px;

    border-radius: 7px;

    background: #35c878;

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-classes-final-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}


/* Outline */

.elina-classes-final-btn.outline {
    background: transparent;

    border: 1px solid rgba(255, 255, 255, 0.55);

    color: #ffffff;
}

.elina-classes-final-btn.outline:hover {
    background: #ffffff;

    border-color: #ffffff;

    color: #073b56;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classes-final-cta {
        padding: 70px 0;
    }

    .elina-classes-final-content h2 {
        font-size: 36px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classes-final-cta {
        padding: 60px 15px;
    }

    .elina-classes-final-content h2 {
        font-size: 30px;
    }

    .elina-classes-final-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-classes-final-buttons {
        flex-direction: column;

        gap: 10px;
    }

    .elina-classes-final-btn {
        width: 100%;

        max-width: 250px;
    }

}
/* =========================================
   NEUROBLOOM HERO
========================================= */

.neurobloom-hero {
    position: relative;

    min-height: 500px;

    display: flex;
    align-items: center;

    background-image: url("../images/neurobloom-hero.png");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* Overlay */

.neurobloom-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(7, 59, 86, 0.82) 0%,
        rgba(7, 59, 86, 0.55) 45%,
        rgba(7, 59, 86, 0.10) 100%
    );
}


/* Content */

.neurobloom-hero-content {
    position: relative;

    z-index: 2;

    padding: 80px 0;
}

.neurobloom-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #35c878;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.neurobloom-hero-content h1 {
    max-width: 720px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 52px;
    line-height: 1.15;

    font-weight: 800;
}

.neurobloom-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.neurobloom-hero-content p {
    max-width: 670px;

    margin: 0;

    color: rgba(255, 255, 255, 0.92);

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.neurobloom-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.neurobloom-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.neurobloom-hero-line span:last-child {
    background: #f2a01d;
}

.neurobloom-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .neurobloom-hero {
        min-height: 440px;
    }

    .neurobloom-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .neurobloom-hero {
        min-height: 470px;

        background-position: center center;
    }

    .neurobloom-hero-overlay {
        background: rgba(7, 59, 86, 0.68);
    }

    .neurobloom-hero-content {
        padding: 60px 15px;
    }

    .neurobloom-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .neurobloom-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

}
/* =========================================
   NEUROBLOOM INTRODUCTION
========================================= */

.neurobloom-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.neurobloom-intro-image {
    position: relative;

    width: 90%;

    min-height: 470px;

    margin: 0 auto;
}

.neurobloom-intro-image img {
    width: 100%;
    height: 450px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.14);
}


/* Badge */

.neurobloom-intro-badge {
    position: absolute;

    left: -25px;
    bottom: 10px;

    z-index: 2;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px 20px;

    background: #ffffff;

    border-radius: 14px;

    box-shadow: 0 12px 35px rgba(7, 59, 86, 0.15);
}

.neurobloom-intro-badge-icon {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 20px;
}

.neurobloom-intro-badge strong {
    display: block;

    color: #073b56;

    font-size: 14px;

    font-weight: 800;
}

.neurobloom-intro-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 10px;
}


/* =========================================
   CONTENT
========================================= */

.neurobloom-intro-content {
    padding-left: 45px;
}

.neurobloom-intro-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.neurobloom-intro-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.neurobloom-intro-content h2 span {
    display: block;

    color: #f2a01d;
}

.neurobloom-intro-content p {
    margin-bottom: 14px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.neurobloom-intro-content .neurobloom-intro-lead {
    color: #536c76;

    font-size: 15px;

    line-height: 1.8;

    margin-bottom: 16px;
}


/* =========================================
   HIGHLIGHTS
========================================= */

.neurobloom-intro-highlights {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px 25px;

    margin-top: 28px;
}

.neurobloom-intro-highlight {
    display: flex;

    align-items: flex-start;

    gap: 12px;
}

.neurobloom-highlight-icon {
    flex: 0 0 44px;

    width: 44px;
    height: 44px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    background: #edf8f3;

    color: #159b69;

    font-size: 19px;
}

.neurobloom-intro-highlight h4 {
    margin: 1px 0 5px;

    color: #073b56;

    font-size: 15px;

    font-weight: 800;
}

.neurobloom-intro-highlight p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .neurobloom-intro {
        padding: 70px 0;
    }

    .neurobloom-intro-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .neurobloom-intro-content {
        padding-left: 0;
    }

    .neurobloom-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .neurobloom-intro {
        padding: 60px 15px;
    }

    .neurobloom-intro-image {
        width: 100%;

        min-height: 390px;
    }

    .neurobloom-intro-image img {
        height: 360px;

        border-radius: 20px 20px 50px 20px;
    }

    .neurobloom-intro-badge {
        left: 5px;

        bottom: 10px;

        padding: 13px 15px;
    }

    .neurobloom-intro-content h2 {
        font-size: 30px;
    }

    .neurobloom-intro-highlights {
        grid-template-columns: 1fr;

        gap: 18px;
    }

}
/* =========================================
   NEUROBLOOM FOCUS AREAS
========================================= */

.neurobloom-focus {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* Heading */

.neurobloom-focus-heading {
    margin-bottom: 55px;
}

.neurobloom-focus-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.neurobloom-focus-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.neurobloom-focus-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.neurobloom-focus-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.neurobloom-focus-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.neurobloom-focus-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.neurobloom-focus-divider span:last-child {
    background: #f2a01d;
}

.neurobloom-focus-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   CARDS
========================================= */

.neurobloom-focus-grid {
    row-gap: 25px;
}

.neurobloom-focus-card {
    height: 100%;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.05);

    transition: all 0.35s ease;
}

.neurobloom-focus-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.11);
}


/* Icons */

.neurobloom-focus-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 15px;

    font-size: 23px;
}

.focus-green {
    background: #eaf9f1;
    color: #159b69;
}

.focus-orange {
    background: #fff4df;
    color: #e99a19;
}

.focus-blue {
    background: #edf7ff;
    color: #328dcc;
}

.focus-pink {
    background: #fff0f5;
    color: #e35b87;
}

.focus-yellow {
    background: #fff9df;
    color: #d7a400;
}

.focus-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.neurobloom-focus-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;

    font-weight: 800;
}

.neurobloom-focus-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .neurobloom-focus {
        padding: 70px 0;
    }

    .neurobloom-focus-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .neurobloom-focus {
        padding: 60px 15px;
    }

    .neurobloom-focus-heading {
        margin-bottom: 40px;
    }

    .neurobloom-focus-heading h2 {
        font-size: 30px;
    }

    .neurobloom-focus-card {
        padding: 27px 22px;
    }

}
/* =========================================
   NEUROBLOOM APPROACH
========================================= */

.neurobloom-approach {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   CONTENT
========================================= */

.neurobloom-approach-content {
    padding-right: 40px;
}

.neurobloom-approach-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.neurobloom-approach-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.neurobloom-approach-content h2 span {
    display: block;

    color: #f2a01d;
}

.neurobloom-approach-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.neurobloom-approach-content .neurobloom-approach-intro {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   APPROACH STEPS
========================================= */

.neurobloom-approach-steps {
    margin-top: 28px;
}

.neurobloom-approach-step {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 15px;

    padding-bottom: 22px;
}

.neurobloom-approach-step:last-child {
    padding-bottom: 0;
}


/* Connecting Line */

.neurobloom-approach-step:not(:last-child)::before {
    content: "";

    position: absolute;

    left: 19px;

    top: 40px;

    width: 1px;

    height: calc(100% - 17px);

    background: #dcece5;
}


/* Number */

.neurobloom-step-number {
    position: relative;

    z-index: 2;

    flex: 0 0 40px;

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;
}

.neurobloom-approach-step h4 {
    margin: 2px 0 5px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.neurobloom-approach-step p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   VISUAL
========================================= */

.neurobloom-approach-visual {
    position: relative;

    width: 90%;

    min-height: 500px;

    margin-left: auto;
}

.neurobloom-approach-visual img {
    width: 100%;

    height: 470px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 25px 70px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.14);
}


/* Quote */

.neurobloom-approach-quote {
    position: absolute;

    left: -30px;

    bottom: 25px;

    width: 280px;

    padding: 20px 22px;

    background: #ffffff;

    border-radius: 14px;

    box-shadow: 0 12px 35px rgba(7, 59, 86, 0.15);
}

.neurobloom-approach-quote i {
    display: block;

    margin-bottom: 7px;

    color: #f2a01d;

    font-size: 23px;
}

.neurobloom-approach-quote p {
    margin: 0;

    color: #073b56;

    font-size: 13px;

    line-height: 1.65;

    font-weight: 600;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .neurobloom-approach {
        padding: 70px 0;
    }

    .neurobloom-approach-content {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .neurobloom-approach-content h2 {
        font-size: 35px;
    }

    .neurobloom-approach-visual {
        width: 90%;

        margin: 0 auto;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .neurobloom-approach {
        padding: 60px 15px;
    }

    .neurobloom-approach-content h2 {
        font-size: 30px;
    }

    .neurobloom-approach-visual {
        width: 100%;

        min-height: 400px;
    }

    .neurobloom-approach-visual img {
        height: 360px;

        border-radius: 20px 20px 20px 50px;
    }

    .neurobloom-approach-quote {
        left: 5px;

        bottom: 10px;

        width: 245px;

        padding: 15px 17px;
    }

}
/* =========================================
   NEUROBLOOM FINAL CTA
========================================= */

.neurobloom-final-cta {
    position: relative;

    padding: 85px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Circles */

.neurobloom-final-cta::before {
    content: "";

    position: absolute;

    width: 260px;
    height: 260px;

    left: -120px;
    top: -120px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);
}

.neurobloom-final-cta::after {
    content: "";

    position: absolute;

    width: 300px;
    height: 300px;

    right: -140px;
    bottom: -160px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.neurobloom-final-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.neurobloom-final-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.neurobloom-final-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 42px;

    line-height: 1.2;

    font-weight: 800;
}

.neurobloom-final-content h2 span {
    display: block;

    color: #f2a01d;
}

.neurobloom-final-content p {
    max-width: 750px;

    margin: 20px auto 30px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Buttons */

.neurobloom-final-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 14px;
}

.neurobloom-final-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-width: 175px;

    padding: 13px 23px;

    border-radius: 7px;

    background: #35c878;

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.neurobloom-final-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}


/* Outline Button */

.neurobloom-final-btn.outline {
    background: transparent;

    border: 1px solid rgba(255, 255, 255, 0.55);

    color: #ffffff;
}

.neurobloom-final-btn.outline:hover {
    background: #ffffff;

    border-color: #ffffff;

    color: #073b56;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .neurobloom-final-cta {
        padding: 70px 0;
    }

    .neurobloom-final-content h2 {
        font-size: 36px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .neurobloom-final-cta {
        padding: 60px 15px;
    }

    .neurobloom-final-content h2 {
        font-size: 30px;
    }

    .neurobloom-final-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .neurobloom-final-buttons {
        flex-direction: column;

        gap: 10px;
    }

    .neurobloom-final-btn {
        width: 100%;

        max-width: 250px;
    }

}
/* =========================================
   LEARNING ACTIVITIES INTRO
========================================= */

.elina-activities-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.elina-activities-intro-image {
    position: relative;

    width: 90%;

    min-height: 470px;

    margin: 0 auto;
}

.elina-activities-intro-image img {
    width: 100%;
    height: 450px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.14);
}


/* Badge */

.elina-activities-intro-badge {
    position: absolute;

    left: -25px;
    bottom: 10px;

    z-index: 2;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px 20px;

    background: #ffffff;

    border-radius: 14px;

    box-shadow: 0 12px 35px rgba(7, 59, 86, 0.15);
}

.elina-activities-intro-badge > i {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff4df;

    color: #e99a19;

    font-size: 20px;
}

.elina-activities-intro-badge strong {
    display: block;

    color: #073b56;

    font-size: 14px;

    font-weight: 800;
}

.elina-activities-intro-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 10px;
}


/* =========================================
   CONTENT
========================================= */

.elina-activities-intro-content {
    padding-left: 45px;
}

.elina-activities-intro-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-activities-intro-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-activities-intro-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-activities-intro-content p {
    margin-bottom: 14px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.elina-activities-intro-content
.elina-activities-intro-lead {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   HIGHLIGHTS
========================================= */

.elina-activities-highlights {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px 25px;

    margin-top: 28px;
}

.elina-activities-highlight {
    display: flex;

    align-items: flex-start;

    gap: 12px;
}

.elina-activities-icon {
    flex: 0 0 44px;

    width: 44px;
    height: 44px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    background: #edf8f3;

    color: #159b69;

    font-size: 19px;
}

.elina-activities-highlight h4 {
    margin: 1px 0 5px;

    color: #073b56;

    font-size: 15px;

    font-weight: 800;
}

.elina-activities-highlight p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activities-intro {
        padding: 70px 0;
    }

    .elina-activities-intro-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .elina-activities-intro-content {
        padding-left: 0;
    }

    .elina-activities-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activities-intro {
        padding: 60px 15px;
    }

    .elina-activities-intro-image {
        width: 100%;

        min-height: 390px;
    }

    .elina-activities-intro-image img {
        height: 360px;

        border-radius: 20px 20px 50px 20px;
    }

    .elina-activities-intro-badge {
        left: 5px;

        bottom: 10px;

        padding: 13px 15px;
    }

    .elina-activities-intro-content h2 {
        font-size: 30px;
    }

    .elina-activities-highlights {
        grid-template-columns: 1fr;

        gap: 18px;
    }

}
/* =========================================
   LEARNING ACTIVITIES HERO
========================================= */

.elina-activities-hero {
    position: relative;

    min-height: 500px;

    display: flex;
    align-items: center;

    background-image: url("../images/activities1.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* Overlay */

.elina-activities-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(7, 59, 86, 0.82) 0%,
        rgba(7, 59, 86, 0.55) 45%,
        rgba(7, 59, 86, 0.12) 100%
    );
}


/* Content */

.elina-activities-hero-content {
    position: relative;

    z-index: 2;

    padding: 80px 0;
}

.elina-activities-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-activities-hero-content h1 {
    max-width: 720px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 52px;

    line-height: 1.15;

    font-weight: 800;
}

.elina-activities-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-activities-hero-content p {
    max-width: 650px;

    margin: 0;

    color: rgba(255, 255, 255, 0.92);

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.elina-activities-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-activities-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-activities-hero-line span:last-child {
    background: #f2a01d;
}

.elina-activities-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activities-hero {
        min-height: 450px;
    }

    .elina-activities-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activities-hero {
        min-height: 470px;

        background-position: center center;
    }

    .elina-activities-hero-overlay {
        background: rgba(7, 59, 86, 0.68);
    }

    .elina-activities-hero-content {
        padding: 60px 15px;
    }

    .elina-activities-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-activities-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

}
/* =========================================
   LEARNING ACTIVITIES LIST
========================================= */

.elina-activities-list {
    padding: 90px 0;
    background: #f8fbfc;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.elina-activities-heading {
    margin-bottom: 55px;
}

.elina-activities-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;
}

.elina-activities-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 800;
}

.elina-activities-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-activities-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;
    line-height: 1.8;
}


/* Divider */

.elina-activities-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.elina-activities-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-activities-divider span:last-child {
    background: #f2a01d;
}

.elina-activities-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   ACTIVITY GRID
========================================= */

.elina-activities-grid {
    row-gap: 25px;
}


/* =========================================
   ACTIVITY CARD
========================================= */

.elina-activity-card {
    position: relative;

    height: 100%;

    padding: 32px 28px 28px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 8px 25px rgba(7, 59, 86, 0.05);

    overflow: hidden;

    transition: all 0.35s ease;
}

.elina-activity-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 16px 35px rgba(7, 59, 86, 0.12);
}


/* Decorative Number */

.elina-activity-number {
    position: absolute;

    top: 20px;
    right: 23px;

    color: #edf2f4;

    font-size: 38px;

    font-weight: 800;

    line-height: 1;
}


/* =========================================
   ICON
========================================= */

.elina-activity-icon {
    position: relative;
    z-index: 2;

    width: 65px;
    height: 65px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    border-radius: 17px;

    font-size: 26px;

    transition: all 0.3s ease;
}

.elina-activity-card:hover .elina-activity-icon {
    transform: translateY(-3px) scale(1.05);
}


/* Icon Colors */

.activity-green {
    background: #eaf9f1;
    color: #159b69;
}

.activity-orange {
    background: #fff4df;
    color: #e99a19;
}

.activity-pink {
    background: #fff0f5;
    color: #e35b87;
}

.activity-blue {
    background: #edf7ff;
    color: #328dcc;
}

.activity-yellow {
    background: #fff9df;
    color: #d7a400;
}

.activity-purple {
    background: #f4efff;
    color: #8062c9;
}


/* =========================================
   CARD CONTENT
========================================= */

.elina-activity-card h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 11px;

    color: #073b56;

    font-size: 19px;

    font-weight: 800;
}

.elina-activity-card p {
    position: relative;
    z-index: 2;

    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* Bottom Line */

.elina-activity-line {
    width: 38px;
    height: 3px;

    margin-top: 20px;

    border-radius: 20px;

    background: #35c878;
}

.elina-activity-card:nth-child(2) .elina-activity-line {
    background: #f2a01d;
}

.elina-activity-card:nth-child(3) .elina-activity-line {
    background: #e35b87;
}

.elina-activity-card:nth-child(4) .elina-activity-line {
    background: #328dcc;
}

.elina-activity-card:nth-child(5) .elina-activity-line {
    background: #d7a400;
}

.elina-activity-card:nth-child(6) .elina-activity-line {
    background: #8062c9;
}


/* Label */

.elina-activity-label {
    display: block;

    margin-top: 10px;

    color: #8a999f;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.2px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activities-list {
        padding: 70px 0;
    }

    .elina-activities-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activities-list {
        padding: 60px 15px;
    }

    .elina-activities-heading {
        margin-bottom: 40px;
    }

    .elina-activities-heading h2 {
        font-size: 30px;
    }

    .elina-activity-card {
        padding: 28px 23px;
    }

}
/* =========================================
   HOW ACTIVITIES HELP CHILDREN GROW
========================================= */

.elina-activity-growth {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* Left Heading */

.elina-growth-heading {
    padding-right: 40px;
}

.elina-growth-heading > span {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-growth-heading h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-growth-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-growth-heading p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* =========================================
   BENEFIT GRID
========================================= */

.elina-growth-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 18px 20px;
}

.elina-growth-item {
    display: flex;

    align-items: flex-start;

    gap: 13px;

    padding: 22px 20px;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 15px;

    transition: all 0.3s ease;
}

.elina-growth-item:hover {
    transform: translateY(-4px);

    background: #ffffff;

    box-shadow: 0 10px 28px rgba(7, 59, 86, 0.08);
}


/* Icons */

.elina-growth-icon {
    flex: 0 0 45px;

    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    font-size: 19px;
}

.growth-green {
    background: #eaf9f1;
    color: #159b69;
}

.growth-orange {
    background: #fff4df;
    color: #e99a19;
}

.growth-blue {
    background: #edf7ff;
    color: #328dcc;
}

.growth-pink {
    background: #fff0f5;
    color: #e35b87;
}

.growth-yellow {
    background: #fff9df;
    color: #d7a400;
}

.growth-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-growth-item h3 {
    margin: 1px 0 6px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-growth-item p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activity-growth {
        padding: 70px 0;
    }

    .elina-growth-heading {
        padding-right: 0;

        margin-bottom: 40px;
    }

    .elina-growth-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activity-growth {
        padding: 60px 15px;
    }

    .elina-growth-heading h2 {
        font-size: 30px;
    }

    .elina-growth-grid {
        grid-template-columns: 1fr;

        gap: 14px;
    }

    .elina-growth-item {
        padding: 20px 18px;
    }

}
/* =========================================
   LEARNING ACTIVITIES CTA
========================================= */

.elina-activities-cta {
    position: relative;

    padding: 75px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Circles */

.elina-activities-cta::before {
    content: "";

    position: absolute;

    width: 230px;
    height: 230px;

    left: -110px;
    top: -110px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);
}

.elina-activities-cta::after {
    content: "";

    position: absolute;

    width: 260px;
    height: 260px;

    right: -120px;
    bottom: -140px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-activities-cta-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-activities-cta-label {
    display: inline-block;

    margin-bottom: 10px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-activities-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-activities-cta-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-activities-cta-content p {
    max-width: 680px;

    margin: 18px auto 25px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Button */

.elina-activities-cta-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 13px 25px;

    background: #35c878;

    color: #ffffff;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-activities-cta-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-activities-cta {
        padding: 65px 0;
    }

    .elina-activities-cta-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-activities-cta {
        padding: 55px 15px;
    }

    .elina-activities-cta-content h2 {
        font-size: 29px;
    }

    .elina-activities-cta-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-activities-cta-btn {
        width: 100%;

        max-width: 230px;
    }

}
/* =========================================
   SMART CLASSES HERO
========================================= */

.elina-smart-hero {
    position: relative;

    min-height: 520px;

    display: flex;
    align-items: center;

    background: #f5faf8;

    overflow: hidden;
}


/* =========================================
   DECORATIVE SHAPES
========================================= */

.elina-smart-shape {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.elina-smart-shape-1 {
    width: 330px;
    height: 330px;

    right: -100px;
    top: -120px;

    background: rgba(53, 200, 120, 0.10);
}

.elina-smart-shape-2 {
    width: 220px;
    height: 220px;

    left: -100px;
    bottom: -110px;

    background: rgba(242, 160, 29, 0.10);
}


/* Dots */

.elina-smart-dots {
    position: absolute;

    right: 38%;
    top: 70px;

    width: 90px;
    height: 90px;

    opacity: 0.35;

    background-image: radial-gradient(
        #35c878 1.5px,
        transparent 1.5px
    );

    background-size: 12px 12px;
}


/* =========================================
   CONTENT
========================================= */

.elina-smart-hero-content {
    position: relative;

    z-index: 3;

    padding: 80px 0;
}

.elina-smart-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-hero-content h1 {
    max-width: 650px;

    margin: 0 0 20px;

    color: #073b56;

    font-size: 52px;

    line-height: 1.15;

    font-weight: 800;
}

.elina-smart-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-smart-hero-content p {
    max-width: 620px;

    margin: 0;

    color: #71828a;

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.elina-smart-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-smart-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-smart-hero-line span:last-child {
    background: #f2a01d;
}

.elina-smart-hero-line i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   SMART CLASS VISUAL
========================================= */

.elina-smart-hero-visual {
    position: relative;

    width: 100%;

    min-height: 380px;

    display: flex;

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


/* Screen */

.elina-smart-screen {
    position: relative;

    width: 280px;
    height: 215px;

    background: #073b56;

    border: 8px solid #ffffff;

    border-radius: 18px;

    box-shadow:
        0 20px 45px rgba(7, 59, 86, 0.18);

    transform: perspective(700px) rotateY(-5deg);
}

.elina-smart-screen::after {
    content: "";

    position: absolute;

    left: 50%;

    bottom: -38px;

    width: 90px;
    height: 28px;

    transform: translateX(-50%);

    background: #073b56;

    border-radius: 0 0 10px 10px;
}

.elina-smart-screen::before {
    content: "";

    position: absolute;

    left: 50%;

    bottom: -20px;

    width: 150px;
    height: 7px;

    transform: translateX(-50%);

    background: #073b56;

    border-radius: 20px;
}


/* Screen Top */

.elina-smart-screen-top {
    height: 25px;

    display: flex;

    align-items: center;

    gap: 5px;

    padding-left: 10px;

    background: #eaf9f1;

    border-radius: 8px 8px 0 0;
}

.elina-smart-screen-top span {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #159b69;
}


/* Screen Content */

.elina-smart-screen-content {
    height: calc(100% - 25px);

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    color: #ffffff;
}

.elina-smart-screen-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 9px;

    border-radius: 15px;

    background: rgba(53, 200, 120, 0.16);

    color: #35c878;

    font-size: 25px;
}

.elina-smart-screen-content strong {
    font-size: 18px;

    letter-spacing: 2px;
}

.elina-smart-screen-content small {
    margin-top: 2px;

    color: #f2a01d;

    font-size: 9px;

    letter-spacing: 3px;
}


/* =========================================
   FLOATING ICONS
========================================= */

.elina-smart-floating-icon {
    position: absolute;

    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: #ffffff;

    font-size: 21px;

    box-shadow: 0 10px 25px rgba(7, 59, 86, 0.12);

    animation: elinaSmartFloat 4s ease-in-out infinite;
}

.smart-icon-1 {
    left: 5px;
    top: 70px;

    color: #159b69;

    background: #eaf9f1;
}

.smart-icon-2 {
    right: 0;
    top: 35px;

    color: #e99a19;

    background: #fff4df;

    animation-delay: 0.8s;
}

.smart-icon-3 {
    right: 10px;
    bottom: 40px;

    color: #8062c9;

    background: #f4efff;

    animation-delay: 1.4s;
}


@keyframes elinaSmartFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-hero {
        min-height: 480px;
    }

    .elina-smart-hero-content h1 {
        font-size: 43px;
    }

    .elina-smart-hero-visual {
        transform: scale(0.85);
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-hero {
        min-height: auto;

        padding: 0 15px;
    }

    .elina-smart-hero-content {
        padding: 65px 0 20px;
    }

    .elina-smart-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-smart-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-smart-hero-visual {
        min-height: 340px;

        transform: scale(0.78);

        margin-top: -10px;
    }

    .elina-smart-dots {
        display: none;
    }

}
/* =========================================
   SMART CLASSES INTRO
========================================= */

.elina-smart-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   LEFT CONTENT
========================================= */

.elina-smart-intro-content {
    padding-right: 45px;
}

.elina-smart-intro-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-intro-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-smart-intro-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-smart-intro-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.elina-smart-intro-content .elina-smart-intro-lead {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   FEATURES
========================================= */

.elina-smart-features {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.elina-smart-feature {
    padding: 25px 21px;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 16px;

    transition: all 0.3s ease;
}

.elina-smart-feature:hover {
    transform: translateY(-5px);

    background: #ffffff;

    box-shadow: 0 12px 30px rgba(7, 59, 86, 0.08);
}


/* Icon */

.elina-smart-feature-icon {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    border-radius: 14px;

    font-size: 21px;
}

.smart-green {
    background: #eaf9f1;
    color: #159b69;
}

.smart-orange {
    background: #fff4df;
    color: #e99a19;
}

.smart-blue {
    background: #edf7ff;
    color: #328dcc;
}

.smart-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-smart-feature h3 {
    margin: 0 0 8px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-smart-feature p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-intro {
        padding: 70px 0;
    }

    .elina-smart-intro-content {
        padding-right: 0;

        margin-bottom: 40px;
    }

    .elina-smart-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-intro {
        padding: 60px 15px;
    }

    .elina-smart-intro-content h2 {
        font-size: 30px;
    }

    .elina-smart-features {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .elina-smart-feature {
        padding: 22px 19px;
    }

}
/* =========================================
   SMART CLASSES BENEFITS
========================================= */

.elina-smart-benefits {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.elina-smart-benefits-heading {
    margin-bottom: 55px;
}

.elina-smart-benefits-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-benefits-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-smart-benefits-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-smart-benefits-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.elina-smart-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.elina-smart-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-smart-divider span:last-child {
    background: #f2a01d;
}

.elina-smart-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   GRID
========================================= */

.elina-smart-benefits-grid {
    row-gap: 25px;
}


/* =========================================
   CARD
========================================= */

.elina-smart-benefit-card {
    position: relative;

    height: 100%;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.05);

    overflow: hidden;

    transition: all 0.35s ease;
}

.elina-smart-benefit-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.11);
}


/* Number */

.elina-smart-benefit-number {
    position: absolute;

    top: 18px;
    right: 20px;

    color: #edf2f4;

    font-size: 34px;

    font-weight: 800;

    line-height: 1;
}


/* Icon */

.elina-smart-benefit-icon {
    position: relative;

    z-index: 2;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 15px;

    font-size: 23px;
}


/* Icon Colors */

.benefit-green {
    background: #eaf9f1;
    color: #159b69;
}

.benefit-orange {
    background: #fff4df;
    color: #e99a19;
}

.benefit-blue {
    background: #edf7ff;
    color: #328dcc;
}

.benefit-pink {
    background: #fff0f5;
    color: #e35b87;
}

.benefit-yellow {
    background: #fff9df;
    color: #d7a400;
}

.benefit-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-smart-benefit-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;

    font-weight: 800;
}

.elina-smart-benefit-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-benefits {
        padding: 70px 0;
    }

    .elina-smart-benefits-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-benefits {
        padding: 60px 15px;
    }

    .elina-smart-benefits-heading {
        margin-bottom: 40px;
    }

    .elina-smart-benefits-heading h2 {
        font-size: 30px;
    }

    .elina-smart-benefit-card {
        padding: 27px 22px;
    }

}
/* =========================================
   HOW SMART CLASSES WORK
========================================= */

.elina-smart-work {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   LEFT VISUAL
========================================= */

.elina-smart-work-visual {
    position: relative;

    width: 360px;
    height: 360px;

    margin: 0 auto;

    display: flex;

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


/* Main Icon */

.elina-smart-work-main-icon {
    position: relative;

    z-index: 3;

    width: 145px;
    height: 145px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 35px;

    background: #073b56;

    color: #35c878;

    font-size: 60px;

    box-shadow: 0 20px 45px rgba(7, 59, 86, 0.18);
}


/* Ring */

.elina-smart-work-ring {
    position: absolute;

    width: 270px;
    height: 270px;

    border: 2px dashed #dceee6;

    border-radius: 50%;
}


/* Floating Circles */

.elina-smart-work-circle {
    position: absolute;

    z-index: 4;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 17px;

    background: #ffffff;

    font-size: 22px;

    box-shadow: 0 10px 28px rgba(7, 59, 86, 0.12);

    animation: smartWorkFloat 4s ease-in-out infinite;
}

.circle-one {
    top: 30px;
    left: 52px;

    color: #159b69;

    background: #eaf9f1;
}

.circle-two {
    top: 55px;
    right: 38px;

    color: #e99a19;

    background: #fff4df;

    animation-delay: 0.7s;
}

.circle-three {
    right: 45px;
    bottom: 42px;

    color: #8062c9;

    background: #f4efff;

    animation-delay: 1.3s;
}


@keyframes smartWorkFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

}


/* =========================================
   CONTENT
========================================= */

.elina-smart-work-content {
    padding-left: 40px;
}

.elina-smart-work-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-work-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-smart-work-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-smart-work-content p {
    color: #71828a;

    font-size: 13px;

    line-height: 1.75;
}

.elina-smart-work-content .elina-smart-work-lead {
    margin-bottom: 28px;

    color: #536c76;

    font-size: 15px;

    line-height: 1.8;
}


/* =========================================
   STEPS
========================================= */

.elina-smart-work-step {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 15px;

    padding-bottom: 20px;

    margin-bottom: 5px;
}

.elina-smart-work-step:last-child {
    padding-bottom: 0;
}


/* Connecting Line */

.elina-smart-work-step:not(:last-child)::before {
    content: "";

    position: absolute;

    left: 19px;

    top: 40px;

    width: 1px;

    height: calc(100% - 12px);

    background: #dcece5;
}


/* Number */

.elina-smart-work-number {
    position: relative;

    z-index: 2;

    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;
}

.elina-smart-work-step h3 {
    margin: 2px 0 5px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-smart-work-step p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-work {
        padding: 70px 0;
    }

    .elina-smart-work-visual {
        margin-bottom: 45px;
    }

    .elina-smart-work-content {
        padding-left: 0;
    }

    .elina-smart-work-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-work {
        padding: 60px 15px;
    }

    .elina-smart-work-visual {
        width: 300px;
        height: 300px;

        transform: scale(0.88);
    }

    .elina-smart-work-content h2 {
        font-size: 30px;
    }

    .elina-smart-work-content .elina-smart-work-lead {
        font-size: 13px;
    }

}
/* =========================================
   WHY SMART LEARNING
========================================= */

.elina-smart-why {
    padding: 85px 0 90px;

    background: #f8fbfc;

    overflow: hidden;
}


/* Heading */

.elina-smart-why-heading {
    margin-bottom: 50px;
}

.elina-smart-why-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-why-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-smart-why-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-smart-why-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.elina-smart-why-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.elina-smart-why-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-smart-why-divider span:last-child {
    background: #f2a01d;
}

.elina-smart-why-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   GRID
========================================= */

.elina-smart-why-grid {
    row-gap: 25px;
}


/* Card */

.elina-smart-why-card {
    height: 100%;

    padding: 30px 23px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.05);

    transition: all 0.35s ease;
}

.elina-smart-why-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.11);
}


/* Icon */

.elina-smart-why-icon {
    width: 60px;
    height: 60px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 18px;

    border-radius: 16px;

    font-size: 24px;
}

.why-green {
    background: #eaf9f1;
    color: #159b69;
}

.why-orange {
    background: #fff4df;
    color: #e99a19;
}

.why-blue {
    background: #edf7ff;
    color: #328dcc;
}

.why-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-smart-why-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 17px;

    font-weight: 800;
}

.elina-smart-why-card p {
    margin: 0;

    color: #74838a;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-why {
        padding: 70px 0;
    }

    .elina-smart-why-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-why {
        padding: 60px 15px;
    }

    .elina-smart-why-heading {
        margin-bottom: 40px;
    }

    .elina-smart-why-heading h2 {
        font-size: 30px;
    }

    .elina-smart-why-card {
        padding: 27px 22px;
    }

}
/* =========================================
   SMART CLASSES CTA
========================================= */

.elina-smart-cta {
    position: relative;

    padding: 75px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Shapes */

.elina-smart-cta::before {
    content: "";

    position: absolute;

    width: 260px;
    height: 260px;

    left: -120px;
    top: -130px;

    border-radius: 50%;

    background: rgba(53, 200, 120, 0.12);
}

.elina-smart-cta::after {
    content: "";

    position: absolute;

    width: 300px;
    height: 300px;

    right: -140px;
    bottom: -160px;

    border-radius: 50%;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-smart-cta-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-smart-cta-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-smart-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-smart-cta-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-smart-cta-content p {
    max-width: 680px;

    margin: 18px auto 27px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Button */

.elina-smart-cta-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 13px 25px;

    background: #35c878;

    color: #ffffff;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-smart-cta-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-smart-cta {
        padding: 65px 0;
    }

    .elina-smart-cta-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-smart-cta {
        padding: 55px 15px;
    }

    .elina-smart-cta-content h2 {
        font-size: 29px;
    }

    .elina-smart-cta-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-smart-cta-btn {
        width: 100%;

        max-width: 230px;
    }

}
/* =========================================
   PLAY AREA HERO
========================================= */

.elina-play-hero {
    position: relative;

    min-height: 520px;

    display: flex;
    align-items: center;

    background-image: url("../images/play-area.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* Overlay */

.elina-play-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(5, 48, 70, 0.82) 0%,
        rgba(5, 48, 70, 0.63) 42%,
        rgba(5, 48, 70, 0.20) 100%
    );
}


/* Content */

.elina-play-hero-content {
    position: relative;

    z-index: 2;

    padding: 85px 0;
}

.elina-play-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-play-hero-content h1 {
    max-width: 700px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 54px;

    line-height: 1.15;

    font-weight: 800;
}

.elina-play-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-play-hero-content p {
    max-width: 650px;

    margin: 0;

    color: rgba(255, 255, 255, 0.92);

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.elina-play-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-play-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-play-hero-line span:last-child {
    background: #f2a01d;
}

.elina-play-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-play-hero {
        min-height: 470px;
    }

    .elina-play-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-play-hero {
        min-height: 470px;

        background-position: 65% center;
    }

    .elina-play-hero-overlay {
        background: rgba(5, 48, 70, 0.68);
    }

    .elina-play-hero-content {
        padding: 65px 15px;
    }

    .elina-play-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-play-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

}
/* =========================================
   PLAY AREA INTRO
========================================= */

.elina-play-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   LEFT CONTENT
========================================= */

.elina-play-intro-content {
    padding-right: 45px;
}

.elina-play-intro-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-play-intro-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-play-intro-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-play-intro-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.elina-play-intro-content .elina-play-intro-lead {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   FEATURES
========================================= */

.elina-play-features {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.elina-play-feature {
    padding: 25px 21px;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 16px;

    transition: all 0.3s ease;
}

.elina-play-feature:hover {
    transform: translateY(-5px);

    background: #ffffff;

    box-shadow: 0 12px 30px rgba(7, 59, 86, 0.08);
}


/* Icon */

.elina-play-feature-icon {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    border-radius: 14px;

    font-size: 21px;
}

.play-green {
    background: #eaf9f1;
    color: #159b69;
}

.play-orange {
    background: #fff4df;
    color: #e99a19;
}

.play-blue {
    background: #edf7ff;
    color: #328dcc;
}

.play-pink {
    background: #fff0f5;
    color: #e35b87;
}


/* Text */

.elina-play-feature h3 {
    margin: 0 0 8px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-play-feature p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-play-intro {
        padding: 70px 0;
    }

    .elina-play-intro-content {
        padding-right: 0;

        margin-bottom: 40px;
    }

    .elina-play-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-play-intro {
        padding: 60px 15px;
    }

    .elina-play-intro-content h2 {
        font-size: 30px;
    }

    .elina-play-features {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .elina-play-feature {
        padding: 22px 19px;
    }

}
/* =========================================
   LEARNING THROUGH PLAY
========================================= */

.elina-play-learning {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.elina-play-learning-image {
    position: relative;

    width: 92%;

    margin: 0 auto;
}

.elina-play-learning-image img {
    width: 100%;
    height: 500px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.13);
}


/* Image Badge */

.elina-play-image-badge {
    position: absolute;

    left: -20px;
    bottom: 25px;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: #ffffff;

    border-radius: 13px;

    box-shadow: 0 10px 30px rgba(7, 59, 86, 0.14);
}

.elina-play-image-badge > i {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff4df;

    color: #f2a01d;

    font-size: 19px;
}

.elina-play-image-badge strong {
    display: block;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-play-image-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 9px;

    letter-spacing: .5px;
}


/* =========================================
   CONTENT
========================================= */

.elina-play-learning-content {
    padding-left: 35px;
}

.elina-play-learning-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-play-learning-content h2 {
    margin: 0 0 16px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-play-learning-content h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-play-learning-intro {
    max-width: 650px;

    margin-bottom: 25px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* =========================================
   BENEFITS
========================================= */

.elina-play-benefits {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 14px 18px;
}

.elina-play-benefit {
    display: flex;

    align-items: center;

    gap: 11px;

    padding: 14px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 13px;

    transition: all .3s ease;
}

.elina-play-benefit:hover {
    transform: translateY(-3px);

    box-shadow: 0 8px 22px rgba(7, 59, 86, .07);
}


/* Icons */

.elina-play-benefit-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 18px;
}

.play-green {
    background: #eaf9f1;
    color: #159b69;
}

.play-orange {
    background: #fff4df;
    color: #e99a19;
}

.play-blue {
    background: #edf7ff;
    color: #328dcc;
}

.play-pink {
    background: #fff0f5;
    color: #e35b87;
}

.play-yellow {
    background: #fff9df;
    color: #d7a400;
}

.play-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-play-benefit h3 {
    margin: 0 0 3px;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-play-benefit p {
    margin: 0;

    color: #7a898f;

    font-size: 10px;

    line-height: 1.5;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-play-learning {
        padding: 70px 0;
    }

    .elina-play-learning-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .elina-play-learning-content {
        padding-left: 0;
    }

    .elina-play-learning-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-play-learning {
        padding: 60px 15px;
    }

    .elina-play-learning-image {
        width: 100%;
    }

    .elina-play-learning-image img {
        height: 360px;

        border-radius: 20px 20px 50px 20px;
    }

    .elina-play-image-badge {
        left: 8px;

        bottom: 12px;

        padding: 12px 14px;
    }

    .elina-play-learning-content h2 {
        font-size: 30px;
    }

    .elina-play-benefits {
        grid-template-columns: 1fr;

        gap: 12px;
    }

}
/* =========================================
   SAFE & HAPPY PLAY
========================================= */

.elina-play-safety {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   CONTENT
========================================= */

.elina-play-safety-content {
    padding-right: 40px;
}

.elina-play-safety-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-play-safety-content h2 {
    margin: 0 0 18px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-play-safety-content h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-play-safety-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.elina-play-safety-content .elina-play-safety-lead {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   POINTS
========================================= */

.elina-play-safety-points {
    margin-top: 24px;
}

.elina-play-safety-point {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    color: #536c76;

    font-size: 12px;

    font-weight: 600;
}

.elina-play-safety-point i {
    color: #159b69;

    font-size: 17px;
}


/* =========================================
   RIGHT VISUAL
========================================= */

.elina-play-safety-visual {
    position: relative;

    min-height: 390px;

    display: flex;

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


/* Main Card */

.elina-play-safety-card {
    position: relative;

    z-index: 2;

    width: 280px;

    padding: 40px 30px;

    text-align: center;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 25px;

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.08);
}

.elina-play-safety-big-icon {
    width: 80px;
    height: 80px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 20px;

    border-radius: 24px;

    background: #eaf9f1;

    color: #159b69;

    font-size: 38px;
}

.elina-play-safety-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 21px;

    font-weight: 800;
}

.elina-play-safety-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.7;
}


/* =========================================
   MINI CARDS
========================================= */

.elina-play-mini-card {
    position: absolute;

    z-index: 3;

    width: 105px;

    padding: 14px 10px;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    border-radius: 13px;

    font-size: 11px;

    font-weight: 800;

    box-shadow: 0 10px 25px rgba(7, 59, 86, 0.10);
}

.elina-play-mini-card i {
    font-size: 17px;
}

.safety-green {
    top: 45px;
    left: 35px;

    background: #eaf9f1;

    color: #159b69;
}

.safety-orange {
    top: 60px;
    right: 25px;

    background: #fff4df;

    color: #e99a19;
}

.safety-blue {
    right: 35px;
    bottom: 45px;

    background: #edf7ff;

    color: #328dcc;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-play-safety {
        padding: 70px 0;
    }

    .elina-play-safety-content {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .elina-play-safety-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-play-safety {
        padding: 60px 15px;
    }

    .elina-play-safety-content h2 {
        font-size: 30px;
    }

    .elina-play-safety-visual {
        min-height: 350px;

        transform: scale(.92);
    }

    .safety-green {
        left: 0;
    }

    .safety-orange {
        right: 0;
    }

    .safety-blue {
        right: 5px;
        bottom: 25px;
    }

}
/* =========================================
   PLAY AREA CTA
========================================= */

.elina-play-cta {
    position: relative;

    padding: 75px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Shapes */

.elina-play-cta-shape {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.elina-play-cta-shape-left {
    width: 280px;
    height: 280px;

    left: -140px;
    top: -145px;

    background: rgba(53, 200, 120, 0.12);
}

.elina-play-cta-shape-right {
    width: 320px;
    height: 320px;

    right: -150px;
    bottom: -170px;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-play-cta-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-play-cta-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-play-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-play-cta-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-play-cta-content p {
    max-width: 680px;

    margin: 18px auto 27px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Button */

.elina-play-cta-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 13px 26px;

    background: #35c878;

    color: #ffffff;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-play-cta-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-play-cta {
        padding: 65px 0;
    }

    .elina-play-cta-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-play-cta {
        padding: 55px 15px;
    }

    .elina-play-cta-content h2 {
        font-size: 29px;
    }

    .elina-play-cta-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-play-cta-btn {
        width: 100%;

        max-width: 230px;
    }

}
/* =========================================
   SAFETY & SECURITY INTRO
========================================= */

.elina-safety-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   CONTENT
========================================= */

.elina-safety-intro-content {
    padding-right: 45px;
}

.elina-safety-label {
    display: inline-block;

    margin-bottom: 12px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-safety-intro-content h2 {
    margin: 0 0 20px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-safety-intro-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-safety-intro-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}

.elina-safety-intro-content .elina-safety-lead {
    color: #536c76;

    font-size: 15px;
}


/* =========================================
   FEATURES
========================================= */

.elina-safety-features {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.elina-safety-feature {
    padding: 25px 21px;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 16px;

    transition: all 0.3s ease;
}

.elina-safety-feature:hover {
    transform: translateY(-5px);

    background: #ffffff;

    box-shadow: 0 12px 30px rgba(7, 59, 86, 0.08);
}


/* Icons */

.elina-safety-icon {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    border-radius: 14px;

    font-size: 21px;
}

.safety-green {
    background: #eaf9f1;
    color: #159b69;
}

.safety-orange {
    background: #fff4df;
    color: #e99a19;
}

.safety-blue {
    background: #edf7ff;
    color: #328dcc;
}

.safety-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-safety-feature h3 {
    margin: 0 0 8px;

    color: #073b56;

    font-size: 16px;

    font-weight: 800;
}

.elina-safety-feature p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-safety-intro {
        padding: 70px 0;
    }

    .elina-safety-intro-content {
        padding-right: 0;

        margin-bottom: 40px;
    }

    .elina-safety-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-intro {
        padding: 60px 15px;
    }

    .elina-safety-intro-content h2 {
        font-size: 30px;
    }

    .elina-safety-features {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .elina-safety-feature {
        padding: 22px 19px;
    }

}
/* =========================================
   SAFETY & SECURITY HERO
========================================= */

.elina-safety-hero {
    position: relative;

    min-height: 520px;

    display: flex;
    align-items: center;

    background: #f5faf8;

    overflow: hidden;
}


/* =========================================
   DECORATIVE SHAPES
========================================= */

.elina-safety-hero-shape {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.elina-safety-shape-1 {
    width: 340px;
    height: 340px;

    right: -120px;
    top: -130px;

    background: rgba(53, 200, 120, 0.10);
}

.elina-safety-shape-2 {
    width: 230px;
    height: 230px;

    left: -110px;
    bottom: -120px;

    background: rgba(242, 160, 29, 0.10);
}


/* Dots */

.elina-safety-hero-dots {
    position: absolute;

    right: 39%;
    top: 65px;

    width: 90px;
    height: 90px;

    opacity: .35;

    background-image: radial-gradient(
        #35c878 1.5px,
        transparent 1.5px
    );

    background-size: 12px 12px;
}


/* =========================================
   HERO CONTENT
========================================= */

.elina-safety-hero-content {
    position: relative;

    z-index: 3;

    padding: 80px 0;
}

.elina-safety-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-safety-hero-content h1 {
    max-width: 680px;

    margin: 0 0 20px;

    color: #073b56;

    font-size: 52px;

    line-height: 1.15;

    font-weight: 800;
}

.elina-safety-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-safety-hero-content p {
    max-width: 620px;

    margin: 0;

    color: #71828a;

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.elina-safety-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-safety-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-safety-hero-line span:last-child {
    background: #f2a01d;
}

.elina-safety-hero-line i {
    color: #159b69;

    font-size: 16px;
}


/* =========================================
   SAFETY VISUAL
========================================= */

.elina-safety-hero-visual {
    position: relative;

    width: 100%;

    min-height: 390px;

    display: flex;

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


/* Ring */

.elina-safety-ring {
    position: absolute;

    width: 285px;
    height: 285px;

    border: 2px dashed #d6ece2;

    border-radius: 50%;
}


/* Main Shield */

.elina-safety-shield {
    position: relative;

    z-index: 3;

    width: 190px;
    height: 220px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #ffffff;

    clip-path: polygon(
        50% 0%,
        91% 16%,
        91% 56%,
        75% 79%,
        50% 100%,
        25% 79%,
        9% 56%,
        9% 16%
    );

    box-shadow: 0 20px 45px rgba(7, 59, 86, .12);
}

.elina-safety-shield::before {
    content: "";

    position: absolute;

    inset: 9px;

    background: #eaf9f1;

    clip-path: polygon(
        50% 0%,
        91% 16%,
        91% 56%,
        75% 79%,
        50% 100%,
        25% 79%,
        9% 56%,
        9% 16%
    );
}

.elina-safety-shield-inner {
    position: relative;

    z-index: 2;

    width: 85px;
    height: 85px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 24px;

    background: #073b56;

    color: #35c878;

    font-size: 39px;

    box-shadow: 0 12px 25px rgba(7, 59, 86, .16);
}


/* =========================================
   FLOATING ICONS
========================================= */

.elina-safety-floating {
    position: absolute;

    z-index: 5;

    width: 56px;
    height: 56px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 16px;

    font-size: 21px;

    box-shadow: 0 10px 25px rgba(7, 59, 86, .10);

    animation: elinaSafetyFloat 4s ease-in-out infinite;
}

.safety-float-1 {
    top: 55px;
    left: 35px;

    color: #e35b87;

    background: #fff0f5;
}

.safety-float-2 {
    top: 45px;
    right: 25px;

    color: #328dcc;

    background: #edf7ff;

    animation-delay: .8s;
}

.safety-float-3 {
    right: 20px;
    bottom: 45px;

    color: #159b69;

    background: #eaf9f1;

    animation-delay: 1.4s;
}


@keyframes elinaSafetyFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-safety-hero {
        min-height: 480px;
    }

    .elina-safety-hero-content h1 {
        font-size: 43px;
    }

    .elina-safety-hero-visual {
        transform: scale(.85);
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-hero {
        min-height: auto;

        padding: 0 15px;
    }

    .elina-safety-hero-content {
        padding: 65px 0 15px;
    }

    .elina-safety-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-safety-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-safety-hero-visual {
        min-height: 340px;

        transform: scale(.78);

        margin-top: -5px;
    }

    .elina-safety-hero-dots {
        display: none;
    }

}
/* =========================================
   SAFETY PRACTICES
========================================= */

.elina-safety-practices {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.elina-safety-practices-heading {
    margin-bottom: 55px;
}

.elina-safety-practices-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-safety-practices-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-safety-practices-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-safety-practices-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.elina-safety-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.elina-safety-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-safety-divider span:last-child {
    background: #f2a01d;
}

.elina-safety-divider i {
    color: #159b69;

    font-size: 15px;
}


/* =========================================
   GRID
========================================= */

.elina-safety-practices-grid {
    row-gap: 25px;
}


/* =========================================
   CARD
========================================= */

.elina-safety-practice-card {
    position: relative;

    height: 100%;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.05);

    overflow: hidden;

    transition: all 0.35s ease;
}

.elina-safety-practice-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, 0.11);
}


/* Number */

.elina-safety-number {
    position: absolute;

    top: 18px;
    right: 20px;

    color: #edf2f4;

    font-size: 34px;

    font-weight: 800;

    line-height: 1;
}


/* =========================================
   ICONS
========================================= */

.elina-safety-practice-icon {
    position: relative;

    z-index: 2;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 15px;

    font-size: 23px;
}

.safety-green {
    background: #eaf9f1;
    color: #159b69;
}

.safety-orange {
    background: #fff4df;
    color: #e99a19;
}

.safety-blue {
    background: #edf7ff;
    color: #328dcc;
}

.safety-pink {
    background: #fff0f5;
    color: #e35b87;
}

.safety-yellow {
    background: #fff9df;
    color: #d7a400;
}

.safety-purple {
    background: #f4efff;
    color: #8062c9;
}


/* =========================================
   TEXT
========================================= */

.elina-safety-practice-card h3 {
    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;

    font-weight: 800;
}

.elina-safety-practice-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-safety-practices {
        padding: 70px 0;
    }

    .elina-safety-practices-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-practices {
        padding: 60px 15px;
    }

    .elina-safety-practices-heading {
        margin-bottom: 40px;
    }

    .elina-safety-practices-heading h2 {
        font-size: 30px;
    }

    .elina-safety-practice-card {
        padding: 27px 22px;
    }

}
/* =========================================
   SAFETY PRACTICE CARD - FIX
========================================= */

.elina-safety-practices .elina-safety-practice-card {
    position: relative !important;

    display: block !important;

    height: 100%;

    padding: 30px 25px !important;

    overflow: hidden !important;
}


/* FIX ICON POSITION */

.elina-safety-practices .elina-safety-practice-icon {
    position: relative !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    float: none !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 58px !important;
    height: 58px !important;

    margin: 0 0 20px 0 !important;

    padding: 0 !important;

    transform: none !important;

    border-radius: 15px;

    z-index: 2;
}


/* ICON ITSELF */

.elina-safety-practices .elina-safety-practice-icon i {
    position: static !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    transform: none !important;

    font-size: 23px !important;

    line-height: 1 !important;
}


/* HEADING */

.elina-safety-practices .elina-safety-practice-card h3 {
    position: relative !important;

    display: block !important;

    margin: 0 0 10px 0 !important;

    padding: 0 !important;

    clear: both !important;

    color: #073b56;

    font-size: 18px;

    line-height: 1.3;

    font-weight: 800;

    transform: none !important;
}


/* DESCRIPTION */

.elina-safety-practices .elina-safety-practice-card p {
    position: relative !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    clear: both !important;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;

    transform: none !important;
}


/* NUMBER */

.elina-safety-practices .elina-safety-number {
    position: absolute !important;

    top: 18px !important;
    right: 20px !important;

    left: auto !important;
    bottom: auto !important;

    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #edf2f4;

    font-size: 34px;

    line-height: 1;

    font-weight: 800;

    z-index: 1;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-practices .elina-safety-practice-card {
        padding: 27px 22px !important;
    }

    .elina-safety-practices .elina-safety-practice-icon {
        width: 55px !important;
        height: 55px !important;

        margin-bottom: 17px !important;
    }

    .elina-safety-practices .elina-safety-practice-card h3 {
        font-size: 17px;
    }

}
/* =========================================
   SAFE & SUPPORTIVE ENVIRONMENT
========================================= */

.elina-safety-environment {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.elina-safety-environment-image {
    position: relative;

    width: 90%;

    margin: 0 auto;
}

.elina-safety-environment-image img {
    width: 100%;
    height: 470px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.13);
}


/* Badge */

.elina-safety-image-badge {
    position: absolute;

    left: -20px;
    bottom: 25px;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: #ffffff;

    border-radius: 13px;

    box-shadow: 0 10px 30px rgba(7, 59, 86, 0.14);
}

.elina-safety-image-badge > i {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 19px;
}

.elina-safety-image-badge strong {
    display: block;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-safety-image-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 9px;

    letter-spacing: .5px;
}


/* =========================================
   CONTENT
========================================= */

.elina-safety-environment-content {
    padding-left: 35px;
}

.elina-safety-environment-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-safety-environment-content h2 {
    margin: 0 0 17px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-safety-environment-content h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-safety-environment-content p {
    color: #71828a;

    font-size: 13px;

    line-height: 1.75;
}

.elina-safety-environment-lead {
    margin-bottom: 25px;

    color: #536c76 !important;

    font-size: 14px !important;

    line-height: 1.8 !important;
}


/* =========================================
   POINTS
========================================= */

.elina-safety-environment-point {
    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-bottom: 18px;
}

.elina-safety-environment-point:last-child {
    margin-bottom: 0;
}

.elina-safety-point-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    background: #eaf9f1;

    color: #159b69;

    font-size: 18px;
}

.elina-safety-environment-point h3 {
    margin: 1px 0 5px;

    color: #073b56;

    font-size: 15px;

    font-weight: 800;
}

.elina-safety-environment-point p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-safety-environment {
        padding: 70px 0;
    }

    .elina-safety-environment-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .elina-safety-environment-content {
        padding-left: 0;
    }

    .elina-safety-environment-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-environment {
        padding: 60px 15px;
    }

    .elina-safety-environment-image {
        width: 100%;
    }

    .elina-safety-environment-image img {
        height: 350px;

        border-radius: 20px 20px 50px 20px;
    }

    .elina-safety-image-badge {
        left: 8px;
        bottom: 12px;

        padding: 12px 14px;
    }

    .elina-safety-environment-content h2 {
        font-size: 30px;
    }

}
/* =========================================
   SAFETY & SECURITY CTA
========================================= */

.elina-safety-cta {
    position: relative;

    padding: 75px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Shapes */

.elina-safety-cta-shape {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.elina-safety-cta-shape-left {
    width: 280px;
    height: 280px;

    left: -140px;
    top: -145px;

    background: rgba(53, 200, 120, 0.12);
}

.elina-safety-cta-shape-right {
    width: 320px;
    height: 320px;

    right: -150px;
    bottom: -170px;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-safety-cta-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-safety-cta-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-safety-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-safety-cta-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-safety-cta-content p {
    max-width: 680px;

    margin: 18px auto 27px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Button */

.elina-safety-cta-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 13px 26px;

    background: #35c878;

    color: #ffffff;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-safety-cta-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-safety-cta {
        padding: 65px 0;
    }

    .elina-safety-cta-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-safety-cta {
        padding: 55px 15px;
    }

    .elina-safety-cta-content h2 {
        font-size: 29px;
    }

    .elina-safety-cta-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-safety-cta-btn {
        width: 100%;

        max-width: 230px;
    }

}
/* =========================================
   CLASSROOM HERO
========================================= */

.elina-classroom-hero {
    position: relative;

    min-height: 520px;

    display: flex;
    align-items: center;

    background-image: url("../images/nursary.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.elina-classroom-hero-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(5, 48, 70, 0.84) 0%,
        rgba(5, 48, 70, 0.67) 40%,
        rgba(5, 48, 70, 0.25) 100%
    );
}


/* =========================================
   CONTENT
========================================= */

.elina-classroom-hero-content {
    position: relative;

    z-index: 2;

    padding: 85px 0;
}

.elina-classroom-hero-label {
    display: inline-block;

    margin-bottom: 13px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-hero-content h1 {
    max-width: 700px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 54px;

    line-height: 1.15;

    font-weight: 800;
}

.elina-classroom-hero-content h1 span {
    display: block;

    color: #f2a01d;
}

.elina-classroom-hero-content p {
    max-width: 650px;

    margin: 0;

    color: rgba(255, 255, 255, 0.92);

    font-size: 15px;

    line-height: 1.8;
}


/* =========================================
   DECORATIVE LINE
========================================= */

.elina-classroom-hero-line {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 24px;
}

.elina-classroom-hero-line span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-classroom-hero-line span:last-child {
    background: #f2a01d;
}

.elina-classroom-hero-line i {
    color: #ffffff;

    font-size: 14px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-hero {
        min-height: 470px;
    }

    .elina-classroom-hero-content h1 {
        font-size: 44px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-hero {
        min-height: 480px;

        background-position: 65% center;
    }

    .elina-classroom-hero-overlay {
        background: rgba(5, 48, 70, 0.70);
    }

    .elina-classroom-hero-content {
        padding: 65px 15px;
    }

    .elina-classroom-hero-content h1 {
        font-size: 34px;

        line-height: 1.2;
    }

    .elina-classroom-hero-content p {
        font-size: 13px;

        line-height: 1.7;
    }

}
/* =========================================
   CLASSROOM INTRODUCTION
========================================= */

.elina-classroom-intro {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   IMAGE
========================================= */

.elina-classroom-intro-image {
    position: relative;

    width: 90%;

    margin: 0 auto;
}

.elina-classroom-intro-image img {
    width: 100%;
    height: 470px;

    display: block;

    object-fit: cover;

    border-radius: 25px 25px 70px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.13);
}


/* Image Badge */

.elina-classroom-image-badge {
    position: absolute;

    left: -20px;
    bottom: 25px;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: #ffffff;

    border-radius: 13px;

    box-shadow: 0 10px 30px rgba(7, 59, 86, 0.14);
}

.elina-classroom-image-badge > i {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #eaf9f1;

    color: #159b69;

    font-size: 19px;
}

.elina-classroom-image-badge strong {
    display: block;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-classroom-image-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 9px;

    letter-spacing: .5px;
}


/* =========================================
   CONTENT
========================================= */

.elina-classroom-intro-content {
    padding-left: 35px;
}

.elina-classroom-intro-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-intro-content h2 {
    margin: 0 0 17px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-classroom-intro-content h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-classroom-intro-content p {
    color: #71828a;

    font-size: 13px;

    line-height: 1.75;
}

.elina-classroom-intro-lead {
    margin-bottom: 15px;

    color: #536c76 !important;

    font-size: 14px !important;

    line-height: 1.8 !important;
}


/* =========================================
   FEATURES
========================================= */

.elina-classroom-features {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 14px 18px;

    margin-top: 25px;
}

.elina-classroom-feature {
    display: flex;

    align-items: center;

    gap: 11px;

    padding: 14px;

    background: #f8fbfc;

    border: 1px solid #edf1f3;

    border-radius: 13px;

    transition: all .3s ease;
}

.elina-classroom-feature:hover {
    transform: translateY(-3px);

    background: #ffffff;

    box-shadow: 0 8px 22px rgba(7, 59, 86, .07);
}


/* Icons */

.elina-classroom-feature-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 18px;
}

.classroom-green {
    background: #eaf9f1;
    color: #159b69;
}

.classroom-orange {
    background: #fff4df;
    color: #e99a19;
}

.classroom-blue {
    background: #edf7ff;
    color: #328dcc;
}

.classroom-purple {
    background: #f4efff;
    color: #8062c9;
}


/* Text */

.elina-classroom-feature h3 {
    margin: 0 0 3px;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-classroom-feature p {
    margin: 0;

    color: #7a898f;

    font-size: 10px;

    line-height: 1.5;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-intro {
        padding: 70px 0;
    }

    .elina-classroom-intro-image {
        width: 90%;

        margin-bottom: 45px;
    }

    .elina-classroom-intro-content {
        padding-left: 0;
    }

    .elina-classroom-intro-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-intro {
        padding: 60px 15px;
    }

    .elina-classroom-intro-image {
        width: 100%;
    }

    .elina-classroom-intro-image img {
        height: 350px;

        border-radius: 20px 20px 50px 20px;
    }

    .elina-classroom-image-badge {
        left: 8px;
        bottom: 12px;

        padding: 12px 14px;
    }

    .elina-classroom-intro-content h2 {
        font-size: 30px;
    }

    .elina-classroom-features {
        grid-template-columns: 1fr;

        gap: 12px;
    }

}
/* =========================================
   CLASSROOM LEARNING ACTIVITIES
========================================= */

.elina-classroom-activities {
    padding: 90px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.elina-classroom-activities-heading {
    margin-bottom: 55px;
}

.elina-classroom-activities-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-activities-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-classroom-activities-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-classroom-activities-heading p {
    max-width: 700px;

    margin: 18px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.elina-classroom-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 22px;
}

.elina-classroom-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-classroom-divider span:last-child {
    background: #f2a01d;
}

.elina-classroom-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   GRID
========================================= */

.elina-classroom-activities-grid {
    row-gap: 25px;
}


/* =========================================
   CARD
========================================= */

.elina-classroom-activity-card {
    position: relative;

    height: 100%;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 18px;

    box-shadow: 0 7px 25px rgba(7, 59, 86, 0.05);

    overflow: hidden;

    transition: all .35s ease;
}

.elina-classroom-activity-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(7, 59, 86, .11);
}


/* Number */

.elina-classroom-activity-number {
    position: absolute;

    top: 18px;
    right: 20px;

    color: #edf2f4;

    font-size: 34px;

    font-weight: 800;

    line-height: 1;
}


/* =========================================
   ICON
========================================= */

.elina-classroom-activity-icon {
    position: relative;

    z-index: 2;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 0 20px 0;

    border-radius: 15px;

    font-size: 23px;
}

.classroom-green {
    background: #eaf9f1;
    color: #159b69;
}

.classroom-orange {
    background: #fff4df;
    color: #e99a19;
}

.classroom-blue {
    background: #edf7ff;
    color: #328dcc;
}

.classroom-purple {
    background: #f4efff;
    color: #8062c9;
}

.classroom-pink {
    background: #fff0f5;
    color: #e35b87;
}

.classroom-yellow {
    background: #fff9df;
    color: #d7a400;
}


/* =========================================
   TEXT
========================================= */

.elina-classroom-activity-card h3 {
    position: relative;

    display: block;

    margin: 0 0 10px;

    color: #073b56;

    font-size: 18px;

    line-height: 1.3;

    font-weight: 800;
}

.elina-classroom-activity-card p {
    margin: 0;

    color: #74838a;

    font-size: 12px;

    line-height: 1.75;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-activities {
        padding: 70px 0;
    }

    .elina-classroom-activities-heading h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-activities {
        padding: 60px 15px;
    }

    .elina-classroom-activities-heading {
        margin-bottom: 40px;
    }

    .elina-classroom-activities-heading h2 {
        font-size: 30px;
    }

    .elina-classroom-activity-card {
        padding: 27px 22px;
    }

}
/* =========================================
   CLASSROOM ENVIRONMENT
========================================= */

.elina-classroom-environment {
    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================
   CONTENT
========================================= */

.elina-classroom-environment-content {
    padding-right: 35px;
}

.elina-classroom-environment-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-environment-content h2 {
    margin: 0 0 17px;

    color: #073b56;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-classroom-environment-content h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-classroom-environment-content p {
    margin-bottom: 15px;

    color: #71828a;

    font-size: 13px;

    line-height: 1.75;
}

.elina-classroom-environment-lead {
    color: #536c76 !important;

    font-size: 14px !important;

    line-height: 1.8 !important;
}


/* =========================================
   POINTS
========================================= */

.elina-classroom-environment-points {
    margin-top: 25px;
}

.elina-classroom-environment-point {
    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-bottom: 18px;
}

.elina-classroom-environment-point:last-child {
    margin-bottom: 0;
}

.elina-classroom-environment-icon {
    flex: 0 0 44px;

    width: 44px;
    height: 44px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    background: #eaf9f1;

    color: #159b69;

    font-size: 18px;
}

.elina-classroom-environment-point:nth-child(2)
.elina-classroom-environment-icon {
    background: #fff4df;

    color: #e99a19;
}

.elina-classroom-environment-point:nth-child(3)
.elina-classroom-environment-icon {
    background: #fff0f5;

    color: #e35b87;
}

.elina-classroom-environment-point h3 {
    margin: 1px 0 5px;

    color: #073b56;

    font-size: 15px;

    font-weight: 800;
}

.elina-classroom-environment-point p {
    margin: 0;

    color: #7a898f;

    font-size: 11px;

    line-height: 1.65;
}


/* =========================================
   IMAGE
========================================= */

.elina-classroom-environment-image {
    position: relative;

    width: 92%;

    margin: 0 auto;
}

.elina-classroom-environment-image img {
    width: 100%;
    height: 500px;

    display: block;

    object-fit: cover;

    border-radius: 70px 25px 25px 25px;

    box-shadow: 0 18px 45px rgba(7, 59, 86, 0.13);
}


/* =========================================
   BADGE
========================================= */

.elina-classroom-environment-badge {
    position: absolute;

    right: -18px;
    bottom: 25px;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 11px;

    padding: 14px 17px;

    background: #ffffff;

    border-radius: 13px;

    box-shadow: 0 10px 30px rgba(7, 59, 86, 0.14);
}

.elina-classroom-environment-badge > i {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff4df;

    color: #f2a01d;

    font-size: 19px;
}

.elina-classroom-environment-badge strong {
    display: block;

    color: #073b56;

    font-size: 13px;

    font-weight: 800;
}

.elina-classroom-environment-badge span {
    display: block;

    margin-top: 3px;

    color: #7a898f;

    font-size: 9px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-environment {
        padding: 70px 0;
    }

    .elina-classroom-environment-content {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .elina-classroom-environment-content h2 {
        font-size: 35px;
    }

    .elina-classroom-environment-image {
        width: 90%;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-environment {
        padding: 60px 15px;
    }

    .elina-classroom-environment-content h2 {
        font-size: 30px;
    }

    .elina-classroom-environment-image {
        width: 100%;
    }

    .elina-classroom-environment-image img {
        height: 350px;

        border-radius: 50px 20px 20px 20px;
    }

    .elina-classroom-environment-badge {
        right: 8px;
        bottom: 12px;

        padding: 12px 14px;
    }

}
/* =========================================
   CLASSROOM BENEFITS
========================================= */

.elina-classroom-benefits {
    padding: 85px 0;

    background: #f8fbfc;

    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.elina-classroom-benefits-heading {
    margin-bottom: 50px;
}

.elina-classroom-benefits-heading > span {
    display: inline-block;

    margin-bottom: 11px;

    color: #159b69;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-benefits-heading h2 {
    margin: 0;

    color: #073b56;

    font-size: 38px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-classroom-benefits-heading h2 strong {
    display: block;

    color: #f2a01d;

    font-weight: 800;
}

.elina-classroom-benefits-heading p {
    max-width: 700px;

    margin: 17px auto 0;

    color: #71828a;

    font-size: 14px;

    line-height: 1.8;
}


/* Divider */

.elina-classroom-benefits-divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 21px;
}

.elina-classroom-benefits-divider span {
    width: 38px;
    height: 3px;

    border-radius: 20px;

    background: #35c878;
}

.elina-classroom-benefits-divider span:last-child {
    background: #f2a01d;
}

.elina-classroom-benefits-divider i {
    color: #f2a01d;

    font-size: 14px;
}


/* =========================================
   GRID
========================================= */

.elina-classroom-benefits-grid {
    row-gap: 20px;
}


/* =========================================
   CARD
========================================= */

.elina-classroom-benefit-card {
    height: 100%;

    padding: 28px 22px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #edf1f3;

    border-radius: 17px;

    box-shadow: 0 7px 24px rgba(7, 59, 86, 0.045);

    transition: all .3s ease;
}

.elina-classroom-benefit-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 14px 32px rgba(7, 59, 86, .09);
}


/* =========================================
   ICON
========================================= */

.elina-classroom-benefit-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 18px;

    border-radius: 16px;

    font-size: 23px;
}

.benefit-green {
    background: #eaf9f1;
    color: #159b69;
}

.benefit-orange {
    background: #fff4df;
    color: #e99a19;
}

.benefit-blue {
    background: #edf7ff;
    color: #328dcc;
}

.benefit-pink {
    background: #fff0f5;
    color: #e35b87;
}


/* =========================================
   TEXT
========================================= */

.elina-classroom-benefit-card h3 {
    margin: 0 0 9px;

    color: #073b56;

    font-size: 17px;

    font-weight: 800;
}

.elina-classroom-benefit-card p {
    margin: 0;

    color: #74838a;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-benefits {
        padding: 70px 0;
    }

    .elina-classroom-benefits-heading h2 {
        font-size: 34px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-benefits {
        padding: 60px 15px;
    }

    .elina-classroom-benefits-heading {
        margin-bottom: 38px;
    }

    .elina-classroom-benefits-heading h2 {
        font-size: 29px;
    }

    .elina-classroom-benefit-card {
        padding: 25px 20px;
    }

}
/* =========================================
   CLASSROOM CTA
========================================= */

.elina-classroom-cta {
    position: relative;

    padding: 75px 0;

    background: #073b56;

    overflow: hidden;
}


/* Decorative Shapes */

.elina-classroom-cta-shape {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.elina-classroom-cta-shape-left {
    width: 280px;
    height: 280px;

    left: -140px;
    top: -145px;

    background: rgba(53, 200, 120, 0.12);
}

.elina-classroom-cta-shape-right {
    width: 320px;
    height: 320px;

    right: -150px;
    bottom: -170px;

    background: rgba(242, 160, 29, 0.12);
}


/* Content */

.elina-classroom-cta-content {
    position: relative;

    z-index: 2;

    text-align: center;
}

.elina-classroom-cta-label {
    display: inline-block;

    margin-bottom: 11px;

    color: #35c878;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}

.elina-classroom-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 800;
}

.elina-classroom-cta-content h2 span {
    display: block;

    color: #f2a01d;
}

.elina-classroom-cta-content p {
    max-width: 680px;

    margin: 18px auto 27px;

    color: rgba(255, 255, 255, 0.78);

    font-size: 14px;

    line-height: 1.8;
}


/* Button */

.elina-classroom-cta-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 13px 26px;

    background: #35c878;

    color: #ffffff;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.elina-classroom-cta-btn:hover {
    background: #f2a01d;

    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .elina-classroom-cta {
        padding: 65px 0;
    }

    .elina-classroom-cta-content h2 {
        font-size: 35px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elina-classroom-cta {
        padding: 55px 15px;
    }

    .elina-classroom-cta-content h2 {
        font-size: 29px;
    }

    .elina-classroom-cta-content p {
        font-size: 13px;

        line-height: 1.7;
    }

    .elina-classroom-cta-btn {
        width: 100%;

        max-width: 230px;
    }

}