 /* Css For Acuasafe */

 /************ TABLE OF CONTENTS ***************
1. Fonts
2. Reset
3. Global
4. Main Header/style-one/style-two
5. Main Slider/style-one/style-two
6. Intro Section
7. Welcome Section
9. Cta Section
8. Research Fields
10. Testimonial Section
11. Researches Section
12. Team Section
14. Video
15. Fact Counter
16. News Section
19. Clients Section
20. Main Footer
21. Footer Bottom
22. Research Style Two
23. Innovative Solution
24. Discover Section
25. Testimonial Section
26. Chooseus Section
27. News Style Two
28. Page Title
29. Research Page Section
30. Research Details
31. Professor Page Section
32. Professor Details
33. About Section
34. Error Section
35. Blog Page Section
36. Blog Details
37. Blog Sidebar
38. Contact Section
39. Google Map


**********************************************/



 /*** 

====================================================================
  Reset
====================================================================

 ***/
 * {
   margin: 0px;
   padding: 0px;
   border: none;
   outline: none;
 }


 /*** 

====================================================================
  Global Settings
====================================================================

 ***/


 body {
   font-size: 15px;
   color: #898c8f;
   line-height: 26px;
   font-weight: 400;
   background: #ffffff;
   font-family: 'Open Sans', sans-serif;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center top;
   -webkit-font-smoothing: antialiased;
 }

 @media (min-width:1200px) {
   .container {
     max-width: 1170px;
     padding: 0px 15px;
   }
 }

 .large-container {
   max-width: 1450px;
   padding: 0px 15px;
   margin: 0 auto;
 }

 .container-fluid {
   padding: 0px;
 }

 .auto-container {
   position: static;
   max-width: 1200px;
   padding: 0px 15px;
   margin: 0 auto;
 }

 .small-container {
   max-width: 680px;
   margin: 0 auto;
 }

 .boxed_wrapper {
   position: relative;
   margin: 0 auto;
   overflow: hidden !important;
   width: 100%;
   min-width: 300px;
 }


 a {
   text-decoration: none !important;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 a:hover {
   text-decoration: none;
   outline: none;
 }

 input,
 button,
 select,
 textarea {
   font-family: 'Open Sans', sans-serif;
   font-weight: 400;
   font-size: 15px;
 }

 ul,
 li {
   list-style: none;
   padding: 0px;
   margin: 0px;
 }

 input {
   transition: all 500ms ease;
 }

 button:focus,
 input:focus,
 textarea:focus {
   outline: none;
   box-shadow: none;
   transition: all 500ms ease;
 }

 p {
   position: relative;
   font-family: 'Open Sans', sans-serif;
   color: #808080;
   font-weight: 400;
   margin: 0px;
   transition: all 500ms ease;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
   position: relative;
   font-family: 'Spartan', sans-serif;
   font-weight: 400;
   color: #061a3a;
   margin: 0px;
   transition: all 500ms ease;
 }

 /* Preloader */

 .handle-preloader {
   align-items: center;
   -webkit-align-items: center;
   display: flex;
   display: -ms-flexbox;
   height: 100%;
   justify-content: center;
   -webkit-justify-content: center;
   position: fixed;
   left: 0;
   top: 0;
   width: 100%;
   z-index: 9999999;
 }

 .preloader-close {
   position: fixed;
   z-index: 99999999;
   font-size: 14px;
   background: #fff;
   padding: 5px 20px;
   cursor: pointer;
   right: 0;
   top: 0;
   font-weight: 600;
 }

 .handle-preloader .animation-preloader {
   position: absolute;
   z-index: 100;
 }

 .handle-preloader .animation-preloader .spinner {
   animation: spinner 1s infinite linear;
   border-radius: 50%;
   height: 150px;
   margin: 0 auto 45px auto;
   width: 150px;
 }

 .handle-preloader .animation-preloader .txt-loading {
   text-align: center;
   user-select: none;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:before {
   animation: letters-loading 4s infinite;
   content: attr(data-text-preloader);
   left: 0;
   opacity: 0;
   top: 0;
   position: absolute;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading {
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
   letter-spacing: 15px;
   display: inline-block;
   position: relative;
   font-size: 70px;
   line-height: 70px;
   text-transform: uppercase;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(2):before {
   animation-delay: 0.2s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(3):before {
   animation-delay: 0.4s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(4):before {
   animation-delay: 0.6s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(5):before {
   animation-delay: 0.8s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(6):before {
   animation-delay: 1s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(7):before {
   animation-delay: 1.2s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(8):before {
   animation-delay: 1.4s;
 }

 .handle-preloader .loader-section {
   background-color: #ffffff;
   height: 100%;
   position: fixed;
   top: 0;
   width: calc(50% + 1px);
 }

 .preloader .loaded .animation-preloader {
   opacity: 0;
   transition: 0.3s ease-out;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading {
   color: #ffffff;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:before {
   color: #ffffff;
 }

 .handle-preloader .animation-preloader .spinner {
   border: 3px solid #ffffff;
   border-top-color: rgba(255, 255, 255, 0.5);
 }

 /* AnimaciÃ³n del preloader */
 @keyframes spinner {
   to {
     transform: rotateZ(360deg);
   }
 }

 @keyframes letters-loading {

   0%,
   75%,
   100% {
     opacity: 0;
     transform: rotateY(-90deg);
   }

   25%,
   50% {
     opacity: 1;
     transform: rotateY(0deg);
   }
 }

 @media screen and (max-width: 767px) {
   .handle-preloader .animation-preloader .spinner {
     height: 8em;
     width: 8em;
   }
 }

 @media screen and (max-width: 500px) {
   .handle-preloader .animation-preloader .spinner {
     height: 7em;
     width: 7em;
   }

   .handle-preloader .animation-preloader .txt-loading .letters-loading {
     font-size: 30px;
     letter-spacing: 10px;
   }
 }


 .centred {
   text-align: center;
 }

 .pull-left {
   float: left;
 }

 .pull-right {
   float: right;
 }


 figure {
   margin: 0px;
 }

 img {
   display: inline-block;
   max-width: 100%;
   height: auto;
   transition-delay: .1s;
   transition-timing-function: ease-in-out;
   transition-duration: .7s;
   transition-property: all;
 }

 /** button **/

 .theme-btn {
   position: relative;
   display: inline-block;
   overflow: hidden;
   vertical-align: middle;
   font-size: 17px;
   line-height: 25px;
   font-family: 'Open Sans', sans-serif;
   font-weight: 600;
   text-align: center;
   padding: 15px 34px;
   border-radius: 30px;
   z-index: 1;
   transition: all 500ms ease;
 }

 .theme-btn-2.btn-one {
   background-color: #008d27;
 }

 .theme-btn-2 {
   position: relative;
   display: inline-block;
   overflow: hidden;
   vertical-align: middle;
   font-size: 17px;
   line-height: 25px;
   font-family: 'Open Sans', sans-serif;
   text-align: center;
   padding: 10px 15px;
   border-radius: 30px;
   z-index: 1;
   transition: all 500ms ease;
 }

 .theme-btn.btn-one,
 .theme-btn-2.btn-one {
   color: #fff !important;
 }

 .theme-btn:before {
   webkit-transition-duration: 800ms;
   transition-duration: 800ms;
   position: absolute;
   width: 200%;
   height: 200%;
   content: "";
   top: 110%;
   left: 50%;
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
   border-radius: 50%;
   z-index: -1;
 }

 .theme-btn:hover:before {
   top: -40%;
 }

 .theme-btn.btn-two {
   color: #172746 !important;
   padding: 13px 34px;
   border: 2px solid #efefef;
 }

 .theme-btn.btn-two:hover {
   color: #fff !important;
 }

 .theme-btn.btn-two:before {}



 .pagination {
   position: relative;
   display: block;
 }

 .pagination li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 10px;
 }

 .pagination li:last-child {
   margin: 0px !important;
 }

 .pagination li a:hover,
 .pagination li a.current {
   color: #fff;
 }

 /* Bootstrap Pagination Css */

 .pagination li a {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   font-size: 16px;
   font-weight: 500;
   font-family: 'Open Sans', sans-serif;
   height: 50px !important;
   width: 50px !important;
   line-height: 50px;
   text-align: center;
   color: #172746;
   border-radius: 50% !important;
   z-index: 1;
   border: 1px solid #e7e7e7;
   transition: all 500ms ease;
 }

 .active>.page-link,
 .page-link.active {
   background-color: #008d27 !important;
   border-color: #008d27 !important;
   border-radius: 50%;
   width: 50px;
   height: 50px;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
 }

 .disabled>.page-link,
 .page-link.disabled {
   border-radius: 50% !important;
   width: 50px;
   height: 50px;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
 }

 .page-item:first-child .page-link {
   border-top-left-radius: 0;
   border-bottom-left-radius: 0;
 }

 /* end */
 .sec-pad {
   padding: 144px 0px 150px 0px;
 }

 .sec-pad-2 {
   padding: 150px 0px !important;
 }

 .mr-0 {
   margin: 0px !important;
 }

 .top-0 {
   top: 0px !important;
 }

 .scroll-top {
   width: 40px;
   height: 40px;
   line-height: 35px;
   position: fixed;
   bottom: 105%;
   right: 30px;
   font-size: 20px;
   z-index: 99;
   color: #ffffff;
   text-align: center;
   cursor: pointer;
   transition: 1s ease;
   border-radius: 50%;
 }

 .scroll-top.open {
   bottom: 50px;
 }

 .scroll-top span {
   color: #fff;
 }

 .sec-title {
   position: relative;
   display: block;
   margin-bottom: 50px;
 }

 .sec-title h2 {
   position: relative;
   display: block;
   font-size: 30px;
   line-height: 55px;
   font-weight: 700;
 }

 .sec-title.light h2 {
   color: #ffffff;
 }




 /*** 

====================================================================
                        Home-Page-One
====================================================================

***/


 /** main-header **/

 .main-header {
   position: relative;
   left: 0px;
   top: 0px;
   z-index: 999;
   width: 100%;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .sticky-header {
   position: fixed;
   opacity: 0;
   visibility: hidden;
   left: 0px;
   top: 0px;
   width: 100%;
   z-index: 0;
   background: #ffffff;
   border-bottom: 1px solid rgba(0, 0, 0, 0.1);
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .fixed-header .sticky-header {
   z-index: 999;
   opacity: 1;
   visibility: visible;
   -ms-animation-name: fadeInDown;
   -moz-animation-name: fadeInDown;
   -op-animation-name: fadeInDown;
   -webkit-animation-name: fadeInDown;
   animation-name: fadeInDown;
   -ms-animation-duration: 500ms;
   -moz-animation-duration: 500ms;
   -op-animation-duration: 500ms;
   -webkit-animation-duration: 500ms;
   animation-duration: 500ms;
   -ms-animation-timing-function: linear;
   -moz-animation-timing-function: linear;
   -op-animation-timing-function: linear;
   -webkit-animation-timing-function: linear;
   animation-timing-function: linear;
   -ms-animation-iteration-count: 1;
   -moz-animation-iteration-count: 1;
   -op-animation-iteration-count: 1;
   -webkit-animation-iteration-count: 1;
   animation-iteration-count: 1;
 }

 .main-header .header-lower {
   position: relative;
   width: 100%;
 }

 .main-header .outer-box {
   position: relative;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   padding: 0px 70px;
   justify-content: space-between;
 }

 /* .main-header .header-lower .shape{
  position: absolute;
  left: 0px;
  bottom: -143px;
  width: 100%;
  height: 143px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
} */

 .main-header .logo-box {
   position: relative;
   padding: 10px 0px;
 }

 .main-header .logo-box .logo {
   position: relative;
   max-width: 267px;
 }

 .main-header .logo-box .logo img {
   width: 75px;
 }

 .main-header .nav-right {
   position: relative;
   display: flex;
   align-items: center;
   padding: 29.5px 0px;
 }

 .main-header .nav-right li {
   position: relative;
   display: inline-block;
   margin-right: 40px;
 }

 .main-header .nav-right li:last-child {
   margin: 0px !important;
 }

 .main-header .nav-right .cart-box a {
   position: relative;
   display: inline-block;
   padding-right: 17px;
   font-size: 22px;
   color: #222222;
 }

 .main-header .nav-right .cart-box a:hover {}

 .main-header .nav-right .cart-box a span {
   position: absolute;
   display: inline-block;
   top: -13px;
   right: 0px;
   width: 19px;
   height: 19px;
   line-height: 19px;
   font-size: 11px;
   color: #fff;
   font-weight: 400;
   text-align: center;
   border-radius: 50%;
   box-shadow: 0px 6px 5px 2px #d4e6df;
 }

 .menu-area {
   position: relative;
 }


 /** search box btn **/


 .main-header .search-box-btn {
   position: relative;
   font-size: 20px;
   color: #222222;
   cursor: pointer;
   display: inline-block;
   background: transparent;
   text-align: center;
   border-radius: 50%;
   transition: all 500ms ease;
 }

 .main-header .search-box-btn:hover {}

 .main-header .search-box-outer .dropdown-menu {
   top: 55px !important;
   padding: 0px;
   width: 330px;
   border-radius: 0px;
   right: 0;
   left: auto !important;
   transform: translate3d(0px, 0px, 0px) scale3d(0.8, 0.8, 0.8) !important;
   border-color: transparent;
   border-radius: 3px;
   box-shadow: 7px 5px 30px 0 rgba(72, 73, 121, 0.15);
   transition: .5s ease;
   display: block;
   opacity: 0;
   visibility: hidden;
 }

 .main-header .search-box-outer .show .dropdown-menu {
   display: block;
   transform: scale3d(1, 1, 1) !important;
   opacity: 1;
   visibility: visible;
 }

 .main-header .search-panel .form-container {
   padding: 30px;
 }

 .main-header .search-panel .form-group {
   position: relative;
   margin: 0px;
 }

 .main-header .search-panel input[type="text"],
 .main-header .search-panel input[type="search"],
 .main-header .search-panel input[type="password"],
 .main-header .search-panel select {
   display: block;
   width: 100%;
   line-height: 24px;
   padding: 9px 50px 9px 15px;
   height: 50px;
   border: 1px solid #f3f5fe;
   border-radius: 3px;
   background: #f3f5fe;
 }

 .main-header .search-panel input:focus,
 .main-header .search-panel select:focus {
   border-color: #f3f5fe;
 }

 .main-header .search-panel .search-btn {
   position: absolute;
   right: 1px;
   top: 1px;
   width: 50px;
   height: 48px;
   text-align: center;
   color: #111111;
   background: #f3f5fe;
   font-size: 14px;
   border-radius: 0px 3px 3px 0px;
   cursor: pointer;
 }

 .dropdown-toggle::after {
   display: none;
 }


 /** main-menu **/

 .main-menu {
   float: left;
 }

 .main-menu .navbar-collapse {
   padding: 0px;
   display: block !important;
 }

 .main-menu .navigation {
   margin: 0px;
 }

 .main-menu .navigation>li {
   position: inherit;
   float: left;
   z-index: 2;
   margin: 0px 20px;
   -webkit-transition: all 300ms ease;
   -moz-transition: all 300ms ease;
   -ms-transition: all 300ms ease;
   -o-transition: all 300ms ease;
   transition: all 300ms ease;
 }

 .main-menu .navigation>li:last-child {
   margin-right: 0px !important;
 }

 .main-menu .navigation>li:first-child {
   margin-left: 0px !important;
 }

 .main-menu .navigation>li>a {
   position: relative;
   display: block;
   text-align: center;
   font-size: 16px;
   line-height: 30px;
   padding: 42px 0px;
   font-family: 'Open Sans', sans-serif;
   font-weight: 700;
   opacity: 1;
   color: #172746;
   padding-right: 12px;
   z-index: 1;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .main-menu .navigation>li.current>a,
 .main-menu .navigation>li:hover>a {}

 .main-menu .navigation>li.dropdown>a:before {
   position: absolute;
   content: "\f107";
   font-family: "Font Awesome 5 Pro";
   top: 44px;
   right: 0px;
   transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul,
 .main-menu .navigation>li>.megamenu {
   position: absolute;
   left: inherit;
   top: 100%;
   width: 230px;
   margin-top: 15px;
   z-index: 100;
   display: none;
   opacity: 0;
   visibility: hidden;
   border-radius: 0px;
   background-color: #172746;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul.from-right {
   left: auto;
   right: 0px;
 }

 .main-menu .navigation>li>ul>li {
   position: relative;
   width: 100%;
 }

 .main-menu .navigation>li>ul>li>a,
 .main-menu .navigation>li>.megamenu li>a {
   position: relative;
   display: block;
   padding: 10px 30px;
   line-height: 24px;
   font-weight: 400;
   font-size: 16px;
   text-transform: capitalize;
   font-family: 'Open Sans', sans-serif;
   color: #fff;
   text-align: left;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>a {
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 }

 .main-menu .navigation>li>.megamenu li>a {
   padding-left: 0px;
 }

 .main-menu .navigation>li>.megamenu h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   color: #ffffff;
 }

 /* .main-menu .navigation>li>ul>li>a:hover,
 .main-menu .navigation>li>.megamenu li>a:hover {} */

 .main-menu .navigation>li>ul>li:last-child>a,
 .main-menu .navigation>li>.megamenu li:last-child>a {
   border-bottom: none;
 }

 .main-menu .navigation>li>ul>li.dropdown>a:after {
   font-family: 'Font Awesome 5 Pro';
   content: "\f105";
   position: absolute;
   right: 20px;
   top: 10px;
   display: block;
   line-height: 24px;
   font-size: 16px;
   font-weight: 800;
   text-align: center;
   z-index: 5;
 }

 .main-menu .navigation>li>ul>li>ul {
   position: absolute;
   right: 100%;
   top: 0%;
   margin-top: 15px;
   width: 230px;
   z-index: 100;
   display: none;
   border-radius: 0px;
   background-color: #172746;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>ul.from-right {
   left: auto;
   right: 0px;
 }

 .main-menu .navigation>li>ul>li>ul>li {
   position: relative;
   width: 100%;
 }

 .main-menu .navigation>li>ul>li>ul>li:last-child {
   border-bottom: none;
 }

 .main-menu .navigation>li>ul>li>ul>li>a {
   position: relative;
   display: block;
   padding: 10px 30px;
   line-height: 24px;
   font-weight: 400;
   font-size: 16px;
   text-transform: capitalize;
   font-family: 'Open Sans', sans-serif;
   color: #fff;
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
   text-align: left;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>ul>li:last-child>a {
   border-bottom: none;
 }

 /* .main-menu .navigation>li>ul>li>ul>li>a:hover {} */

 .main-menu .navigation>li>ul>li>ul>li.dropdown>a:after {
   font-family: 'Font Awesome 5 Pro';
   content: "\f105";
   position: absolute;
   right: 20px;
   top: 12px;
   display: block;
   line-height: 24px;
   font-size: 16px;
   font-weight: 900;
   z-index: 5;
 }

 .main-menu .navigation>li.dropdown:hover>ul,
 .main-menu .navigation>li.dropdown:hover>.megamenu {
   visibility: visible;
   opacity: 1;
   margin-top: 0px;
   top: 100%;
 }

 .main-menu .navigation li>ul>li.dropdown:hover>ul {
   visibility: visible;
   opacity: 1;
   top: 0%;
   margin-top: 0px;
 }

 .main-menu .navigation li.dropdown .dropdown-btn {
   position: absolute;
   right: -32px;
   top: 66px;
   width: 34px;
   height: 30px;
   text-align: center;
   font-size: 18px;
   line-height: 26px;
   color: #3b3b3b;
   cursor: pointer;
   display: none;
   z-index: 5;
   transition: all 500ms ease;
 }

 /* .main-menu .navigation li.current.dropdown .dropdown-btn,
 .main-menu .navigation li:hover .dropdown-btn {} */

 .main-menu .navigation li.dropdown ul li.dropdown .dropdown-btn {
   display: none;
 }

 .menu-area .mobile-nav-toggler {
   position: relative;
   float: right;
   font-size: 40px;
   line-height: 50px;
   cursor: pointer;
   color: #3786ff;
   display: none;
 }

 .menu-area .mobile-nav-toggler .icon-bar {
   position: relative;
   height: 2px;
   width: 30px;
   display: block;
   margin-bottom: 5px;
   background-color: #222;
   -webkit-transition: all 300ms ease;
   -moz-transition: all 300ms ease;
   -ms-transition: all 300ms ease;
   -o-transition: all 300ms ease;
   transition: all 300ms ease;
 }

 .main-header.style-two .menu-area .mobile-nav-toggler .icon-bar {
   background-color: #fff;
 }

 .menu-area .mobile-nav-toggler .icon-bar:last-child {
   margin-bottom: 0px;
 }


 /** megamenu-style **/

 .main-menu .navigation>li.dropdown>.megamenu {
   position: absolute;
   width: 100%;
   padding: 30px 50px;
   left: 0px;
 }

 .main-menu .navigation li.dropdown .megamenu li h4 {
   font-weight: 700;
   padding: 3px 0px;
   margin-bottom: 10px;
 }


 /** mobile-menu **/

 .nav-outer .mobile-nav-toggler {
   position: relative;
   float: right;
   font-size: 40px;
   line-height: 50px;
   cursor: pointer;
   color: #3786ff;
   display: none;
 }

 .mobile-menu {
   position: fixed;
   right: 0;
   top: 0;
   width: 300px;
   padding-right: 30px;
   max-width: 100%;
   height: 100%;
   opacity: 0;
   visibility: hidden;
   z-index: 999999;
   transition: all 900ms ease;
 }

 .mobile-menu .navbar-collapse {
   display: block !important;
 }

 .mobile-menu .nav-logo {
   position: relative;
   padding: 50px 25px;
   text-align: left;
   padding-bottom: 100px;
 }

 .mobile-menu .nav-logo img {
   width: 100px !important;
 }

 .mobile-menu-visible {
   overflow: hidden;
 }

 .mobile-menu-visible .mobile-menu {
   opacity: 1;
   visibility: visible;
 }

 .mobile-menu .menu-backdrop {
   position: fixed;
   left: 0%;
   top: 0;
   width: 100%;
   height: 100%;
   z-index: 1;
   transition: all 900ms ease;
   background-color: #000;
 }

 .mobile-menu-visible .mobile-menu .menu-backdrop {
   opacity: 0.70;
   visibility: visible;
   right: 100%;
   -webkit-transition: all .8s ease-out 0s;
   -o-transition: all .8s ease-out 0s
 }

 .mobile-menu .menu-box {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   max-height: 100%;
   overflow-y: auto;
   background: #061a3a;
   padding: 0px 0px;
   z-index: 5;
   opacity: 0;
   visibility: hidden;
   border-radius: 0px;
   -webkit-transform: translateX(100%);
   -ms-transform: translateX(100%);
   transform: translateX(100%);
   transition: all 900ms ease !important;
 }

 .mobile-menu-visible .mobile-menu .menu-box {
   opacity: 1;
   visibility: visible;
   -webkit-transition: all 0.7s ease;
   -o-transition: all 0.7s ease;
   transition: all 0.7s ease;
   -webkit-transform: translateX(0%);
   -ms-transform: translateX(0%);
   transform: translateX(0%);
 }

 .mobile-menu .close-btn {
   position: absolute;
   right: 25px;
   top: 10px;
   line-height: 30px;
   width: 24px;
   text-align: center;
   font-size: 16px;
   color: #ffffff;
   cursor: pointer;
   z-index: 10;
   -webkit-transition: all 0.9s ease;
   -moz-transition: all 0.9s ease;
   -ms-transition: all 0.9s ease;
   -o-transition: all 0.9s ease;
   transition: all 0.9s ease;
 }

 .mobile-menu-visible .mobile-menu .close-btn {
   -webkit-transform: rotate(360deg);
   -ms-transform: rotate(360deg);
   transform: rotate(360deg);
 }

 .mobile-menu .close-btn:hover {
   -webkit-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   transform: rotate(90deg);
 }

 .mobile-menu .navigation {
   position: relative;
   display: block;
   width: 100%;
   float: none;
 }

 .mobile-menu .navigation li {
   position: relative;
   display: block;
   border-top: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation:last-child {
   border-bottom: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation li>ul>li:first-child {
   border-top: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation li>a {
   position: relative;
   display: block;
   line-height: 24px;
   padding: 10px 25px;
   font-size: 15px;
   font-weight: 500;
   color: #ffffff;
   text-transform: uppercase;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .navigation li ul li>a {
   font-size: 16px;
   margin-left: 20px;
   text-transform: capitalize;
 }

 .mobile-menu .navigation li>a:before {
   content: '';
   position: absolute;
   left: 0;
   top: 0;
   height: 0;
   border-left: 5px solid #fff;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .navigation li.current>a:before {
   height: 100%;
 }

 .mobile-menu .navigation li.dropdown .dropdown-btn {
   position: absolute;
   right: 6px;
   top: 6px;
   width: 32px;
   height: 32px;
   text-align: center;
   font-size: 16px;
   line-height: 32px;
   color: #ffffff;
   background: rgba(255, 255, 255, 0.10);
   cursor: pointer;
   border-radius: 2px;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
   z-index: 5;
 }

 .mobile-menu .navigation li.dropdown .dropdown-btn.open {
   color: #ffffff;
   -webkit-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   transform: rotate(90deg);
 }

 .mobile-menu .navigation li>ul,
 .mobile-menu .navigation li>ul>li>ul,
 .mobile-menu .navigation>li.dropdown>.megamenu {
   display: none;
 }

 .mobile-menu .social-links {
   position: relative;
   padding: 0px 25px;
 }

 .mobile-menu .social-links li {
   position: relative;
   display: inline-block;
   margin: 0px 10px 10px;
 }

 .mobile-menu .social-links li a {
   position: relative;
   line-height: 32px;
   font-size: 16px;
   color: #ffffff;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .social-links li a:hover {}

 div#mCSB_1_container {
   top: 0px !important;
 }

 .mobile-menu .contact-info {
   position: relative;
   padding: 120px 30px 20px 30px;
 }

 .mobile-menu .contact-info h4 {
   position: relative;
   font-size: 20px;
   color: #ffffff;
   font-weight: 700;
   margin-bottom: 20px;
 }

 .mobile-menu .contact-info ul li {
   position: relative;
   display: block;
   font-size: 15px;
   color: rgba(255, 255, 255, 0.80);
   margin-bottom: 3px;
 }

 .mobile-menu .contact-info ul li a {
   color: rgba(255, 255, 255, 0.80);
 }

 .mobile-menu .contact-info ul li a:hover {}

 .mobile-menu .contact-info ul li:last-child {
   margin-bottom: 0px;
 }

 .main-header .outer-box {
   position: relative;
 }

 .sticky-header .logo-box .logo {
   max-width: 180px;
 }

 .sticky-header .logo-box {
   padding: 10px 0px;
 }

 .sticky-header .main-menu .navigation>li>a {
   padding-top: 25px;
   padding-bottom: 25px;
 }

 .sticky-header .main-menu .navigation>li.dropdown>a:before {
   top: 27px;
 }

 .sticky-header .nav-right {
   padding: 12.5px 0px;
 }


 /** banner-section **/

 .banner-section {
   position: relative;
   overflow: hidden;
   background-color: #002c8f;
 }

 .banner-section .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 68px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
   z-index: 2;
 }

 .banner-carousel {
   position: relative;
 }

 .banner-carousel .slide-item {
   position: relative;
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
 }

 .banner-carousel .slide-item .image-layer {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: bottom center;
   background-size: cover;
 }

 .banner-carousel .content-box {
   position: relative;
   display: block;
   max-width: 500px;
   z-index: 5;
   padding: 212px 0px 240px 0px;
 }

 .banner-carousel .content-box h2 {
   position: relative;
   display: block;
   color: #fff;
   font-size: 50px;
   line-height: 66px;
   font-weight: 800;
   margin-bottom: 23px;
   opacity: 0;
   -webkit-transform: translateY(100px);
   -moz-transform: translateY(100px);
   -ms-transform: translateY(100px);
   -o-transform: translateY(100px);
   transform: translateY(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-carousel .active .content-box h2 {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1000ms;
   -moz-transition-delay: 1000ms;
   -ms-transition-delay: 1000ms;
   -o-transition-delay: 1000ms;
   transition-delay: 1000ms;
 }

 .banner-carousel .content-box p {
   position: relative;
   display: block;
   color: #fff;
   font-size: 18px;
   line-height: 30px;
   margin-bottom: 42px;
   opacity: 0;
   -webkit-transform: translateY(100px);
   -moz-transform: translateY(100px);
   -ms-transform: translateY(100px);
   -o-transform: translateY(100px);
   transform: translateY(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-carousel .active .content-box p {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1200ms;
   -moz-transition-delay: 1200ms;
   -ms-transition-delay: 1200ms;
   -o-transition-delay: 1200ms;
   transition-delay: 1200ms;
 }

 .banner-carousel .content-box .btn-box {
   position: relative;
   opacity: 0;
   -webkit-transform: translateY(100px);
   -moz-transform: translateY(100px);
   -ms-transform: translateY(100px);
   -o-transform: translateY(100px);
   transform: translateY(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-carousel .active .content-box .btn-box {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1400ms;
   -moz-transition-delay: 1400ms;
   -ms-transition-delay: 1400ms;
   -o-transition-delay: 1400ms;
   transition-delay: 1400ms;
 }

 .banner-carousel .content-box .btn-box .theme-btn:before {
   background-color: #fff;
 }

 .banner-carousel .content-box .btn-box .theme-btn:hover {}

 .banner-carousel .content-box .btn-box .banner-btn {
   border: 1px solid rgba(255, 255, 255, 0.15);
   background: transparent;
   color: #fff !important;
   padding: 14px 39px;
 }

 .banner-carousel .content-box .btn-box .theme-btn.btn-one {
   margin-right: 16px;
 }

 .owl-dots-none .owl-dots,
 .owl-nav-none .owl-nav {
   display: none !important;
 }

 .banner-carousel .inner-box {
   position: relative;
   width: 100%;
 }

 .banner-carousel .inner-box .image-box {
   position: absolute;
   right: 0px;
   bottom: 25px;
   min-height: 700px;
   min-width: 1000px;
 }

 .banner-carousel .inner-box .image-box .image-1 {
   position: absolute;
   right: 85px;
   bottom: 86px;
   opacity: 0;
   -webkit-transform: translateY(100px);
   -moz-transform: translateY(100px);
   -ms-transform: translateY(100px);
   -o-transform: translateY(100px);
   transform: translateY(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-carousel .inner-box .image-box .image-2 {
   position: absolute;
   right: -220px;
   bottom: 0px;
   opacity: 0;
   z-index: -1;
   -webkit-transform: translateY(100px);
   -moz-transform: translateY(100px);
   -ms-transform: translateY(100px);
   -o-transform: translateY(100px);
   transform: translateY(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-carousel .active .inner-box .image-box .image-1 {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1000ms;
   -moz-transition-delay: 1000ms;
   -ms-transition-delay: 1000ms;
   -o-transition-delay: 1000ms;
   transition-delay: 1000ms;
 }

 .banner-carousel .active .inner-box .image-box .image-2 {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1000ms;
   -moz-transition-delay: 1000ms;
   -ms-transition-delay: 1000ms;
   -o-transition-delay: 1000ms;
   transition-delay: 1000ms;
 }

 .banner-carousel .pattern-box .pattern-1 {
   position: absolute;
   left: 0px;
   top: -250px;
   width: 560px;
   height: 560px;
   background: rgba(255, 255, 255, 0.05);
   border-radius: 50%;
 }

 .banner-carousel .pattern-box .pattern-2 {
   position: absolute;
   right: 290px;
   top: 140px;
   width: 330px;
   height: 330px;
   background: rgba(255, 255, 255, 0.05);
   border-radius: 50%;
   -webkit-animation: zoom-fade 10s infinite linear;
   animation: zoom-fade 10s infinite linear;
 }

 .banner-carousel .pattern-box .pattern-3 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 363px;
   background-repeat: no-repeat;
   background-position: top center;
   background-size: cover;
 }


 /** feature-section **/

 .feature-section {
   position: relative;
 }

 .feature-section .inner-container {
   position: relative;
   display: block;
   background-color: #fff;
   padding: 95px 50px 93px 50px;
   box-shadow: 0px 10px 40px 0px rgba(0, 0, 0, 0.1);
   margin-top: -100px;
   z-index: 2;
 }

 .feature-section .title-text {
   position: relative;
   display: block;
   margin-bottom: 45px;
 }

 .feature-section .title-text h2 {
   font-size: 32px;
   line-height: 45px;
   font-weight: 700;
 }

 .feature-block-one .inner-box {
   position: relative;
   display: block;
 }

 .feature-block-one .inner-box .icon-box {
   position: relative;
   font-size: 60px;
   line-height: 60px;
   margin-bottom: 22px;
   transition: all 500ms ease;
 }

 .feature-block-one .inner-box:hover .icon-box {
   transform: scale(1.1);
 }

 .feature-block-one .inner-box h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 500;
   margin-bottom: 15px;
 }

 .feature-block-one .inner-box p {
   font-size: 15px;
   line-height: 26px;
 }

 .feature-block-one .inner-box .shape {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   right: -15px;
   width: 12px;
   height: 121px;
   background-repeat: no-repeat;
 }


 /** about-section **/

 .about-section {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .about-section .image-box {
   position: relative;
   display: block;
 }

 /* .about-section .image-box img{
  max-width: none;
  float: right;
} */

 .content_block_1 .content-box {
   position: relative;
   display: block;
 }

 .about-section .content_block_1 .content-box {
   margin-left: 40px;
 }

 .content_block_1 .content-box .text p {
   margin-bottom: 26px;
 }

 .content_block_1 .content-box .text p:last-child {
   margin-bottom: 0px;
 }

 .content_block_1 .content-box .text {
   position: relative;
   display: block;
   margin-bottom: 48px;
 }

 .content_block_1 .content-box .sec-title {
   margin-bottom: 17px;
 }

 .content_block_1 .content-box .theme-btn {
   padding: 15px 50px;
 }

 .bg-color-1 {
   background-color: #f2f9ff;
 }


 /** service-section **/

 .service-section {
   position: relative;
   overflow: hidden;
   padding: 190px 0px 80px 0px;
 }

 .service-section .shape {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 200px;
   background-repeat: no-repeat;
   background-size: 100% 100%;
   background-position: center;
 }

 .service-section .image-layer {
   position: absolute;
   left: 50%;
   transform: translateX(-50%);
   bottom: 0px;
   margin-left: 25px;
   z-index: 1;
 }

 .service-section .left-column {
   position: relative;
   display: block;
   padding-right: 180px;
 }

 .service-section .right-column {
   position: relative;
   display: block;
   padding-left: 180px;
 }

 .service-block-one {
   position: relative;
   max-width: 320px;
   width: 100%;
   z-index: 1;
 }

 .service-block-one .inner-box {
   position: relative;
   display: block;
   background: #fff;
   padding: 40px 40px 35px 40px;
   box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 8%);
   margin-bottom: 70px;
   z-index: 1;
   transition: all 500ms ease;
 }

 .service-block-one .inner-box:hover {
   transform: translateY(-10px);
   box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 12%);
 }

 .service-block-one .inner-box .icon-box {
   position: relative;
   font-size: 50px;
   line-height: 50px;
   margin-bottom: 27px;
   transition: all 500ms ease;
 }

 .service-block-one .inner-box h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 600;
   margin-bottom: 14px;
 }

 .service-block-one .inner-box h4 a {
   display: inline-block;
   color: #172746;
 }

 .service-block-one .inner-box h4 a:hover {}

 .service-section .left-column .service-block-one:first-child,
 .service-section .right-column .service-block-one:last-child {
   left: 70px;
 }

 .service-section .sec-title {
   margin-bottom: 57px;
 }

 .service-section .bg-shape-1 {
   position: absolute;
   left: 50%;
   bottom: -300px;
   transform: translateX(-50%);
   background: rgba(255, 255, 255, 0.5);
   width: 900px;
   height: 900px;
   border-radius: 50%;
 }

 .service-section .bg-shape-2 {
   position: absolute;
   left: 50%;
   bottom: -200px;
   transform: translateX(-50%);
   background: rgba(255, 255, 255, 0.6);
   width: 700px;
   height: 700px;
   border-radius: 50%;
   box-shadow: 0px 0px 50px 0px rgb(0 0 0 / 5%);
 }

 .service-section .bg-shape-3 {
   position: absolute;
   left: 50%;
   bottom: -100px;
   transform: translateX(-50%);
   background: rgba(255, 255, 255, 1);
   width: 500px;
   height: 500px;
   border-radius: 50%;
   box-shadow: 0px 0px 50px 0px rgb(0 0 0 / 5%);
 }


 /** chooseus-section **/

 .chooseus-section {
   position: relative;
   margin: 80px 0px 0px 0px;
   padding: 50px 0px 88px 0px;
 }

 .content_block_2 .content-box {
   position: relative;
   display: block;
 }

 .content_block_2 .content-box .single-item {
   position: relative;
   display: block;
   padding-left: 85px;
   margin-bottom: 27px;
   min-height: 90px;
 }

 .content_block_2 .content-box .single-item:last-child {
   margin-bottom: 0px;
 }

 .content_block_2 .content-box .single-item .icon-box {
   position: absolute;
   left: 0px;
   top: 4px;
   display: inline-block;
   width: 60px;
   height: 60px;
   line-height: 66px;
   text-align: center;
   font-size: 20px;
   color: #fff;
   border-radius: 50%;
 }

 .content_block_2 .content-box .single-item h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   color: #fff;
   font-weight: 500;
   margin-bottom: 8px;
 }

 .content_block_2 .content-box .single-item p {
   color: #fff;
 }

 .content_block_2 .content-box .sec-title {
   margin-bottom: 30px;
 }

 .chooseus-section .content_block_2 .content-box {
   margin-right: 35px;
 }

 .chooseus-section .image-box {
   position: relative;
   display: block;
   margin-right: -140px;
   top: 180px;
   z-index: 1;
 }

 .chooseus-section .image-box .image {
   position: relative;
   display: block;
   background: #fff;
   border: 15px solid #fff;
   box-shadow: 0px 10px 50px 0px rgb(0 0 0 / 10%);
 }

 .chooseus-section .image-box .image img {
   width: 100%;
 }

 .chooseus-section .bg-layer {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: bottom center;
 }

 .chooseus-section .shape-layer .shape-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 604px;
   height: 395px;
   background-repeat: no-repeat;
 }

 .chooseus-section .shape-layer .shape-2 {
   position: absolute;
   top: -50px;
   right: 230px;
   width: 330px;
   height: 330px;
   border-radius: 50%;
   background-color: rgba(255, 255, 255, 0.05);
   -webkit-animation: zoom-fade 10s infinite linear;
   animation: zoom-fade 10s infinite linear;
 }

 .chooseus-section .shape-layer .shape-3 {
   position: absolute;
   top: -40px;
   right: -120px;
   width: 560px;
   height: 560px;
   border-radius: 50%;
   background-color: rgba(255, 255, 255, 0.05);
 }

 .chooseus-section .shape-layer .shape-4 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 62px;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: top center;
 }



 /** shop-section **/

 .shop-section {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .shop-block-one .inner-box {
   position: relative;
   display: block;
   background: #fff;
   overflow: hidden;
   padding: 23px 45px 45px 45px;
   text-align: center;
   box-shadow: 0px 10px 50px 0px rgb(0 0 0 / 8%);
 }

 .shop-block-one .inner-box .image-box {
   position: relative;
   display: block;
   overflow: hidden;
 }

 .shop-block-one .inner-box .image-box img {
   transition: all 500ms ease;
 }

 .shop-block-one .inner-box:hover .image-box img {
   transform: scale(1.06);
 }

 .shop-block-one .inner-box .lower-content {
   position: relative;
   display: block;
   padding-top: 55px;
 }

 .shop-block-one .inner-box .lower-content .shape {
   position: absolute;
   left: 0px;
   top: 13px;
   width: 100%;
   height: 10px;
   background-repeat: repeat-x;
   animation: slide 60s linear infinite;
   -webkit-animation: slide 60s linear infinite;
 }

 @keyframes slide {
   from {
     background-position: 0 0;
   }

   to {
     background-position: 1920px 0;
   }
 }

 @-webkit-keyframes slide {
   from {
     background-position: 0 0;
   }

   to {
     background-position: 1920px 0;
   }
 }

 .shop-block-one .inner-box .lower-content span {
   position: relative;
   display: block;
   font-size: 15px;
   margin-bottom: 9px;
 }

 .shop-block-one .inner-box .lower-content h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 600;
   margin-bottom: 20px;
 }

 .shop-block-one .inner-box .lower-content h4 a {
   display: inline-block;
   color: #172746;
 }

 .shop-block-one .inner-box .lower-content h4 a:hover {}

 .shop-block-one .inner-box .lower-content h6 {
   display: block;
   font-size: 16px;
   line-height: 26px;
   font-weight: 600;
   margin-bottom: 16px;
 }

 .shop-block-one .inner-box .lower-content p {
   margin-bottom: 23px;
 }


 .shop-block-one .inner-box .lower-content .theme-btn {
   padding: 10.5px 37px;
 }


 /** testimonial-section **/

 .testimonial-section {
   position: relative;
   margin: 80px 0px 0px 0px;
   padding: 100px 0px 0px 0px;
 }

 .testimonial-section .sec-title {
   margin-bottom: 40px;
 }

 .testimonial-block-one .inner-box {
   position: relative;
   display: block;
   background: #fff;
   padding: 30px;
 }

 .testimonial-block-one .inner-box .author-thumb {
   position: absolute;
   left: 40px;
   top: 40px;
   width: 120px;
   height: 150px;
   border-radius: 100px;
 }

 .testimonial-block-one .inner-box .author-thumb img {
   width: 100%;
   border-radius: 100px;
 }

 .testimonial-block-one .inner-box .rating li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 10px;
   font-size: 18px;
 }

 .testimonial-block-one .inner-box .rating li:last-child {
   margin: 0px !important;
 }

 .testimonial-block-one .inner-box .rating {
   position: relative;
   display: block;
   margin-bottom: 17px;
 }

 .testimonial-block-one .inner-box p {
   color: #222222;
   margin-bottom: 20px;
 }

 .testimonial-block-one .inner-box h5 {
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 600;
   margin-bottom: 1px;
 }

 .testimonial-block-one .inner-box .designation {
   position: relative;
   display: block;
   font-size: 15px;
 }

 .testimonial-section .owl-dots {
   position: absolute;
   top: -80px;
   right: -7.5px;
 }

 .testimonial-section .owl-dots span {
   position: relative;
   display: inline-block;
   width: 15px;
   height: 15px;
   background: #dfe5eb !important;
   border-radius: 50%;
   margin: 0px 7.5px !important;
   cursor: pointer;
   transition: all 500ms ease !important;
 }

 .testimonial-section .owl-dots .owl-dot.active span,
 .testimonial-section .owl-dots span:hover {}

 .testimonial-section .shape-layer .shape-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 80px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .testimonial-section .shape-layer .shape-2 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 134px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }


 /** team-section **/

 .team-section {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .team-section .sec-title {
   margin-bottom: 40px;
 }

 .team-block-one .inner-box {
   position: relative;
   display: block;
   background: transparent;
   padding: 0px 50px 44px 50px;
 }

 .team-block-one .inner-box:before {
   position: absolute;
   content: '';
   background: #fff;
   width: 100%;
   height: calc(100% - 135px);
   left: 0px;
   bottom: 0px;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 8%);
   z-index: -1;
 }

 .team-block-one .inner-box .image-box {
   position: relative;
   display: block;
   overflow: hidden;
 }

 .team-block-one .inner-box .image-box .image {
   position: relative;
   display: block;
   overflow: hidden;
   background-color: #0c1529;
 }

 .team-block-one .inner-box .image-box .image img {
   width: 100%;
   transition: all 500ms ease;
 }

 .team-block-one .inner-box:hover .image-box .image img {
   opacity: 0.4;
 }

 .team-block-one .inner-box .image-box .social-links {
   position: absolute;
   left: 50%;
   top: 50%;
   width: 100%;
   transform: translate(-50%, -50%) scale(0, 0);
   text-align: center;
   transition: all 500ms ease;
 }

 .team-block-one .inner-box:hover .image-box .social-links {
   transform: translate(-50%, -50%) scale(1, 1);
 }

 .team-block-one .inner-box .image-box .social-links li {
   position: relative;
   display: inline-block;
   margin: 0px 8px;
 }

 .team-block-one .inner-box .image-box .social-links li a {
   position: relative;
   display: inline-block;
   width: 46px;
   height: 46px;
   line-height: 46px;
   font-size: 16px;
   color: #0c1529;
   background-color: #fff;
   border-radius: 50%;
   text-align: center;
 }

 .team-block-one .inner-box .image-box .social-links li a:hover {
   color: #fff;
 }

 .team-block-one .inner-box .lower-content {
   position: relative;
   padding-top: 50px;
 }

 .team-block-one .inner-box .lower-content h4 {
   position: relative;
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 600;
   margin-bottom: 0px;
 }

 .team-block-one .inner-box .lower-content h4 a {
   display: inline-block;
   color: #172746;
 }

 .team-block-one .inner-box .lower-content h4 a:hover {}

 .team-block-one .inner-box .lower-content .designation {
   position: relative;
   display: block;
   font-size: 15px;
   line-height: 26px;
 }

 .team-block-one .inner-box .lower-content .location {
   position: relative;
   display: block;
   font-size: 15px;
   line-height: 26px;
 }

 .team-block-one .inner-box .lower-content .share-box {
   position: absolute;
   top: 53px;
   right: 0px;
 }

 .team-block-one .inner-box .lower-content .share-box a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   background-color: #fff;
   width: 46px;
   height: 46px;
   line-height: 46px;
   color: #3c4858;
   text-align: center;
   border-radius: 50%;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 20%);
 }

 .team-block-one .inner-box .lower-content .share-box a:hover {
   color: #fff;
   box-shadow: none;
 }


 /** cta-section **/

 .cta-section {
   position: relative;
   padding: 80px 0px 85px 0px;
 }

 .cta-section .image-box {
   position: relative;
   display: block;
   margin-right: 70px;
 }

 .cta-section .image-box img {
   max-width: none;
   float: right;
 }

 .content_block_3 .content-box {
   position: relative;
   display: block;
 }

 .content_block_3 .content-box .text {
   position: relative;
   display: block;
   margin-bottom: 22px;
 }

 .content_block_3 .content-box .text p {
   color: #fff;
 }

 .content_block_3 .content-box .list {
   position: relative;
   margin-bottom: 37px;
 }

 .content_block_3 .content-box .list li {
   position: relative;
   display: block;
   margin-bottom: 13px;
   padding-left: 38px;
   font-size: 15px;
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
   color: #fff;
 }

 .content_block_3 .content-box .list li:before {
   position: absolute;
   content: "\f10a";
   font-family: 'flaticon';
   font-size: 8px;
   color: #fff;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
   background-color: rgba(255, 255, 255, 0.2);
   border-radius: 50%;
   left: 0px;
   top: 1px;
 }

 .content_block_3 .content-box .theme-btn:hover {}

 .content_block_3 .content-box .theme-btn:before {
   background-color: #fff;
 }

 .content_block_3 .content-box .sec-title {
   margin-bottom: 17px;
 }

 .cta-section .pattern-layer .pattern-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 896px;
   height: 414px;
   background-repeat: no-repeat;
 }

 .cta-section .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 330px;
   background-repeat: no-repeat;
   background-position: top center;
   background-size: cover;
 }

 .cta-section .pattern-layer .pattern-3 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 37px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .cta-section .pattern-layer .pattern-4 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 44px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }


 /** news-section **/

 .news-section {
   position: relative;
   padding: 8px 0px 0px 0px;
 }

 .news-block-one .inner-box {
   position: relative;
   display: block;
   background-color: #fff;
   padding-top: 0px;
   z-index: 1;
 }

 .news-block-one .inner-box {
   /* position: absolute;
  content: ''; */
   background: #fff;
   width: 100%;
   /* height: calc(100% - 120px); */
   left: 0px;
   bottom: 0px;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 8%);
   /* z-index: -1; */
 }

 .news-block-one .inner-box .image-box {
   position: relative;
   display: block;
   overflow: hidden;
   background-color: #0c1529;
 }

 .news-block-one .inner-box .image-box img {
   width: 100%;
   transition: all 500ms ease;
 }

 .news-block-one .inner-box:hover .image-box img {
   opacity: 0.4;
   transform: scale(1.05);
 }

 .news-block-one .inner-box .lower-content {
   position: relative;
   padding-top: 24px;
   padding: 30px 30px;
 }

 .news-block-one .inner-box .lower-content .category {
   position: relative;
   display: block;
   margin-bottom: 10px;
 }

 .news-block-one .inner-box .lower-content .category a {
   position: relative;
   display: inline-block;
   font-size: 14px;
   line-height: 24px;
   font-weight: 600;
   text-transform: uppercase;
 }

 .news-block-one .inner-box .lower-content .category a:hover {
   text-decoration: underline;
 }

 .news-block-one .inner-box .lower-content h4 {
   display: block;
   font-size: 20px;
   line-height: 28px;
   font-weight: 600;
   margin-bottom: 5px;
 }

 .news-block-one .inner-box .lower-content h4 a {
   display: inline-block;
   color: #172746;
 }

 .news-block-one .inner-box .lower-content h4 a:hover {}

 .news-block-one .inner-box .lower-content .post-info li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 14px;
   font-size: 15px;
   color: #93959e;
 }

 .news-block-one .inner-box .lower-content .post-info li:last-child {
   margin-bottom: 0px;
 }

 .news-block-one .inner-box .lower-content .post-info li a {
   display: inline-block;
   font-weight: 600;
   color: #172746;
 }

 .news-block-one .inner-box .lower-content .post-info li a:hover {}

 .news-block-one .inner-box .lower-content .post-info {
   position: relative;
   display: block;
   margin-bottom: 14px;
 }

 .news-block-one .inner-box .lower-content .post-info li:before {
   position: absolute;
   content: '';
   background-color: #93959e;
   width: 4px;
   height: 1px;
   top: 14px;
   right: -9px;
 }

 .news-block-one .inner-box .lower-content .post-info li:last-child:before {
   display: none;
 }

 .news-block-one .inner-box .lower-content .text {
   margin-bottom: 23px;
 }

 .news-block-one .inner-box .lower-content .theme-btn {
   padding: 10.5px 30px;
 }

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


 /** main-footer **/

 .main-footer {
   position: relative;
   background-color: #200c61;
 }

 .main-footer .pattern-layer .pattern-3 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 165px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .main-footer .footer-top {
   position: relative;
   width: 100%;
   border-radius: 50%;
   /* padding: 50px 0px 50px 0px; */
 }

 .call-to-action .main-footer {
   border-radius: 100px;
   /* padding: 50px 0px 50px 0px; */
 }

 .main-footer .footer-top .text h2 {
   font-size: 30px;
   line-height: 60px;
   color: #fff;
   font-weight: 600;
   margin: 0px;
 }

 /* Mobile devices: screen width 768px or smaller */
 @media (max-width: 768px) {
   .main-footer .footer-top .text h2 {
     font-size: 24px;
     /* smaller font */
     line-height: 36px;
     /* smaller line height */
   }
 }

 /* Extra small devices: screen width 480px or smaller */
 @media (max-width: 480px) {
   .main-footer .footer-top .text h2 {
     font-size: 20px;
     line-height: 30px;
   }
 }

 .main-footer .footer-top .text h2 span {}

 .main-footer .footer-top .support-box a {
   position: relative;
   display: inline-block;
   overflow: hidden;
   vertical-align: middle;
   font-size: 18px;
   line-height: 25px;
   font-family: 'Open Sans', sans-serif;
   color: #fff;
   font-weight: 600;
   text-align: center;
   padding: 17.5px 40px;
   border-radius: 30px;
   z-index: 1;
   transition: all 500ms ease;
 }

 .main-footer .footer-top .support-box a i {
   margin-right: 18px;
 }

 .main-footer .footer-top .line-shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 22px;
   background-repeat: no-repeat;
 }

 .main-footer .widget-section {
   position: relative;
   width: 100%;
   padding: 90px 0px 80px 0px;
 }

 .main-footer .logo-widget {
   position: relative;
   margin-top: -10px;
 }

 .main-footer .logo-widget .footer-logo {
   position: relative;
   margin-bottom: 37px;
   width: 120px;
 }

 .main-footer .logo-widget .text {
   position: relative;
   display: block;
   margin-bottom: 31px;
 }

 .main-footer .logo-widget .text p {
   color: #fff;
 }

 .main-footer .logo-widget .schedule-box h6 {
   display: block;
   font-size: 16px;
   line-height: 26px;
   color: #fff;
   font-weight: 600;
   margin-bottom: 15px;
 }

 .main-footer .logo-widget .schedule-box .list li {
   position: relative;
   display: block;
   font-size: 15px;
   color: #fff;
   line-height: 26px;
   margin-bottom: 4px;
 }

 .main-footer .logo-widget .schedule-box .list li:last-child {
   margin-bottom: 0px;
 }

 .main-footer .widget-title {
   position: relative;
   display: block;
   margin-bottom: 43px;
 }

 .main-footer .widget-title h4 {
   font-size: 20px;
   line-height: 30px;
   color: #fff;
   font-weight: 600;
 }

 .main-footer .contact-widget .info-list li {
   position: relative;
   display: block;
   font-size: 15px;
   line-height: 30px;
   color: #fff;
   padding-left: 34px;
   margin-bottom: 20px;
 }

 .main-footer .contact-widget .info-list li:last-child {
   margin-bottom: 0px;
 }

 .main-footer .contact-widget .info-list li a {
   display: inline-block;
   color: #fff;
 }

 .main-footer .contact-widget .info-list li a:hover {}

 .main-footer .contact-widget .info-list li i {
   position: absolute;
   left: 0px;
   top: 4px;
   font-size: 20px;
 }

 .main-footer .contact-widget .info-list li:first-child i {
   top: 10px;
 }

 .main-footer .links-widget .links-list li {
   position: relative;
   display: block;
   font-size: 15px;
   color: #fff;
   margin-bottom: 13px;
 }

 .main-footer .links-widget .links-list li:last-child {
   margin-bottom: 0px;
 }

 .main-footer .links-widget .links-list li a {
   position: relative;
   display: inline-block;
   color: #fff;
 }

 .main-footer .links-widget .links-list li a:hover {}

 .main-footer .links-widget .links-list li a:before {
   position: absolute;
   content: '';
   width: 0%;
   height: 1px;
   left: 0px;
   bottom: 4px;
   transition: all 500ms ease;
 }

 .main-footer .links-widget .links-list li a:hover:before {
   width: 100%;
 }

 .main-footer .subscribe-widget p {
   font-size: 15px;
   line-height: 26px;
   color: #fff;
   margin-bottom: 43px;
 }

 .main-footer .subscribe-widget .form-group {
   position: relative;
   margin: 0px;
   border-radius: 30px;
   overflow: hidden;
 }

 .main-footer .subscribe-widget .form-group input[type="email"] {
   position: relative;
   display: block;
   width: 100%;
   height: 60px;
   background-color: #fff;
   border: 2px solid #fff;
   border-radius: 30px;
   font-size: 16px;
   color: #808080;
   padding: 10px 70px 10px 30px;
   transition: all 500ms ease;
 }

 .main-footer .subscribe-widget .form-group button {
   position: absolute;
   top: 0px;
   right: 0px;
   width: 60px;
   height: 60px;
   line-height: 60px;
   font-size: 20px;
   color: #fff;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .main-footer .subscribe-widget .form-group input:focus {}

 .main-footer .pattern-layer .pattern-1 {
   position: absolute;
   top: 0px;
   right: 0px;
   width: 694px;
   height: 389px;
   background-repeat: no-repeat;
 }

 .main-footer .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 384px;
   background-repeat: no-repeat;
   background-position: top center;
   background-size: cover;
 }

 .footer-bottom {
   position: relative;
   width: 100%;
   background-color: #636562;
   padding: 20px 0px;
 }

 .footer-bottom .bottom-inner {
   position: relative;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: space-between;
 }

 .footer-bottom .copyright p {
   font-size: 15px;
   line-height: 40px;
   color: #fff;
 }

 .footer-bottom .copyright p a {}

 .footer-bottom .copyright p a:hover {
   text-decoration: underline;
 }

 .footer-bottom .social-links li {
   position: relative;
   display: inline-block;
   margin: 0px 3.5px;
 }

 .footer-bottom .social-links li a {
   position: relative;
   display: inline-block;
   font-size: 15px;
   color: #fff;
   background: rgba(255, 255, 255, 0.15);
   width: 40px;
   height: 40px;
   line-height: 40px;
   text-align: center;
   border-radius: 50%;
 }

 .footer-bottom .social-links li a:hover {}

 .footer-bottom .footer-nav li {
   position: relative;
   display: inline-block;
   margin-right: 30px;
   font-size: 15px;
   line-height: 40px;
   color: #fff;
 }

 .footer-bottom .footer-nav li:last-child {
   margin: 0px !important;
 }

 .footer-bottom .footer-nav li a {
   position: relative;
   display: inline-block;
   color: #fff;
 }

 .footer-bottom .footer-nav li a:hover {}

 .footer-bottom .footer-nav li:before {
   position: absolute;
   content: '';
   background-color: #fff;
   width: 1px;
   height: 15px;
   top: 14px;
   right: -17px;
 }

 .footer-bottom .footer-nav li:last-child:before {
   display: none;
 }

 .owl-carousel .owl-nav button,
 .owl-carousel .owl-dots button {
   background: transparent;
 }



 /*** 

====================================================================
                        Home-Page-Two
====================================================================

***/


 /** banner-style-two **/

 .banner-style-two {
   position: relative;
   background-color: #fff;
   padding-bottom: 20px;
 }

 .banner-style-two .pattern-layer-2 {
   position: absolute;
   top: 0px;
   right: 0px;
   width: 1000px;
   height: 682px;
   background-repeat: no-repeat;
   background-position: bottom center;
   z-index: 1;
 }

 .banner-style-two .pattern-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: bottom center;
 }

 .banner-style-two .banner-carousel .content-box h2,
 .banner-style-two .banner-carousel .content-box p {
   color: #172746;
 }

 .banner-style-two .banner-carousel .content-box .btn-box .banner-btn {
   background-color: #fff;
   border-color: #fff;
   color: #172746 !important;
 }

 .banner-style-two .banner-carousel .content-box .btn-box .banner-btn:hover {
   color: #fff !important;
 }

 .banner-style-two .banner-carousel .content-box .btn-box .banner-btn:before {}

 .banner-style-two .image-box .image {
   position: absolute;
   top: -26px;
   right: -190px;
   opacity: 0;
   z-index: 1;
   -webkit-transform: translateX(100px);
   -moz-transform: translateX(100px);
   -ms-transform: translateX(100px);
   -o-transform: translateX(100px);
   transform: translateX(100px);
   -webkit-transition: all 1000ms ease;
   -moz-transition: all 1000ms ease;
   -ms-transition: all 1000ms ease;
   -o-transition: all 1000ms ease;
   transition: all 1000ms ease;
 }

 .banner-style-two .active .image-box .image {
   opacity: 1;
   -webkit-transform: translateY(0);
   -moz-transform: translateY(0);
   -ms-transform: translateY(0);
   -o-transform: translateY(0);
   transform: translateY(0);
   -webkit-transition-delay: 1000ms;
   -moz-transition-delay: 1000ms;
   -ms-transition-delay: 1000ms;
   -o-transition-delay: 1000ms;
   transition-delay: 1000ms;
 }

 .banner-style-two .banner-carousel .content-box {
   padding: 243px 0px 350px 0px;
 }

 .banner-carousel .owl-nav {
   position: absolute;
   left: 0px;
   top: 40%;
   transform: translateY(-50%);
   width: 100%;
 }

 .banner-carousel .owl-nav button {
   position: absolute;
   display: inline-block;
   width: 70px;
   height: 70px;
   line-height: 70px;
   background-color: #fff;
   font-size: 24px;
   color: #172746;
   border-radius: 50%;
   text-align: center;
   cursor: pointer;
   z-index: 1;
   transition: all 500ms ease;
 }

 .banner-carousel .owl-nav button.owl-prev {
   left: 50px;
 }

 .banner-carousel .owl-nav button.owl-next {
   right: 50px;
 }

 .banner-carousel .owl-nav button:hover {
   color: #fff;
 }


 .feature-section.alternat-2 {
   padding: 145px 0px;
 }

 .feature-section.alternat-2 .inner-container {
   padding: 0px;
   box-shadow: none;
   margin: 0px;
 }

 .feature-section.alternat-2 .feature-block-one .inner-box {
   padding: 0px 15px;
 }


 /** about-style-two **/

 .about-style-two {
   position: relative;
   padding-top: 190px;
 }

 .about-style-two .pattern-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 854px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .about-style-two .sec-title {
   margin-bottom: 0px;
 }

 .about-style-two .content-box {
   position: relative;
   display: block;
   margin-bottom: 93px;
 }

 .about-style-two .content-box .text {
   position: relative;
   margin-left: 40px;
 }

 .about-style-two .content-box .text p {
   margin-bottom: 26px;
 }

 .about-style-two .content-box .text p:last-child {
   margin-bottom: 0px;
 }

 .about-style-two .video-inner {
   position: relative;
   width: 100%;
   background-color: #fff;
   padding: 15px;
   box-shadow: 0px 20px 50px 0px rgb(0 0 0 / 10%);
 }

 .about-style-two .video-inner .inner-box {
   position: relative;
   width: 100%;
   padding: 175px 0px;
   text-align: center;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
 }

 .about-style-two .video-inner .inner-box:before {
   position: absolute;
   content: '';
   background-color: #172746;
   width: 100%;
   height: 100%;
   left: 0px;
   top: 0px;
   opacity: 0.2;
 }

 .about-style-two .video-inner .inner-box .video-btn a {
   position: relative;
   display: inline-block;
   font-size: 40px;
   color: #fff;
   width: 120px;
   height: 120px;
   line-height: 108px;
   border: 10px solid #fff;
   border-radius: 50%;
 }

 .about-style-two .video-inner .inner-box .video-btn a:after,
 .about-style-two .video-inner .inner-box .video-btn a:before {
   width: 100%;
   height: 100%;
   border-radius: 50%;
   background: transparent;
   position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   -webkit-animation-delay: .9s;
   animation-delay: .9s;
   content: "";
   position: absolute;
   -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
   box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
   -webkit-animation: ripple 3s infinite;
   animation: ripple 3s infinite;
   -webkit-transition: all .4s ease;
   transition: all .4s ease;
 }

 .about-style-two .video-inner .inner-box .video-btn a:after {
   -webkit-animation-delay: .6s;
   animation-delay: .6s;
 }

 @-webkit-keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 60px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 60px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }

 @keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 60px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 60px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }

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


 /** cta-style-two **/

 .cta-style-two {
   position: relative;
   overflow: hidden;
   padding-top: 40px;
 }

 .cta-style-two .bg-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 36px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .cta-style-two .content_block_4 .content-box {
   margin-left: 35px;
 }

 .content_block_4 .content-box {
   position: relative;
   display: block;
 }

 .content_block_4 .content-box .sec-title {
   margin-bottom: 17px;
 }

 .content_block_4 .content-box .text {
   position: relative;
   display: block;
   margin-bottom: 22px;
 }

 .content_block_4 .content-box .text p {
   color: #3c4858;
 }

 .content_block_4 .content-box .list {
   position: relative;
   display: block;
   margin-bottom: 37px;
 }

 .content_block_4 .content-box .list li {
   position: relative;
   display: block;
   margin-bottom: 13px;
   padding-left: 38px;
   font-size: 15px;
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
   color: #3c4858;
 }

 .content_block_4 .content-box .list li:last-child {
   margin-bottom: 0px;
 }

 .content_block_4 .content-box .list li:before {
   position: absolute;
   content: "\f10a";
   font-family: 'flaticon';
   font-size: 8px;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
   background-color: rgba(255, 255, 255, 1);
   border-radius: 50%;
   left: 0px;
   top: 1px;
   box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 20%);
 }

 .image_block_1 .image-box {
   position: relative;
   display: block;
   padding-right: 90px;
 }

 .image_block_1 .image-box .image {
   position: relative;
   display: block;
   z-index: 1;
 }

 .image_block_1 .image-box .image img {
   max-width: none;
   float: right;
 }

 .image_block_1 .image-box:before {
   position: absolute;
   content: '';
   background-color: #fff;
   width: 300px;
   height: 300px;
   top: 190px;
   right: 0px;
   border-radius: 50%;
   box-shadow: 0px 0px 30px 0px rgb(0 0 0 / 3%);
   -webkit-animation: zoom-fade 10s infinite linear;
   animation: zoom-fade 10s infinite linear;
 }

 .image_block_1 .image-box:after {
   position: absolute;
   content: '';
   background-color: #fff;
   width: 200px;
   height: 200px;
   top: 125px;
   left: -60px;
   border-radius: 50%;
   box-shadow: 0px 0px 30px 0px rgb(0 0 0 / 3%);
   -webkit-animation: zoom-fade 7s infinite linear;
   animation: zoom-fade 7s infinite linear;
 }

 .cta-style-two .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 290px;
   background-repeat: no-repeat;
   background-position: top center;
   background-size: cover;
 }

 .testimonial-section .pattern-layer .pattern-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 573px;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 100% 100%;
 }

 .testimonial-section .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 275px;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 100% 100%;
 }

 .testimonial-section.alternat-2 .owl-dots {
   position: relative;
   top: 0px;
   right: 0px;
   display: block;
   text-align: center;
   margin-top: 56px;
 }

 .testimonial-section.alternat-2 {
   padding-top: 145px;
   padding-bottom: 140px;
 }

 .testimonial-section.alternat-2 .sec-title {
   margin-bottom: 45px;
 }


 /** contact-section **/

 .contact-section {
   position: relative;
   margin: 80px 0px 0px 0px;
   padding: 50px 0px 50px 0px;
 }

 .contact-section .title-inner {
   position: relative;
   display: block;
   margin-right: 35px;
 }

 .contact-section .title-inner .sec-title {
   margin-bottom: 20px;
 }

 .content_block_5 .form-inner {
   position: relative;
   display: block;
   background-color: #fff;
   box-shadow: 0px 10px 50px 0px rgb(0 0 0 / 8%);
   padding: 50px 50px;
 }

 .content_block_5 .form-inner .form-group {
   position: relative;
   margin-bottom: 20px;
 }

 .content_block_5 .form-inner .form-group:last-child {
   margin-bottom: 0px;
 }

 .content_block_5 .form-inner .form-group input[type='text'],
 .content_block_5 .form-inner .form-group input[type='email'],
 .content_block_5 .form-inner .form-group textarea {
   position: relative;
   display: block;
   width: 100%;
   height: 55px;
   border: 1px solid #dfe6e6;
   font-size: 16px;
   color: #727272;
   padding: 10px 20px;
   transition: all 500ms ease;
 }

 .content_block_5 .form-inner .form-group textarea {
   height: 150px;
   resize: none;
 }

 .content_block_5 .form-inner .form-group input:focus,
 .content_block_5 .form-inner .form-group textarea:focus {}

 .contact-section .pattern-layer {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 134px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }



 /*** 

====================================================================
                        Home-Page-Three
====================================================================

***/


 /** header-style-two **/

 .header-style-two {
   position: absolute;
   left: 0px;
   top: 0px;
   background: transparent;
 }


 /** banner-style-three **/

 .banner-style-three {
   position: relative;
   background-color: #fff;
 }

 .banner-style-three .banner-carousel .content-box .btn-box .banner-btn {
   border-color: #e7ebed;
 }

 .banner-style-three .banner-carousel .content-box {
   padding: 290px 0px 255px 0px;
 }

 .banner-style-three .banner-carousel .owl-nav {
   top: 50%;
 }

 .feature-section.light .inner-container {
   background: transparent;
   margin: 0px;
 }

 .feature-section.light .pattern-layer .pattern-1 {
   position: absolute;
   left: 0px;
   top: -61px;
   width: 100%;
   height: 61px;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 100% 100%;
 }

 .feature-section.light .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: bottom center;
   background-size: cover;
 }

 .feature-section.light .title-text h2 {
   color: #fff;
 }

 .feature-section.light .feature-block-one .inner-box h4 {
   color: #fff;
 }

 .feature-section.light .feature-block-one .inner-box p {
   color: rgba(255, 255, 255, 0.70);
 }

 .feature-section.light {
   padding: 113px 0px 177px 0px;
 }


 /** about-style-three **/

 .about-style-three {
   position: relative;
   padding: 150px 0px 150px 0px;
 }

 .image_block_2 .image-box {
   position: relative;
   display: block;
   margin-right: 20px;
 }

 .image_block_2 .image-box .image-1 {
   position: relative;
   display: block;
   opacity: 1;
   transition: all 500ms ease;
 }

 .image_block_2 .image-box .image-2 {
   position: absolute;
   right: 0px;
   top: 0px;
   opacity: 0;
   transition: all 500ms ease;
 }

 .image_block_2 .image-box .image-1 img {
   max-width: none;
   float: right;
 }

 .image_block_2 .image-box:hover .image-1 {
   opacity: 0;
 }

 .image_block_2 .image-box:hover .image-2 {
   opacity: 1;
 }

 .image_block_2 .image-box .text {
   position: absolute;
   right: 48px;
   bottom: -36px;
   width: 220px;
   height: 220px;
   text-align: center;
   background-color: #fff;
   border-radius: 50%;
   border: 10px solid rgba(0, 209, 249, 0.8);
   padding: 60px 15px;
   box-shadow: 0px 30px 50px 0px rgb(0 0 0 / 15%);
 }

 .image_block_2 .image-box .text h2 {
   display: block;
   font-size: 48px;
   line-height: 58px;
   font-weight: 700;
   margin-bottom: 0px;
 }

 .image_block_2 .image-box .text h6 {
   display: block;
   font-size: 16px;
   line-height: 20px;
   font-weight: 600;
 }

 .shop-section .pattern-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 38px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }


 /** pricing-section **/

 .pricing-section {
   position: relative;
   padding-bottom: 185px;
 }

 .pricing-section .inner-box {
   position: relative;
   padding-left: 50px;
 }

 .pricing-section .inner-box .inner-pattern {
   position: absolute;
   left: -40px;
   top: -75px;
   width: 745px;
   height: 659px;
   background-repeat: no-repeat;
   z-index: -1;
 }

 .tabs-box .tab {
   position: relative;
   display: none;
   transition: all 900ms ease;
   -moz-transition: all 900ms ease;
   -webkit-transition: all 900ms ease;
   -ms-transition: all 900ms ease;
   -o-transition: all 900ms ease;
 }

 .tabs-box .tab.active-tab {
   display: block;
 }

 .tabs-box .tab {
   transform: scale(0.9, 0.9) translateY(0px);
 }

 .tabs-box .tab.active-tab {
   transform: scale(1) translateY(0px);
 }

 .pricing-section .pr-content .pr-tab.active-tab {
   position: relative;
   z-index: 5;
   -webkit-transform: scale(1) translateX(0);
   -ms-transform: scale(1) translateX(0);
   -o-transform: scale(1) translateX(0);
   -moz-transform: scale(1) translateX(0);
   transform: scale(1) translateX(0);
 }

 .pricing-section .pr-content .pr-tab {
   position: absolute;
   left: 0px;
   top: 0px;
   z-index: 1;
   transition: all 0.7s ease;
   -moz-transition: all 0.7s ease;
   -webkit-transition: all 0.7s ease;
   -ms-transition: all 0.7s ease;
   -o-transition: all 0.7s ease;
   -webkit-transform: scale(0.8, 0.8) translateX(410px);
   -ms-transform: scale(0.8, 0.8) translateX(410px);
   -o-transform: scale(0.8, 0.8) translateX(410px);
   -moz-transform: scale(0.8, 0.8) translateX(410px);
   transform: scale(0.8, 0.8) translateX(410px);
 }

 .pricing-block-one {
   max-width: 350px;
   width: 100%;
 }

 .pricing-block-one .pricing-table {
   position: relative;
   display: block;
   background-color: #fff;
   padding: 32px 30px 40px 40px;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 10%);
 }

 .pricing-block-one .pricing-table .shape-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 149px;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: bottom center;
 }

 .pricing-section .content-box {
   position: relative;
   display: block;
   margin-right: 40px;
 }

 .pricing-section .content-box .sec-title {
   margin-bottom: 23px;
 }

 .pricing-section .content-box .text {
   margin-bottom: 49px;
 }

 .pricing-section .tab-btn-box {
   position: relative;
   display: block;
 }

 .pricing-section .tab-btn-box .tab-btns {
   position: relative;
   max-width: 286px;
   width: 100%;
 }

 .pricing-section .tab-btn-box .tab-btns li {
   position: relative;
   display: inline-block;
   float: left;
   width: 50%;
   text-align: center;
   font-size: 16px;
   line-height: 26px;
   color: #172746;
   font-weight: 600;
   border: 2px solid #efefef;
   background-color: #fff;
   padding: 12.5px 15px;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .pricing-section .tab-btn-box .tab-btns li:first-child {
   border-radius: 30px 0px 0px 30px;
 }

 .pricing-section .tab-btn-box .tab-btns li:last-child {
   border-radius: 0px 30px 30px 0px;
 }

 .pricing-section .tab-btn-box .tab-btns li.active-btn {
   color: #fff;
 }

 .pricing-block-one .pricing-table .price-box {
   position: absolute;
   top: 0px;
   right: 30px;
   width: 89px;
   text-align: center;
   padding: 16px 15px;
 }

 .pricing-block-one .pricing-table .title {
   position: relative;
   display: block;
   max-width: 150px;
 }

 .pricing-block-one .pricing-table h3 {
   display: block;
   font-size: 24px;
   line-height: 30px;
   color: #fff;
   font-weight: 700;
 }

 .pricing-block-one .pricing-table .price-box h3 {
   margin-bottom: 5px;
 }

 .pricing-block-one .pricing-table .price-box span {
   position: relative;
   display: block;
   font-size: 13px;
   line-height: 10px;
   color: rgba(255, 255, 255, 0.70);
   text-transform: uppercase;
 }

 .pricing-block-one .pricing-table .price-box .price-shape .shape-1 {
   position: absolute;
   left: -9px;
   top: -13px;
   width: 107px;
   height: 13px;
   background-repeat: no-repeat;
 }

 .pricing-block-one .pricing-table .price-box .price-shape .shape-2 {
   position: absolute;
   left: 0px;
   bottom: -19px;
   width: 89px;
   height: 20px;
   background-repeat: no-repeat;
 }

 .pricing-block-one .pricing-table .table-header {
   padding-bottom: 60px;
 }

 .pricing-block-one .pricing-table .table-content {
   position: relative;
   display: block;
   padding: 20px 0px 34px 0px;
 }

 .pricing-block-one .pricing-table .table-content .feature-list li {
   position: relative;
   display: block;
   font-size: 16px;
   line-height: 26px;
   color: #172746;
   padding-left: 30px;
   margin-bottom: 21px;
 }

 .pricing-block-one .pricing-table .table-content .feature-list li:last-child {
   margin-bottom: 0px;
 }

 .pricing-block-one .pricing-table .table-content .feature-list li:before {
   position: absolute;
   content: "\f10a";
   font-family: 'flaticon';
   font-size: 14px;
   left: 0px;
   top: 0px;
   font-weight: 700;
 }

 .pricing-block-one .pricing-table .table-content .feature-list li.light {
   color: #898c8f;
 }

 .pricing-block-one .pricing-table .table-content .feature-list li.light:before {
   color: #cecece;
 }

 .pricing-block-one .pricing-table .theme-btn {
   padding: 12.5px 34px;
 }

 .pricing-section .pr-content .pr-tab.active-tab .pricing-block-one .pricing-table .title h3 {
   font-size: 24px;
 }

 .pricing-section .pr-content .pr-tab .pricing-block-one .pricing-table .title h3 {
   font-size: 18px;
 }


 /** testimonial-style-two **/

 .testimonial-style-two {
   position: relative;
   padding: 235px 0px 360px 0px;
   overflow: hidden;
 }

 .testimonial-style-two .owl-dots {
   position: relative;
   display: block;
   margin-top: 56px;
 }

 .testimonial-style-two .owl-dots span {
   position: relative;
   display: inline-block;
   width: 15px;
   height: 15px;
   background-color: #fff !important;
   border-radius: 50%;
   margin: 0px 7.5px !important;
   cursor: pointer;
   transition: all 500ms ease !important;
 }

 .testimonial-style-two .owl-dots .owl-dot.active span,
 .testimonial-style-two .owl-dots span:hover {}

 .testimonial-style-two .owl-carousel .owl-stage-outer {
   overflow: visible;
 }

 .testimonial-style-two .owl-carousel .owl-stage-outer .owl-item {
   opacity: 0;
 }

 .testimonial-style-two .owl-carousel .owl-stage-outer .owl-item.active {
   opacity: 1;
 }

 .testimonial-block-two {
   position: relative;
   margin-top: 75px;
 }

 .testimonial-block-two .inner-box {
   position: relative;
   display: block;
   background: #fff;
   padding: 0px 30px 45px 30px;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 10%);
 }

 .testimonial-block-two .inner-box .author-thumb {
   position: relative;
   display: inline-block;
   width: 120px;
   height: 150px;
   border-radius: 100px;
   margin-top: -75px;
   margin-bottom: 32px;
 }

 .testimonial-block-two .inner-box .author-thumb img {
   width: 100%;
   border-radius: 100px;
 }

 .testimonial-block-two .inner-box .rating li {
   position: relative;
   display: inline-block;
   margin-right: 7px;
   font-size: 18px;
 }

 .testimonial-block-two .inner-box .rating li:last-child {
   margin: 0px !important;
 }

 .testimonial-block-two .inner-box .rating {
   position: relative;
   display: block;
   margin-bottom: 17px;
 }

 .testimonial-block-two .inner-box p {
   font-size: 17px;
   line-height: 30px;
   color: #222222;
   margin-bottom: 18px;
 }

 .testimonial-block-two .inner-box h5 {
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 600;
   margin-bottom: 1px;
 }

 .testimonial-block-two .inner-box .designation {
   position: relative;
   display: block;
   font-size: 15px;
 }

 .testimonial-style-two .thumb-box {
   position: absolute;
   left: 0px;
   top: 0px;
   right: 0px;
   max-width: 1920px;
   width: 100%;
   height: 100%;
   margin: 0 auto;
 }

 .testimonial-style-two .thumb-box .thumb {
   position: absolute;
   border-radius: 100px;
   z-index: 1;
 }

 .testimonial-style-two .thumb-box .thumb img {
   border-radius: 100px;
 }

 .testimonial-style-two .sec-title {
   margin-bottom: 40px;
 }

 .testimonial-style-two .pattern-layer .pattern-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 134px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .testimonial-style-two .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 80px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
   z-index: 1;
 }

 .testimonial-style-two .thumb-box .thumb-1 {
   left: 320px;
   top: 380px;
   -webkit-animation: zoom-fade 3s infinite linear;
   animation: zoom-fade 3s infinite linear;
 }

 .testimonial-style-two .thumb-box .thumb-2 {
   left: 120px;
   top: 50%;
   transform: translateY(-50%);
   -webkit-animation: zoom-fade 4s infinite linear;
   animation: zoom-fade 4s infinite linear;
 }

 .testimonial-style-two .thumb-box .thumb-3 {
   left: 320px;
   bottom: 370px;
   -webkit-animation: zoom-fade 3s infinite linear;
   animation: zoom-fade 3s infinite linear;
 }

 .testimonial-style-two .thumb-box .thumb-4 {
   right: 320px;
   top: 380px;
   -webkit-animation: zoom-fade 3s infinite linear;
   animation: zoom-fade 3s infinite linear;
 }

 .testimonial-style-two .thumb-box .thumb-5 {
   right: 120px;
   top: 50%;
   transform: translateY(-50%);
   -webkit-animation: zoom-fade 4s infinite linear;
   animation: zoom-fade 4s infinite linear;
 }

 .testimonial-style-two .thumb-box .thumb-6 {
   right: 320px;
   bottom: 370px;
   -webkit-animation: zoom-fade 3s infinite linear;
   animation: zoom-fade 3s infinite linear;
 }

 .testimonial-style-two .map-layer {
   position: absolute;
   left: 0px;
   top: 170px;
   right: 0px;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: center;
 }


 /** video-section **/

 .video-section {
   position: relative;
 }

 .video-section .video-inner {
   position: relative;
   width: 100%;
   background-color: #fff;
   padding: 15px;
   box-shadow: 0px 20px 50px 0px rgb(0 0 0 / 10%);
 }

 .video-section .video-inner .inner-box {
   position: relative;
   width: 100%;
   padding: 175px 0px;
   text-align: center;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
 }

 .video-section .video-inner .inner-box:before {
   position: absolute;
   content: '';
   background-color: #172746;
   width: 100%;
   height: 100%;
   left: 0px;
   top: 0px;
   opacity: 0.2;
 }

 .video-section .video-inner .inner-box .video-btn a {
   position: relative;
   display: inline-block;
   font-size: 40px;
   color: #fff;
   width: 120px;
   height: 120px;
   line-height: 108px;
   border: 10px solid #fff;
   border-radius: 50%;
 }

 .video-section .video-inner .inner-box .video-btn a:after,
 .video-section .video-inner .inner-box .video-btn a:before {
   width: 100%;
   height: 100%;
   border-radius: 50%;
   background: transparent;
   position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   -webkit-animation-delay: .9s;
   animation-delay: .9s;
   content: "";
   position: absolute;
   -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
   box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
   -webkit-animation: ripple 3s infinite;
   animation: ripple 3s infinite;
   -webkit-transition: all .4s ease;
   transition: all .4s ease;
 }

 .video-section .video-inner .inner-box .video-btn a:after {
   -webkit-animation-delay: .6s;
   animation-delay: .6s;
 }

 .video-section .inner-container {
   position: relative;
   margin-top: -215px;
   z-index: 1;
 }



 /*** 

====================================================================
                        About-Page
====================================================================

***/


 /** page-title **/

 .page-title {
   position: relative;
   width: 100%;
   padding: 50px 0;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   /* background: radial-gradient(circle, rgba(0, 141, 39,0.8), rgba(32, 12, 97,0.8), rgba(1, 143, 211,0.8), rgba(99, 101, 98,0.8)); */
   /* background: linear-gradient(90deg, #008d27, #200c61, #018fd3, #636562); */
   background-color: #200c61a4;
 }

 .page-title .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 68px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .page-title h1 {
   position: relative;
   display: block;
   font-size: 50px;
   line-height: 60px;
   font-weight: 800;
   margin-bottom: 11px;
   color: #200c61;
 }

 .page-title .bread-crumb li {
   position: relative;
   display: inline-block;
   font-size: 20px;
   line-height: 30px;
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
   padding-right: 16px;
   margin-right: 10px;
 }

 .page-title .bread-crumb li:last-child {
   padding: 0px !important;
   margin-bottom: 0px !important;
 }

 .page-title .bread-crumb li a {
   display: inline-block;
   color: white;
 }

 .page-title .bread-crumb li a:hover {
   color: white;
 }

 .page-title .bread-crumb li:before {
   position: absolute;
   content: '';
   background-color: #172746;
   width: 5px;
   height: 5px;
   top: 14px;
   right: 0px;
   border-radius: 50%;
 }

 .page-title .bread-crumb li:last-child:before {
   display: none;
 }

 .testimonial-section.about-page {
   padding-top: 235px;
 }

 .testimonial-section .shape-layer .shape-3 {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 80px;
   background-size: 100% 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

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

 .team-page-section .team-block-one .inner-box {
   margin-bottom: 70px;
 }

 .team-page-section {
   padding: 150px 0px 80px 0px;
 }

 .testimonial-section.testimonial-page {
   padding: 145px 0px 150px 0px;
 }

 .testimonial-section.testimonial-page .testimonial-block-one .inner-box {
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 8%);
 }

 .testimonial-style-two.testimonial-page {
   padding: 200px 0px;
 }


 /** testimonial-style-three **/

 .testimonial-style-three {
   position: relative;
   padding: 145px 0px 150px 0px;
 }

 .testimonial-style-three .sec-title {
   margin-bottom: 40px;
 }

 .testimonial-style-three .inner-box {
   position: relative;
   display: block;
   background: #fff;
   padding: 50px 30px 48px 30px;
   box-shadow: 0px 10px 30px 0px rgb(0 0 0 / 8%);
 }

 .testimonial-style-three .inner-box .author-thumb {
   position: relative;
   display: inline-block;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   margin-bottom: 34px;
 }

 .testimonial-style-three .inner-box .author-thumb img {
   width: 100%;
   border-radius: 50%;
 }

 .testimonial-style-three .inner-box .rating li {
   position: relative;
   display: inline-block;
   margin-right: 7px;
   font-size: 18px;
 }

 .testimonial-style-three .inner-box .rating li:last-child {
   margin: 0px !important;
 }

 .testimonial-style-three .inner-box .rating {
   position: relative;
   display: block;
   margin-bottom: 18px;
 }

 .testimonial-style-three .inner-box p {
   font-size: 15px;
   line-height: 26px;
   color: #222222;
   margin-bottom: 20px;
 }

 .testimonial-style-three .inner-box h5 {
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 600;
   margin-bottom: 1px;
 }

 .testimonial-style-three .inner-box .designation {
   position: relative;
   display: block;
   font-size: 15px;
 }

 .testimonial-style-three .thumb-box {
   position: absolute;
   left: 0px;
   top: 0px;
   right: 0px;
   max-width: 1920px;
   width: 100%;
   height: 100%;
   margin: 0 auto;
 }

 .testimonial-style-three .thumb-box .thumb {
   position: absolute;
   border-radius: 100px;
   z-index: 1;
 }

 .testimonial-style-three .thumb-box .thumb img {
   border-radius: 100px;
 }



 /*** 

====================================================================
                        Faq-Page
====================================================================

***/


 .faq-page-section {
   position: relative;
   padding: 145px 0px 150px 0px;
 }

 .accordion-box .block {
   position: relative;
   display: block;
   overflow: hidden;
   margin-bottom: 20px;
   border: 1px solid #e6ebeb;
   transition: all 500ms ease;
 }

 .accordion-box .block:last-child {
   margin-bottom: 0px;
 }

 .accordion-box .block .acc-btn .icon-outer {
   position: absolute;
   top: 0px;
   right: 0px;
   width: 70px;
   height: 70px;
   line-height: 70px;
   text-align: center;
   font-size: 18px;
   font-weight: 700;
   color: #dadee1;
   z-index: 1;
   transition: all 500ms ease;
 }

 .accordion-box .block .acc-btn .icon-outer i {
   opacity: 1;
 }

 .accordion-box .block .acc-btn.active .icon-outer i {
   opacity: 0;
 }

 .accordion-box .block .acc-btn .icon-outer:before {
   position: absolute;
   content: "\f068";
   font-family: 'Font Awesome 5 Pro';
   opacity: 0;
   color: #fff;
   font-weight: 400;
   transition: all 500ms ease;
 }

 .accordion-box .block .acc-btn.active .icon-outer:before {
   opacity: 1;
 }

 .accordion-box .block .acc-btn {
   position: relative;
   display: block;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .accordion-box .block .acc-btn h4 {
   position: relative;
   display: block;
   font-size: 20px;
   line-height: 28px;
   font-weight: 600;
   margin: 0px;
   padding: 21px 30px;
   padding-right: 100px;
   transition: all 500ms ease;
 }

 .accordion-box .block .acc-btn.active h4 {
   color: #fff;
 }


 .accordion-box .block .acc-content {
   position: relative;
   display: none;
   padding: 33px 80px 42px 30px;
   border-top: 1px solid #e6ebeb;
 }

 .accordion-box .block .acc-content.current {
   display: block;
 }

 .accordion-box .block .acc-content p {
   font-size: 16px;
   line-height: 28px;
   margin-bottom: 24px;
 }

 .accordion-box .block .acc-content .list li {
   position: relative;
   display: block;
   font-size: 16px;
   color: #172746;
   padding-left: 20px;
   margin-bottom: 10px;
 }

 .accordion-box .block .acc-content .list li:last-child {
   margin-bottom: 0px;
 }

 .accordion-box .block .acc-content .list li:before {
   position: absolute;
   content: '';
   border: 1px solid #cfd3d3;
   width: 10px;
   height: 10px;
   border-radius: 50%;
   left: 0px;
   top: 8px;
 }

 .faq-content {
   position: relative;
   display: block;
   margin-right: 20px;
 }

 .faq-sidebar {
   position: relative;
   display: block;
   margin-left: 20px;
 }

 .faq-sidebar .form-inner {
   position: relative;
   display: block;
   background-color: #ebf3fa;
   padding: 45px 30px 50px 30px;
 }

 .faq-sidebar .form-inner h3 {
   display: block;
   font-size: 24px;
   line-height: 30px;
   font-weight: 600;
   margin-bottom: 32px;
 }

 .faq-sidebar .form-inner form .form-group {
   position: relative;
   display: block;
   margin-bottom: 20px;
 }

 .faq-sidebar .form-inner form .form-group input[type="text"],
 .faq-sidebar .form-inner form .form-group input[type="email"],
 .faq-sidebar .form-inner form .form-group input[type="tel"],
 .faq-sidebar .form-inner form .form-group textarea {
   position: relative;
   display: block;
   width: 100%;
   height: 54px;
   background-color: #fff;
   border: 1px solid #fff;
   font-size: 16px;
   color: #898c8f;
   padding: 10px 20px;
   transition: all 500ms ease;
 }

 .faq-sidebar .form-inner form .form-group textarea {
   resize: none;
   height: 160px;
 }

 .faq-sidebar .form-inner form .form-group input:focus,
 .faq-sidebar .form-inner form .form-group textarea:focus {}

 .faq-sidebar .form-inner form .form-group .theme-btn {
   display: block;
   width: 100%;
 }



 /*** 

====================================================================
                        Gallery-Page
====================================================================

***/

 .gallery-section {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .sortable-masonry .filters {
   position: relative;
   display: block;
   margin-bottom: 50px;
 }

 .sortable-masonry .filters .filter-tabs li {
   position: relative;
   display: inline-block;
   font-size: 17px;
   line-height: 28px;
   font-family: 'Open Sans', sans-serif;
   color: #172746;
   font-weight: 600;
   border: 2px solid #efefef;
   border-radius: 30px;
   text-align: center;
   padding: 9px 20px;
   margin: 0px 3.5px;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .sortable-masonry .filters .filter-tabs li.active {
   color: #fff;
 }

 .gallery-block-one .inner-box {
   position: relative;
   display: block;
   overflow: hidden;
   margin-bottom: 30px;
 }

 .gallery-block-one .inner-box .image-box {
   position: relative;
   display: block;
   overflow: hidden;
   background-color: #001442;
 }

 .gallery-block-one .inner-box .image-box img {
   width: 100%;
   transition: all 500ms ease;
 }

 .gallery-block-one .inner-box:hover .image-box img {
   opacity: 0.4;
   transform: scale(1.05);
 }

 .gallery-block-one .inner-box .link {
   position: absolute;
   display: flex;
   width: 100%;
   height: 100%;
   align-items: center;
   justify-content: center;
   text-align: center;
   left: 0px;
   top: 0px;
 }

 .gallery-block-one .inner-box .link a {
   position: relative;
   display: inline-block;
   font-size: 60px;
   line-height: 60px;
   color: #fff;
   font-weight: 400;
   transform: scale(0, 0);
 }

 .gallery-block-one .inner-box:hover .link a {
   transform: scale(1, 1);
 }


 /** error-page-section **/

 .error-page-section {
   position: relative;
   padding: 200px 0px;
 }

 .error-page-section .inner-box {
   position: relative;
   display: block;
 }

 .error-page-section .inner-box .image-box {
   position: relative;
   display: block;
   margin-bottom: 114px;
 }

 .error-page-section .inner-box .image-box img {
   width: 100%;
 }

 .error-page-section .inner-box h1 {
   position: relative;
   display: block;
   font-size: 200px;
   line-height: 200px;
   color: #001a56;
   font-weight: 700;
   margin-bottom: 20px;
 }

 .error-page-section .inner-box h2 {
   position: relative;
   display: block;
   font-size: 30px;
   line-height: 40px;
   color: #898c8f;
   font-weight: 500;
   margin-bottom: 67px;
 }



 /*** 

====================================================================
                        Service-Page
====================================================================

***/


 .service-page-section {
   position: relative;
   padding: 150px 0px 120px 0px;
 }

 .service-block-two .inner-box {
   position: relative;
   display: block;
   background-color: #fff;
   padding: 60px 30px 50px 30px;
   box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 10%);
   margin-bottom: 30px;
 }

 .service-block-two .inner-box .icon-box {
   position: relative;
   display: inline-block;
   margin-bottom: 44px;
 }

 .service-block-two .inner-box .icon-box .icon {
   position: relative;
   display: inline-block;
   width: 106px;
   height: 92px;
   line-height: 100px;
   text-align: center;
   font-size: 50px;
   color: #fff;
   border-radius: 50%;
   z-index: 1;
 }

 .service-block-two .inner-box .icon-box:before {
   position: absolute;
   content: '';
   background-color: rgba(0, 209, 249, 0.10);
   left: -43px;
   top: -8px;
   width: 190px;
   height: 108px;
   border-radius: 50%;
   animation-delay: .6s;
   -webkit-box-shadow: 0 0 0 0 rgba(0, 209, 249, 0.15);
   box-shadow: 0 0 0 0 rgba(0, 209, 249, 0.15);
   -webkit-animation: ripple 3s infinite;
   animation: ripple 3s infinite;
   -webkit-transition: all .4s ease;
   transition: all .4s ease;
 }

 .service-block-two .inner-box .icon-box:after {
   position: absolute;
   content: '';
   background-color: rgba(0, 209, 249, 0.15);
   left: -22px;
   top: 4px;
   width: 148px;
   height: 84px;
   border-radius: 50%;
 }

 .service-block-two .inner-box h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 600;
   margin-bottom: 15px;
 }

 .service-block-two .inner-box h4 a {
   display: inline-block;
   color: #172746;
 }

 .service-block-two .inner-box h4 a:hover {}

 .service-block-two .inner-box p {
   margin-bottom: 33px;
 }

 .service-block-two .inner-box .theme-btn {
   padding: 10.5px 34px;
 }

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


 /** service-details **/

 .service-details {
   position: relative;
   padding: 150px 0px;
 }

 .service-details-content {
   position: relative;
   display: block;
 }

 .service-details-content h2 {
   display: block;
   font-size: 40px;
   line-height: 50px;
   font-weight: 700;
   margin-bottom: 31px;
 }

 .service-details-content .content-one .text {
   position: relative;
   margin-bottom: 73px;
 }

 .service-details-content img {
   width: 100%;
 }

 .service-details-content .content-one {
   position: relative;
   display: block;
   margin-bottom: 82px;
 }

 .service-details-content .content-two .text {
   position: relative;
   display: block;
   margin-bottom: 40px;
 }

 .service-details-content .content-two .text p {
   margin-bottom: 26px;
 }

 .service-details-content .content-two .text p:last-child {
   margin-bottom: 0px;
 }

 .service-details-content h3 {
   display: block;
   font-size: 24px;
   line-height: 32px;
   font-weight: 600;
   margin-bottom: 14px;
 }

 .service-details-content h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 600;
 }

 .service-details-content .content-two .inner-box .single-item {
   position: relative;
   display: block;
   padding-left: 85px;
   margin-bottom: 27px;
   max-width: 480px;
   min-height: 90px;
 }

 .service-details-content .content-two .inner-box .single-item h4 {
   margin-bottom: 8px;
 }

 .service-details-content .content-two .inner-box .single-item:last-child {
   margin-bottom: 0px;
 }

 .service-details-content .content-two .inner-box .single-item .icon-box {
   position: absolute;
   display: inline-block;
   left: 0px;
   top: 4px;
   width: 60px;
   height: 60px;
   line-height: 60px;
   font-size: 20px;
   color: #fff;
   text-align: center;
   border-radius: 50%;
 }

 .service-details-content .content-two {
   position: relative;
   margin-bottom: 73px;
 }

 .service-details-content .content-three .image-box {
   position: relative;
   display: block;
   margin-bottom: 69px;
 }

 .service-details-content .content-three p {
   margin-bottom: 26px;
 }

 .service-details-content .content-three p:last-child {
   margin-bottom: 0px;
 }

 .service-sidebar {
   position: relative;
   display: block;
   margin-left: 20px;
 }

 .service-sidebar h3 {
   display: block;
   font-size: 24px;
   line-height: 32px;
   font-weight: 600;
   margin-bottom: 21px;
 }

 .service-sidebar .category-list li {
   position: relative;
   display: block;
   margin-bottom: 15px;
 }

 .service-sidebar .category-list li:last-child {
   margin-bottom: 0px;
 }

 .service-sidebar .category-list li a {
   position: relative;
   display: block;
   font-size: 16px;
   font-family: 'Spartan', sans-serif;
   color: #172746;
   line-height: 26px;
   font-weight: 500;
   border: 1px solid #e7e7e7;
   padding: 16px 30px 16px 25px;
   z-index: 1;
 }

 .service-sidebar .category-list li a.current,
 .service-sidebar .category-list li a:hover {
   color: #fff;
 }

 .service-sidebar .category-list li a:after {
   position: absolute;
   content: '';
   background-color: #007ec4;
   width: 0px;
   height: calc(100% + 2px);
   left: -1px;
   top: -1px;
   z-index: -1;
   transition: all 500ms ease;
 }

 .service-sidebar .category-list li a.current:after,
 .service-sidebar .category-list li a:hover:after {
   width: 4px;
 }

 .service-sidebar .category-list li a:before {
   position: absolute;
   content: '';
   width: 0px;
   height: 100%;
   left: 0px;
   top: 0px;
   z-index: -1;
   transition: all 500ms ease;
 }

 .service-sidebar .category-list li a.current:before,
 .service-sidebar .category-list li a:hover:before {
   width: 100%;
 }

 .service-sidebar .category-list li a i {
   position: relative;
   margin-right: 12px;
   color: #fff;
   opacity: 0;
   transition: all 500ms ease;
 }

 .service-sidebar .category-list li a.current i,
 .service-sidebar .category-list li a:hover i {
   opacity: 1;
 }



 /*** 

====================================================================
                        Shop-Page
====================================================================

***/

 .default-sidebar {
   position: relative;
   display: block;
 }

 .shop-sidebar {
   margin-right: 20px;
 }

 .shop-page-section {
   position: relative;
   padding: 150px 0px 120px 0px;
 }

 .default-sidebar .sidebar-widget {
   position: relative;
   display: block;
   background-color: #fff;
   padding: 43px 30px 50px 30px;
   box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 8%);
   margin-bottom: 50px;
 }

 .default-sidebar .sidebar-widget:last-child {
   margin-bottom: 0px;
 }

 .default-sidebar .sidebar-widget .widget-title {
   position: relative;
   display: block;
   margin-bottom: 22px;
 }

 .default-sidebar .sidebar-widget .widget-title h3 {
   display: block;
   font-size: 24px;
   line-height: 32px;
   font-weight: 600;
 }

 .default-sidebar .sidebar-search .form-group {
   position: relative;
   margin-bottom: 0px;
 }

 .default-sidebar .sidebar-search .form-group input[type='search'] {
   position: relative;
   display: block;
   width: 100%;
   height: 60px;
   border: 1px solid #e6ebeb;
   font-size: 16px;
   color: #848484;
   padding: 10px 50px 10px 30px;
   transition: all 500ms ease;
 }

 .default-sidebar .sidebar-search .form-group button {
   position: absolute;
   top: 16px;
   right: 20px;
   font-size: 18px;
   color: #848484;
   cursor: pointer;
   background: transparent;
   transition: all 500ms ease;
 }

 .default-sidebar .sidebar-search .form-group input:focus {}

 .default-sidebar .sidebar-search .form-group input:focus+button,
 .default-sidebar .sidebar-search .form-group button:hover {}

 .default-sidebar .sidebar-category .category-list li {
   position: relative;
   display: block;
   padding: 14px 0px 10px 0px;
   border-top: 1px solid #e9ebf0;
 }

 .default-sidebar .sidebar-category .category-list li a {
   position: relative;
   display: inline-block;
   font-size: 15px;
   font-family: 'Spartan', sans-serif;
   line-height: 28px;
   color: #172746;
   font-weight: 500;
 }

 .default-sidebar .sidebar-category .category-list li a:hover {
   padding-left: 28px;
 }

 .default-sidebar .sidebar-category .category-list li a i {
   position: absolute;
   left: 0px;
   top: 3px;
   font-size: 18px;
   opacity: 0;
   transition: all 500ms ease;
 }

 .default-sidebar .sidebar-category .category-list li a:hover i {
   opacity: 1;
 }

 .default-sidebar .sidebar-category {
   padding-bottom: 30px;
 }

 .range-slider {
   position: relative;
 }

 .range-slider .title {
   position: relative;
   display: inline-block;
 }

 .range-slider p {
   position: relative;
   display: inline-block;
   font-size: 15px;
   color: #182847;
   margin-right: 10px !important;
 }

 .range-slider .title:before {
   position: absolute;
   content: '$';
   left: -5px;
   top: -19px;
   color: #182847;
   font-size: 15px;
 }

 .range-slider .input {
   color: #182847;
   max-width: 75px;
   font-size: 15px;
   margin-top: 5px;
   position: relative;
   display: inline-block;
 }

 .range-slider .input input {
   background: none;
   color: #182847;
   font-size: 15px;
   text-align: left;
   width: 80px;
 }

 .range-slider .ui-widget.ui-widget-content {
   height: 4px;
   border: none;
   margin-bottom: 24px;
   background: #f0f0f0;
 }

 .range-slider .ui-slider .ui-slider-range {
   top: 0px;
   height: 4px;
   background-color: #002c8f;
 }

 .range-slider .ui-state-default,
 .range-slider .ui-widget-content .ui-state-default {
   top: -7px;
   width: 18px;
   height: 18px;
   border: none;
   border-radius: 50%;
   cursor: pointer;
   margin-left: 0px;
   background: #002c8f;
   box-shadow: 0px 5px 15px 0 rgba(0, 0, 0, 0.4);
 }

 .range-slider .ui-state-default:before,
 .range-slider .ui-widget-content .ui-state-default:before {
   position: absolute;
   content: '';
   background: #fff;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   left: 6px;
   top: 6px;
 }

 .range-slider .filter-btn {
   position: relative;
   display: inline-block;
   font-size: 15px;
   font-weight: 600;
   font-family: 'Open Sans', sans-serif;
   color: #fff;
   padding: 4.5px 17.5px;
   border-radius: 30px;
   text-align: center;
   transition: all 500ms ease;
 }

 .range-slider .filter-btn:hover {
   background-color: #002c8f;
 }

 .default-sidebar .price-filter .widget-title {
   margin-bottom: 28px;
 }

 .default-sidebar .tags-widget .tags-list li {
   position: relative;
   display: inline-block;
   float: left;
   margin: 0px 10px 10px 0px;
 }

 .default-sidebar .tags-widget .tags-list li a {
   position: relative;
   display: inline-block;
   font-size: 15px;
   line-height: 26px;
   color: #8a919e;
   border: 1px solid #e5e5e5;
   border-radius: 30px;
   text-align: center;
   padding: 6px 25px;
 }

 .default-sidebar .tags-widget .tags-list li a:hover {
   color: #fff;
 }

 .shop-page-section .item-shorting .left-column .text,
 .shop-page-section .item-shorting .left-column .short-box {
   position: relative;
   float: left;
 }

 .shop-page-section .item-shorting .left-column p {
   color: #172746;
   line-height: 44px;
 }

 .shop-page-section .item-shorting .select-box {
   float: left;
   width: 90px;
 }

 .shop-page-section .item-shorting .left-column .text {
   position: relative;
   float: left;
 }

 .shop-page-section .item-shorting .right-column .short-box,
 .shop-page-section .item-shorting .right-column .filter-box {
   float: left;
 }

 .shop-page-section .item-shorting .right-column .select-box {
   width: 200px;
 }

 .shop-page-section .item-shorting .right-column .short-box p {
   float: left;
   margin-right: 15px;
   line-height: 44px;
 }

 .shop-page-section .item-shorting .filter-box {
   float: left;
 }

 .shop-page-section .item-shorting {
   margin-bottom: 50px;
 }

 .nice-select:after {
   width: 6px;
   height: 6px;
   border-bottom: 2px solid #222;
   border-right: 2px solid #222;
   right: 20px;
 }

 .nice-select {
   position: relative;
   display: block;
   width: 100%;
   height: 44px;
   line-height: 44px;
   border: 1px solid #e5e5e5 !important;
   border-radius: 30px;
   padding: 0px 30px;
   font-size: 15px;
   font-weight: 600;
   color: #172746;
   font-family: 'Open Sans', sans-serif;
   background: transparent;
 }

 .shop-page-section .shop-block-one .inner-box {
   margin-bottom: 30px;
 }


 /** shop-details **/

 .shop-details {
   position: relative;
   padding: 150px 0px;
 }

 .product-details-content .product-details {
   position: relative;
   display: block;
   margin-left: 20px;
 }

 .product-details-content .image-box {
   position: relative;
   display: block;
   overflow: hidden;
   background-color: #fff;
   border: 1px solid #e6e6e6;
   margin-right: 20px;
 }

 .product-details-content .image-box .preview-link {
   position: absolute;
   top: 20px;
   right: 20px;
 }

 .product-details-content .image-box .preview-link a {
   position: relative;
   display: inline-block;
   width: 50px;
   height: 50px;
   line-height: 50px;
   border: 1px solid #e7e7e7;
   border-radius: 50%;
   font-size: 20px;
   color: #222222;
   text-align: center;
   z-index: 1;
 }

 .product-details-content .image-box .preview-link a:hover {
   color: #fff;
 }

 .product-details-content .product-details h3 {
   position: relative;
   display: block;
   font-size: 24px;
   line-height: 32px;
   font-weight: 700;
   margin-bottom: 8px;
 }

 .product-details-content .product-details .rating {
   position: relative;
   margin-right: 15px;
 }

 .product-details-content .product-details .customer-rating {
   position: relative;
   margin-bottom: 17px;
 }

 .product-details-content .product-details .rating li {
   position: relative;
   display: inline-block;
   font-size: 12px;
   line-height: 20px;
   margin-right: 2px;
 }

 .product-details-content .product-details .rating li:last-child {
   margin-right: 0px;
 }

 .product-details-content .product-details .customer-rating .review a {
   position: relative;
   display: inline-block;
   font-size: 15px;
   line-height: 26px;
   color: #848484;
 }

 .product-details-content .product-details .customer-rating .review a:hover {}

 .product-details-content .product-details h5 {
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 500;
   margin-bottom: 24px;
 }

 .product-details-content .product-details .text {
   position: relative;
   display: block;
   margin-bottom: 43px;
 }

 .product-details-content .product-details .addto-cart-box .clearfix li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 10px;
 }

 .product-details-content .product-details .addto-cart-box .clearfix li:last-child {
   margin-right: 0px;
 }

 .product-details-content .product-details .addto-cart-box .clearfix li a {
   position: relative;
   display: inline-block;
   width: 55px;
   height: 55px;
   line-height: 55px;
   text-align: center;
   font-size: 20px;
   color: #1c2b49;
   border: 1px solid #e6e6e6;
   border-radius: 50%;
 }

 .product-details-content .product-details .addto-cart-box .clearfix li a:hover {
   color: #fff;
 }

 .product-details-content .product-details .addto-cart-box {
   position: relative;
   display: block;
   margin-bottom: 43px;
 }

 .product-details-content .product-details .other-option .list li {
   position: relative;
   display: inline-block;
   font-size: 15px;
   color: #848484;
 }

 .product-details-content .product-details .other-option .category {
   margin-top: 5px;
   margin-bottom: 4px;
 }

 .product-details-content .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 12px;
   background-repeat: repeat-x;
   animation: slide 60s linear infinite;
   -webkit-animation: slide 60s linear infinite;
 }

 .shop-details .product-discription .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 12px;
   background-repeat: repeat-x;
   animation: slide 60s linear infinite;
   -webkit-animation: slide 60s linear infinite;
 }

 .product-details-content .product-details .other-option .social-links {
   margin-top: 19px;
 }

 .product-details-content .product-details .other-option .social-links li {
   position: relative;
   display: inline-block;
   margin-right: 25px;
 }

 .product-details-content .product-details .other-option .social-links li:last-child {
   margin-bottom: 0px !important;
 }

 .product-details-content .product-details .other-option .social-links li h6 {
   font-size: 16px;
   line-height: 26px;
   font-weight: 600;
 }

 .product-details-content .product-details .other-option .social-links li a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   line-height: 26px;
   color: #aeaeae;
 }

 .product-details-content .product-details .other-option .social-links li a:hover {}

 .product-details-content {
   position: relative;
   display: block;
   padding-bottom: 130px;
 }

 .shop-details .product-discription {
   position: relative;
   background: #fff;
   padding: 120px 0px 125px 0px;
 }

 .shop-details .product-discription .tab-btn-box {
   position: relative;
   display: block;
   margin-bottom: 35px;
 }

 .shop-details .product-discription .tab-btn-box .tab-btns li {
   position: relative;
   display: inline-block;
   float: left;
   font-size: 18px;
   line-height: 18px;
   color: #8a8d91;
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
   cursor: pointer;
   text-align: center;
   z-index: 1;
   margin-right: 20px;
   border-bottom: 1px solid transparent;
   transition: all 500ms ease;
 }

 .shop-details .product-discription .tab-btn-box .tab-btns li:last-child {
   margin: 0px !important;
 }

 .shop-details .product-discription .tab-btn-box .tab-btns li.active-btn {
   color: #182846;
   border-bottom: 1px solid #5d6475;
 }

 .shop-details .product-discription .tabs-content p {
   margin-bottom: 26px;
 }

 .shop-details .product-discription .tabs-content p:last-child {
   margin-bottom: 0px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review {
   position: relative;
   margin-bottom: 37px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review:last-child {
   margin-bottom: 0px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .image-box {
   position: absolute;
   left: 0px;
   top: 3px;
   width: 80px;
   height: 80px;
   line-height: 80px;
   border-radius: 50%;
   overflow: hidden;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .image-box img {
   width: 100%;
   border-radius: 50%;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner {
   position: relative;
   padding-left: 110px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner .rating {
   position: relative;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner .rating li {
   position: relative;
   display: inline-block;
   font-size: 12px;
   margin-right: 2px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner .rating li:last-child {
   margin-right: 0px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner h5 {
   position: relative;
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 500;
   margin-bottom: 12px;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner h5 span {
   font-size: 15px;
   font-weight: 400;
   color: #93959e;
 }

 .shop-details .product-discription .tabs-content .customer-review .single-review .inner p {
   line-height: 28px;
   color: #93959e;
 }

 .shop-details .product-discription .tabs-content h4 {
   margin-bottom: 20px;
   line-height: 30px;
   font-weight: 600;
 }

 .shop-details .product-discription .tabs-content .customer-review {
   position: relative;
   display: block;
   padding-right: 30px;
   padding-bottom: 100px;
   border-right: 1px dashed #e5e5e5;
 }

 .shop-details .product-discription .tabs-content .customer-comments {
   position: relative;
   padding-left: 40px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .rating-box p {
   position: relative;
   display: inline-block;
   font-size: 15px;
   color: #93959e;
   margin-right: 12px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .rating-box .rating {
   position: relative;
   display: inline-block;
 }

 .shop-details .product-discription .tabs-content .customer-comments .rating-box .rating li {
   position: relative;
   display: inline-block;
   font-size: 12px;
   margin-right: 2px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .rating-box .rating li:last-child {
   margin-right: 0px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .rating-box {
   position: relative;
   margin-bottom: 17px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group {
   position: relative;
   margin-bottom: 20px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group label {
   position: relative;
   display: block;
   font-size: 15px;
   color: #93959e;
   margin-bottom: 5px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group input[type='text'],
 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group input[type='email'],
 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group textarea {
   position: relative;
   display: block;
   width: 100%;
   height: 60px;
   border: 1px solid #e5e5e5;
   padding: 10px 20px;
   font-size: 15px;
   color: #848484;
   background: transparent;
   transition: all 500ms ease;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group textarea {
   height: 150px;
   resize: none;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group input:focus,
 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group textarea:focus {}

 .shop-details .product-discription .tabs-content .customer-comments h3 {
   margin-bottom: 23px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group:last-child {
   margin-bottom: 0px;
 }

 .shop-details .product-discription .tabs-content .customer-comments .comment-form .form-group.message-btn {
   margin-top: 10px;
 }


 .product-details-content .product-details .addto-cart-box .item-quantity {
   position: relative;
   display: inline-block;
   max-width: 135px;
   height: 55px;
   width: 100%;
   float: left;
   padding: 0px 40px;
   margin-right: 10px;
   border: 1px solid #dddddd;
   z-index: 1;
   border-radius: 30px;
 }

 .product-details-content .product-details .addto-cart-box input.quantity-spinner {
   line-height: 53px;
   height: 53px;
   width: 43px !important;
   padding: 0px !important;
   box-shadow: none !important;
   font-family: 'Open Sans', sans-serif;
   border: none;
   text-align: center;
   font-size: 16px;
   font-weight: 600;
   color: #182846;
   background: transparent;
 }

 .bootstrap-touchspin .input-group-btn-vertical>.btn.bootstrap-touchspin-down {
   position: absolute;
   height: 33px;
   width: 30px;
   background: transparent;
   padding: 0px 0px;
   left: -28px;
   top: 12px;
   border-right: none;
   border-radius: 0px;
 }

 .bootstrap-touchspin .input-group-btn-vertical>.btn.bootstrap-touchspin-up {
   position: absolute;
   height: 33px;
   width: 30px;
   background: transparent;
   padding: 0px 0px;
   right: -28px;
   top: 12px;
   border-left: none;
   margin-top: 0px;
   border-radius: 0px;
 }

 .bootstrap-touchspin .glyphicon-chevron-up:before {
   content: "\f067";
   font-size: 12px;
   font-style: normal;
   color: #182846;
   font-family: 'Font Awesome 5 pro';
   font-weight: 700;
 }

 .bootstrap-touchspin .glyphicon-chevron-down:before {
   content: "\f068";
   font-size: 12px;
   font-style: normal;
   color: #182846;
   font-weight: 700;
   font-family: 'Font Awesome 5 pro';
 }

 .bootstrap-touchspin .input-group-btn-vertical {
   position: absolute;
   width: 100%;
 }

 .bootstrap-touchspin .input-group-btn-vertical i {
   top: 2px;
   left: 7px;
   font-size: inherit !important;
 }

 .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
   margin-top: 0px;
 }

 .shop-details .related-product {
   position: relative;
   padding-top: 120px;
 }

 .shop-details .related-product .title-box {
   position: relative;
   display: block;
   margin-bottom: 50px;
 }

 .shop-details .related-product .title-box h3 {
   font-size: 30px;
   line-height: 40px;
   font-weight: 700;
 }



 /*** 

====================================================================
                        Cart-Page
====================================================================

***/

 .cart-section {
   position: relative;
   display: block;
   padding: 150px 0px;
 }

 .cart-section .item-quantity {
   position: relative;
   display: inline-block;
   max-width: 135px;
   height: 55px;
   width: 100%;
   float: left;
   padding: 0px 40px;
   margin-right: 10px;
   border: 1px solid #dddddd;
   z-index: 1;
   border-radius: 30px;
 }

 .cart-section input.quantity-spinner {
   line-height: 53px;
   height: 53px;
   width: 43px !important;
   padding: 0px !important;
   box-shadow: none !important;
   font-family: 'Open Sans', sans-serif;
   border: none;
   text-align: center;
   font-size: 16px;
   font-weight: 600;
   color: #182846;
   background: transparent;
 }

 .cart-section .table-outer {
   overflow-x: auto;
   position: relative;
   width: 100%;
 }

 .cart-section .cart-table {
   min-width: 1170px;
   width: 100%;
 }

 .cart-section .cart-table thead tr th {
   line-height: 24px;
   min-width: 110px;
   padding: 21px 15px 20px 0px;
   color: #172746;
   font-family: 'Spartan', sans-serif;
   font-size: 16px;
   font-weight: 700;
   position: relative;
   text-align: center;
 }

 .cart-section .cart-table tbody tr {
   border-bottom: 1px solid #e6e6e6;
 }

 .cart-section .cart-table .cart-header {
   background: #f2f9ff;
 }

 .cart-section .cart-table tbody tr td.prod-column {
   padding: 30px 0px;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box {
   min-height: 100px;
   position: relative;
   padding: 32px 0px 39px 250px;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box .prod-thumb img {
   display: block;
   max-width: 100%;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box .prod-thumb {
   position: absolute;
   left: 120px;
   top: 0px;
   width: 100px;
   height: 100px;
   background: #f2f9ff;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box .title {
   padding-left: 20px;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box .remove-btn {
   position: absolute;
   left: 0px;
   top: 50%;
   transform: translateY(-50%);
   width: 50px;
   height: 50px;
   line-height: 50px;
   font-size: 18px;
   color: #222;
   font-weight: 900;
   border: 1px solid #e6e6e6;
   text-align: center;
   border-radius: 50%;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .cart-section .cart-table tbody tr .prod-column .column-box .remove-btn:hover {
   color: #fff;
   box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
 }

 .cart-section .cart-table tbody tr td.price {
   font-size: 15px;
   text-align: center;
   color: #172746;
   position: relative;
   padding: 30px 25px 30px 30px;
 }

 .cart-section .cart-table tbody tr .sub-total {
   font-size: 15px;
   padding: 27px 50px 27px 48px;
   text-align: center;
   color: #172746;
 }

 .cart-section .cart-table tbody tr td.qty {
   position: relative;
 }

 .cart-section .cart-table .prod-title {
   position: relative;
   display: inline-block;
   font-size: 15px;
   line-height: 28px;
   color: #172746;
   font-family: 'Spartan', sans-serif;
   font-weight: 500;
 }

 .cart-section .othre-content {
   position: relative;
   display: block;
   padding: 30px 0px;
   margin-bottom: 45px;
 }

 .cart-section .othre-content .update-btn button {
   background: transparent;
   transition: all 500ms ease;
 }

 .cart-section .othre-content .coupon-box {
   position: relative;
   max-width: 470px;
 }

 .cart-section .othre-content .coupon-box input[type='text'] {
   position: relative;
   display: block;
   width: 100%;
   font-size: 15px;
   height: 55px;
   color: #8a8d91;
   border: 1px solid #e6e6e6;
   border-radius: 30px;
   padding: 10px 235px 10px 30px;
 }

 .cart-section .othre-content .coupon-box button {
   position: absolute;
   top: 0px;
   right: 0px;
   width: 205px;
   height: 55px;
   text-align: center;
   font-size: 17px;
   line-height: 28px;
   color: #fff;
   font-weight: 600;
   border-radius: 0px 30px 30px 0px;
 }

 .cart-section .cart-total .total-cart-box {
   position: relative;
 }

 .cart-section .cart-total .total-cart-box h6 {
   position: relative;
   display: block;
   font-size: 16px;
   line-height: 26px;
   background: #f2f9ff;
   font-weight: 700;
   padding: 19px 30px 11px 30px;
 }

 .cart-section .cart-total .total-cart-box .list li {
   position: relative;
   display: block;
   font-size: 15px;
   font-family: 'Spartan', sans-serif;
   color: #172746;
   font-weight: 600;
   padding: 18px 30px;
   border-bottom: 1px solid #e6e6e6;
 }

 .cart-section .cart-total .total-cart-box .list li:last-child {
   border-bottom: none;
 }

 .cart-section .cart-total .total-cart-box .list li span {
   float: right;
   color: #848484;
   font-weight: 400;
 }

 .cart-section .cart-total .total-cart-box .list li:last-child span {
   font-weight: 700;
   color: #172746;
 }

 .cart-section .cart-total .total-cart-box .theme-btn {
   display: block;
   padding: 14.5px 35px;
   width: 100%;
   margin-top: 5px;
 }

 .bootstrap-touchspin .input-group-btn-vertical>.btn.bootstrap-touchspin-down {
   position: absolute;
   height: 53px;
   width: 40px;
   background: transparent;
   padding: 0px 0px;
   left: -39px;
   top: -53px;
   border-right: none;
   border-radius: 0px;
 }

 .bootstrap-touchspin .input-group-btn-vertical>.btn.bootstrap-touchspin-up {
   position: absolute;
   height: 53px;
   width: 40px;
   background: transparent;
   padding: 0px 0px;
   right: -30px;
   top: -53px;
   border-left: none;
   margin-top: 0px;
   border-radius: 0px;
 }

 .bootstrap-touchspin .glyphicon-chevron-up:before {
   content: "\f067";
   font-size: 15px;
   font-style: normal;
   color: #848484;
   font-family: 'Font Awesome 5 Pro';
 }

 .bootstrap-touchspin .glyphicon-chevron-down:before {
   content: "\f068";
   font-size: 15px;
   font-style: normal;
   color: #848484;
   font-family: 'Font Awesome 5 Pro';
 }

 .bootstrap-touchspin .input-group-btn-vertical {
   position: absolute;
   width: 100%;
 }

 .bootstrap-touchspin .input-group-btn-vertical i {
   top: 15px;
   left: 15px;
   font-size: inherit !important;
 }

 .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
   margin-top: 0px;
 }

 .item-quantity .input-group {
   position: relative;
   display: table;
   border-collapse: separate;
   max-width: 50px;
   width: 100%;
   height: 53px;
 }

 .item-quantity input.quantity-spinner {
   line-height: 49px;
   height: 49px;
   width: 50px !important;
   padding: 0px !important;
   box-shadow: none !important;
   border: none;
   text-align: center;
   font-size: 16px;
   font-weight: 600;
   color: #222;
   border: none;
 }


 /*** 

====================================================================
                        Checkout-page
====================================================================

***/

 .checkout-section {
   position: relative;
   display: block;
   padding: 150px 0px;
 }

 .checkout-section .upper-box {
   position: relative;
   margin-bottom: 70px;
 }

 .checkout-section .upper-box .single-box {
   position: relative;
   display: block;
   font-size: 15px;
   color: #172746;
   padding: 21px 15px 23px 30px;
   background: #f2f9ff;
   margin-bottom: 30px;
 }

 .checkout-section .upper-box .single-box:last-child {
   margin-bottom: 0px;
 }

 .checkout-section .upper-box .single-box a {}

 .checkout-section .customer a:hover,
 .checkout-section .coupon a:hover {
   text-decoration: underline;
 }

 .checkout-section .sub-title {
   position: relative;
   display: block;
   font-size: 16px;
   line-height: 26px;
   background: #f2f9ff;
   font-weight: 700;
   padding: 23px 15px 16px 30px;
 }

 .checkout-section .billing-info {
   position: relative;
   display: block;
   margin-bottom: 30px;
 }

 .checkout-section .billing-form {
   position: relative;
   display: block;
   padding: 23px 0px 28px 0px;
 }

 .checkout-section .billing-form .form-group {
   position: relative;
   display: block;
   margin-bottom: 23px;
 }

 .checkout-section .billing-form .form-group:last-child {
   margin-bottom: 0px;
 }

 .checkout-section .billing-form .form-group label {
   position: relative;
   display: block;
   font-size: 15px;
   font-family: 'Open Sans', sans-serif;
   color: #172746;
   margin-bottom: 3px;
 }

 .checkout-section .billing-form .form-group input[type='text'],
 .checkout-section .billing-form .form-group input[type='email'] {
   position: relative;
   display: block;
   width: 100%;
   height: 45px;
   border: 1px solid #e6e6e6;
   font-size: 15px;
   color: #848484;
   padding: 10px 15px;
   transition: all 500ms ease;
 }

 .checkout-section .billing-form .form-group input:focus {}

 .checkout-section .billing-form .form-group .nice-select {
   border-radius: 0px;
   border: 1px solid #e6e6e6 !important;
   width: 100%;
   font-size: 15px;
   color: #848484;
   height: 45px;
   font-weight: 400;
   padding: 0px 20px;
 }

 .checkout-section .billing-form .form-group .nice-select:after {
   border-bottom: 2px solid #848484;
   border-right: 2px solid #848484;
   margin-top: -4px;
 }

 .checkout-section .billing-form .form-group .nice-select .list {
   width: 100%;
 }

 .checkout-section .billing-form .form-group input.address {
   margin-bottom: 10px;
 }

 .checkout-section .billing-form .form-group input:focus {}

 .checkout-section .billing-form .select-box .ui-state-default {
   width: 100% !important;
 }

 .checkout-section .billing-form .select-box .ui-selectmenu-button span.ui-icon:before {
   color: #848484;
 }

 .checkout-section .billing-form .create-acc {
   position: relative;
   display: block;
   margin-top: 3px;
 }

 .checkout-section .billing-form .create-acc .custom-controls-stacked .description {
   font-size: 15px;
   color: #222;
   cursor: pointer;
 }

 .checkout-section .additional-info .note-book {
   position: relative;
   display: block;
 }

 .checkout-section .additional-info .note-book label {
   position: relative;
   display: block;
   font-size: 15px;
   line-height: 26px;
   color: #172746;
   margin-bottom: 3px;
 }

 .checkout-section .additional-info .note-book textarea {
   position: relative;
   display: block;
   width: 100%;
   height: 133px;
   border: 1px solid #e6e6e6;
   font-family: 'Rubik', sans-serif;
   color: #848484;
   font-size: 13px;
   font-weight: 400;
   color: #848484;
   padding: 8px 20px;
   resize: none;
   transition: all 500ms ease;
 }

 .checkout-section .additional-info .note-book textarea:focus {}

 .checkout-section .order-info {
   position: relative;
   display: block;
   margin-bottom: 70px;
 }

 .checkout-section .order-info .order-list li {
   position: relative;
   display: block;
   border-bottom: 1px solid #e6e6e6;
   padding: 20px 30px;
 }

 .checkout-section .order-info .order-list li.title {
   padding: 24px 30px 2px 30px;
 }

 .checkout-section .order-info .order-list li.title p {
   font-size: 15px;
   color: #172746;
   float: left;
 }

 .checkout-section .order-info .order-list li.title span {
   position: relative;
   display: block;
   font-size: 15px;
   color: #222;
   float: right;
 }

 .checkout-section .order-info .order-list li .single-box {
   position: relative;
   padding: 30px 0px 24px 110px;
   min-height: 80px;
 }

 .checkout-section .order-info .order-list li .single-box img {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 88px;
   height: 80px;
 }

 .checkout-section .order-info .order-list li .single-box h6 {
   position: relative;
   font-size: 15px;
   line-height: 26px;
   float: left;
   font-weight: 500;
 }

 .checkout-section .order-info .order-list li .single-box span {
   position: relative;
   display: block;
   float: right;
   font-size: 15px;
   color: #172746;
 }

 .checkout-section .order-info .order-list li.sub-total {
   padding: 17px 30px 10px 0px;
 }

 .checkout-section .order-info .order-list li.sub-total h6 {
   font-size: 16px;
   font-weight: 600;
   color: #172746;
   float: left;
 }

 .checkout-section .order-info .order-list li.sub-total span {
   position: relative;
   display: block;
   font-size: 15px;
   color: #848484;
   float: right;
 }

 .checkout-section .order-info .order-list li.order-total {
   padding: 17px 30px 11px 0px;
 }

 .checkout-section .order-info .order-list li.order-total h6 {
   font-size: 16px;
   font-weight: 700;
   color: #172746;
   float: left;
 }

 .checkout-section .order-info .order-list li.order-total span {
   position: relative;
   display: block;
   font-size: 18px;
   color: #172746;
   font-weight: 600;
   float: right;
 }

 .checkout-section .payment-info .payment-inner {
   position: relative;
   display: block;
   border: 1px solid #e6e6e6;
   border-top: none;
   padding: 28px 30px 40px 30px;
 }

 .checkout-section .payment-info .payment-inner .custom-controls-stacked .description {
   color: #8a8d91;
   z-index: 1;
   font-size: 15px;
   font-weight: 600;
   font-family: 'Spartan', sans-serif;
   cursor: pointer;
 }

 .checkout-section .payment-info .payment-inner .custom-controls-stacked .description a {
   position: relative;
   display: inline-block;
   color: #172746;
   z-index: 1;
   font-size: 15px;
   font-weight: 600;
   font-family: 'Spartan', sans-serif;
   margin-left: 20px;
 }

 .checkout-section .payment-info .payment-inner .custom-controls-stacked .description a:hover {
   text-decoration: underline;
 }

 .checkout-section .payment-info .payment-inner .option-block {
   position: relative;
   display: block;
   margin-bottom: 22px;
 }

 .checkout-section .payment-info .payment-inner .option-block p {
   position: relative;
   font-size: 13px;
   line-height: 24px;
   padding: 4px 0px 0px 30px;
 }

 .checkout-section .custom-control.material-checkbox .material-control-indicator {
   display: inline-block;
   position: absolute;
   top: 6px;
   left: 0px;
   width: 15px;
   height: 15px;
   border: 1px solid #e6e6e6;
   background: #f5f8fa;
   cursor: pointer;
 }

 .checkout-section .custom-control.material-checkbox .material-control-input:checked~.material-control-indicator {
   -webkit-transform: rotateZ(45deg) translate(1px, -5px);
   transform: rotateZ(45deg) translate(1px, -5px);
   width: 8px;
   border: 2px solid #898f9f;
   border-top: 0px;
   border-left: 0px;
   background: transparent;
   border-radius: 0px;
 }

 .checkout-section .payment-info .payment-inner .btn-box {
   padding-top: 2px;
 }

 .checkout-section .payment-info .payment-inner .btn-box .theme-btn-two {
   padding: 16px 30px;
 }

 .custom-control.material-checkbox {
   --color: #ebebeb;
   padding: 0px;
   margin: 0px;
   margin-bottom: 0px !important;
 }

 .custom-control.material-checkbox .material-control-input {
   display: none;
 }

 .custom-control.material-checkbox .material-control-indicator {
   display: inline-block;
   position: absolute;
   top: 6px;
   left: 0px;
   width: 15px;
   height: 15px;
   border: 1px solid #e6e6e6;
   cursor: pointer;
 }

 .custom-control.material-checkbox .material-control-input:checked~.material-control-indicator {
   -webkit-transform: rotateZ(45deg) translate(1px, -5px);
   transform: rotateZ(45deg) translate(1px, -5px);
   width: 8px;
   border: 2px solid #e6e6e6;
   border-top: 0px;
   border-left: 0px;
   background: transparent;
   border-radius: 0px;
 }

 .custom-controls-stacked .description {
   position: relative;
   display: inline-block;
   padding: 0px;
   margin-left: 25px;
   font-size: 15px;
   color: #848484;
   cursor: pointer;
 }



 /*** 

====================================================================
                        Blog-page
====================================================================

***/


 .sidebar-page-container {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .sidebar-page-container .news-block-one .inner-box {
   margin-bottom: 50px;
 }

 .blog-sidebar .post-widget .post {
   position: relative;
   display: flex;
   gap: 10px;
   align-items: bottom;
   padding-left: 110px;
   margin-bottom: 30px;
   padding-bottom: 9px;
   min-height: 90px;
 }

 .blog-sidebar .post-widget .post:last-child {
   margin-bottom: 0px;
 }

 .blog-sidebar .post-widget .post .post-thumb {
   position: absolute;
   left: 0px;
   top: -1px;
   width: 100px;
   height: 100px;
   border-radius: 50%;
 }

 .blog-sidebar .post-widget .post .post-thumb img {
   width: 100%;
   border-radius: 10%;
 }

 .blog-sidebar .post-widget .post p {
   margin-bottom: 7px;
 }

 .blog-sidebar .post-widget .post h5 {
   display: block;
   font-size: 18px;
   line-height: 24px;
   font-weight: 500;
 }

 .blog-sidebar .post-widget .post h5 a {
   display: inline-block;
   color: #172746;
 }

 .blog-sidebar .post-widget .post h5 a:hover {}

 .blog-sidebar .post-widget .widget-title {
   margin-bottom: 32px;
 }

 .blog-sidebar .archives-widget .archives-list li {
   position: relative;
   display: block;
   padding: 12px 0px;
   border-top: 1px solid #e9ebf0;
 }

 .blog-sidebar .archives-widget .archives-list li a {
   position: relative;
   display: block;
   font-size: 15px;
   line-height: 30px;
   font-family: 'Spartan', sans-serif;
   color: #172746;
   font-weight: 500;
 }

 .blog-sidebar .archives-widget .archives-list li a:hover {}

 .blog-sidebar .archives-widget .archives-list li a span {
   position: absolute;
   top: 0px;
   right: 0px;
   display: inline-block;
   width: 30px;
   height: 30px;
   line-height: 30px;
   font-size: 15px;
   font-family: 'Open Sans', sans-serif;
   border: 1px solid #e6e6e6;
   color: #172746;
   border-radius: 50%;
   text-align: center;
 }

 .blog-sidebar .archives-widget {
   padding-bottom: 28px;
 }

 .news-block-one .inner-box .lower-content h3 {
   display: block;
   font-size: 24px;
   line-height: 34px;
   font-weight: 600;
   margin-bottom: 4px;
 }

 .news-block-one .inner-box .lower-content h3 a {
   display: inline-block;
   color: #172746;
 }

 .news-block-one .inner-box .lower-content h3 a:hover {}

 .blog-standard-content .news-block-one .inner-box .lower-content {
   padding-top: 31px;
 }

 .blog-sidebar {
   margin-left: 20px;
 }

 .blog-details-content .news-block-one .inner-box {
   padding: 0px;
   box-shadow: none;
 }

 .blog-details-content .news-block-one .inner-box:before {
   display: none;
 }

 .blog-details-content .news-block-one .inner-box .lower-content .text p {
   margin-bottom: 26px;
 }

 .blog-details-content .news-block-one .inner-box .lower-content .text p:last-child {
   margin-bottom: 0px;
 }

 .blog-details-content .news-block-one .inner-box:hover .image-box img {
   opacity: 1;
   transform: scale(1);
 }

 .blog-details-content .content-one blockquote {
   position: relative;
   display: block;
   background: #fff;
   padding: 57px 50px 53px 220px;
   box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 8%);
   margin: 0px 0px 63px 0px;
 }

 .blog-details-content .content-one blockquote .icon-box {
   position: absolute;
   left: 50px;
   top: 50px;
   font-size: 40px;
   width: 100px;
   height: 100px;
   line-height: 100px;
   text-align: center;
   background: #f2f9ff;
   border-radius: 50%;
 }

 .blog-details-content .content-one blockquote h5 {
   display: block;
   font-size: 18px;
   line-height: 30px;
   font-weight: 500;
 }

 .blog-details-content .content-one blockquote .shape {
   position: absolute;
   left: 180px;
   top: 70px;
   width: 10px;
   height: 60px;
   background-repeat: no-repeat;
 }

 .blog-details-content .content-one {
   position: relative;
   margin-bottom: 63px;
 }

 .blog-details-content .content-one .text p {
   margin-bottom: 26px;
 }

 .blog-details-content .content-one .text p:last-child {
   margin-bottom: 0px;
 }

 .blog-details-content .content-two .image-box {
   position: relative;
   display: block;
   margin-bottom: 67px;
 }

 .blog-details-content .content-two .image-box img {
   width: 100%;
 }

 .blog-details-content .content-two .text h3 {
   font-size: 24px;
   line-height: 34px;
   font-weight: 600;
   margin-bottom: 14px;
 }

 .blog-details-content .content-two .text p {
   margin-bottom: 26px;
 }

 .blog-details-content .content-two .text p:last-child {
   margin-bottom: 0px;
 }

 .blog-details-content .news-block-one .inner-box {
   margin-bottom: 63px;
 }

 .blog-details-content .content-two {
   margin-bottom: 63px;
 }

 .blog-details-content .post-share-option {
   position: relative;
   display: block;
   padding-bottom: 80px;
   margin-bottom: 66px;
 }

 .blog-details-content .post-share-option .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 12px;
   background-repeat: no-repeat;
 }

 .blog-details-content .post-share-option .social-links li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 15px;
 }

 .blog-details-content .post-share-option .social-links li:last-child {
   margin: 0px !important;
 }

 .blog-details-content .post-share-option .social-links li a {
   position: relative;
   display: inline-block;
   width: 44px;
   height: 44px;
   line-height: 44px;
   font-size: 16px;
   color: #acadb4;
   background-color: #fff;
   border-radius: 50%;
   text-align: center;
   box-shadow: 0px 10px 20px 0px rgb(0 0 0 / 10%);
 }

 .blog-details-content .post-share-option .social-links li a:hover {
   color: #fff;
 }

 .blog-details-content .post-share-option .social-links li h5 {
   font-size: 18px;
   line-height: 44px;
   font-weight: 600;
 }

 .blog-details-content .group-title {
   position: relative;
   display: block;
   margin-bottom: 33px;
 }

 .blog-details-content .group-title h3 {
   font-size: 24px;
   line-height: 34px;
   font-weight: 600;
 }

 .blog-details-content .comment-box {
   position: relative;
   display: block;
   margin-bottom: 66px;
   padding-bottom: 43px;
 }

 .blog-details-content .comment-box .shape {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 12px;
   background-repeat: no-repeat;
 }

 .blog-details-content .comment-box .comment {
   position: relative;
   display: block;
   padding-left: 110px;
   margin-bottom: 33px;
 }

 .blog-details-content .comment-box .comment:last-child {
   margin-bottom: 0px;
 }

 .blog-details-content .comment-box .comment .thumb-box {
   position: absolute;
   left: 0px;
   top: -3px;
   width: 80px;
   height: 80px;
   border-radius: 50%;
 }

 .blog-details-content .comment-box .comment .thumb-box img {
   width: 100%;
   border-radius: 50%;
 }

 .blog-details-content .comment-box .comment .comment-inner {
   position: relative;
   padding-bottom: 32px;
   border-bottom: 1px solid #e5e5e5;
 }

 .blog-details-content .comment-box .comment:last-child .comment-inner {
   border-bottom: none;
 }

 .blog-details-content .comment-box .comment h5 {
   display: block;
   font-size: 18px;
   line-height: 26px;
   font-weight: 600;
 }

 .blog-details-content .comment-box .comment .post-date {
   position: relative;
   display: block;
   font-size: 15px;
   color: #8a8d91;
 }

 .blog-details-content .comment-box .comment .comment-info {
   position: relative;
   margin-bottom: 14px;
 }

 .blog-details-content .comment-box .comment p {
   line-height: 28px;
   margin-bottom: 15px;
 }

 .blog-details-content .comment-box .comment .reply-btn {
   position: relative;
   display: inline-block;
   font-size: 15px;
   line-height: 26px;
   font-family: 'Open Sans', sans-serif;
   font-weight: 600;
   color: #172746;
 }

 .blog-details-content .comment-box .comment .reply-btn:hover {}

 .default-form .form-group {
   position: relative;
   margin-bottom: 30px;
 }

 .default-form .form-group:last-child {
   margin-bottom: 0px;
 }

 .default-form .form-group input[type='text'],
 .default-form .form-group input[type='email'],
 .default-form .form-group input[type='tel'],
 .default-form .form-group textarea {
   position: relative;
   display: block;
   width: 100%;
   height: 54px;
   border: 1px solid #e5e5e5;
   padding: 10px 20px;
   font-size: 15px;
   color: #8a8d91;
   transition: all 500ms ease;
 }

 .default-form .form-group textarea {
   height: 150px;
   resize: none;
 }

 .default-form .form-group input:focus,
 .default-form .form-group textarea:focus {}



 /*** 

====================================================================
                        Contact-page
====================================================================

***/

 .contact-style-two {
   position: relative;
   padding: 80px 0px 0px 0px;
 }

 .contact-style-two h3 {
   position: relative;
   display: block;
   font-size: 24px;
   line-height: 34px;
   font-weight: 600;
   margin-bottom: 39px;
 }

 .contact-style-two .info-list li {
   position: relative;
   display: block;
   padding-left: 70px;
   margin-bottom: 30px;
 }

 .contact-style-two .info-list li:last-child {
   margin-bottom: 0px;
 }

 .contact-style-two .info-list li i {
   position: absolute;
   display: inline-block;
   left: 0px;
   top: 2px;
   width: 50px;
   height: 50px;
   line-height: 50px;
   background: #ebf3fa;
   font-size: 20px;
   text-align: center;
   border-radius: 50%;
 }

 .contact-style-two .info-list li h5 {
   position: relative;
   display: block;
   font-size: 18px;
   line-height: 28px;
   font-weight: 600;
   margin-bottom: 4px;
 }

 .contact-style-two .info-list li p {
   display: block;
   font-size: 16px;
   line-height: 26px;
   color: #8a8d91;
 }

 .contact-style-two .info-list li p a {
   display: inline-block;
   color: #8a8d91;
 }

 .contact-style-two .info-list li p a:hover {}

 .contact-style-two .info-inner {
   position: relative;
   display: block;
   padding-bottom: 91px;
 }

 .contact-style-two .info-inner .shape {
   position: absolute;
   bottom: 0px;
   right: 10px;
   width: 8px;
   height: 394px;
   background-repeat: no-repeat;
 }


 .google-map-section {
   position: relative;
   margin: 80px 0px 0px 0px;
 }

 .google-map-section #contact-google-map {
   position: relative;
   display: block;
   width: 100%;
   height: 450px;
 }

 .service-page-section .owl-carousel .owl-stage-outer {
   overflow: visible;
 }

 .service-page-section .owl-carousel .owl-stage-outer .owl-item {
   opacity: 0;
 }

 .service-page-section .owl-carousel .owl-stage-outer .owl-item.active {
   opacity: 1;
 }

 .news-section .owl-carousel .owl-stage-outer {
   overflow: visible;
 }

 .news-section .owl-carousel .owl-stage-outer .owl-item {
   opacity: 0;
 }

 .news-section .owl-carousel .owl-stage-outer .owl-item.active {
   opacity: 1;
 }

 .team-section .owl-carousel .owl-stage-outer {
   overflow: visible;
 }

 .team-section .owl-carousel .owl-stage-outer .owl-item {
   opacity: 0;
 }

 .team-section .owl-carousel .owl-stage-outer .owl-item.active {
   opacity: 1;
 }

 .shop-details .product-discription .tabs-content .customer-comments {
   padding-left: 0px;
 }

 .gallery-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
   grid-auto-rows: 10px;
   /* base row height */
   gap: 10px;
   /* horizontal + vertical gap */
 }

 .gallery-item {
   display: block;
   break-inside: avoid;
 }

 .gallery-item img {
   width: 100%;
   display: block;
   border-radius: 12px;
 }

 /* JS-free masonry: calculate row span based on image height */
 .gallery-item {
   grid-row-end: span 1;
   /* default */
 }

 .event-time-loc-detial {
   border-top: #dae7ff 1px solid;
   border-bottom: #dae7ff 1px solid;
   padding: 10px 0px;
   margin-bottom: 20px;
   color: #008d27;
 }

 /* .event-time-loc-detial .row > div:first-child {
  border-right: 10px solid #380503;
} */
 .event-time-loc-detial i {
   color: #172746;
   margin-right: 10px;
 }

 /* .event-time-loc-detial .event-location {
   float: right;
 } */

 .price-tag {
   position: absolute;
   padding: 5px 20px;
   top: 0px;
   right: 0px;
   border-radius: 0px 0px 0px 12px;
   color: #fff;
 }

 .price-tag-left {
   position: absolute;
   padding: 5px 20px;
   top: 0px;
   left: 0px;
   border-radius: 0px 0px 12px 0px;
   color: #fff;
 }

 .price-tag.paid,
 .price-tag-left {
   background: #ff5e14;
 }

 .price-tag.free,
 .price-tag-left.free {
   background: #28a745;
 }

 .category {
   padding: 5px 15px;
   background: #008d27;
   border-radius: 0 0 10px 0;
   color: #fff;
   font-weight: 600;
   width: fit-content;
 }

 /* Outer structure */
 .news-block-one {
   height: 100%;
   display: flex;
   flex-direction: column;
 }

 .inner-box {
   display: flex;
   flex-direction: column;
   height: 100%;
 }

 /* about Page  */
 .read-more-btn[aria-expanded="true"] .read-more-text {
   display: none;
 }

 .read-more-btn[aria-expanded="true"] .read-less-text {
   display: inline !important;
 }

 /* About Page Objective Section */
 .minimal-card {
   background: #fff;
   box-shadow: 0px 6px 5px 2px #dfe8e5ff;
   padding: 2rem;
   border-radius: 15px;
   text-align: center;
   transition: all 0.3s ease;
   border: 2px solid transparent;
   position: relative;
   overflow: hidden;
   height: 100%;
 }

 .minimal-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: -100%;
   width: 100%;
   height: 100%;
   background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
   transition: left 0.5s ease;
 }

 .minimal-card:hover::before {
   left: 100%;
 }

 .minimal-card:hover {
   border-color: #008d27;
   transform: translateY(-5px);
   box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
 }

 .icon-wrapper {
   width: 80px;
   height: 80px;
   margin: 0 auto 1.5rem;
   background: #f8f9fa;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.3s ease;
 }

 .minimal-card:hover .icon-wrapper {
   background: #008d27;
   transform: scale(1.1);
 }

 .icon-wrapper i {
   font-size: 2rem;
   color: #008d27;
   transition: all 0.3s ease;
 }

 .minimal-card:hover .icon-wrapper i {
   color: white;
 }

 .minimal-card h3 {
   font-size: 1.3rem;
   font-weight: 600;
   color: #2c3e50;
   margin-bottom: 1rem;
 }

 /* Marguee objective section */

 .marquee-section {
   background: #dfe8e5ff !important;
 }

 .marquee-container {
   overflow: hidden;
   white-space: nowrap;
   position: relative;
 }

 .marquee-content {
   display: inline-flex;
   animation: marquee 40s linear infinite;
   gap: 3rem;
 }

 .marquee-item {
   display: inline-flex;
   align-items: center;
   color: black;
   font-size: 1rem;
   font-weight: 500;
   padding: 0.5rem 1rem;
   background: rgba(255, 255, 255, 0.1);
   border-radius: 25px;
   backdrop-filter: blur(10px);
   border: 1px solid rgba(255, 255, 255, 0.2);
 }

 .marquee-item i {
   color: #008d27;
 }

 @keyframes marquee {
   0% {
     transform: translateX(0);
   }

   100% {
     transform: translateX(-50%);
   }
 }

 .marquee-container:hover .marquee-content {
   animation-play-state: paused;
 }

 @media (max-width: 768px) {
   .marquee-item {
     font-size: 0.8rem;
     padding: 0.4rem 0.8rem;
   }

   .marquee-content {
     gap: 1.5rem;
   }
 }

 /* befitits */
 .benifit-card {
   border-left: 4px solid #008d27;
 }

 /* background section about */

 .features-grid {
   margin-top: 3rem;
 }

 .feature-card {
   background: white;
   backdrop-filter: blur(10px);
   border-radius: 20px;
   padding: 2.5rem 1.5rem;
   text-align: center;
   transition: all 0.3s ease;
   border: 1px solid rgba(255, 255, 255, 0.2);
   position: relative;
   overflow: hidden;
   height: 100%;
   box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
 }

 .feature-icon {
   width: 80px;
   height: 80px;
   margin: 0 auto 1.5rem;
   box-shadow: 0px 6px 5px 2px #e7edf1ff;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.3s ease;
 }

 .feature-card:hover .feature-icon {
   transform: scale(1.1) rotate(5deg);
 }

 .feature-icon i {
   font-size: 2.5rem;
   color: #1280c9ff;
 }

 .feature-card h4 {
   font-size: 1.4rem;
   font-weight: 600;
   color: #2c3e50;
   margin-bottom: 1rem;
 }

 .feature-card p {
   color: #7f8c8d;
   line-height: 1.6;
   margin-bottom: 1.5rem;
 }

 .feature-badge {
   display: inline-block;
   background: linear-gradient(135deg, #27ae60, #2ecc71);
   color: white;
   padding: 0.5rem 1rem;
   border-radius: 25px;
   font-size: 0.9rem;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: 0.5px;
 }

 /* Thank u and Allready exist */
 .modal-content {
   border-radius: 15px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
   border: none;
 }

 .icon-wrapper {
   width: 80px;
   height: 80px;
   background: rgba(220, 53, 69, 0.1);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   animation: pulse 2s infinite;
 }

 /* Member Gallery Section  */

 .image-scroll {
   overflow-x: auto;
   white-space: nowrap;
 }

 /* Hide scrollbar (Chrome, Safari) */
 .image-scroll::-webkit-scrollbar {
   display: none;
 }

 /* Hide scrollbar (Firefox) */
 .image-scroll {
   scrollbar-width: none;
 }

 /* Main Home Page  */
 /* ===========================
           CSS VARIABLES & RESET
        =========================== */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --accent-warm: #F4A261;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 60px rgba(11, 110, 138, 0.18);
   --radius-sm: 8px;
   --radius-md: 16px;
   --radius-lg: 24px;
   --radius-xl: 40px;
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 *,
 *::before,
 *::after {
   box-sizing: border-box;
   margin: 0;
   padding: 0;
 }

 body {
   font-family: var(--font-body);
   color: var(--text-dark);
   background: var(--bg-white);
   line-height: 1.6;
   overflow-x: hidden;
 }

 h1,
 h2,
 h3,
 h4 {
   font-family: var(--font-display);
   line-height: 1.2;
 }

 /* ===========================
           HEADER
        =========================== */
 .site-header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 1000;
   transition: var(--transition);
 }

 .header-topbar {
   background: var(--primary-dark);
   padding: 6px 0;
   font-size: 13px;
   color: rgba(255, 255, 255, 0.75);
 }

 .topbar-inner {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   gap: 16px;
 }

 .topbar-inner a {
   color: rgba(255, 255, 255, 0.85);
   text-decoration: none;
 }

 .topbar-inner a:hover {
   color: var(--accent);
 }

 .topbar-inner i {
   margin-right: 6px;
   font-size: 11px;
 }

 .topbar-social a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 26px;
   height: 26px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.1);
   margin-left: 6px;
   font-size: 11px;
   transition: var(--transition);
 }

 .topbar-social a:hover {
   background: var(--accent);
   color: white;
 }

 .header-main {
   background: white;
   box-shadow: var(--shadow-sm);
   border-bottom: 1px solid var(--border);
 }

 .header-inner {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 72px;
   gap: 32px;
 }

 .site-logo img {
   height: 48px;
   width: auto;
   display: block;
 }

 /* Nav */
 .main-nav ul {
   list-style: none;
   display: flex;
   align-items: center;
   gap: 4px;
 }

 .main-nav a {
   font-family: var(--font-body);
   font-weight: 500;
   font-size: 14.5px;
   color: var(--text-mid);
   text-decoration: none;
   padding: 8px 14px;
   border-radius: var(--radius-sm);
   transition: var(--transition);
   letter-spacing: 0.01em;
   white-space: nowrap;
 }

 .main-nav a:hover,
 .main-nav a.active {
   color: var(--primary);
   background: var(--bg-light);
 }

 .header-cta {
   display: flex;
   align-items: center;
   gap: 12px;
   flex-shrink: 0;
 }

 .btn-primary-nav {
   background: var(--primary);
   color: white !important;
   font-weight: 600;
   font-size: 14px;
   padding: 10px 22px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   box-shadow: 0 4px 14px rgba(11, 110, 138, 0.35);
   white-space: nowrap;
 }

 .btn-primary-nav:hover {
   background: var(--primary-dark);
   transform: translateY(-1px);
   box-shadow: 0 6px 20px rgba(11, 110, 138, 0.45);
   color: white !important;
 }

 /* Mobile toggle */
 .mobile-toggle {
   display: none;
   flex-direction: column;
   justify-content: center;
   gap: 5px;
   width: 40px;
   height: 40px;
   border: none;
   background: var(--bg-light);
   border-radius: var(--radius-sm);
   cursor: pointer;
   padding: 8px;
 }

 .mobile-toggle span {
   display: block;
   width: 100%;
   height: 2px;
   background: var(--primary);
   border-radius: 2px;
   transition: var(--transition);
 }

 /* Sticky state */
 .site-header.scrolled .header-topbar {
   display: none;
 }

 .site-header.scrolled .header-main {
   box-shadow: var(--shadow-md);
 }

 /* ===========================
           MOBILE NAV DRAWER
        =========================== */
 .mobile-drawer {
   display: none;
   position: fixed;
   inset: 0;
   z-index: 999;
 }

 .drawer-backdrop {
   position: absolute;
   inset: 0;
   background: rgba(7, 24, 38, 0.55);
   backdrop-filter: blur(4px);
 }

 .drawer-panel {
   position: absolute;
   top: 0;
   right: 0;
   width: min(320px, 85vw);
   height: 100%;
   background: white;
   padding: 24px;
   overflow-y: auto;
   transform: translateX(100%);
   transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .mobile-drawer.open {
   display: block;
 }

 .mobile-drawer.open .drawer-panel {
   transform: translateX(0);
 }

 .drawer-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-bottom: 32px;
 }

 .drawer-close {
   width: 36px;
   height: 36px;
   border-radius: 50%;
   border: none;
   background: var(--bg-light);
   color: var(--text-mid);
   font-size: 18px;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .drawer-nav ul {
   list-style: none;
 }

 .drawer-nav li+li {
   border-top: 1px solid var(--border);
 }

 .drawer-nav a {
   display: block;
   padding: 14px 0;
   color: var(--text-dark);
   font-weight: 500;
   font-size: 15px;
   text-decoration: none;
   transition: color 0.2s;
 }

 .drawer-nav a:hover {
   color: var(--primary);
 }

 /* ===========================
           MAIN CONTENT OFFSET
        =========================== */
 .page-content {
   padding-top: 108px;
   /* topbar + header */
 }

 /* ===========================
           FOOTER
        =========================== */
 .site-footer {
   background: var(--text-dark);
   color: rgba(255, 255, 255, 0.75);
   font-size: 14.5px;
 }

 .footer-cta {
   background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
   padding: 48px 24px;
 }

 .footer-cta-inner {
   max-width: 1280px;
   margin: 0 auto;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 24px;
   flex-wrap: wrap;
 }

 .footer-cta h2 {
   font-family: var(--font-display);
   font-size: clamp(22px, 3vw, 30px);
   color: white;
   font-style: italic;
 }

 .footer-cta h2 span {
   font-style: normal;
 }

 .footer-cta-phone {
   display: flex;
   align-items: center;
   gap: 12px;
   background: rgba(255, 255, 255, 0.15);
   backdrop-filter: blur(8px);
   border: 1px solid rgba(255, 255, 255, 0.25);
   color: white;
   font-weight: 600;
   font-size: 18px;
   padding: 14px 28px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   white-space: nowrap;
 }

 .footer-cta-phone:hover {
   background: white;
   color: var(--primary);
 }

 .footer-cta-phone i {
   font-size: 18px;
   background: rgba(255, 255, 255, 0.2);
   width: 38px;
   height: 38px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .footer-body {
   max-width: 1280px;
   margin: 0 auto;
   padding: 64px 24px 40px;
   display: grid;
   grid-template-columns: 1.4fr 1fr 1fr;
   gap: 48px;
 }

 .footer-brand .footer-logo {
   height: 44px;
   width: auto;
   margin-bottom: 20px;
   filter: brightness(0) invert(1);
 }

 .footer-brand p {
   line-height: 1.7;
   color: rgba(255, 255, 255, 0.6);
   margin-bottom: 24px;
 }

 .footer-brand p strong {
   color: rgba(255, 255, 255, 0.85);
 }

 .footer-hours {
   background: rgba(255, 255, 255, 0.05);
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: var(--radius-md);
   padding: 16px 20px;
 }

 .footer-hours h6 {
   color: var(--accent);
   font-size: 11px;
   font-weight: 600;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   margin-bottom: 10px;
 }

 .footer-hours li {
   list-style: none;
   color: rgba(255, 255, 255, 0.65);
   font-size: 13.5px;
   padding: 3px 0;
 }

 .footer-col h4 {
   font-family: var(--font-body);
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--accent);
   margin-bottom: 24px;
 }

 .footer-info-list {
   list-style: none;
 }

 .footer-info-list li {
   display: flex;
   gap: 12px;
   margin-bottom: 16px;
   color: rgba(255, 255, 255, 0.65);
   font-size: 14px;
   line-height: 1.6;
 }

 .footer-info-list li i {
   color: var(--accent);
   font-size: 16px;
   margin-top: 2px;
   flex-shrink: 0;
 }

 .footer-info-list a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .footer-info-list a:hover {
   color: var(--accent);
 }

 .footer-links-list {
   list-style: none;
 }

 .footer-links-list li {
   padding: 5px 0;
 }

 .footer-links-list a {
   color: rgba(255, 255, 255, 0.6);
   text-decoration: none;
   font-size: 14.5px;
   transition: var(--transition);
   display: flex;
   align-items: center;
   gap: 8px;
 }

 .footer-links-list a::before {
   content: '';
   display: inline-block;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--primary-light);
   flex-shrink: 0;
   transition: var(--transition);
 }

 .footer-links-list a:hover {
   color: white;
   padding-left: 6px;
 }

 .footer-links-list a:hover::before {
   background: var(--accent);
 }

 .footer-bottom {
   border-top: 1px solid rgba(255, 255, 255, 0.08);
   padding: 24px;
 }

 .footer-bottom-inner {
   max-width: 1280px;
   margin: 0 auto;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   flex-wrap: wrap;
 }

 .footer-bottom p {
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.45);
 }

 .footer-bottom a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
 }

 .footer-bottom a:hover {
   color: var(--accent);
 }

 .footer-social {
   display: flex;
   gap: 10px;
 }

 .footer-social a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 36px;
   height: 36px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.07);
   border: 1px solid rgba(255, 255, 255, 0.1);
   color: rgba(255, 255, 255, 0.6);
   font-size: 14px;
   text-decoration: none;
   transition: var(--transition);
 }

 .footer-social a:hover {
   background: var(--accent);
   border-color: var(--accent);
   color: white;
   transform: translateY(-2px);
 }

 .footer-legal {
   display: flex;
   gap: 20px;
 }

 .footer-legal a {
   font-size: 13px;
   color: rgba(255, 255, 255, 0.4);
   text-decoration: none;
 }

 .footer-legal a:hover {
   color: rgba(255, 255, 255, 0.75);
 }

 /* ===========================
           RESPONSIVE
        =========================== */
 @media (max-width: 1024px) {
   .footer-body {
     grid-template-columns: 1fr 1fr;
   }

   .footer-brand {
     grid-column: span 2;
   }
 }

 @media (max-width: 768px) {
   .topbar-left {
     display: none;
   }

   .main-nav {
     display: none;
   }

   .mobile-toggle {
     display: flex;
   }

   .header-inner {
     height: 64px;
   }

   .page-content {
     padding-top: 96px;
   }

   .footer-body {
     grid-template-columns: 1fr;
   }

   .footer-brand {
     grid-column: span 1;
   }

   .footer-cta-inner {
     flex-direction: column;
     align-items: flex-start;
   }

   .footer-bottom-inner {
     flex-direction: column;
     align-items: flex-start;
     gap: 16px;
   }
 }

 /* About Page Css */
 /* =============================================
        ABOUT PAGE — Design System
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --accent-warm: #F4A261;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 60px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 *,
 *::before,
 *::after {
   box-sizing: border-box;
 }

 body {
   font-family: var(--font-body);
 }

 /* =============================================
        PAGE HERO BANNER
        ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.05) 0%, transparent 60%);
   pointer-events: none;
 }

 /* Decorative water rings */
 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.35);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
        SHARED
        ============================================= */
 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 10px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .section-label.light {
   color: rgba(255, 255, 255, 0.8);
 }

 .section-label.light::before {
   background: var(--accent);
 }

 .section-title {
   font-family: var(--font-display);
   font-size: clamp(26px, 3.5vw, 40px);
   color: var(--text-dark);
   line-height: 1.18;
   margin-bottom: 14px;
 }

 .section-title em {
   font-style: italic;
   color: var(--primary);
 }

 .section-title.light {
   color: white;
 }

 .page-section {
   padding: 88px 0;
 }

 .page-section-sm {
   padding: 64px 0;
 }

 .section-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
 }

 /* =============================================
        ABOUT INTRO
        ============================================= */
 .about-intro {
   padding: 88px 0;
 }

 .about-intro-grid {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 72px;
   align-items: center;
 }

 .about-img-wrap {
   position: relative;
 }

 .about-img-wrap img {
   width: 100%;
   border-radius: 28px;
   display: block;
   box-shadow: var(--shadow-lg);
   aspect-ratio: 4/3;
   object-fit: cover;
 }

 /* Corner accent */
 .about-img-wrap::before {
   content: '';
   position: absolute;
   top: -12px;
   left: -12px;
   width: 80px;
   height: 80px;
   border-top: 3px solid var(--accent);
   border-left: 3px solid var(--accent);
   border-radius: 8px 0 0 0;
   z-index: 2;
   pointer-events: none;
 }

 .about-img-wrap::after {
   content: '';
   position: absolute;
   bottom: -12px;
   right: -12px;
   width: 80px;
   height: 80px;
   border-bottom: 3px solid var(--primary-light);
   border-right: 3px solid var(--primary-light);
   border-radius: 0 0 8px 0;
   pointer-events: none;
 }

 .about-year-badge {
   position: absolute;
   bottom: 24px;
   left: -20px;
   background: var(--primary);
   color: white;
   padding: 18px 22px;
   border-radius: 20px;
   text-align: center;
   box-shadow: var(--shadow-md);
   z-index: 3;
 }

 .about-year-badge .yr {
   font-family: var(--font-display);
   font-size: 28px;
   line-height: 1;
   display: block;
 }

 .about-year-badge .yr-lbl {
   font-size: 10px;
   font-weight: 600;
   opacity: 0.8;
   text-transform: uppercase;
   letter-spacing: 0.1em;
 }

 .about-text-wrap {}

 .about-divider {
   width: 44px;
   height: 3px;
   background: linear-gradient(to right, var(--primary), var(--accent));
   border-radius: 3px;
   margin-bottom: 28px;
 }

 .about-text-wrap p {
   font-size: 15.5px;
   color: var(--text-mid);
   line-height: 1.85;
   margin-bottom: 18px;
 }

 /* Collapse extra text */
 .about-collapse-content {
   overflow: hidden;
 }

 .about-collapse-content p {
   margin-bottom: 14px;
 }

 .about-signature {
   font-family: var(--font-display);
   font-style: italic;
   color: var(--primary);
   font-size: 17px;
   margin-top: 8px;
 }

 .read-toggle {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 14px;
   font-weight: 600;
   color: var(--primary);
   background: none;
   border: none;
   padding: 0;
   cursor: pointer;
   transition: var(--transition);
   margin-top: 4px;
 }

 .read-toggle:hover {
   color: var(--primary-dark);
   gap: 12px;
 }

 .read-toggle i {
   font-size: 12px;
   transition: transform 0.3s;
 }

 .read-toggle.expanded i {
   transform: rotate(180deg);
 }

 /* =============================================
        OBJECTIVES — Card grid
        ============================================= */
 .objectives-section {
   padding: 88px 0;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .objectives-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 320px;
   height: 320px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .objectives-header {
   text-align: center;
   margin-bottom: 56px;
 }

 .objectives-header p {
   font-size: 15px;
   color: var(--text-light);
   margin-top: 8px;
 }

 .obj-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 20px;
 }

 .obj-card {
   background: white;
   border-radius: 20px;
   padding: 28px 24px;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
   display: flex;
   flex-direction: column;
   gap: 14px;
   transition: var(--transition);
   position: relative;
   overflow: hidden;
 }

 .obj-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 3px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
   transform: scaleX(0);
   transform-origin: left;
   transition: transform 0.4s ease;
 }

 .obj-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-4px);
 }

 .obj-card:hover::before {
   transform: scaleX(1);
 }

 .obj-icon {
   width: 52px;
   height: 52px;
   background: var(--bg-light);
   border-radius: 14px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--primary);
   font-size: 20px;
   transition: var(--transition);
   border: 1px solid var(--border);
 }

 .obj-card:hover .obj-icon {
   background: var(--primary);
   color: white;
   border-color: var(--primary);
 }

 .obj-card h3 {
   font-family: var(--font-display);
   font-size: 18px;
   color: var(--text-dark);
   line-height: 1.2;
 }

 .obj-card p {
   font-size: 14px;
   color: var(--text-light);
   line-height: 1.7;
   margin: 0;
 }

 /* =============================================
        MARQUEE TICKER
        ============================================= */
 .ticker-section {
   background: var(--text-dark);
   padding: 0;
   overflow: hidden;
 }

 .ticker-inner {
   display: flex;
   align-items: center;
   height: 56px;
 }

 .ticker-label {
   background: var(--accent);
   color: var(--text-dark);
   font-size: 11px;
   font-weight: 800;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 0 20px;
   height: 100%;
   display: flex;
   align-items: center;
   white-space: nowrap;
   flex-shrink: 0;
   gap: 8px;
 }

 .ticker-track {
   flex: 1;
   overflow: hidden;
   position: relative;
 }

 .ticker-track::before,
 .ticker-track::after {
   content: '';
   position: absolute;
   top: 0;
   bottom: 0;
   width: 48px;
   z-index: 2;
   pointer-events: none;
 }

 .ticker-track::before {
   left: 0;
   background: linear-gradient(to right, var(--text-dark), transparent);
 }

 .ticker-track::after {
   right: 0;
   background: linear-gradient(to left, var(--text-dark), transparent);
 }

 .ticker-items {
   display: flex;
   animation: ticker-scroll 30s linear infinite;
   width: max-content;
   gap: 0;
 }

 .ticker-items:hover {
   animation-play-state: paused;
 }

 .ticker-item {
   display: flex;
   align-items: center;
   gap: 10px;
   padding: 0 32px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.75);
   white-space: nowrap;
   border-right: 1px solid rgba(255, 255, 255, 0.08);
 }

 .ticker-item i {
   color: var(--accent);
   font-size: 13px;
   flex-shrink: 0;
 }

 @keyframes ticker-scroll {
   0% {
     transform: translateX(0);
   }

   100% {
     transform: translateX(-50%);
   }
 }

 /* =============================================
        WHY CHOOSE US — Dark feature section
        ============================================= */
 .chooseus-section {
   padding: 88px 0;
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);
   position: relative;
   overflow: hidden;
 }

 .chooseus-section::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 60% 80% at 0% 50%, rgba(0, 201, 167, 0.1) 0%, transparent 60%),
     radial-gradient(ellipse 50% 60% at 100% 0%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 /* Large decorative circle */
 .chooseus-bg-circle {
   position: absolute;
   width: 500px;
   height: 500px;
   border-radius: 50%;
   border: 80px solid rgba(255, 255, 255, 0.025);
   right: -150px;
   top: -150px;
   pointer-events: none;
 }

 .chooseus-inner {
   position: relative;
   z-index: 1;
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
 }

 .chooseus-header {
   text-align: center;
   margin-bottom: 56px;
 }

 .chooseus-header .section-title {
   color: white;
   font-size: clamp(24px, 3vw, 38px);
 }

 .chooseus-header p {
   color: rgba(255, 255, 255, 0.6);
   font-size: 15px;
   margin-top: 10px;
 }

 .chooseus-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 20px;
   max-width: 860px;
   margin: 0 auto;
 }

 .chooseus-card {
   background: rgba(255, 255, 255, 0.07);
   border: 1px solid rgba(255, 255, 255, 0.12);
   border-radius: 20px;
   padding: 32px 28px;
   backdrop-filter: blur(8px);
   transition: var(--transition);
   position: relative;
   overflow: hidden;
 }

 .chooseus-card::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   height: 3px;
   background: linear-gradient(90deg, var(--accent), transparent);
   transform: scaleX(0);
   transform-origin: left;
   transition: transform 0.4s ease;
 }

 .chooseus-card:hover {
   background: rgba(255, 255, 255, 0.11);
   transform: translateY(-3px);
 }

 .chooseus-card:hover::after {
   transform: scaleX(1);
 }

 .chooseus-card-icon {
   width: 56px;
   height: 56px;
   border-radius: 14px;
   background: rgba(0, 201, 167, 0.15);
   border: 1px solid rgba(0, 201, 167, 0.25);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--accent);
   font-size: 22px;
   margin-bottom: 18px;
 }

 .chooseus-card h4 {
   font-family: var(--font-display);
   font-size: 20px;
   color: white;
   margin-bottom: 10px;
 }

 .chooseus-card p {
   font-size: 14px;
   color: rgba(255, 255, 255, 0.6);
   line-height: 1.75;
   margin: 0;
 }

 .chooseus-badge {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   margin-top: 16px;
   background: rgba(0, 201, 167, 0.15);
   border: 1px solid rgba(0, 201, 167, 0.3);
   color: var(--accent);
   font-size: 12px;
   font-weight: 700;
   padding: 5px 12px;
   border-radius: 100px;
 }

 /* =============================================
        BENEFITS SECTION
        ============================================= */
 .benefits-section {
   padding: 88px 0;
   background: var(--bg-white);
 }

 .benefits-header {
   margin-bottom: 56px;
 }

 .benefits-header p {
   font-size: 15px;
   color: var(--text-light);
   margin-top: 8px;
 }

 .benefits-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 20px;
 }

 .benefit-card {
   border-radius: 20px;
   padding: 28px 24px;
   border: 1px solid var(--border);
   display: flex;
   gap: 18px;
   align-items: flex-start;
   transition: var(--transition);
   position: relative;
   overflow: hidden;
   background: white;
 }

 .benefit-card::before {
   content: '';
   position: absolute;
   inset: 0;
   background: linear-gradient(135deg, var(--bg-light) 0%, white 60%);
   opacity: 0;
   transition: opacity 0.35s;
 }

 .benefit-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-3px);
   border-color: var(--primary-light);
 }

 .benefit-card:hover::before {
   opacity: 1;
 }

 .benefit-icon {
   width: 48px;
   height: 48px;
   border-radius: 12px;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 18px;
   flex-shrink: 0;
   position: relative;
   z-index: 1;
   transition: var(--transition);
 }

 .benefit-card:hover .benefit-icon {
   background: var(--accent);
   transform: rotate(-5deg) scale(1.1);
 }

 .benefit-text {
   position: relative;
   z-index: 1;
 }

 .benefit-text h3 {
   font-family: var(--font-display);
   font-size: 17px;
   color: var(--text-dark);
   margin-bottom: 7px;
   line-height: 1.2;
 }

 .benefit-text p {
   font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.7;
   margin: 0;
 }

 /* =============================================
        TEAM / HEAD SECTION
        ============================================= */
 .team-head-section {
   padding: 88px 0;
   background: var(--bg-light);
   text-align: center;
 }

 .team-image-frame {
   max-width: 920px;
   margin: 48px auto 0;
   border-radius: 28px;
   overflow: hidden;
   box-shadow: var(--shadow-lg);
   position: relative;
 }

 .team-image-frame img {
   width: 100%;
   display: block;
 }

 .team-image-frame::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 5px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
   z-index: 1;
 }

 /* =============================================
        RESPONSIVE
        ============================================= */
 @media (max-width: 1024px) {
   .about-intro-grid {
     grid-template-columns: 1fr;
     gap: 56px;
   }

   .about-img-wrap {
     max-width: 540px;
     margin: 0 auto;
   }

   .about-year-badge {
     left: 12px;
   }

   .obj-grid {
     grid-template-columns: repeat(2, 1fr);
   }

   .benefits-grid {
     grid-template-columns: repeat(2, 1fr);
   }

   .chooseus-grid {
     grid-template-columns: 1fr;
     max-width: 500px;
   }
 }

 @media (max-width: 767px) {
   .page-hero {
     padding: 60px 20px 52px;
   }

   .about-intro,
   .objectives-section,
   .chooseus-section,
   .benefits-section,
   .team-head-section {
     padding: 56px 0;
   }

   .obj-grid {
     grid-template-columns: 1fr;
     gap: 14px;
   }

   .benefits-grid {
     grid-template-columns: 1fr;
     gap: 14px;
   }

   .about-img-wrap::before,
   .about-img-wrap::after {
     display: none;
   }

   .about-year-badge {
     position: static;
     display: inline-flex;
     gap: 12px;
     align-items: center;
     margin-top: 16px;
     border-radius: 12px;
   }

   .about-year-badge .yr {
     font-size: 22px;
   }

   .ticker-label span {
     display: none;
   }
 }

 @media (max-width: 480px) {
   .section-title {
     font-size: clamp(22px, 6vw, 28px);
   }

   .obj-card,
   .benefit-card {
     padding: 20px 16px;
   }
 }

 /* Blog Detailed Page Css */
 /* =============================================
       BLOG DETAILS PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 56px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
        ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(28px, 4vw, 44px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.2;
   max-width: 700px;
   margin-left: auto;
   margin-right: auto;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       BLOG DETAILS SECTION
        ============================================= */
 .blog-details-section {
   padding: 80px 0 100px;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .blog-details-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 360px;
   height: 360px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.05) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .blog-details-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
   display: grid;
   grid-template-columns: 1fr 340px;
   gap: 36px;
   align-items: start;
 }

 /* =============================================
       MAIN ARTICLE
        ============================================= */
 .article-card {
   background: white;
   border-radius: 28px;
   overflow: hidden;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
 }

 /* Hero image */
 .article-image {
   position: relative;
   aspect-ratio: 16/8;
   overflow: hidden;
 }

 .article-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
 }

 .article-image-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(180deg, transparent 50%, rgba(7, 30, 46, 0.55) 100%);
   pointer-events: none;
 }

 /* Article body */
 .article-body {
   padding: 44px 44px 48px;
 }

 /* Meta row */
 .article-meta {
   display: flex;
   align-items: center;
   gap: 10px;
   flex-wrap: wrap;
   margin-bottom: 20px;
 }

 .meta-tag {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   background: rgba(11, 110, 138, 0.08);
   border: 1px solid rgba(11, 110, 138, 0.15);
   color: var(--primary);
   font-size: 10.5px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 4px 12px;
   border-radius: 100px;
 }

 .meta-date {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   font-size: 13px;
   color: var(--text-light);
   font-weight: 500;
 }

 .meta-date i {
   font-size: 12px;
   color: var(--accent);
 }

 .meta-read-time {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   font-size: 13px;
   color: var(--text-light);
 }

 .meta-read-time i {
   font-size: 12px;
   color: var(--text-light);
 }

 .meta-sep {
   width: 3px;
   height: 3px;
   border-radius: 50%;
   background: var(--border);
   flex-shrink: 0;
 }

 /* Title */
 .article-title {
   font-family: var(--font-display);
   font-size: clamp(22px, 3vw, 34px);
   color: var(--text-dark);
   line-height: 1.25;
   margin-bottom: 28px;
 }

 /* Divider */
 .article-divider {
   display: flex;
   align-items: center;
   gap: 12px;
   margin-bottom: 32px;
 }

 .article-divider::before,
 .article-divider::after {
   content: '';
   flex: 1;
   height: 1px;
   background: var(--border);
 }

 .article-divider-icon {
   width: 32px;
   height: 32px;
   border-radius: 50%;
   background: var(--bg-light);
   border: 1px solid var(--border);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--primary);
   font-size: 13px;
   flex-shrink: 0;
 }

 /* Rich content styles */
 .article-content {
   font-family: var(--font-body);
   font-size: 15.5px;
   line-height: 1.85;
   color: var(--text-mid);
 }

 .article-content h1,
 .article-content h2,
 .article-content h3,
 .article-content h4 {
   font-family: var(--font-display);
   color: var(--text-dark);
   margin-top: 36px;
   margin-bottom: 14px;
   line-height: 1.25;
 }

 .article-content h2 {
   font-size: 26px;
 }

 .article-content h3 {
   font-size: 22px;
 }

 .article-content h4 {
   font-size: 18px;
 }

 .article-content p {
   margin-bottom: 20px;
 }

 .article-content a {
   color: var(--primary);
   text-decoration: underline;
   text-underline-offset: 3px;
 }

 .article-content a:hover {
   color: var(--primary-dark);
 }

 .article-content img {
   max-width: 100%;
   height: auto;
   border-radius: 14px;
   margin: 24px 0;
   border: 1px solid var(--border);
 }

 .article-content ul,
 .article-content ol {
   padding-left: 24px;
   margin-bottom: 20px;
 }

 .article-content li {
   margin-bottom: 8px;
 }

 .article-content blockquote {
   border-left: 4px solid var(--primary);
   background: var(--bg-light);
   padding: 18px 22px;
   border-radius: 0 14px 14px 0;
   margin: 28px 0;
   font-style: italic;
   color: var(--text-mid);
   font-size: 16px;
 }

 .article-content strong {
   color: var(--text-dark);
   font-weight: 700;
 }

 .article-content code {
   background: var(--bg-light);
   padding: 2px 7px;
   border-radius: 5px;
   font-size: 13px;
   color: var(--primary);
   border: 1px solid var(--border);
 }

 .article-content pre {
   background: var(--text-dark);
   color: #e2e8f0;
   padding: 20px 22px;
   border-radius: 14px;
   overflow-x: auto;
   font-size: 13.5px;
   line-height: 1.7;
   margin: 24px 0;
 }

 .article-content pre code {
   background: none;
   border: none;
   padding: 0;
   color: inherit;
 }

 .article-content table {
   width: 100%;
   border-collapse: collapse;
   margin: 24px 0;
   font-size: 14.5px;
 }

 .article-content th {
   background: var(--bg-light);
   color: var(--text-dark);
   font-weight: 700;
   padding: 12px 16px;
   border: 1px solid var(--border);
   text-align: left;
 }

 .article-content td {
   padding: 11px 16px;
   border: 1px solid var(--border);
   color: var(--text-mid);
 }

 .article-content tr:nth-child(even) td {
   background: rgba(240, 247, 250, 0.5);
 }

 /* Article footer */
 .article-footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   margin-top: 40px;
   padding-top: 24px;
   border-top: 1px solid var(--border);
   flex-wrap: wrap;
 }

 .back-btn {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 13.5px;
   font-weight: 600;
   color: var(--text-mid);
   background: var(--bg-light);
   border: 1.5px solid var(--border);
   padding: 9px 18px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
 }

 .back-btn:hover {
   border-color: var(--primary);
   color: var(--primary);
 }

 .back-btn i {
   transition: transform 0.25s ease;
 }

 .back-btn:hover i {
   transform: translateX(-3px);
 }

 .share-row {
   display: flex;
   align-items: center;
   gap: 8px;
 }

 .share-label {
   font-size: 12.5px;
   color: var(--text-light);
   font-weight: 600;
 }

 .share-btn {
   width: 36px;
   height: 36px;
   border-radius: 50%;
   border: 1.5px solid var(--border);
   background: white;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--text-mid);
   font-size: 14px;
   text-decoration: none;
   transition: var(--transition);
 }

 .share-btn:hover {
   background: var(--primary);
   border-color: var(--primary);
   color: white;
   transform: translateY(-2px);
 }

 .share-btn.wa:hover {
   background: #25d366;
   border-color: #25d366;
 }

 .share-btn.fb:hover {
   background: #1877f2;
   border-color: #1877f2;
 }

 .share-btn.tw:hover {
   background: #1da1f2;
   border-color: #1da1f2;
 }

 /* =============================================
       SIDEBAR
        ============================================= */
 .blog-sidebar {
   display: flex;
   flex-direction: column;
   gap: 24px;
   position: sticky;
   top: 100px;
 }

 /* Sidebar widgets */
 .sidebar-widget {
   background: white;
   border-radius: 22px;
   border: 1px solid var(--border);
   overflow: hidden;
   box-shadow: var(--shadow-sm);
 }

 .widget-head {
   padding: 20px 22px 16px;
   border-bottom: 1px solid var(--border);
   display: flex;
   align-items: center;
   gap: 10px;
 }

 .widget-head-icon {
   width: 32px;
   height: 32px;
   border-radius: 9px;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 13px;
   flex-shrink: 0;
 }

 .widget-head h4 {
   font-family: var(--font-display);
   font-size: 17px;
   color: var(--text-dark);
   margin: 0;
   line-height: 1.2;
 }

 /* Latest posts */
 .latest-posts {
   padding: 8px 0;
 }

 .latest-post-item {
   display: flex;
   gap: 14px;
   align-items: flex-start;
   padding: 14px 20px;
   text-decoration: none;
   transition: var(--transition);
   border-bottom: 1px solid var(--border);
 }

 .latest-post-item:last-child {
   border-bottom: none;
 }

 .latest-post-item:hover {
   background: var(--bg-light);
 }

 .post-thumb {
   width: 66px;
   height: 66px;
   border-radius: 12px;
   overflow: hidden;
   flex-shrink: 0;
   background: var(--bg-light);
   border: 1px solid var(--border);
 }

 .post-thumb img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.4s ease;
 }

 .latest-post-item:hover .post-thumb img {
   transform: scale(1.08);
 }

 .post-info {}

 .post-date {
   font-size: 11px;
   color: var(--text-light);
   font-weight: 600;
   margin-bottom: 4px;
   display: flex;
   align-items: center;
   gap: 4px;
 }

 .post-date i {
   font-size: 10px;
   color: var(--accent);
 }

 .post-title {
   font-family: var(--font-display);
   font-size: 14px;
   color: var(--text-dark);
   line-height: 1.35;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
   transition: color 0.2s;
 }

 .latest-post-item:hover .post-title {
   color: var(--primary);
 }

 /* View all link */
 .widget-view-all {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 6px;
   padding: 14px;
   font-size: 13px;
   font-weight: 700;
   color: var(--primary);
   text-decoration: none;
   border-top: 1px solid var(--border);
   transition: var(--transition);
   background: var(--bg-light);
 }

 .widget-view-all:hover {
   color: var(--primary-dark);
   gap: 9px;
 }

 /* Contact widget */
 .contact-widget-body {
   padding: 22px;
   text-align: center;
 }

 .contact-widget-icon {
   width: 56px;
   height: 56px;
   border-radius: 50%;
   background: linear-gradient(135deg, var(--primary), var(--primary-light));
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 22px;
   margin: 0 auto 14px;
   box-shadow: 0 6px 18px rgba(11, 110, 138, 0.3);
 }

 .contact-widget-body h5 {
   font-family: var(--font-display);
   font-size: 17px;
   color: var(--text-dark);
   margin-bottom: 6px;
 }

 .contact-widget-body p {
   font-size: 13px;
   color: var(--text-light);
   line-height: 1.6;
   margin-bottom: 18px;
 }

 .btn-contact-widget {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 7px;
   background: var(--primary);
   color: white;
   font-size: 13.5px;
   font-weight: 700;
   padding: 11px 20px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   box-shadow: 0 4px 14px rgba(11, 110, 138, 0.28);
   font-family: var(--font-body);
 }

 .btn-contact-widget:hover {
   background: var(--primary-dark);
   color: white;
   gap: 10px;
 }

 /* =============================================
       RESPONSIVE
        ============================================= */
 @media (max-width: 1024px) {
   .blog-details-wrap {
     grid-template-columns: 1fr;
   }

   .blog-sidebar {
     position: static;
   }
 }

 @media (max-width: 767px) {
   .blog-details-section {
     padding: 52px 0 72px;
   }

   .article-body {
     padding: 28px 22px 32px;
   }

   .article-content {
     font-size: 15px;
   }

   .article-footer {
     flex-direction: column;
     align-items: flex-start;
   }
 }

 @media (max-width: 480px) {
   .article-body {
     padding: 20px 16px 24px;
   }
 }

 /* Blog Page Css */

 /* =============================================
       BLOG PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
     ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       BLOG SECTION
        ============================================= */
 .blog-section {
   padding: 88px 0 100px;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .blog-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 360px;
   height: 360px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .blog-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
 }

 /* Section header */
 .blog-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 16px;
   margin-bottom: 48px;
   flex-wrap: wrap;
 }

 .blog-header-left {}

 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 10px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .section-title {
   font-family: var(--font-display);
   font-size: clamp(26px, 3vw, 38px);
   color: var(--text-dark);
   line-height: 1.15;
   margin: 0;
 }

 .section-title em {
   font-style: italic;
   color: var(--primary);
 }

 .blog-count-pill {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: white;
   border: 1px solid var(--border);
   border-radius: 100px;
   padding: 8px 16px 8px 10px;
   box-shadow: var(--shadow-sm);
   white-space: nowrap;
 }

 .blog-count-pill .pill-icon {
   width: 28px;
   height: 28px;
   border-radius: 50%;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 11px;
 }

 .blog-count-pill span {
   font-size: 12.5px;
   color: var(--text-mid);
   font-weight: 500;
 }

 /* =============================================
       BLOG GRID
        ============================================= */
 .blog-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 28px;
 }

 .blog-card {
   background: var(--bg-white);
   border-radius: 24px;
   overflow: hidden;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
   display: flex;
   flex-direction: column;
   transition: var(--transition);
   position: relative;
 }

 .blog-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-5px);
   border-color: transparent;
 }

 /* Image */
 .blog-card-image {
   position: relative;
   overflow: hidden;
   aspect-ratio: 16/9;
   flex-shrink: 0;
 }

 .blog-card-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .blog-card:hover .blog-card-image img {
   transform: scale(1.06);
 }

 /* Top strip on hover */
 .blog-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 3px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
   transform: scaleX(0);
   transform-origin: left;
   transition: transform 0.4s ease;
   z-index: 2;
 }

 .blog-card:hover::before {
   transform: scaleX(1);
 }

 /* Read time badge */
 .blog-card-image .read-badge {
   position: absolute;
   bottom: 12px;
   right: 12px;
   background: rgba(7, 30, 46, 0.75);
   backdrop-filter: blur(6px);
   color: rgba(255, 255, 255, 0.85);
   font-size: 11px;
   font-weight: 600;
   padding: 4px 10px;
   border-radius: 100px;
   display: flex;
   align-items: center;
   gap: 5px;
 }

 .read-badge i {
   color: var(--accent);
   font-size: 10px;
 }

 /* Body */
 .blog-card-body {
   padding: 24px 24px 22px;
   display: flex;
   flex-direction: column;
   flex: 1;
   gap: 0;
 }

 .blog-meta {
   display: flex;
   align-items: center;
   gap: 12px;
   margin-bottom: 14px;
   flex-wrap: wrap;
 }

 .blog-meta-date {
   display: flex;
   align-items: center;
   gap: 5px;
   font-size: 11.5px;
   color: var(--text-light);
 }

 .blog-meta-date i {
   color: var(--primary);
   font-size: 11px;
 }

 .blog-meta-dot {
   width: 3px;
   height: 3px;
   border-radius: 50%;
   background: var(--border);
   flex-shrink: 0;
 }

 .blog-tag {
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--primary);
   background: var(--bg-light);
   padding: 3px 9px;
   border-radius: 100px;
   border: 1px solid var(--border);
 }

 /* Title */
 .blog-card-title {
   font-family: var(--font-display);
   font-size: 18.5px;
   line-height: 1.32;
   margin-bottom: 12px;
   color: var(--text-dark);
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 .blog-card-title a {
   text-decoration: none;
   color: inherit;
   transition: color 0.2s;
 }

 .blog-card-title a:hover {
   color: var(--primary);
 }

 /* Excerpt */
 .blog-card-excerpt {
   font-size: 14px;
   color: var(--text-light);
   line-height: 1.75;
   flex: 1;
   margin-bottom: 20px;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 /* Footer */
 .blog-card-footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding-top: 16px;
   border-top: 1px solid var(--border);
   margin-top: auto;
 }

 .btn-read-more {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   font-size: 13.5px;
   font-weight: 700;
   color: var(--primary);
   text-decoration: none;
   transition: var(--transition);
   padding: 8px 16px;
   border-radius: 100px;
   border: 1.5px solid var(--border);
 }

 .btn-read-more:hover {
   background: var(--primary);
   color: white;
   border-color: var(--primary);
   gap: 10px;
 }

 .blog-share-btn {
   width: 34px;
   height: 34px;
   border-radius: 50%;
   background: var(--bg-light);
   border: 1px solid var(--border);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--text-light);
   font-size: 13px;
   cursor: pointer;
   transition: var(--transition);
   text-decoration: none;
 }

 .blog-share-btn:hover {
   background: var(--accent);
   border-color: var(--accent);
   color: white;
 }

 /* Empty state */
 .blog-empty {
   grid-column: 1 / -1;
   text-align: center;
   padding: 72px 24px;
   background: white;
   border-radius: 24px;
   border: 1px dashed var(--border);
 }

 .blog-empty-icon {
   width: 72px;
   height: 72px;
   border-radius: 50%;
   background: var(--bg-light);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--text-light);
   font-size: 28px;
   margin: 0 auto 20px;
 }

 .blog-empty h3 {
   font-family: var(--font-display);
   font-size: 22px;
   color: var(--text-dark);
   margin-bottom: 8px;
 }

 .blog-empty p {
   font-size: 14px;
   color: var(--text-light);
 }

 /* =============================================
       PAGINATION
      ============================================= */
 .blog-pagination {
   margin-top: 56px;
   display: flex;
   justify-content: center;
 }

 /* Override Laravel's default pagination */
 .blog-pagination nav>div:first-child {
   display: none;
 }

 .blog-pagination .pagination {
   display: flex;
   align-items: center;
   gap: 6px;
   list-style: none;
   padding: 0;
   margin: 0;
   flex-wrap: wrap;
   justify-content: center;
 }

 .blog-pagination .page-item .page-link {
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 40px;
   height: 40px;
   padding: 0 14px;
   border-radius: 10px;
   font-family: var(--font-body);
   font-size: 14px;
   font-weight: 500;
   color: var(--text-mid);
   background: white;
   border: 1.5px solid var(--border);
   text-decoration: none;
   transition: var(--transition);
 }

 .blog-pagination .page-item .page-link:hover {
   background: var(--bg-light);
   border-color: var(--primary-light);
   color: var(--primary);
 }

 .blog-pagination .page-item.active .page-link {
   background: var(--primary);
   border-color: var(--primary);
   color: white;
   box-shadow: 0 4px 12px rgba(11, 110, 138, 0.3);
 }

 .blog-pagination .page-item.disabled .page-link {
   opacity: 0.4;
   cursor: not-allowed;
 }

 /* =============================================
       RESPONSIVE
       ============================================= */
 @media (max-width: 1024px) {
   .blog-grid {
     grid-template-columns: repeat(2, 1fr);
     gap: 22px;
   }
 }

 @media (max-width: 767px) {
   .blog-section {
     padding: 56px 0 72px;
   }

   .blog-header {
     flex-direction: column;
     align-items: flex-start;
     gap: 14px;
   }

   .blog-grid {
     grid-template-columns: 1fr;
     gap: 18px;
   }

   .page-hero {
     padding: 60px 20px 52px;
   }
 }

 @media (max-width: 480px) {
   .blog-card-body {
     padding: 18px 18px 16px;
   }
 }

 /* Contact Page Css */

 /* =============================================
       CONTACT PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 24px 64px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
     ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       QUICK STATS BAR
     ============================================= */
 .contact-stats-bar {
   background: var(--primary-dark);
   padding: 0;
   border-bottom: 1px solid rgba(255, 255, 255, 0.06);
 }

 .stats-bar-inner {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   display: flex;
   align-items: stretch;
   justify-content: center;
 }

 .stat-item {
   display: flex;
   align-items: center;
   gap: 12px;
   padding: 18px 36px;
   border-right: 1px solid rgba(255, 255, 255, 0.07);
   transition: background 0.2s;
 }

 .stat-item:first-child {
   border-left: 1px solid rgba(255, 255, 255, 0.07);
 }

 .stat-item:hover {
   background: rgba(255, 255, 255, 0.04);
 }

 .stat-icon {
   width: 36px;
   height: 36px;
   border-radius: 10px;
   background: rgba(0, 201, 167, 0.15);
   border: 1px solid rgba(0, 201, 167, 0.2);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--accent);
   font-size: 14px;
   flex-shrink: 0;
 }

 .stat-text strong {
   display: block;
   font-size: 13px;
   font-weight: 600;
   color: white;
   line-height: 1.3;
   font-family: var(--font-body);
 }

 .stat-text span {
   font-size: 11px;
   color: rgba(255, 255, 255, 0.45);
   font-family: var(--font-body);
 }

 /* =============================================
       CONTACT MAIN SECTION
      ============================================= */
 .contact-section {
   padding: 88px 0;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .contact-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 360px;
   height: 360px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .contact-section::after {
   content: '';
   position: absolute;
   bottom: -60px;
   left: -60px;
   width: 260px;
   height: 260px;
   background: radial-gradient(circle, rgba(0, 201, 167, 0.05) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .contact-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
   display: grid;
   grid-template-columns: 5fr 7fr;
   gap: 40px;
   align-items: start;
 }

 /* =============================================
       LEFT — INFO PANEL
     ============================================= */
 .contact-info-panel {
   display: flex;
   flex-direction: column;
   gap: 20px;
 }

 .info-panel-head {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);
   border-radius: 24px;
   padding: 36px 32px;
   position: relative;
   overflow: hidden;
 }

 .info-panel-head::before {
   content: '';
   position: absolute;
   top: -40px;
   right: -40px;
   width: 180px;
   height: 180px;
   border-radius: 50%;
   border: 32px solid rgba(255, 255, 255, 0.05);
   pointer-events: none;
 }

 .info-panel-head::after {
   content: '';
   position: absolute;
   bottom: -30px;
   left: -30px;
   width: 130px;
   height: 130px;
   border-radius: 50%;
   background: rgba(0, 201, 167, 0.08);
   pointer-events: none;
 }

 .info-panel-head-inner {
   position: relative;
   z-index: 1;
 }

 .info-panel-tag {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background: rgba(0, 201, 167, 0.15);
   border: 1px solid rgba(0, 201, 167, 0.3);
   color: var(--accent);
   font-size: 10.5px;
   font-weight: 700;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   padding: 4px 12px;
   border-radius: 100px;
   margin-bottom: 14px;
 }

 .info-panel-head h3 {
   font-family: var(--font-display);
   font-size: 24px;
   color: white;
   margin-bottom: 8px;
   line-height: 1.2;
 }

 .info-panel-head p {
   font-size: 14px;
   color: rgba(255, 255, 255, 0.6);
   line-height: 1.7;
   margin: 0;
 }

 /* Social row */
 .info-social-row {
   display: flex;
   gap: 10px;
   margin-top: 24px;
 }

 .info-social-btn {
   width: 38px;
   height: 38px;
   border-radius: 10px;
   background: rgba(255, 255, 255, 0.1);
   border: 1px solid rgba(255, 255, 255, 0.15);
   display: flex;
   align-items: center;
   justify-content: center;
   color: rgba(255, 255, 255, 0.7);
   font-size: 15px;
   text-decoration: none;
   transition: var(--transition);
 }

 .info-social-btn:hover {
   background: var(--accent);
   border-color: var(--accent);
   color: white;
   transform: translateY(-2px);
 }

 /* Contact cards */
 .contact-info-cards {
   display: flex;
   flex-direction: column;
   gap: 12px;
 }

 .contact-info-card {
   background: white;
   border: 1px solid var(--border);
   border-radius: 18px;
   padding: 20px 20px;
   display: flex;
   align-items: flex-start;
   gap: 16px;
   transition: var(--transition);
   text-decoration: none;
   position: relative;
   overflow: hidden;
 }

 .contact-info-card::before {
   content: '';
   position: absolute;
   left: 0;
   top: 0;
   bottom: 0;
   width: 3px;
   background: linear-gradient(to bottom, var(--primary), var(--accent));
   transform: scaleY(0);
   transform-origin: top;
   transition: transform 0.3s ease;
 }

 .contact-info-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateX(4px);
   border-color: var(--border);
 }

 .contact-info-card:hover::before {
   transform: scaleY(1);
 }

 .ci-icon {
   width: 46px;
   height: 46px;
   border-radius: 12px;
   background: var(--bg-light);
   border: 1px solid var(--border);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--primary);
   font-size: 18px;
   flex-shrink: 0;
   transition: var(--transition);
 }

 .contact-info-card:hover .ci-icon {
   background: var(--primary);
   color: white;
   border-color: var(--primary);
 }

 .ci-text {}

 .ci-label {
   font-size: 10.5px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--text-light);
   margin-bottom: 4px;
 }

 .ci-value {
   font-size: 14.5px;
   font-weight: 600;
   color: var(--text-dark);
   line-height: 1.5;
 }

 .ci-value a {
   color: inherit;
   text-decoration: none;
 }

 .ci-value a:hover {
   color: var(--primary);
 }

 /* Hours card */
 .hours-card {
   background: white;
   border: 1px solid var(--border);
   border-radius: 18px;
   padding: 20px 22px;
   display: flex;
   align-items: center;
   gap: 16px;
 }

 .hours-icon {
   width: 46px;
   height: 46px;
   border-radius: 12px;
   background: rgba(0, 201, 167, 0.1);
   border: 1px solid rgba(0, 201, 167, 0.2);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--accent);
   font-size: 18px;
   flex-shrink: 0;
 }

 .hours-info .hours-label {
   font-size: 10.5px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--text-light);
   margin-bottom: 4px;
 }

 .hours-list {
   display: flex;
   flex-direction: column;
   gap: 2px;
 }

 .hours-row {
   display: flex;
   gap: 8px;
   font-size: 13.5px;
   color: var(--text-dark);
   font-weight: 500;
 }

 .hours-row span:last-child {
   color: var(--text-light);
 }

 /* =============================================
       RIGHT — FORM PANEL
      ============================================= */
 .contact-form-panel {
   background: white;
   border-radius: 28px;
   padding: 44px 40px;
   box-shadow: var(--shadow-md);
   border: 1px solid var(--border);
   position: sticky;
   top: 100px;
 }

 .form-panel-header {
   margin-bottom: 32px;
   padding-bottom: 24px;
   border-bottom: 1px solid var(--border);
 }

 .form-panel-header h3 {
   font-family: var(--font-display);
   font-size: 26px;
   color: var(--text-dark);
   margin-bottom: 6px;
 }

 .form-panel-header p {
   font-size: 14px;
   color: var(--text-light);
   margin: 0;
 }

 .response-promise {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background: rgba(0, 201, 167, 0.08);
   border: 1px solid rgba(0, 201, 167, 0.2);
   border-radius: 100px;
   padding: 4px 12px;
   font-size: 12px;
   font-weight: 600;
   color: var(--accent);
   margin-top: 10px;
 }

 .response-promise i {
   font-size: 11px;
 }

 /* =============================================
       MAP SECTION
       ============================================= */
 .map-section {
   position: relative;
   overflow: hidden;
 }

 .map-section::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 5px;
   background: linear-gradient(90deg, var(--primary), var(--accent), var(--primary));
   z-index: 2;
 }

 .map-section iframe {
   display: block;
   width: 100%;
   height: 480px;
   border: 0;
   filter: grayscale(15%) contrast(1.05);
 }

 .map-overlay-card {
   position: absolute;
   bottom: 32px;
   left: 50%;
   transform: translateX(-50%);
   background: white;
   border-radius: 18px;
   padding: 16px 24px;
   box-shadow: var(--shadow-lg);
   display: flex;
   align-items: center;
   gap: 14px;
   z-index: 3;
   white-space: nowrap;
   border: 1px solid var(--border);
 }

 .map-overlay-icon {
   width: 42px;
   height: 42px;
   border-radius: 12px;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 18px;
   flex-shrink: 0;
 }

 .map-overlay-text strong {
   display: block;
   font-size: 14px;
   font-weight: 700;
   color: var(--text-dark);
   font-family: var(--font-body);
   margin-bottom: 2px;
 }

 .map-overlay-text span {
   font-size: 12px;
   color: var(--text-light);
 }

 .map-directions-btn {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background: var(--primary);
   color: white;
   font-size: 12.5px;
   font-weight: 700;
   padding: 9px 16px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   white-space: nowrap;
   flex-shrink: 0;
 }

 .map-directions-btn:hover {
   background: var(--primary-dark);
   color: white;
 }

 /* =============================================
       RESPONSIVE
     ============================================= */
 @media (max-width: 1024px) {
   .contact-wrap {
     grid-template-columns: 1fr;
   }

   .contact-form-panel {
     position: static;
   }

   .stats-bar-inner {
     flex-wrap: wrap;
   }

   .stat-item {
     flex: 1;
     min-width: 160px;
     border: none;
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
   }
 }

 @media (max-width: 767px) {
   .contact-section {
     padding: 56px 0;
   }

   .contact-form-panel {
     padding: 28px 20px;
   }

   .info-panel-head {
     padding: 28px 24px;
   }

   .map-section iframe {
     height: 340px;
   }

   .map-overlay-card {
     display: none;
   }

   .stats-bar-inner {
     flex-direction: column;
   }

   .stat-item {
     border: none;
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
     padding: 14px 20px;
   }
 }

 @media (max-width: 480px) {
   .contact-form-panel {
     padding: 22px 16px;
   }
 }

 /* Event Page Css */

 /* =============================================
       EVENTS PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --accent-warm: #F4A261;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 56px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
        ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       EVENTS SECTION
        ============================================= */
 .events-section {
   padding: 88px 0 100px;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .events-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 360px;
   height: 360px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .events-section::after {
   content: '';
   position: absolute;
   bottom: -60px;
   left: -60px;
   width: 260px;
   height: 260px;
   background: radial-gradient(circle, rgba(0, 201, 167, 0.05) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .events-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
 }

 /* Section header */
 .events-page-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 16px;
   margin-bottom: 48px;
   flex-wrap: wrap;
 }

 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 10px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .section-title {
   font-family: var(--font-display);
   font-size: clamp(26px, 3vw, 38px);
   color: var(--text-dark);
   line-height: 1.15;
   margin: 0;
 }

 .section-title em {
   font-style: italic;
   color: var(--primary);
 }

 .events-count-pill {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: white;
   border: 1px solid var(--border);
   border-radius: 100px;
   padding: 8px 16px 8px 10px;
   box-shadow: var(--shadow-sm);
   white-space: nowrap;
   flex-shrink: 0;
 }

 .events-count-pill .pill-icon {
   width: 28px;
   height: 28px;
   border-radius: 50%;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 11px;
 }

 .events-count-pill span {
   font-size: 12.5px;
   color: var(--text-mid);
   font-weight: 500;
 }

 /* =============================================
       EVENTS GRID
     ============================================= */
 .events-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 28px;
 }

 /* =============================================
       EVENT CARD
     ============================================= */
 .event-card {
   background: var(--bg-white);
   border-radius: 24px;
   overflow: hidden;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
   display: flex;
   flex-direction: column;
   transition: var(--transition);
   position: relative;
 }

 .event-card:hover {
   box-shadow: var(--shadow-lg);
   transform: translateY(-5px);
   border-color: transparent;
 }

 /* Animated top bar */
 .event-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 3px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
   transform: scaleX(0);
   transform-origin: left;
   transition: transform 0.4s ease;
   z-index: 3;
 }

 .event-card:hover::before {
   transform: scaleX(1);
 }

 /* Image */
 .event-card-image {
   position: relative;
   overflow: hidden;
   aspect-ratio: 16/8;
   flex-shrink: 0;
 }

 .event-card-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .event-card:hover .event-card-image img {
   transform: scale(1.06);
 }

 /* Badge row on image */
 .event-badge-row {
   position: absolute;
   top: 14px;
   left: 14px;
   right: 14px;
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
   gap: 8px;
   z-index: 2;
 }

 .badge-type {
   background: rgba(7, 79, 101, 0.85);
   backdrop-filter: blur(6px);
   color: white;
   font-size: 10.5px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 5px 12px;
   border-radius: 100px;
 }

 .badge-price {
   font-size: 12px;
   font-weight: 700;
   padding: 5px 12px;
   border-radius: 100px;
   display: flex;
   align-items: center;
   gap: 4px;
 }

 .badge-price.free {
   background: var(--accent);
   color: white;
 }

 .badge-price.paid {
   background: var(--accent-warm);
   color: white;
 }

 /* Date strip at bottom of image */
 .event-date-strip {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   background: linear-gradient(to top, rgba(7, 30, 46, 0.85), transparent);
   padding: 28px 16px 14px;
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 8px;
   z-index: 2;
 }

 .event-date-pill {
   display: flex;
   align-items: center;
   gap: 6px;
   background: rgba(255, 255, 255, 0.12);
   backdrop-filter: blur(8px);
   border: 1px solid rgba(255, 255, 255, 0.2);
   color: white;
   font-size: 12px;
   font-weight: 600;
   padding: 5px 12px;
   border-radius: 100px;
 }

 .event-date-pill i {
   font-size: 11px;
   color: var(--accent);
 }

 .event-location-pill {
   display: flex;
   align-items: center;
   gap: 5px;
   color: rgba(255, 255, 255, 0.8);
   font-size: 11.5px;
   max-width: 55%;
   overflow: hidden;
   white-space: nowrap;
   text-overflow: ellipsis;
 }

 .event-location-pill i {
   font-size: 11px;
   color: var(--accent);
   flex-shrink: 0;
 }

 /* Body */
 .event-card-body {
   padding: 24px 24px 22px;
   display: flex;
   flex-direction: column;
   flex: 1;
 }

 .event-card-title {
   font-family: var(--font-display);
   font-size: 20px;
   color: var(--text-dark);
   line-height: 1.28;
   margin-bottom: 12px;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 .event-card-title a {
   text-decoration: none;
   color: inherit;
   transition: color 0.2s;
 }

 .event-card-title a:hover {
   color: var(--primary);
 }

 .event-card-desc {
   font-size: 14px;
   color: var(--text-light);
   line-height: 1.75;
   flex: 1;
   margin-bottom: 20px;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 /* Footer */
 .event-card-footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 12px;
   padding-top: 18px;
   border-top: 1px solid var(--border);
   margin-top: auto;
   flex-wrap: wrap;
 }

 .btn-register {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: var(--primary);
   color: white;
   font-size: 13.5px;
   font-weight: 700;
   padding: 11px 22px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   box-shadow: 0 4px 14px rgba(11, 110, 138, 0.28);
 }

 .btn-register:hover {
   background: var(--primary-dark);
   color: white;
   gap: 12px;
   box-shadow: 0 6px 20px rgba(11, 110, 138, 0.4);
 }

 .btn-register.paid-btn {
   background: var(--accent-warm);
   box-shadow: 0 4px 14px rgba(244, 162, 97, 0.3);
 }

 .btn-register.paid-btn:hover {
   background: #e08a3a;
   box-shadow: 0 6px 20px rgba(244, 162, 97, 0.45);
 }

 .event-price-display {
   display: flex;
   align-items: center;
   gap: 4px;
   font-family: var(--font-display);
   font-size: 20px;
   color: var(--text-dark);
   font-weight: 700;
 }

 .event-price-display .currency {
   font-size: 13px;
   color: var(--text-light);
   font-family: var(--font-body);
   font-weight: 600;
   align-self: flex-start;
   margin-top: 4px;
 }

 .event-price-free {
   font-size: 14px;
   font-weight: 700;
   color: var(--accent);
   background: rgba(0, 201, 167, 0.1);
   border: 1px solid rgba(0, 201, 167, 0.25);
   padding: 5px 14px;
   border-radius: 100px;
 }

 /* =============================================
       EMPTY STATE
     ============================================= */
 .events-empty {
   grid-column: 1 / -1;
   text-align: center;
   padding: 80px 24px;
   background: white;
   border-radius: 24px;
   border: 1px dashed var(--border);
 }

 .events-empty-icon {
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background: var(--bg-light);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--text-light);
   font-size: 30px;
   margin: 0 auto 20px;
 }

 .events-empty h3 {
   font-family: var(--font-display);
   font-size: 24px;
   color: var(--text-dark);
   margin-bottom: 8px;
 }

 .events-empty p {
   font-size: 14.5px;
   color: var(--text-light);
   line-height: 1.7;
 }

 /* =============================================
       PAGINATION
        ============================================= */
 .events-pagination {
   margin-top: 56px;
   display: flex;
   justify-content: center;
 }

 .events-pagination nav>div:first-child {
   display: none;
 }

 .events-pagination .pagination {
   display: flex;
   align-items: center;
   gap: 6px;
   list-style: none;
   padding: 0;
   margin: 0;
   flex-wrap: wrap;
   justify-content: center;
 }

 .events-pagination .page-item .page-link {
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 40px;
   height: 40px;
   padding: 0 14px;
   border-radius: 10px;
   font-family: var(--font-body);
   font-size: 14px;
   font-weight: 500;
   color: var(--text-mid);
   background: white;
   border: 1.5px solid var(--border);
   text-decoration: none;
   transition: var(--transition);
 }

 .events-pagination .page-item .page-link:hover {
   background: var(--bg-light);
   border-color: var(--primary-light);
   color: var(--primary);
 }

 .events-pagination .page-item.active .page-link {
   background: var(--primary);
   border-color: var(--primary);
   color: white;
   box-shadow: 0 4px 12px rgba(11, 110, 138, 0.3);
 }

 .events-pagination .page-item.disabled .page-link {
   opacity: 0.4;
   cursor: not-allowed;
 }

 /* =============================================
       RESPONSIVE
        ============================================= */
 @media (max-width: 1024px) {
   .events-grid {
     grid-template-columns: 1fr;
     max-width: 680px;
     margin: 0 auto;
   }
 }

 @media (max-width: 767px) {
   .events-section {
     padding: 56px 0 72px;
   }

   .events-page-header {
     flex-direction: column;
     align-items: flex-start;
     gap: 14px;
   }

   .page-hero {
     padding: 60px 20px 52px;
   }

   .event-card-footer {
     flex-direction: column;
     align-items: stretch;
   }

   .event-card-footer .btn-register {
     justify-content: center;
   }
 }

 @media (max-width: 480px) {
   .event-card-body {
     padding: 18px 18px 16px;
   }

   .event-card-title {
     font-size: 18px;
   }

   .event-date-strip {
     flex-direction: column;
     align-items: flex-start;
     gap: 4px;
   }
 }

 /* Galler Page CSS */

 /* =============================================
       GALLERY PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 24px 64px rgba(11, 110, 138, 0.2);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
        ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       SECTION UTILITIES
     ============================================= */
 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 10px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .section-title {
   font-family: var(--font-display);
   font-size: clamp(26px, 3.5vw, 42px);
   color: var(--text-dark);
   line-height: 1.15;
   margin-bottom: 10px;
 }

 .section-title em {
   font-style: italic;
   color: var(--primary);
 }

 /* =============================================
       GALLERY SECTION
      ============================================= */
 .gallery-page-section {
   padding: 80px 0 100px;
   background: var(--text-dark);
   position: relative;
   overflow: hidden;
 }

 .gallery-page-section::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 60% at 5% 20%, rgba(11, 110, 138, 0.2) 0%, transparent 60%),
     radial-gradient(ellipse 40% 50% at 95% 80%, rgba(0, 201, 167, 0.08) 0%, transparent 60%);
   pointer-events: none;
 }

 .gallery-wrap {
   max-width: 1360px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
 }

 /* Header */
 .gallery-page-header {
   text-align: center;
   margin-bottom: 56px;
 }

 .gallery-page-header .section-label {
   color: var(--accent);
   justify-content: center;
 }

 .gallery-page-header .section-label::before {
   background: var(--accent);
 }

 .gallery-page-header .section-title {
   color: white;
 }

 .gallery-page-header p {
   font-size: 15px;
   color: rgba(255, 255, 255, 0.5);
   margin-top: 8px;
   max-width: 400px;
   margin-left: auto;
   margin-right: auto;
   line-height: 1.7;
 }

 /* Stats row */
 .gallery-stats {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 32px;
   margin-bottom: 48px;
   flex-wrap: wrap;
 }

 .gallery-stat {
   display: flex;
   align-items: center;
   gap: 10px;
   background: rgba(255, 255, 255, 0.06);
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: 100px;
   padding: 8px 18px 8px 10px;
 }

 .gallery-stat-icon {
   width: 32px;
   height: 32px;
   border-radius: 50%;
   background: rgba(0, 201, 167, 0.15);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--accent);
   font-size: 13px;
 }

 .gallery-stat-text {
   font-size: 13px;
   color: rgba(255, 255, 255, 0.6);
   font-family: var(--font-body);
 }

 .gallery-stat-text strong {
   color: rgba(255, 255, 255, 0.9);
   font-weight: 600;
 }

 /* =============================================
       MASONRY GRID
     ============================================= */
 .gallery-masonry {
   columns: 3;
   column-gap: 14px;
 }

 .gallery-masonry .g-item {
   break-inside: avoid;
   margin-bottom: 14px;
   border-radius: 16px;
   overflow: hidden;
   position: relative;
   cursor: pointer;
   display: block;
   background: rgba(255, 255, 255, 0.04);
 }

 .gallery-masonry .g-item img {
   width: 100%;
   height: auto;
   display: block;
   transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* Overlay */
 .gallery-masonry .g-item .g-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(180deg,
       rgba(7, 30, 46, 0) 35%,
       rgba(7, 30, 46, 0.8) 100%);
   opacity: 0;
   transition: opacity 0.4s ease;
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   padding: 20px 18px;
   gap: 6px;
 }

 .g-overlay .g-zoom {
   position: absolute;
   top: 16px;
   right: 16px;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.14);
   backdrop-filter: blur(8px);
   border: 1px solid rgba(255, 255, 255, 0.2);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 15px;
   transform: scale(0.7) rotate(-10deg);
   transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
 }

 .g-overlay .g-caption {
   font-family: var(--font-body);
   font-size: 13px;
   font-weight: 600;
   color: rgba(255, 255, 255, 0.9);
   transform: translateY(6px);
   opacity: 0;
   transition: all 0.3s ease 0.05s;
   letter-spacing: 0.02em;
 }

 .g-overlay .g-index {
   font-size: 11px;
   color: var(--accent);
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   transform: translateY(6px);
   opacity: 0;
   transition: all 0.3s ease;
 }

 /* Hover state */
 .g-item:hover img {
   transform: scale(1.06);
 }

 .g-item:hover .g-overlay {
   opacity: 1;
 }

 .g-item:hover .g-overlay .g-zoom {
   transform: scale(1) rotate(0deg);
 }

 .g-item:hover .g-overlay .g-caption {
   transform: translateY(0);
   opacity: 1;
 }

 .g-item:hover .g-overlay .g-index {
   transform: translateY(0);
   opacity: 1;
 }

 /* Featured (large) item styling */
 .g-item.featured {
   border: 1px solid rgba(0, 201, 167, 0.2);
 }

 .g-item.featured::before {
   content: 'Featured';
   position: absolute;
   top: 14px;
   left: 14px;
   background: var(--accent);
   color: var(--text-dark);
   font-size: 10px;
   font-weight: 800;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 4px 10px;
   border-radius: 100px;
   z-index: 3;
 }

 /* =============================================
       LIGHTBOX MODAL
     ============================================= */
 .gallery-lightbox {
   display: none;
   position: fixed;
   inset: 0;
   z-index: 9999;
   background: rgba(5, 15, 25, 0.96);
   backdrop-filter: blur(12px);
   align-items: center;
   justify-content: center;
   padding: 20px;
 }

 .gallery-lightbox.open {
   display: flex;
 }

 .lb-inner {
   position: relative;
   max-width: 1100px;
   width: 100%;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 16px;
 }

 .lb-img-wrap {
   position: relative;
   width: 100%;
   max-height: 78vh;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .lb-img-wrap img {
   max-width: 100%;
   max-height: 78vh;
   object-fit: contain;
   border-radius: 16px;
   box-shadow: 0 32px 80px rgba(0, 0, 0, 0.6);
   display: block;
 }

 .lb-close {
   position: absolute;
   top: -16px;
   right: -16px;
   width: 44px;
   height: 44px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.1);
   border: 1px solid rgba(255, 255, 255, 0.2);
   color: white;
   font-size: 18px;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition: var(--transition);
   z-index: 2;
 }

 .lb-close:hover {
   background: #ef4444;
   border-color: #ef4444;
   transform: rotate(90deg);
 }

 .lb-nav-btn {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   width: 48px;
   height: 48px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.08);
   border: 1px solid rgba(255, 255, 255, 0.15);
   color: white;
   font-size: 16px;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition: var(--transition);
   z-index: 2;
 }

 .lb-nav-btn:hover {
   background: var(--primary);
   border-color: var(--primary);
 }

 .lb-prev {
   left: -24px;
 }

 .lb-next {
   right: -24px;
 }

 .lb-footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding: 0 4px;
 }

 .lb-caption {
   font-family: var(--font-body);
   font-size: 14px;
   color: rgba(255, 255, 255, 0.7);
   font-weight: 500;
 }

 .lb-counter {
   font-size: 12px;
   color: rgba(255, 255, 255, 0.4);
   font-weight: 600;
   letter-spacing: 0.1em;
 }

 /* Dots */
 .lb-dots {
   display: flex;
   gap: 6px;
   justify-content: center;
 }

 .lb-dot {
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.2);
   cursor: pointer;
   transition: all 0.25s;
 }

 .lb-dot.active {
   background: var(--accent);
   width: 18px;
   border-radius: 3px;
 }

 /* =============================================
       RESPONSIVE
        ============================================= */
 @media (max-width: 1024px) {
   .gallery-masonry {
     columns: 2;
   }

   .lb-prev {
     left: 8px;
   }

   .lb-next {
     right: 8px;
   }
 }

 @media (max-width: 640px) {
   .gallery-masonry {
     columns: 2;
     column-gap: 8px;
   }

   .gallery-masonry .g-item {
     margin-bottom: 8px;
     border-radius: 10px;
   }

   .gallery-page-section {
     padding: 56px 0 72px;
   }

   .gallery-stats {
     gap: 12px;
   }

   .lb-nav-btn {
     display: none;
   }
 }

 @media (max-width: 400px) {
   .gallery-masonry {
     columns: 1;
   }
 }

 /* Home Page Css */
 /* =============================================
       CSS VARIABLES
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --accent-warm: #F4A261;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 60px rgba(11, 110, 138, 0.18);
   --radius-sm: 8px;
   --radius-md: 16px;
   --radius-lg: 24px;
   --radius-xl: 28px;
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       SHARED UTILITIES
     ============================================= */
 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 10px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .section-title {
   font-family: var(--font-display);
   font-size: clamp(24px, 3.5vw, 42px);
   color: var(--text-dark);
   line-height: 1.18;
   margin-bottom: 14px;
 }

 .section-title em {
   font-style: italic;
   color: var(--primary);
 }

 .section-container {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 20px;
 }

 .section-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 16px;
   margin-bottom: 40px;
   flex-wrap: wrap;
 }

 .view-all-link {
   font-size: 13.5px;
   font-weight: 600;
   color: var(--primary);
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   gap: 6px;
   white-space: nowrap;
   transition: var(--transition);
   padding: 8px 18px;
   border: 1.5px solid var(--border);
   border-radius: 100px;
 }

 .view-all-link:hover {
   border-color: var(--primary);
   gap: 10px;
 }

 /* =============================================
       HERO
        ============================================= */
 .hero-section {
   position: relative;
   overflow: hidden;
   background: var(--primary-dark);
 }

 .hero-section .banner-carousel img {
   width: 100%;
   /* height: 70vh; */
   /* min-height: 280px; */
   /* max-height: 640px;x`xx */
   object-fit: cover;
   display: block;
 }

 .hero-section::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   height: 100px;
   background: linear-gradient(to top, #fff, transparent);
   pointer-events: none;
 }

 /* =============================================
       ABOUT
     ============================================= */
 .about-section {
   padding: 80px 0;
 }

 .about-container {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 20px;
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 64px;
   align-items: center;
 }

 .about-image-wrap {
   position: relative;
 }

 .about-image-wrap img {
   width: 100%;
   border-radius: var(--radius-xl);
   display: block;
   box-shadow: var(--shadow-lg);
   aspect-ratio: 4/3;
   object-fit: cover;
 }

 .about-badge {
   position: absolute;
   bottom: -20px;
   right: -20px;
   background: var(--primary);
   color: white;
   padding: 18px 22px;
   border-radius: var(--radius-lg);
   text-align: center;
   box-shadow: var(--shadow-md);
 }

 .about-badge .num {
   font-family: var(--font-display);
   font-size: 30px;
   line-height: 1;
   display: block;
 }

 .about-badge .lbl {
   font-size: 11px;
   font-weight: 600;
   opacity: 0.85;
   text-transform: uppercase;
   letter-spacing: 0.08em;
 }

 .about-content p {
   color: var(--text-mid);
   font-size: 15px;
   line-height: 1.85;
   margin-bottom: 18px;
 }

 .about-divider {
   width: 44px;
   height: 3px;
   background: linear-gradient(to right, var(--primary), var(--accent));
   border-radius: 3px;
   margin-bottom: 28px;
 }

 .about-features {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 12px;
   margin-top: 28px;
 }

 .about-feature {
   display: flex;
   align-items: flex-start;
   gap: 12px;
   padding: 14px;
   background: var(--bg-light);
   border-radius: var(--radius-md);
   border: 1px solid var(--border);
 }

 .about-feature-icon {
   width: 38px;
   height: 38px;
   background: var(--primary);
   border-radius: var(--radius-sm);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 15px;
   flex-shrink: 0;
 }

 .about-feature-text strong {
   display: block;
   font-size: 13px;
   font-weight: 600;
   color: var(--text-dark);
   margin-bottom: 2px;
 }

 .about-feature-text span {
   font-size: 12px;
   color: var(--text-light);
 }

 /* =============================================
       EVENTS — Card grid + mobile carousel
        ============================================= */
 .events-section {
   padding: 80px 0;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .events-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 300px;
   height: 300px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 /* Grid: 3-col desktop, 2-col tablet, hidden on mobile (carousel takes over) */
 .events-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 24px;
 }

 .event-card {
   background: white;
   border-radius: var(--radius-xl);
   overflow: hidden;
   box-shadow: var(--shadow-sm);
   border: 1px solid var(--border);
   display: flex;
   flex-direction: column;
   transition: var(--transition);
   height: 100%;
 }

 .event-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-5px);
 }

 .event-card-image {
   position: relative;
   overflow: hidden;
   aspect-ratio: 16/9;
 }

 .event-card-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.5s ease;
 }

 .event-card:hover .event-card-image img {
   transform: scale(1.05);
 }

 .event-badge-row {
   position: absolute;
   top: 12px;
   left: 12px;
   right: 12px;
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
   gap: 8px;
 }

 .badge-type {
   background: rgba(7, 79, 101, 0.88);
   backdrop-filter: blur(6px);
   color: white;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 4px 10px;
   border-radius: 100px;
 }

 .badge-price {
   font-size: 11px;
   font-weight: 700;
   padding: 4px 10px;
   border-radius: 100px;
 }

 .badge-price.free {
   background: var(--accent);
   color: white;
 }

 .badge-price.paid {
   background: var(--accent-warm);
   color: white;
 }

 .event-card-body {
   padding: 20px;
   display: flex;
   flex-direction: column;
   flex: 1;
 }

 .event-meta {
   display: flex;
   gap: 12px;
   margin-bottom: 12px;
   flex-wrap: wrap;
 }

 .event-meta-item {
   display: flex;
   align-items: center;
   gap: 5px;
   font-size: 12px;
   color: var(--text-light);
 }

 .event-meta-item i {
   color: var(--primary);
   font-size: 11px;
 }

 .event-card-title {
   font-family: var(--font-display);
   font-size: 18px;
   color: var(--text-dark);
   margin-bottom: 10px;
   line-height: 1.3;
 }

 .event-card-title a {
   text-decoration: none;
   color: inherit;
 }

 .event-card-title a:hover {
   color: var(--primary);
 }

 .event-card-desc {
   font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.7;
   flex: 1;
   margin-bottom: 18px;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 .btn-register {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   background: var(--primary);
   color: white;
   font-size: 13px;
   font-weight: 600;
   padding: 10px 20px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
   align-self: flex-start;
 }

 .btn-register:hover {
   background: var(--primary-dark);
   color: white;
   gap: 10px;
 }

 /* Mobile carousel dots */
 .events-owl-wrap .owl-dots {
   margin-top: 24px !important;
   text-align: center;
 }

 .events-owl-wrap .owl-dot span {
   background: var(--border) !important;
   width: 8px !important;
   height: 8px !important;
   border-radius: 100px !important;
   margin: 0 4px !important;
   transition: all 0.3s !important;
 }

 .events-owl-wrap .owl-dot.active span {
   background: var(--primary) !important;
   width: 22px !important;
 }

 /* =============================================
       TEAM
     ============================================= */
 .team-section {
   padding: 80px 0;
   text-align: center;
 }

 .team-image-frame {
   margin-top: 40px;
   border-radius: var(--radius-xl);
   overflow: hidden;
   box-shadow: var(--shadow-lg);
   max-width: 900px;
   margin-left: auto;
   margin-right: auto;
 }

 .team-image-frame img {
   width: 100%;
   display: block;
 }

 /* =============================================
       QUOTE / CONTACT
     ============================================= */
 .quote-section {
   padding: 80px 0;
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 60%, var(--primary-light) 100%);
   position: relative;
   overflow: hidden;
 }

 .quote-section::before {
   content: '';
   position: absolute;
   top: -100px;
   left: -100px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle, rgba(255, 255, 255, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .quote-inner {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 20px;
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 64px;
   align-items: center;
   position: relative;
   z-index: 1;
 }

 .quote-text .section-label {
   color: var(--accent);
 }

 .quote-text .section-label::before {
   background: var(--accent);
 }

 .quote-text .section-title {
   color: white;
 }

 .quote-text p {
   color: rgba(255, 255, 255, 0.72);
   font-size: 15px;
   line-height: 1.85;
   margin-top: 14px;
 }

 .quote-form-wrap {
   background: white;
   border-radius: var(--radius-xl);
   padding: 36px;
   box-shadow: var(--shadow-lg);
 }

 /* =============================================
       GALLERY — Proper masonry-feel grid
        ============================================= */
 .gallery-section {
   padding: 80px 0;
   background: var(--bg-light);
 }

 .gallery-grid {
   display: grid;
   grid-template-columns: 2fr 1fr 1fr;
   grid-template-rows: 220px 220px;
   gap: 14px;
   margin-top: 40px;
 }

 /* Item 1: tall left (spans 2 rows) */
 .gallery-item:nth-child(1) {
   grid-row: span 2;
 }

 /* Item 5: wide bottom-middle (spans 2 cols) */
 .gallery-item:nth-child(5) {
   grid-column: span 2;
 }

 .gallery-item {
   border-radius: var(--radius-md);
   overflow: hidden;
   position: relative;
   cursor: pointer;
   background: var(--border);
   min-height: 0;
 }

 .gallery-item img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.5s ease;
 }

 .gallery-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(160deg, transparent 50%, rgba(7, 79, 101, 0.65));
   opacity: 0;
   transition: opacity 0.35s;
   display: flex;
   align-items: flex-end;
   justify-content: flex-end;
   padding: 16px;
 }

 .gallery-overlay i {
   color: white;
   font-size: 20px;
   transform: translateY(6px);
   transition: transform 0.3s;
 }

 .gallery-item:hover .gallery-overlay {
   opacity: 1;
 }

 .gallery-item:hover .gallery-overlay i {
   transform: translateY(0);
 }

 .gallery-item:hover img {
   transform: scale(1.07);
 }

 .gallery-cta {
   text-align: center;
   margin-top: 36px;
 }

 .btn-outline {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   border: 2px solid var(--primary);
   color: var(--primary);
   font-size: 14px;
   font-weight: 600;
   padding: 12px 28px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
 }

 .btn-outline:hover {
   background: var(--primary);
   color: white;
 }

 /* =============================================
       NEWS / BLOG
     ============================================= */
 .news-section {
   padding: 80px 0;
 }

 .news-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 24px;
   margin-top: 40px;
 }

 .news-card {
   background: white;
   border-radius: var(--radius-xl);
   overflow: hidden;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
   display: flex;
   flex-direction: column;
   transition: var(--transition);
 }

 .news-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-4px);
 }

 .news-card-image {
   overflow: hidden;
   aspect-ratio: 16/9;
 }

 .news-card-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.5s ease;
 }

 .news-card:hover .news-card-image img {
   transform: scale(1.05);
 }

 .news-card-body {
   padding: 22px;
   display: flex;
   flex-direction: column;
   flex: 1;
 }

 .news-date {
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--accent);
   margin-bottom: 8px;
 }

 .news-title {
   font-family: var(--font-display);
   font-size: 18px;
   color: var(--text-dark);
   line-height: 1.35;
   margin-bottom: 10px;
 }

 .news-title a {
   text-decoration: none;
   color: inherit;
 }

 .news-title a:hover {
   color: var(--primary);
 }

 .news-excerpt {
   font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.75;
   flex: 1;
   margin-bottom: 18px;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 .btn-text-link {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 13.5px;
   font-weight: 600;
   color: var(--primary);
   text-decoration: none;
   transition: var(--transition);
   align-self: flex-start;
 }

 .btn-text-link:hover {
   gap: 10px;
   color: var(--primary-dark);
 }

 /* =============================================
       RESPONSIVE — TABLET (≤1024px)
        ============================================= */
 @media (max-width: 1024px) {
   .about-container {
     grid-template-columns: 1fr;
     gap: 48px;
   }

   .about-image-wrap {
     max-width: 560px;
     margin: 0 auto;
   }

   .about-badge {
     right: 16px;
     bottom: -16px;
   }

   .events-grid {
     grid-template-columns: repeat(2, 1fr);
   }

   .gallery-grid {
     grid-template-columns: 1fr 1fr;
     grid-template-rows: repeat(3, 200px);
   }

   .gallery-item:nth-child(1) {
     grid-row: span 2;
   }

   .gallery-item:nth-child(5) {
     grid-column: span 1;
   }

   .quote-inner {
     grid-template-columns: 1fr;
     gap: 36px;
   }

   .news-grid {
     grid-template-columns: repeat(2, 1fr);
   }
 }

 /* =============================================
       RESPONSIVE — MOBILE (≤767px)
     ============================================= */
 @media (max-width: 767px) {

   .about-section,
   .events-section,
   .team-section,
   .quote-section,
   .gallery-section,
   .news-section {
     padding: 56px 0;
   }

   .section-header {
     flex-direction: column;
     align-items: flex-start;
     gap: 12px;
   }

   .section-title {
     font-size: clamp(22px, 6vw, 30px);
   }

   /* Hero */
   .hero-section .banner-carousel img {
     /* height: 52vw; */
     /* min-height: 220px; */
     /* max-height: 360px; */
   }

   /* About */
   .about-container {
     gap: 36px;
   }

   .about-features {
     grid-template-columns: 1fr;
     gap: 10px;
   }

   .about-badge {
     right: 12px;
     bottom: -12px;
     padding: 14px 18px;
   }

   .about-badge .num {
     font-size: 24px;
   }

   /* Events — hide grid, show carousel */
   .home-events-grid {
     display: none !important;
   }

   .events-grid {
     grid-template-columns: 1fr;
   }

   .events-owl-wrap {
     display: block !important;
   }

   /* Gallery — 2-col simple equal grid */
   .gallery-grid {
     grid-template-columns: repeat(2, 1fr);
     grid-template-rows: repeat(3, 150px);
     gap: 10px;
   }

   .gallery-item:nth-child(1) {
     grid-row: span 1;
   }

   .gallery-item:nth-child(5) {
     grid-column: span 1;
   }

   /* Quote */
   .quote-form-wrap {
     padding: 24px 16px;
   }

   /* News */
   .news-grid {
     grid-template-columns: 1fr;
     gap: 18px;
   }
 }

 /* =============================================
       RESPONSIVE — SMALL MOBILE (≤480px)
      ============================================= */
 @media (max-width: 480px) {
   .gallery-grid {
     grid-template-columns: 1fr;
     grid-template-rows: repeat(6, 180px);
   }

   .about-badge {
     display: none;
   }

   .hero-section .banner-carousel img {
     /* height: 60vw; */
     /* min-height: 200px; */
   }
 }

 /* Show/hide helpers for events */
 .events-owl-wrap {
   display: none;
 }

 /* Member Home Page  */
 /* ─── PAGE GLOBALS ──────────────────────────────────────── */
 .tw-section {
   padding: 5rem 0;
 }

 .tw-container {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 2rem;
 }

 .tw-section-label {
   display: inline-block;
   background: linear-gradient(90deg, rgba(0, 188, 212, 0.12), rgba(33, 150, 243, 0.08));
   color: var(--water-teal);
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 2.5px;
   text-transform: uppercase;
   padding: 6px 16px;
   border-radius: 50px;
   border: 1px solid rgba(0, 188, 212, 0.2);
   margin-bottom: 0.75rem;
 }

 .tw-section-title {
   font-family: 'Playfair Display', serif;
   font-size: clamp(1.75rem, 4vw, 2.75rem);
   color: var(--water-deep);
   font-weight: 700;
   line-height: 1.25;
 }

 .tw-section-title span {
   color: var(--water-teal);
 }

 /* ─── HERO / BANNER ─────────────────────────────────────── */
 .tw-hero {
   position: relative;
   overflow: hidden;
   background: var(--water-deep);
   min-height: 560px;
   display: flex;
   align-items: center;
 }

 .tw-hero-carousel {
   position: absolute;
   inset: 0;
 }

 .tw-hero-carousel img {
   width: 100%;
   height: 100%;
   object-fit: cover;

 }

 .tw-hero-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(135deg, rgba(10, 37, 64, 0.85) 0%, rgba(21, 101, 168, 0.5) 60%, transparent 100%);
 }

 .tw-hero-content {
   position: relative;
   z-index: 2;
   max-width: 1280px;
   margin: 0 auto;
   padding: 5rem 2rem;
   color: white;
 }

 .tw-hero-badge {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: rgba(0, 188, 212, 0.2);
   border: 1px solid rgba(0, 188, 212, 0.4);
   color: var(--water-teal);
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 2px;
   text-transform: uppercase;
   padding: 6px 16px;
   border-radius: 50px;
   margin-bottom: 1.25rem;
   backdrop-filter: blur(8px);
 }

 .tw-hero-badge::before {
   content: '';
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--water-teal);
   animation: pulse 2s infinite;
 }

 @keyframes pulse {

   0%,
   100% {
     opacity: 1;
     transform: scale(1);
   }

   50% {
     opacity: 0.5;
     transform: scale(1.4);
   }
 }

 .tw-hero h1 {
   font-family: 'Playfair Display', serif;
   font-size: clamp(2.2rem, 5vw, 3.75rem);
   font-weight: 700;
   line-height: 1.15;
   margin-bottom: 1rem;
   max-width: 620px;
 }

 .tw-hero h1 span {
   color: var(--accent-gold);
 }

 .tw-hero p {
   font-size: 1.05rem;
   color: rgba(255, 255, 255, 0.75);
   max-width: 480px;
   line-height: 1.7;
   margin-bottom: 2rem;
 }

 .tw-hero-actions {
   display: flex;
   gap: 1rem;
   flex-wrap: wrap;
 }

 .tw-btn-primary {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: linear-gradient(135deg, var(--water-mid), var(--water-bright));
   color: white;
   padding: 14px 28px;
   border-radius: 50px;
   text-decoration: none;
   font-weight: 600;
   font-size: 15px;
   box-shadow: 0 6px 24px rgba(21, 101, 168, 0.4);
   transition: all 0.3s;
 }

 .tw-btn-primary:hover {
   transform: translateY(-3px);
   box-shadow: 0 12px 32px rgba(21, 101, 168, 0.5);
   color: white;
 }

 .tw-btn-outline {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: rgba(255, 255, 255, 0.1);
   border: 2px solid rgba(255, 255, 255, 0.3);
   color: white;
   padding: 13px 28px;
   border-radius: 50px;
   text-decoration: none;
   font-weight: 600;
   font-size: 15px;
   backdrop-filter: blur(8px);
   transition: all 0.3s;
 }

 .tw-btn-outline:hover {
   background: rgba(255, 255, 255, 0.2);
   color: white;
   border-color: rgba(255, 255, 255, 0.5);
 }

 /* STATS BAR */
 .tw-stats-bar {
   background: white;
   box-shadow: 0 8px 40px rgba(10, 37, 64, 0.12);
   border-radius: 16px;
   margin: -2.5rem 2rem 0;
   position: relative;
   z-index: 5;
   max-width: 1000px;
   margin-left: auto;
   margin-right: auto;
 }

 .tw-stats-inner {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   divide-x: 1px solid #e8f4fd;
 }

 .tw-stat {
   padding: 1.75rem;
   text-align: center;
   border-right: 1px solid #e8f4fd;
 }

 .tw-stat:last-child {
   border-right: none;
 }

 .tw-stat .num {
   font-family: 'Playfair Display', serif;
   font-size: 2rem;
   font-weight: 700;
   color: var(--water-mid);
   line-height: 1;
   margin-bottom: 4px;
 }

 .tw-stat .label {
   font-size: 12px;
   color: var(--text-muted);
   font-weight: 500;
   letter-spacing: 0.5px;
 }

 @media (max-width: 700px) {
   .tw-stats-inner {
     grid-template-columns: repeat(2, 1fr);
   }

   .tw-stat:nth-child(2) {
     border-right: none;
   }
 }

 @media (max-width: 450px) {
   .tw-stats-inner {
     grid-template-columns: 1fr 1fr;
   }

   .tw-stats-bar {
     margin: -1rem 1rem 0;
   }
 }

 /* ─── ABOUT ─────────────────────────────────────────────── */
 .tw-about {
   background: white;
 }

 .tw-about-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 5rem;
   align-items: center;
 }

 .tw-about-img-wrap {
   position: relative;
 }

 .tw-about-img-wrap img {
   width: 100%;
   height: 460px;
   object-fit: cover;
   border-radius: 20px;
   box-shadow: 0 24px 64px rgba(10, 37, 64, 0.18);
 }

 .tw-about-img-badge {
   position: absolute;
   bottom: 24px;
   right: -24px;
   background: white;
   border-radius: 16px;
   padding: 16px 20px;
   box-shadow: 0 12px 32px rgba(10, 37, 64, 0.15);
   display: flex;
   align-items: center;
   gap: 12px;
 }

 .tw-about-img-badge .icon {
   width: 48px;
   height: 48px;
   border-radius: 12px;
   background: linear-gradient(135deg, var(--water-mid), var(--water-teal));
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 20px;
   flex-shrink: 0;
 }

 .tw-about-img-badge .text .num {
   font-family: 'Playfair Display', serif;
   font-size: 1.5rem;
   font-weight: 700;
   color: var(--water-deep);
   line-height: 1;
 }

 .tw-about-img-badge .text small {
   font-size: 11px;
   color: var(--text-muted);
 }

 .tw-about-text {}

 .tw-about-text p {
   color: var(--text-muted);
   line-height: 1.85;
   margin-top: 1.25rem;
   font-size: 15px;
 }

 .tw-features {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 12px;
   margin-top: 2rem;
 }

 .tw-feature-item {
   display: flex;
   align-items: flex-start;
   gap: 10px;
   padding: 14px;
   border-radius: 12px;
   background: var(--water-light);
   border: 1px solid rgba(33, 150, 243, 0.1);
 }

 .tw-feature-item i {
   color: var(--water-teal);
   font-size: 16px;
   margin-top: 2px;
   flex-shrink: 0;
 }

 .tw-feature-item span {
   font-size: 13px;
   font-weight: 500;
   color: var(--water-deep);
   line-height: 1.4;
 }

 @media (max-width: 900px) {
   .tw-about-grid {
     grid-template-columns: 1fr;
     gap: 2.5rem;
   }

   .tw-about-img-badge {
     right: 12px;
   }
 }

 /* ─── PRODUCTS ──────────────────────────────────────────── */
 .tw-products {
   background: #f7fafc;
 }

 .tw-products-head {
   text-align: center;
   margin-bottom: 3.5rem;
 }

 .tw-products-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 1.75rem;
 }

 .tw-product-card {
   background: white;
   border-radius: 20px;
   overflow: hidden;
   box-shadow: 0 4px 24px rgba(10, 37, 64, 0.07);
   border: 1px solid rgba(10, 37, 64, 0.06);
   transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
   display: flex;
   flex-direction: column;
 }

 .tw-product-card:hover {
   transform: translateY(-8px);
   box-shadow: 0 20px 56px rgba(10, 37, 64, 0.14);
 }

 .tw-product-img {
   height: 220px;
   overflow: hidden;
   position: relative;
   background: var(--water-light);
 }

 .tw-product-img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform 0.5s ease;
 }

 .tw-product-card:hover .tw-product-img img {
   transform: scale(1.08);
 }

 .tw-product-tag {
   position: absolute;
   top: 12px;
   left: 12px;
   background: white;
   color: var(--water-mid);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 1px;
   text-transform: uppercase;
   padding: 4px 10px;
   border-radius: 50px;
   box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
 }

 .tw-product-body {
   padding: 1.5rem;
   flex: 1;
   display: flex;
   flex-direction: column;
 }

 .tw-product-body h4 {
   font-family: 'Playfair Display', serif;
   font-size: 1.1rem;
   color: var(--water-deep);
   margin-bottom: 6px;
 }

 .tw-product-body .price {
   color: var(--water-mid);
   font-weight: 700;
   font-size: 1rem;
   margin-bottom: 10px;
 }

 .tw-product-body p {
   font-size: 13.5px;
   color: var(--text-muted);
   line-height: 1.65;
   flex: 1;
 }

 .tw-product-footer {
   padding: 0 1.5rem 1.5rem;
 }

 .tw-quote-btn {
   display: block;
   width: 100%;
   text-align: center;
   padding: 11px;
   border-radius: 10px;
   background: var(--water-light);
   color: var(--water-mid);
   text-decoration: none;
   font-weight: 600;
   font-size: 14px;
   border: 1.5px solid rgba(33, 150, 243, 0.2);
   transition: all 0.25s;
 }

 .tw-quote-btn:hover {
   background: linear-gradient(135deg, var(--water-mid), var(--water-bright));
   color: white;
   border-color: transparent;
   box-shadow: 0 4px 16px rgba(21, 101, 168, 0.3);
 }

 @media (max-width: 900px) {
   .tw-products-grid {
     grid-template-columns: repeat(2, 1fr);
   }
 }

 @media (max-width: 600px) {
   .tw-products-grid {
     grid-template-columns: 1fr;
   }
 }

 /* ─── CONTACT / QUOTE FORM ──────────────────────────────── */
 .tw-contact {
   background: white;
 }

 .tw-contact-grid {
   display: grid;
   grid-template-columns: 1fr 1.1fr;
   gap: 4rem;
   align-items: center;
 }

 .tw-contact-info h2 {
   margin-bottom: 1rem;
 }

 .tw-contact-info p {
   color: var(--text-muted);
   line-height: 1.8;
   font-size: 15px;
   margin-bottom: 2rem;
 }

 .tw-contact-points {
   display: flex;
   flex-direction: column;
   gap: 1rem;
 }

 .tw-contact-point {
   display: flex;
   align-items: center;
   gap: 14px;
   padding: 14px 18px;
   border-radius: 12px;
   background: var(--water-light);
   border: 1px solid rgba(33, 150, 243, 0.1);
 }

 .tw-contact-point .icon {
   width: 40px;
   height: 40px;
   background: linear-gradient(135deg, var(--water-mid), var(--water-teal));
   border-radius: 10px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 15px;
   flex-shrink: 0;
 }

 .tw-contact-point .text {}

 .tw-contact-point .text .label {
   font-size: 11px;
   color: var(--text-muted);
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: 1px;
 }

 .tw-contact-point .text a,
 .tw-contact-point .text span {
   display: block;
   color: var(--water-deep);
   font-weight: 600;
   font-size: 15px;
   text-decoration: none;
 }

 .tw-form-wrap {
   background: white;
   border-radius: 20px;
   padding: 2.5rem;
   box-shadow: 0 8px 48px rgba(10, 37, 64, 0.1);
   border: 1px solid rgba(10, 37, 64, 0.06);
 }

 @media (max-width: 900px) {
   .tw-contact-grid {
     grid-template-columns: 1fr;
     gap: 2.5rem;
   }
 }

 /* ─── GALLERY ───────────────────────────────────────────── */
 .tw-gallery {
   background: #f7fafc;
 }

 .tw-gallery-head {
   text-align: center;
   margin-bottom: 3rem;
 }

 .tw-gallery-grid {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   grid-template-rows: auto auto;
   gap: 12px;
 }

 .tw-gallery-item {
   overflow: hidden;
   border-radius: 16px;
   cursor: pointer;
 }

 .tw-gallery-item:nth-child(1) {
   grid-column: span 5;
   grid-row: span 2;
 }

 .tw-gallery-item:nth-child(2) {
   grid-column: span 4;
 }

 .tw-gallery-item:nth-child(3) {
   grid-column: span 3;
 }

 .tw-gallery-item:nth-child(4) {
   grid-column: span 3;
 }

 .tw-gallery-item:nth-child(5) {
   grid-column: span 4;
 }

 .tw-gallery-item img {
   width: 100%;
   height: 100%;
   min-height: 200px;
   object-fit: cover;
   transition: transform 0.5s ease;
   display: block;
 }

 .tw-gallery-item:hover img {
   transform: scale(1.06);
 }

 @media (max-width: 768px) {
   .tw-gallery-grid {
     grid-template-columns: 1fr 1fr;
   }

   .tw-gallery-item {
     grid-column: span 1 !important;
     grid-row: span 1 !important;
   }

   .tw-gallery-item img {
     min-height: 180px;
   }
 }

 /* ─── TESTIMONIALS ──────────────────────────────────────── */
 .tw-testimonials {
   background: linear-gradient(160deg, var(--water-deep) 0%, #0d3461 100%);
   position: relative;
   overflow: hidden;
 }

 .tw-testimonials::before {
   content: '"';
   position: absolute;
   top: -1rem;
   left: 2rem;
   font-family: 'Playfair Display', serif;
   font-size: 20rem;
   color: rgba(255, 255, 255, 0.03);
   line-height: 1;
   pointer-events: none;
 }

 .tw-testimonials .tw-section-title {
   color: white;
 }

 .tw-testimonials .tw-section-label {
   background: rgba(0, 188, 212, 0.15);
   border-color: rgba(0, 188, 212, 0.3);
 }

 .tw-testi-head {
   margin-bottom: 3rem;
 }

 .tw-testi-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 1.5rem;
 }

 .tw-testi-card {
   background: rgba(255, 255, 255, 0.06);
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: 20px;
   padding: 2rem;
   backdrop-filter: blur(8px);
   transition: all 0.3s;
 }

 .tw-testi-card:hover {
   background: rgba(255, 255, 255, 0.1);
   transform: translateY(-4px);
 }

 .tw-testi-stars {
   display: flex;
   gap: 3px;
   margin-bottom: 1rem;
 }

 .tw-testi-stars i {
   color: var(--accent-gold);
   font-size: 13px;
 }

 .tw-testi-card p {
   color: rgba(255, 255, 255, 0.8);
   font-size: 14.5px;
   line-height: 1.75;
   margin-bottom: 1.5rem;
   font-style: italic;
 }

 .tw-testi-author {
   display: flex;
   align-items: center;
   gap: 12px;
 }

 .tw-testi-avatar {
   width: 44px;
   height: 44px;
   border-radius: 50%;
   object-fit: cover;
   border: 2px solid rgba(255, 255, 255, 0.2);
 }

 .tw-testi-author .name {
   font-weight: 700;
   color: white;
   font-size: 15px;
 }

 .tw-testi-author .role {
   font-size: 12px;
   color: var(--water-teal);
   font-weight: 500;
 }

 @media (max-width: 900px) {
   .tw-testi-grid {
     grid-template-columns: 1fr 1fr;
   }
 }

 @media (max-width: 600px) {
   .tw-testi-grid {
     grid-template-columns: 1fr;
   }
 }

 /* Member List Page CSS */
 /* =============================================
       MEMBERS PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --bg-white: #FFFFFF;
   --border: #D6EAF2;
   --shadow-sm: 0 2px 12px rgba(11, 110, 138, 0.08);
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 20px 56px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* =============================================
       PAGE HERO
        ============================================= */
 .page-hero {
   background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 55%, var(--primary-light) 100%);
   padding: 80px 24px 72px;
   text-align: center;
   position: relative;
   overflow: hidden;
 }

 .page-hero::before {
   content: '';
   position: absolute;
   inset: 0;
   background:
     radial-gradient(ellipse 50% 70% at 10% 50%, rgba(0, 201, 167, 0.12) 0%, transparent 60%),
     radial-gradient(ellipse 40% 60% at 90% 30%, rgba(255, 255, 255, 0.04) 0%, transparent 60%);
   pointer-events: none;
 }

 .page-hero::after {
   content: '';
   position: absolute;
   bottom: -60px;
   right: -60px;
   width: 220px;
   height: 220px;
   border-radius: 50%;
   border: 40px solid rgba(255, 255, 255, 0.04);
   pointer-events: none;
 }

 .page-hero-inner {
   position: relative;
   z-index: 1;
 }

 .page-hero h1 {
   font-family: var(--font-display);
   font-size: clamp(32px, 5vw, 52px);
   color: white;
   margin-bottom: 16px;
   line-height: 1.1;
 }

 .breadcrumb-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   font-size: 13.5px;
   color: rgba(255, 255, 255, 0.65);
 }

 .breadcrumb-nav a {
   color: rgba(255, 255, 255, 0.65);
   text-decoration: none;
   transition: color 0.2s;
 }

 .breadcrumb-nav a:hover {
   color: var(--accent);
 }

 .breadcrumb-nav .sep {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.3);
 }

 .breadcrumb-nav .current {
   color: var(--accent);
   font-weight: 600;
 }

 /* =============================================
       MEMBERS SECTION
     ============================================= */
 .members-section {
   padding: 80px 0 100px;
   background: var(--bg-light);
   position: relative;
   overflow: hidden;
 }

 .members-section::before {
   content: '';
   position: absolute;
   top: -80px;
   right: -80px;
   width: 360px;
   height: 360px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.06) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .members-wrap {
   max-width: 1280px;
   margin: 0 auto;
   padding: 0 24px;
   position: relative;
   z-index: 1;
 }

 /* ── TOOLBAR ── */
 .members-toolbar {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   margin-bottom: 40px;
   flex-wrap: wrap;
 }

 .toolbar-left {}

 .section-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--primary);
   margin-bottom: 8px;
 }

 .section-label::before {
   content: '';
   display: block;
   width: 20px;
   height: 2px;
   background: var(--accent);
   border-radius: 2px;
   flex-shrink: 0;
 }

 .toolbar-title {
   font-family: var(--font-display);
   font-size: clamp(24px, 3vw, 36px);
   color: var(--text-dark);
   line-height: 1.15;
   margin: 0;
 }

 .toolbar-title em {
   font-style: italic;
   color: var(--primary);
 }

 .toolbar-right {
   display: flex;
   align-items: center;
   gap: 10px;
   flex-wrap: wrap;
 }

 /* Search input */
 .search-form {
   display: flex;
   align-items: center;
   background: white;
   border: 1.5px solid var(--border);
   border-radius: 100px;
   overflow: hidden;
   transition: var(--transition);
   box-shadow: var(--shadow-sm);
 }

 .search-form:focus-within {
   border-color: var(--primary);
   box-shadow: 0 0 0 3px rgba(11, 110, 138, 0.1);
 }

 .search-form input {
   border: none;
   outline: none;
   background: transparent;
   font-family: var(--font-body);
   font-size: 14px;
   color: var(--text-dark);
   padding: 10px 6px 10px 18px;
   width: 220px;
   min-width: 0;
 }

 .search-form input::placeholder {
   color: var(--text-light);
 }

.search-form select {
  border: none;
  outline: none;
  background: transparent;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-dark);
  padding: 10px 8px 10px 10px;
  min-width: 150px;
  border-left: 1px solid var(--border);
}

 .search-form .search-btn {
   width: 40px;
   height: 40px;
   background: var(--primary);
   border: none;
   border-radius: 100px;
   margin: 3px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 14px;
   cursor: pointer;
   transition: var(--transition);
   flex-shrink: 0;
 }

 .search-form .search-btn:hover {
   background: var(--primary-dark);
 }

.district-filter-form {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.district-filter-form select {
  height: 42px;
  min-width: 170px;
  border: 1.5px solid var(--border);
  border-radius: 100px;
  background: white;
  padding: 0 14px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-dark);
  outline: none;
}

.district-filter-form select:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(11, 110, 138, 0.1);
}

.district-filter-form .ts-wrapper {
  min-width: 220px;
  flex: 1;
}

/* Hide original select after Tom Select enhancement */
.district-filter-form select.tomselected,
.district-filter-form select.ts-hidden-accessible {
  display: none !important;
}

.district-filter-form .ts-wrapper .ts-control {
  min-height: 42px;
  border: 1.5px solid var(--border);
  border-radius: 100px;
  padding: 8px 12px;
  box-shadow: var(--shadow-sm);
  background: white;
}

.district-filter-form .ts-wrapper.focus .ts-control {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(11, 110, 138, 0.1);
}

.district-filter-form .ts-wrapper.single .ts-control input {
  font-family: var(--font-body);
  font-size: 14px;
}

.district-filter-form .ts-wrapper .ts-control > .item {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-dark);
}

.district-filter-form .ts-dropdown {
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(2, 6, 23, 0.12);
}

.district-filter-form .ts-dropdown .option {
  font-family: var(--font-body);
  font-size: 14px;
  padding: 9px 12px;
}

.district-filter-form .ts-dropdown .active {
  background: rgba(11, 110, 138, 0.1);
  color: var(--primary-dark);
}

.district-filter-form .btn-reset {
  height: 42px;
  padding: 0 14px;
  border-color: rgba(11, 110, 138, 0.22);
  color: var(--primary);
}

.district-filter-form .btn-reset:hover {
  border-color: var(--primary);
  background: rgba(11, 110, 138, 0.08);
}

 /* Reset button */
 .btn-reset {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 13px;
   font-weight: 600;
   color: var(--text-mid);
   background: white;
   border: 1.5px solid var(--border);
   border-radius: 100px;
   padding: 9px 16px;
   text-decoration: none;
   transition: var(--transition);
   white-space: nowrap;
   box-shadow: var(--shadow-sm);
 }

 .btn-reset:hover {
   border-color: var(--text-light);
   color: var(--text-dark);
 }

 /* Logout button */
 .btn-logout {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-family: var(--font-body);
   font-size: 13px;
   font-weight: 600;
   color: #dc2626;
   background: rgba(239, 68, 68, 0.06);
   border: 1.5px solid rgba(239, 68, 68, 0.2);
   border-radius: 100px;
   padding: 9px 16px;
   cursor: pointer;
   transition: var(--transition);
   white-space: nowrap;
 }

 .btn-logout:hover {
   background: #ef4444;
   border-color: #ef4444;
   color: white;
 }

 /* Count pill */
 .members-count-pill {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: white;
   border: 1px solid var(--border);
   border-radius: 100px;
   padding: 6px 14px 6px 8px;
   box-shadow: var(--shadow-sm);
   margin-top: 8px;
   font-size: 12.5px;
   color: var(--text-mid);
 }

 .members-count-pill .dot {
   width: 24px;
   height: 24px;
   border-radius: 50%;
   background: var(--primary);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 10px;
   flex-shrink: 0;
 }

 /* ── MEMBER GRID ── */
 .members-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 22px;
 }

 /* ── MEMBER CARD ── */
 .member-card {
   background: white;
   border-radius: 22px;
   overflow: hidden;
   border: 1px solid var(--border);
   box-shadow: var(--shadow-sm);
   display: flex;
   flex-direction: column;
   transition: var(--transition);
   position: relative;
 }

 .member-card:hover {
   box-shadow: var(--shadow-md);
   transform: translateY(-5px);
   border-color: transparent;
 }

 .member-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 3px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
   transform: scaleX(0);
   transform-origin: left;
   transition: transform 0.4s ease;
   z-index: 2;
 }

 .member-card:hover::before {
   transform: scaleX(1);
 }

 /* Photo */
 .member-photo-wrap {
   position: relative;
   aspect-ratio: 1/1;
   overflow: hidden;
   background: var(--bg-light);
 }

 .member-photo-wrap img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .member-card:hover .member-photo-wrap img {
   transform: scale(1.06);
 }

 /* Action overlay on photo */
 .member-photo-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(180deg, transparent 40%, rgba(7, 30, 46, 0.75) 100%);
   opacity: 0;
   transition: opacity 0.35s ease;
   display: flex;
   align-items: flex-end;
   justify-content: center;
   padding-bottom: 18px;
   gap: 10px;
 }

 .member-card:hover .member-photo-overlay {
   opacity: 1;
 }

 .member-action-btn {
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.14);
   backdrop-filter: blur(8px);
   border: 1px solid rgba(255, 255, 255, 0.25);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 15px;
   text-decoration: none;
   transition: var(--transition);
   transform: translateY(8px);
   opacity: 0;
   transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
 }

 .member-card:hover .member-action-btn {
   transform: translateY(0);
   opacity: 1;
 }

 .member-card:hover .member-action-btn:nth-child(2) {
   transition-delay: 0.05s;
 }

 .member-action-btn:hover {
   background: var(--accent);
   border-color: var(--accent);
 }

 .member-action-btn.whatsapp:hover {
   background: #25d366;
   border-color: #25d366;
 }

 /* Body */
 .member-card-body {
   padding: 18px 16px 16px;
   text-align: center;
 }

 .member-name {
   font-family: var(--font-display);
   font-size: 16px;
   color: var(--text-dark);
   margin-bottom: 4px;
   line-height: 1.25;
   display: -webkit-box;
   -webkit-line-clamp: 1;
   -webkit-box-orient: vertical;
   overflow: hidden;
 }

 .member-location {
   display: inline-flex;
   align-items: center;
   gap: 4px;
   font-size: 12px;
   color: var(--text-light);
   margin-bottom: 12px;
 }

 .member-location i {
   font-size: 11px;
   color: var(--primary);
 }

 /* Footer contact row */
 .member-contact-row {
   display: flex;
   gap: 8px;
   justify-content: center;
   padding-top: 12px;
   border-top: 1px solid var(--border);
 }

 .member-contact-link {
   flex: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 5px;
   font-size: 12.5px;
   font-weight: 600;
   padding: 8px 0;
   border-radius: 10px;
   text-decoration: none;
   transition: var(--transition);
 }

 .member-contact-link.call {
   background: var(--bg-light);
   color: var(--primary);
   border: 1px solid var(--border);
 }

 .member-contact-link.call:hover {
   background: var(--primary);
   color: white;
   border-color: var(--primary);
 }

 .member-contact-link.whatsapp {
   background: rgba(37, 211, 102, 0.08);
   color: #16a34a;
   border: 1px solid rgba(37, 211, 102, 0.2);
 }

 .member-contact-link.whatsapp:hover {
   background: #25d366;
   color: white;
   border-color: #25d366;
 }

 /* ── EMPTY STATE ── */
 .members-empty {
   grid-column: 1 / -1;
   text-align: center;
   padding: 80px 24px;
   background: white;
   border-radius: 24px;
   border: 1px dashed var(--border);
 }

 .members-empty-icon {
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background: var(--bg-light);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--text-light);
   font-size: 30px;
   margin: 0 auto 20px;
 }

 .members-empty h3 {
   font-family: var(--font-display);
   font-size: 24px;
   color: var(--text-dark);
   margin-bottom: 8px;
 }

 .members-empty p {
   font-size: 14.5px;
   color: var(--text-light);
   margin-bottom: 20px;
 }

 .btn-empty-reset {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   background: var(--primary);
   color: white;
   font-size: 14px;
   font-weight: 600;
   padding: 11px 22px;
   border-radius: 100px;
   text-decoration: none;
   transition: var(--transition);
 }

 .btn-empty-reset:hover {
   background: var(--primary-dark);
   color: white;
 }

 /* ── PAGINATION ── */
 .members-pagination {
   margin-top: 56px;
   display: flex;
   justify-content: center;
 }

 .members-pagination nav>div:first-child {
   display: none;
 }

 .members-pagination .pagination {
   display: flex;
   align-items: center;
   gap: 6px;
   list-style: none;
   padding: 0;
   margin: 0;
   flex-wrap: wrap;
   justify-content: center;
 }

 .members-pagination .page-item .page-link {
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 40px;
   height: 40px;
   padding: 0 14px;
   border-radius: 10px;
   font-family: var(--font-body);
   font-size: 14px;
   font-weight: 500;
   color: var(--text-mid);
   background: white;
   border: 1.5px solid var(--border);
   text-decoration: none;
   transition: var(--transition);
 }

 .members-pagination .page-item .page-link:hover {
   background: var(--bg-light);
   border-color: var(--primary-light);
   color: var(--primary);
 }

 .members-pagination .page-item.active .page-link {
   background: var(--primary);
   border-color: var(--primary);
   color: white;
   box-shadow: 0 4px 12px rgba(11, 110, 138, 0.3);
 }

 .members-pagination .page-item.disabled .page-link {
   opacity: 0.4;
   cursor: not-allowed;
 }

 /* ── RESPONSIVE ── */
 @media (max-width: 1200px) {
   .members-grid {
     grid-template-columns: repeat(3, 1fr);
   }
 }

 @media (max-width: 900px) {
   .members-grid {
     grid-template-columns: repeat(2, 1fr);
   }
 }

 @media (max-width: 767px) {
   .members-section {
     padding: 56px 0 72px;
   }

   .members-toolbar {
     flex-direction: column;
     align-items: flex-start;
   }

   .toolbar-right {
     width: 100%;
    gap: 8px;
   }

   .search-form {
    flex: 1 1 100%;
    width: 100%;
   }

   .search-form input {
     width: 100%;
   }

  .district-filter-form {
    width: 100%;
    flex-wrap: wrap;
  }

  .district-filter-form .ts-wrapper {
    width: 100%;
    min-width: 0;
  }

  .district-filter-form select {
    flex: 1;
    min-width: 0;
  }

  .district-filter-form .btn-reset,
  .toolbar-right > .btn-reset,
  .toolbar-right .btn-logout {
    width: 100%;
    justify-content: center;
  }

  .toolbar-right form {
    width: 100%;
  }
 }

 @media (max-width: 480px) {
   .members-grid {
     grid-template-columns: repeat(2, 1fr);
     gap: 12px;
   }

   .member-card-body {
     padding: 14px 12px 12px;
   }

  .member-contact-row {
    flex-direction: column;
    gap: 6px;
  }

  .member-contact-link {
    width: 100%;
    padding: 9px 10px;
  }
 }

 /* Member Otp Page Css */
 /* =============================================
       OTP PAGE
        ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --border: #D6EAF2;
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 24px 64px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* Full-page centred layout */
 .otp-page {
   min-height: 80vh;
   display: flex;
   align-items: center;
   justify-content: center;
   background: var(--bg-light);
   padding: 48px 20px;
   position: relative;
   overflow: hidden;
 }

 /* Decorative blobs */
 .otp-page::before {
   content: '';
   position: absolute;
   top: -100px;
   left: -100px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.08) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .otp-page::after {
   content: '';
   position: absolute;
   bottom: -80px;
   right: -80px;
   width: 320px;
   height: 320px;
   background: radial-gradient(circle, rgba(0, 201, 167, 0.07) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 /* Card */
 .otp-card {
   background: white;
   border-radius: 28px;
   box-shadow: var(--shadow-lg);
   border: 1px solid var(--border);
   width: 100%;
   max-width: 440px;
   overflow: hidden;
   position: relative;
   z-index: 1;
   font-family: var(--font-body);
 }

 /* Top gradient bar */
 .otp-card-bar {
   height: 5px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
 }

 /* Card body */
 .otp-card-body {
   padding: 44px 40px 40px;
   text-align: center;
 }

 /* Step pill */
 .step-pill {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background: rgba(0, 201, 167, 0.1);
   border: 1px solid rgba(0, 201, 167, 0.25);
   color: var(--accent);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 5px 14px;
   border-radius: 100px;
   margin-bottom: 28px;
 }

 .step-pill i {
   font-size: 10px;
 }

 /* Steps progress */
 .step-dots {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 6px;
   margin-bottom: 28px;
 }

 .step-dot {
   height: 6px;
   border-radius: 3px;
   background: var(--border);
   transition: var(--transition);
 }

 .step-dot.done {
   width: 24px;
   background: var(--primary-light);
 }

 .step-dot.active {
   width: 32px;
   background: var(--accent);
 }

 .step-dot.idle {
   width: 16px;
 }

 /* Icon circle */
 .otp-icon-wrap {
   margin: 0 auto 24px;
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
   display: flex;
   align-items: center;
   justify-content: center;
   position: relative;
   box-shadow: 0 8px 24px rgba(11, 110, 138, 0.3);
 }

 .otp-icon-wrap i {
   font-size: 30px;
   color: white;
 }

 /* Pulse ring */
 .otp-icon-wrap::before {
   content: '';
   position: absolute;
   inset: -8px;
   border-radius: 50%;
   border: 2px solid rgba(11, 110, 138, 0.18);
   animation: otp-pulse 2.2s ease-in-out infinite;
 }

 @keyframes otp-pulse {

   0%,
   100% {
     transform: scale(1);
     opacity: 1;
   }

   50% {
     transform: scale(1.12);
     opacity: 0.4;
   }
 }

 /* Heading */
 .otp-title {
   font-family: var(--font-display);
   font-size: 26px;
   color: var(--text-dark);
   margin-bottom: 8px;
   line-height: 1.2;
 }

 .otp-sub {
   font-size: 14.5px;
   color: var(--text-light);
   line-height: 1.65;
   margin-bottom: 32px;
   max-width: 300px;
   margin-left: auto;
   margin-right: auto;
 }

 /* Error alert */
 .otp-error {
   display: flex;
   align-items: center;
   gap: 8px;
   background: rgba(239, 68, 68, 0.07);
   border: 1px solid rgba(239, 68, 68, 0.2);
   border-radius: 12px;
   padding: 11px 14px;
   font-size: 13.5px;
   color: #dc2626;
   margin-bottom: 24px;
   text-align: left;
 }

 .otp-error i {
   font-size: 15px;
   flex-shrink: 0;
 }

 /* ── OTP INPUT BOXES ── */
 .otp-inputs {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   margin-bottom: 28px;
 }

 .otp-inputs input {
   width: 52px;
   height: 60px;
   border: 2px solid var(--border);
   border-radius: 14px;
   background: var(--bg-light);
   font-family: var(--font-display);
   font-size: 24px;
   font-weight: 700;
   color: var(--text-dark);
   text-align: center;
   outline: none;
   transition: var(--transition);
   caret-color: var(--primary);
   -webkit-appearance: none;
   -moz-appearance: textfield;
 }

 .otp-inputs input:focus {
   border-color: var(--primary);
   background: white;
   box-shadow: 0 0 0 4px rgba(11, 110, 138, 0.1);
   transform: translateY(-2px);
 }

 .otp-inputs input.filled {
   border-color: var(--accent);
   background: rgba(0, 201, 167, 0.05);
 }

 .otp-inputs input::-webkit-outer-spin-button,
 .otp-inputs input::-webkit-inner-spin-button {
   -webkit-appearance: none;
 }

 /* Separator */
 .otp-sep {
   width: 14px;
   height: 2px;
   background: var(--border);
   border-radius: 2px;
   flex-shrink: 0;
 }

 /* Hidden aggregator */
 #otpHidden {
   display: none;
 }

 /* Submit button */
 .btn-otp-verify {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
   color: white;
   font-family: var(--font-body);
   font-size: 15px;
   font-weight: 700;
   padding: 15px 24px;
   border: none;
   border-radius: 100px;
   cursor: pointer;
   transition: var(--transition);
   box-shadow: 0 4px 18px rgba(11, 110, 138, 0.32);
   letter-spacing: 0.02em;
   position: relative;
   overflow: hidden;
 }

 .btn-otp-verify::before {
   content: '';
   position: absolute;
   inset: 0;
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, transparent 60%);
   pointer-events: none;
 }

 .btn-otp-verify:hover {
   transform: translateY(-2px);
   box-shadow: 0 8px 28px rgba(11, 110, 138, 0.42);
 }

 .btn-otp-verify:active {
   transform: translateY(0);
 }

 .btn-otp-verify .btn-icon {
   width: 30px;
   height: 30px;
   background: rgba(255, 255, 255, 0.15);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 13px;
   flex-shrink: 0;
   transition: transform 0.3s ease;
 }

 .btn-otp-verify:hover .btn-icon {
   transform: translateX(3px);
 }

 /* Loading state */
 .btn-otp-verify.loading .btn-text {
   opacity: 0;
 }

 .btn-otp-verify.loading::after {
   content: '';
   position: absolute;
   width: 20px;
   height: 20px;
   border: 2px solid rgba(255, 255, 255, 0.3);
   border-top-color: white;
   border-radius: 50%;
   animation: spin 0.7s linear infinite;
 }

 @keyframes spin {
   to {
     transform: rotate(360deg);
   }
 }

 /* Resend area */
 .otp-resend {
   margin-top: 24px;
   padding-top: 20px;
   border-top: 1px solid var(--border);
 }

 .otp-resend p {
   font-size: 13.5px;
   color: var(--text-light);
   margin-bottom: 10px;
 }

 .btn-resend {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 13.5px;
   font-weight: 700;
   color: var(--primary);
   background: none;
   border: none;
   padding: 0;
   cursor: pointer;
   transition: var(--transition);
   font-family: var(--font-body);
 }

 .btn-resend:hover {
   color: var(--primary-dark);
   gap: 9px;
 }

 .btn-resend:disabled {
   color: var(--text-light);
   cursor: not-allowed;
   gap: 6px;
 }

 /* Countdown timer */
 .otp-timer {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   font-size: 13px;
   color: var(--text-light);
 }

 .otp-timer i {
   font-size: 12px;
   color: var(--accent);
 }

 .timer-count {
   font-weight: 700;
   color: var(--text-dark);
   font-variant-numeric: tabular-nums;
 }

 /* Responsive */
 @media (max-width: 480px) {
   .otp-card-body {
     padding: 32px 20px 28px;
   }

   .otp-inputs input {
     width: 44px;
     height: 52px;
     font-size: 20px;
     border-radius: 11px;
   }

   .otp-inputs {
     gap: 7px;
   }

   .otp-sep {
     width: 10px;
   }
 }

 /* Member verify Page CSS  */

 /* =============================================
       MEMBER VERIFICATION PAGE
     ============================================= */
 :root {
   --primary: #0B6E8A;
   --primary-dark: #074F65;
   --primary-light: #1A90B0;
   --accent: #00C9A7;
   --text-dark: #0D1B2A;
   --text-mid: #3A506B;
   --text-light: #7A9BB5;
   --bg-light: #F0F7FA;
   --border: #D6EAF2;
   --shadow-md: 0 8px 32px rgba(11, 110, 138, 0.14);
   --shadow-lg: 0 24px 64px rgba(11, 110, 138, 0.18);
   --font-display: 'DM Serif Display', Georgia, serif;
   --font-body: 'DM Sans', sans-serif;
   --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 /* Full-page centered */
 .verify-page {
   min-height: 85vh;
   display: flex;
   align-items: center;
   justify-content: center;
   background: var(--bg-light);
   padding: 48px 20px;
   position: relative;
   overflow: hidden;
   font-family: var(--font-body);
 }

 /* Decorative blobs */
 .verify-page::before {
   content: '';
   position: absolute;
   top: -100px;
   left: -100px;
   width: 420px;
   height: 420px;
   background: radial-gradient(circle, rgba(11, 110, 138, 0.08) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 .verify-page::after {
   content: '';
   position: absolute;
   bottom: -80px;
   right: -80px;
   width: 320px;
   height: 320px;
   background: radial-gradient(circle, rgba(0, 201, 167, 0.07) 0%, transparent 70%);
   border-radius: 50%;
   pointer-events: none;
 }

 /* ── CARD ── */
 .verify-card {
   background: white;
   border-radius: 28px;
   box-shadow: var(--shadow-lg);
   border: 1px solid var(--border);
   width: 100%;
   max-width: 480px;
   overflow: hidden;
   position: relative;
   z-index: 1;
 }

 .verify-card-bar {
   height: 5px;
   background: linear-gradient(90deg, var(--primary), var(--accent));
 }

 .verify-card-body {
   padding: 44px 40px 40px;
   text-align: center;
 }

 /* Step pill */
 .step-pill {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background: rgba(11, 110, 138, 0.08);
   border: 1px solid rgba(11, 110, 138, 0.18);
   color: var(--primary);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   padding: 5px 14px;
   border-radius: 100px;
   margin-bottom: 24px;
 }

 /* Progress dots */
 .step-dots {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 6px;
   margin-bottom: 28px;
 }

 .step-dot {
   height: 6px;
   border-radius: 3px;
   background: var(--border);
   transition: var(--transition);
 }

 .step-dot.active {
   width: 32px;
   background: var(--primary);
 }

 .step-dot.idle {
   width: 16px;
 }

 /* Icon circle */
 .verify-icon-wrap {
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0 auto 24px;
   box-shadow: 0 8px 24px rgba(11, 110, 138, 0.3);
   position: relative;
 }

 .verify-icon-wrap i {
   font-size: 30px;
   color: white;
 }

 .verify-icon-wrap::before {
   content: '';
   position: absolute;
   inset: -8px;
   border-radius: 50%;
   border: 2px solid rgba(11, 110, 138, 0.15);
   animation: verify-pulse 2.4s ease-in-out infinite;
 }

 @keyframes verify-pulse {

   0%,
   100% {
     transform: scale(1);
     opacity: 1;
   }

   50% {
     transform: scale(1.12);
     opacity: 0.3;
   }
 }

 /* Heading */
 .verify-title {
   font-family: var(--font-display);
   font-size: 27px;
   color: var(--text-dark);
   margin-bottom: 8px;
   line-height: 1.2;
 }

 .verify-sub {
   font-size: 14.5px;
   color: var(--text-light);
   line-height: 1.65;
   margin-bottom: 32px;
   max-width: 320px;
   margin-left: auto;
   margin-right: auto;
 }

 /* Error */
 .verify-error {
   display: flex;
   align-items: center;
   gap: 8px;
   background: rgba(239, 68, 68, 0.07);
   border: 1px solid rgba(239, 68, 68, 0.2);
   border-radius: 12px;
   padding: 11px 14px;
   font-size: 13.5px;
   color: #dc2626;
   margin-bottom: 24px;
   text-align: left;
 }

 .verify-error i {
   font-size: 15px;
   flex-shrink: 0;
 }

 /* ── MEMBER CODE FIELD ── */
 .code-field-wrap {
   position: relative;
   margin-bottom: 20px;
 }

 .code-field-icon {
   position: absolute;
   left: 18px;
   top: 50%;
   transform: translateY(-50%);
   color: var(--text-light);
   font-size: 16px;
   pointer-events: none;
   transition: color 0.25s;
   z-index: 1;
 }

 .code-field-wrap:focus-within .code-field-icon {
   color: var(--primary);
 }

 .code-input {
   width: 100%;
   height: 58px;
   padding: 0 52px 0 48px;
   border: 2px solid var(--border);
   border-radius: 14px;
   background: var(--bg-light);
   font-family: var(--font-display);
   font-size: 19px;
   font-weight: 400;
   color: var(--text-dark);
   text-align: center;
   letter-spacing: 0.15em;
   text-transform: uppercase;
   outline: none;
   transition: var(--transition);
   -webkit-appearance: none;
   appearance: none;
 }

 .code-input::placeholder {
   color: var(--text-light);
   font-family: var(--font-body);
   font-size: 15px;
   letter-spacing: 0.05em;
   font-weight: 400;
   text-transform: none;
 }

 .code-input:focus {
   border-color: var(--primary);
   background: white;
   box-shadow: 0 0 0 4px rgba(11, 110, 138, 0.1);
 }

 .code-input.valid {
   border-color: var(--accent);
   background: rgba(0, 201, 167, 0.04);
 }

 /* Clear button inside field */
 .code-clear-btn {
   position: absolute;
   right: 14px;
   top: 50%;
   transform: translateY(-50%);
   width: 28px;
   height: 28px;
   border-radius: 50%;
   background: var(--border);
   border: none;
   display: none;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   color: var(--text-mid);
   font-size: 12px;
   transition: var(--transition);
 }

 .code-clear-btn:hover {
   background: var(--text-light);
   color: white;
 }

 .code-clear-btn.visible {
   display: flex;
 }

 /* Format hint */
 .code-format-hint {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 5px;
   font-size: 12px;
   color: var(--text-light);
   margin-bottom: 24px;
   margin-top: -8px;
 }

 .code-format-hint i {
   font-size: 11px;
   color: var(--accent);
 }

 /* Submit button */
 .btn-verify {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
   color: white;
   font-family: var(--font-body);
   font-size: 15px;
   font-weight: 700;
   padding: 15px 24px;
   border: none;
   border-radius: 100px;
   cursor: pointer;
   transition: var(--transition);
   box-shadow: 0 4px 18px rgba(11, 110, 138, 0.32);
   letter-spacing: 0.02em;
   position: relative;
   overflow: hidden;
 }

 .btn-verify::before {
   content: '';
   position: absolute;
   inset: 0;
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, transparent 60%);
   pointer-events: none;
 }

 .btn-verify:hover {
   transform: translateY(-2px);
   box-shadow: 0 8px 28px rgba(11, 110, 138, 0.42);
 }

 .btn-verify:active {
   transform: translateY(0);
 }

 .btn-verify .btn-icon {
   width: 30px;
   height: 30px;
   background: rgba(255, 255, 255, 0.15);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 13px;
   transition: transform 0.3s ease;
 }

 .btn-verify:hover .btn-icon {
   transform: translateX(3px);
 }

 /* Loading state */
 .btn-verify.loading .btn-text {
   opacity: 0;
 }

 .btn-verify.loading::after {
   content: '';
   position: absolute;
   width: 20px;
   height: 20px;
   border: 2px solid rgba(255, 255, 255, 0.3);
   border-top-color: white;
   border-radius: 50%;
   animation: spin 0.7s linear infinite;
 }

 @keyframes spin {
   to {
     transform: rotate(360deg);
   }
 }

 /* Support link */
 .verify-support {
   margin-top: 20px;
   font-size: 13.5px;
   color: var(--text-light);
 }

 .verify-support a {
   color: var(--primary);
   font-weight: 600;
   text-decoration: none;
   transition: color 0.2s;
 }

 .verify-support a:hover {
   color: var(--primary-dark);
 }

 /* Trust bar */
 .trust-bar {
   margin-top: 28px;
   padding-top: 20px;
   border-top: 1px solid var(--border);
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   flex-wrap: wrap;
 }

 .trust-item {
   display: flex;
   align-items: center;
   gap: 6px;
   font-size: 12.5px;
   color: var(--text-light);
 }

 .trust-item i {
   color: var(--accent);
   font-size: 12px;
 }

 .trust-item strong {
   color: var(--text-mid);
 }

 .trust-sep {
   width: 3px;
   height: 3px;
   border-radius: 50%;
   background: var(--border);
 }

 /* ── Security badges row ── */
 .security-badges {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 12px;
   margin-top: 16px;
   flex-wrap: wrap;
 }

 .sec-badge {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   background: var(--bg-light);
   border: 1px solid var(--border);
   border-radius: 100px;
   padding: 4px 11px;
   font-size: 11px;
   color: var(--text-mid);
   font-weight: 500;
 }

 .sec-badge i {
   font-size: 11px;
   color: var(--primary);
 }

 /* Responsive */
 @media (max-width: 480px) {
   .verify-card-body {
     padding: 32px 20px 28px;
   }

   .verify-title {
     font-size: 23px;
   }
 }