.home .bg-overlay {
   background: linear-gradient(90deg, var(--ecbz-primary), transparent) !important;
}
.home {
   background-image: url("../../dummy-image.jpg");
}
.home:before {
   content: "";
   position: absolute;
   inset: 0; /* top: 0; right: 0; bottom: 0; left: 0 */
   background-color: rgba(0, 0, 0, 0.5); /* black shadow with 50% opacity */
   z-index: 2;
}
.home .container {
   position: relative;
   z-index: 3;
}
.swi .swi-card {
   border: none;
   background: transparent;
   padding: 28px 29px;
   position: relative;
   border-radius: 10px;
}
.swi .swi-card:hover {
   color: rgba(0, 119, 109, 0.9);
}
.swi .swi-card:hover:before {
   height: 100%;
   width: 100%;
   background-color: rgba(0, 119, 109, 0.2);
}
.swi .swi-card::before {
   content: "";
   height: 80px;
   width: 80px;
   position: absolute;
   bottom: 0;
   left: 0;
   transition: all 0.5s ease;
   z-index: -1;
}
.swi .swi-heading {
   position: relative;
   font-size: 28px;
   margin-bottom: 4px;
}
.swi .swi-heading::before {
   content: "";
   position: absolute;
   background-color: rgba(0, 119, 109, 0.4);
   /*height: 50px;*/
   /*width: 50px;*/
   /*bottom: -14px;*/
   border-radius: 100% 38% 100% 51%/45% 49% 100% 100%;
   z-index: -1;
   transform: translateX(-50%);
   height: 38px;
   width: 38px;
   bottom: 0;
   left: 15px;
}
.swi .swi-list {
   margin: 30px 0;
   list-style: none;
   padding: 0;
}
.swi .swi-list li {
   position: relative;
   display: flex;
   padding: 15px 25px 15px 15px;
   margin: 0;
   border-bottom: 1px solid rgba(0, 119, 109, 0.09);
   transition: all 0.3s ease;
   font-size: 14px;
   color: #839393;
}
.swi .swi-list li:hover {
   background: rgba(0, 119, 109, 0.2);
   border-radius: 8px;
}
.swi .swi-list li i {
   margin-right: 8px;
   font-size: 22px;
   line-height: 19px;
}
div.fs-17 p {
   font-size: 17px !important;
}
.text-muted {
   color: #839393 !important;
   --bs-text-opacity: 1;
}
.text-muted p {
   color: #839393 !important;
   --bs-text-opacity: 1;
}
.btn-whatsapp {
   background-color: #075E54 !important;
}
.bg-half-80 {
   padding: 80px 0;
   background-size: cover;
   align-self: center;
   position: relative;
   background-position: center center;
}
.d-table {
   display: table !important;
}
.bg-gradient-overlay {
   background: linear-gradient(to bottom, rgba(22, 28, 45, 0.5) 0%, rgba(22, 28, 45, 0.6) 25%, rgba(22, 28, 45, 0.7) 50%, rgba(22, 28, 45, 0.8) 100%);
}
.bg-gradient-overlay-90 {
   background: linear-gradient(to left, rgba(22, 28, 45, 0.5) 0%, rgba(22, 28, 45, 0.6) 25%, rgba(22, 28, 45, 0.7) 50%, rgba(22, 28, 45, 0.8) 100%);
}
/*.bg-gradient-overlay-right-90 {*/
/*   background: linear-gradient(to right, rgba(22, 28, 45, 0.9) 25%, rgba(22, 28, 45, 0.7) 50%, rgba(22, 28, 45, 0.2) 75%, transparent 100%);*/
/*}*/
.bg-blue-overlay {
   background: linear-gradient(to bottom, rgba(22, 28, 45, 0.5) 0%, rgba(22, 28, 45, 0.6) 25%, rgba(22, 28, 45, 0.7) 50%, rgba(22, 28, 45, 0.8) 100%);
}
.bg-overlay:has(.bg-blue-overlay) {

}
.bg-primary-gradient-overlay {
   background: linear-gradient(
      to bottom,
      rgba(var(--ecbz-primary-rgb), 0.5) 0%,
      rgba(var(--ecbz-primary-rgb), 0.6) 25%,
      rgba(var(--ecbz-primary-rgb), 0.7) 50%,
      rgba(var(--ecbz-primary-rgb), 0.8) 100%
   ) !important;
}
.bg-secondary-gradient-overlay {
   background: linear-gradient(
      to bottom,
      rgba(var(--ecbz-secondary-rgb), 0.5) 0%,
      rgba(var(--ecbz-secondary-rgb), 0.6) 25%,
      rgba(var(--ecbz-secondary-rgb), 0.7) 50%,
      rgba(var(--ecbz-secondary-rgb), 0.8) 100%
   ) !important;
}
.title-heading {
   line-height: 26px;
}
.title-heading .heading.page-heading {
   font-size: 36px !important;
}
.title-heading .ttl-heading {
   font-size: 45px !important;
   letter-spacing: 1px;
}
@media (max-width: 768px) {
   .title-heading .heading.page-heading {
      font-size: 30px !important;
   }
}
.position-middle-bottom {
   position: absolute;
   bottom: 15px;
   left: 12px;
   right: 12px;
   text-align: center;
}
.contact-icon > span {
   display: block;
}
.contact-icon {
   display: flex;
   flex-direction: column;
   flex-grow: 1;
   column-gap: 10px;
   .list-inline-item:not(:last-child) {
      margin-bottom: 5px;
   }
   li {
      a {
         color: var(--ecbz-primary);
         border: 1px solid var(--ecbz-primary-light);
         display: inline-block;
         height: 32px;
         text-align: center;
         font-size: 15px;
         width: 32px;
         line-height: 30px;
         transition: all 0.4s ease;
         border-radius: 7px;
         margin-right: 5px;
         &:hover {
            background-color: #bbbaba14;
            color: var(--ecbz-primary);
         }
      }
   }
}
.section.partners {
   padding-top: 40px;
   padding-bottom: 40px;
   position: relative;
   background-color: rgba(187, 186, 186, 0.08) !important;
   overflow: hidden;
}
.image-wrapper img {
   width: 100%;
   height: 100%;
   object-fit: cover;     /* fills the area */
   object-position: center;
   display: block;
}
.owl-carousel img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   border-radius: 5px;
}
.owl-stage .owl-item {
   align-content: center !important;
   justify-items: center !important;
}
.team {
   background-color: inherit !important;
   overflow: hidden;
}
.component {
   /*background-color: rgba(187, 186, 186, 0.08);*/
   overflow: hidden;
}
.component .component-card {
   border-radius: 10px;
   box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
   background-color: var(--ecbz-white);
}
.component .component-card .component-card-img {
   position: relative;
   overflow: hidden;
}
.component .component-card .component-card-img img {
   transition: 0.5s ease-in-out;
   border-radius: 10px 10px 0 0;
}
.component .component-card .component-card-img .component-social-icons {
   position: absolute;
   left: 30px;
   bottom: 0;
}
.component .component-card .component-card-img .component-social-icons ul {
   margin: 0;
   padding: 0;
   list-style: none;
}
.component .component-card .component-card-img .component-social-icons ul li {
   display: inline-block;
   transition: 0.5s ease-in-out;
   transform: rotateX(90deg);
   transform-origin: bottom;
}
.component .component-card .component-card-img .component-social-icons ul li a {
   width: 35px;
   height: 30px;
   font-size: 15px;
   border-radius: 5px 5px 0 0;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   color: var(--ecbz-white);
   background-color: #252d31;
}
.component .component-card .component-card-img .component-social-icons ul li a:hover {
   background-color: var(--ecbz-primary);
}
.component .component-card .component-card-img .component-social-icons ul li:nth-child(odd) {
   transition: 0.9s ease-in-out;
}
.component .component-card .component-card-text-2 {
   padding: 22px;
}
.component .component-card:hover .component-card-img img {
   transform: scale(1.05);
}
.component .component-card:hover .component-card-img .component-social-icons ul li {
   transform: rotateX(0);
}

.navbar-custom .navbar-collapse .navbar-nav .nav-item .nav-link {
   /*color: #3c4858 !important;*/
   font-weight: 600;
}
/*.navbar-custom .navbar-collapse .navbar-nav .nav-item .nav-link.active {*/
/*   color: var(--ecbz-primary) !important;*/
/*}*/

.banner-section {
   padding-top: 100px;
   padding-bottom: 100px;
   position: relative;
}
/*.bg-light {*/
/*   background-color: #f7f8fa !important;*/
/*}*/
.bg-ecb-primary {
   background-color: var(--ecbz-primary) !important;
}
.banner-section h2 {
   color: var(--ecbz-white);
}
.breadcrumb {
   letter-spacing: 0.5px;
   padding: 8px 24px;
   display: block;
}
.breadcrumb.breadcrumb-muted .breadcrumb-item a {
   color: rgba(255, 255, 255, 0.7);
}
.breadcrumb.breadcrumb-muted .breadcrumb-item a:hover {
   color: var(--ecbz-primary) !important;
}
/*.breadcrumb.breadcrumb-muted .breadcrumb-item:after {*/
/*   color: rgba(255, 255, 255, 0.5);*/
/*}*/
.breadcrumb.breadcrumb-muted .breadcrumb-item.active {
   color: var(--ecbz-primary) !important;
}
.breadcrumb .breadcrumb-item {
   text-transform: uppercase;
   font-size: 13px;
   font-weight: 500;
   padding-left: 0;
   display: inline-block;
}
.breadcrumb .breadcrumb-item a {
   color: #f7f8fa;
   transition: all ease-in-out 0.5s;
}
.breadcrumb .breadcrumb-item a:hover {
   color: var(--ecbz-secondary);
}
.breadcrumb .breadcrumb-item.active {
   color: var(--ecbz-primary);
}
.breadcrumb .breadcrumb-item:before {
   content: "";
}
.breadcrumb .breadcrumb-item:after {
   content: "\F0142" !important;
   font-size: 15px;
   color: #f7f8fa;
   font-family: 'Material Design Icons';
   padding-left: 7px;
}
.breadcrumb .breadcrumb-item:last-child:after {
   display: none;
}
.shadow {
   box-shadow: 0 0 3px rgba(60, 72, 88, 0.15) !important;
}
.rounded {
   border-radius: 6px !important;
}
.rounded-bottom-left-0 {
   border-bottom-left-radius: 0 !important;
}
.rounded-top-left-0 {
   border-top-left-radius: 0 !important;
}
.rounded-bottom-right-0 {
   border-bottom-right-radius: 0 !important;
}
.rounded-top-right-0 {
   border-top-right-radius: 0 !important;
}
.blog.blog-primary .title:hover,
.blog.blog-primary .link:hover {
   color: var(--ecbz-primary) !important;
}
.blog.blog-secondary .title:hover,
.blog.blog-secondary .link:hover {
   color: var(--ecbz-secondary) !important;
}
.blog.blog-success .title:hover,
.blog.blog-success .link:hover {
   color: #8dc351 !important;
}
.blog.blog-warning .title:hover,
.blog.blog-warning .link:hover {
   color: #f1af2d !important;
}
.blog.blog-info .title:hover,
.blog.blog-info .link:hover {
   color: #09a5be !important;
}
.blog.blog-danger .title:hover,
.blog.blog-danger .link:hover {
   color: #e84142 !important;
}
.blog.blog-dark .title:hover,
.blog.blog-dark .link:hover {
   color: #3c4858 !important;
}
.blog.blog-muted .title:hover,
.blog.blog-muted .link:hover {
   color: #8c98a4 !important;
}
.blog.blog-light .title:hover,
.blog.blog-light .link:hover {
   color: #f7f8fa !important;
}
.blog.blog-blue .title:hover,
.blog.blog-blue .link:hover {
   color: #3274f0 !important;
}
.blog.blog-footer .title:hover,
.blog.blog-footer .link:hover {
   color: #1e273e !important;
}
.blog {
   transition: all 0.5s ease;
}
.blog.blog-image .content {
   position: absolute;
   bottom: -30px;
   left: 0;
   transition: all 0.5s ease;
}
.blog.blog-image .content .author {
   opacity: 0;
   transition: all 0.5s ease;
}
.blog.blog-image:hover .content {
   bottom: 24px;
}
.blog.blog-image:hover .content .author {
   opacity: 1;
}
.blog .image .blog-tag {
   position: absolute;
   bottom: -30px;
   left: 24px;
   transition: all 0.5s ease;
   opacity: 0;
}
.blog:hover {
   box-shadow: 0 10px 25px rgba(60, 72, 88, 0.15) !important;
}
.blog:hover .image .blog-tag {
   bottom: 20px;
   opacity: 1;
}
.blog .blog-line {
   position: absolute;
   top: 50%;
   transform: translateY(50%);
   left: 0;
   right: 0;
   border-top: 1px dashed;
}
.blog .blog-icon {
   position: relative;
   width: 50px;
   height: 50px;
   display: flex;
   align-items: center;
   justify-content: center;
   background: #f8f9fa;
   font-size: 20px;
}
.card.blog {
   border: none;
}
.card .card-img .card-overlay {
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   opacity: 0;
   background: linear-gradient(to bottom, transparent 0%, transparent 25%, transparent 35%, rgba(22,28,45,0.9) 100%);
   transition: all 0.5s ease;
}
.card:hover .card-img .card-overlay {
   opacity: 1;
}
.mt-100 {
   margin-top: 100px;
}
.mt-80 {
   margin-top: 80px;
}
.mt-30 {
   margin-top: 30px;
}
@media (max-width: 768px) {
   .mt-60 {
      margin-top: 60px;
   }
}
@media (min-width: 991px) {
   .sticky-bar {
      position: sticky !important;
      top: 100px;
   }
}
.sidebar .widget .widget-title {
   font-weight: 500;
}
.sidebar .widget .title:hover {
   color: var(--ecbz-primary) !important;
}
.sidebar .widget .widget-search form {
   position: relative;
}
.sidebar .widget .widget-search input[type="text"], .sidebar .widget .searchform input[type="text"] {
   box-shadow: none;
   padding: 12px 15px;
   height: 45px;
   font-size: 14px;
   display: block;
   width: 100%;
   outline: none !important;
   padding-right: 45px;
}
.sidebar .widget .widget-search input[type="submit"], .sidebar .widget .searchform input[type="submit"] {
   position: absolute;
   top: 5px;
   right: 10px;
   opacity: 0;
   width: 40px;
   height: 40px;
}
.sidebar .widget .widget-search .searchform:after {
   content: "\F0349";
   position: absolute;
   font-family: "Material Design Icons";
   right: 16px;
   top: 15px;
   font-size: 20px;
   line-height: 20px;
   pointer-events: none;
}
.sidebar .widget .widget-title {
   font-weight: 500;
}
.sidebar .widget .tagcloud > a {
   background: #f8f9fa;
   display: inline-block;
   font-size: 10px;
   letter-spacing: 1px;
   margin: 5px;
   padding: 6px 10px;
   text-transform: uppercase;
   transition: all 0.5s ease;
}
.sidebar .widget .tagcloud > a:hover {
   background: var(--ecbz-primary);
   color: #ffffff !important;
}

.card.skill-card {
   border-left: none !important;
   border-top: none !important;
   border-bottom: none !important;
   border-right: 6px solid var(--ecbz-primary) !important;
   box-shadow: rgba(0, 0, 0, 0.04) 0 8px 24px !important;
   margin: 16px 0;
   border-radius: 10px !important;
   display: flex;
}
.card.skill-card .card-body {
   padding: 1rem !important;
}
.card.skill-card .skill-details p {
   margin: 0 !important;
}
.card.skill-card.shift-left {
   border-right-color: var(--ecbz-secondary);
}
@media (min-width: 991px) {
   .card.skill-card {
      width: 95%;
   }
   .card.skill-card.shift-left {
      margin-left: -30px;
   }
}
.skill-card .skill-heading {
   color: var(--ecbz-secondary);
   margin-bottom: 8px;
}
.skill-card .skill-details p {
   color: #9da9bb;
   font-size: 15px !important;
   line-height: 1.2 !important;
   text-wrap: wrap;
}
.object-cover {
   object-fit: cover;
   border-radius: 12px;
}
.image.card-img {
   position: relative;
   width: 100%;
   height: 100%; /* or set fixed height in inline or CSS */
}
.img-cover {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center; /* centers the crop */
   display: block;
}
.section .details ul {
   list-style: none;
   padding: 0;
   margin-bottom: 0 !important;
}
/*.section .details ol {*/
/*   padding: 0;*/
/*}*/
.section .details ul li {
   display: flex;
   /*text-align: start;*/
}
.text-muted.details ul li > p {
   margin-top: 0 !important;
   margin-bottom: 0 !important;
}
.section .details ul li:before {
   content: "\F09DF";
   font-family: 'Material Design Icons', system-ui;
   font-size: 30px;
   /*position: absolute;*/
   align-content: start;
   padding-right: 5px;
   color: var(--ecbz-secondary);
   line-height: 1; /* prevents extra vertical spacing */
   left: 0;
   top: 2px; /* tweak for vertical alignment */
}
.section .details.safari ul,
.section .details.excursion ul {
   margin-bottom: 10px !important;
}
.section .details.safari ul li,
.section .details.excursion ul li {
   position: relative;
   padding-left: 25px; /* space for the icon */
}
.section .details.safari ul li:before,
.section .details.excursion ul li:before {
   content: "\F09DF" !important;
   font-family: 'Material Design Icons';
   font-size: 30px;
   line-height: 1; /* prevents extra vertical spacing */
   position: absolute;
   left: 0;
   top: 2px; /* tweak for vertical alignment */
   color: var(--ecbz-secondary);
}
.section .details ul li > *, .section .details ol li p {
   margin-bottom: 0 !important;
   /*font-weight: 500;*/
}
.text-muted.details.room p {
   line-height: 1.4 !important;
}

.cart-count.updated {
   animation: pulse 0.3s ease-in-out;
}
@keyframes pulse {
   0% { transform: translate(-50%, -50%) scale(1); }
   50% { transform: translate(-50%, -50%) scale(1.2); }
   100% { transform: translate(-50%, -50%) scale(1); }
}
.empty-cart {
   background: #f8f9fa;
   border-radius: 8px;
   /*margin: 2rem 0;*/
}
.qty-controls input[type="number"] {
   -moz-appearance: textfield;
}
.qty-controls input[type="number"]::-webkit-outer-spin-button,
.qty-controls input[type="number"]::-webkit-inner-spin-button {
   -webkit-appearance: none;
   margin: 0;
}
.cart-items-container tr[data-cart-item] {
   transition: opacity 0.3s ease;
}

.property-title {
   font-size: 1.75rem;
   font-weight: 600;
}
.property-price {
   font-size: 1.5rem;
   font-weight: bold;
   color: var(--bs-primary);
}
.property-gallery img {
   width: 100%;
   display: block;
   object-fit: cover;
}
.agent-contact-card {
   background-color: #fff;
}
.agent-phone {
   font-size: 1.25rem;
}
.contact-form input,
.contact-form textarea {
   font-size: 0.9rem;
}
.bg-home.section-bg {
   height: 100vh !important;
}

.centered-logo-header .header-wrapper {
   display: flex;
   align-items: center;
   justify-content: space-between;
   position: relative;
   padding: 1rem 0;
}
.centered-logo-header .logo-center {
   position: absolute;
   left: 50%;
   transform: translateX(-50%);
   z-index: 10;
   background: transparent;
}
.centered-logo-header .logo-center .logo {
   display: flex;
   align-items: center;
   justify-content: center;
}
.centered-logo-header .nav-left {
   flex: 1;
   display: flex;
   justify-content: flex-start;
   padding-right: 2rem;
}
.centered-logo-header .nav-left .navigation-menu {
   display: flex;
   align-items: center;
   list-style: none;
   margin: 0;
   padding: 0;
   gap: 0;
}
.centered-logo-header .nav-left .navigation-menu > li {
   display: inline-block;
   position: relative;
   margin: 0;
}
.centered-logo-header .nav-left .navigation-menu > li > a {
   padding: 1rem 1.25rem;
   display: block;
   color: rgba(255, 255, 255, 0.9);
   font-size: 14px;
   font-weight: 500;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   transition: all 0.3s ease;
}
.centered-logo-header .nav-left .navigation-menu > li > a:hover,
.centered-logo-header .nav-left .navigation-menu > li.active > a {
   color: #ffffff;
}
.centered-logo-header .nav-right {
   flex: 1;
   display: flex;
   justify-content: flex-end;
   padding-left: 2rem;
}
.centered-logo-header .nav-right .navigation-menu {
   display: flex;
   align-items: center;
   list-style: none;
   margin: 0;
   padding: 0;
   gap: 0;
}
.centered-logo-header .nav-right .navigation-menu > li {
   display: inline-block;
   position: relative;
   margin: 0;
}
.centered-logo-header .nav-right .navigation-menu > li > a {
   padding: 1rem 1.25rem;
   display: block;
   color: rgba(255, 255, 255, 0.9);
   font-size: 14px;
   font-weight: 500;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   transition: all 0.3s ease;
}
.centered-logo-header .nav-right .navigation-menu > li > a:hover,
.centered-logo-header .nav-right .navigation-menu > li.active > a {
   color: #ffffff;
}
.centered-logo-header .navigation-menu .has-submenu .submenu {
   position: absolute;
   top: 100%;
   left: 0;
   min-width: 220px;
   background: #ffffff;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
   border-radius: 4px;
   opacity: 0;
   visibility: hidden;
   transform: translateY(10px);
   transition: all 0.3s ease;
   z-index: 1000;
   padding: 0.5rem 0;
}
.centered-logo-header .navigation-menu .has-submenu:hover > .submenu {
   opacity: 1;
   visibility: visible;
   transform: translateY(0);
}
.centered-logo-header .navigation-menu .submenu li {
   display: block;
   margin: 0;
}
.centered-logo-header .navigation-menu .submenu li a {
   display: block;
   padding: 0.75rem 1.5rem;
   color: #333;
   font-size: 13px;
   font-weight: 500;
   text-transform: none;
   letter-spacing: normal;
   transition: all 0.3s ease;
}
.centered-logo-header .navigation-menu .submenu li a:hover {
   background: #f8f9fa;
   color: #4CAF50;
   padding-left: 1.75rem;
}
.centered-logo-header .header-actions {
   display: flex;
   align-items: center;
   gap: 1rem;
   margin-left: 1.5rem;
}
.centered-logo-header .header-actions li {
   margin: 0;
}
.centered-logo-header .header-actions a,
.centered-logo-header .header-actions button {
   color: rgba(255, 255, 255, 0.9);
   transition: all 0.3s ease;
}
.centered-logo-header .header-actions a:hover,
.centered-logo-header .header-actions button:hover {
   color: #ffffff;
}
.centered-logo-header .menu-extras {
   display: none;
   z-index: 20;
}
.centered-logo-header.sticky {
   background: rgba(255, 255, 255, 0.98);
   box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.centered-logo-header.sticky .nav-left .navigation-menu > li > a,
.centered-logo-header.sticky .nav-right .navigation-menu > li > a {
   color: #333;
}
.centered-logo-header.sticky .nav-left .navigation-menu > li > a:hover,
.centered-logo-header.sticky .nav-left .navigation-menu > li.active > a,
.centered-logo-header.sticky .nav-right .navigation-menu > li > a:hover,
.centered-logo-header.sticky .nav-right .navigation-menu > li.active > a {
   color: #4CAF50;
}
.centered-logo-header.sticky .header-actions a,
.centered-logo-header.sticky .header-actions button {
   color: #333;
}
.mobile-navigation {
   display: none;
}
@media (max-width: 1199px) {
   .centered-logo-header .nav-left .navigation-menu > li > a,
   .centered-logo-header .nav-right .navigation-menu > li > a {
      padding: 1rem 1rem;
      font-size: 13px;
   }
}
@media (max-width: 991px) {
   .centered-logo-header .header-wrapper {
      flex-wrap: wrap;
      justify-content: space-between;
   }
   .centered-logo-header .logo-center {
      position: static;
      transform: none;
      order: 1;
   }
   .centered-logo-header .nav-left,
   .centered-logo-header .nav-right {
      display: none;
   }
   .centered-logo-header .header-actions {
      order: 2;
      margin-left: auto;
      margin-right: 1rem;
   }
   .centered-logo-header .menu-extras {
      display: block;
      order: 3;
   }
   .mobile-navigation {
      display: block;
      width: 100%;
      order: 4;
      margin-top: 1rem;
      background: #ffffff;
      border-radius: 8px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease;
   }
   .mobile-navigation.show {
      max-height: 500px;
      overflow-y: auto;
   }
   .mobile-navigation .navigation-menu {
      list-style: none;
      padding: 1rem 0;
      margin: 0;
   }
   .mobile-navigation .navigation-menu > li {
      display: block;
      border-bottom: 1px solid #f0f0f0;
   }
   .mobile-navigation .navigation-menu > li:last-child {
      border-bottom: none;
   }
   .mobile-navigation .navigation-menu > li > a {
      display: block;
      padding: 1rem 1.5rem;
      color: #333;
      font-size: 14px;
      font-weight: 500;
      text-transform: uppercase;
   }
   .mobile-navigation .navigation-menu .submenu {
      display: none;
      background: #f8f9fa;
      padding: 0.5rem 0;
   }
   .mobile-navigation .navigation-menu .has-submenu.open > .submenu {
      display: block;
   }
   .mobile-navigation .navigation-menu .submenu li a {
      padding: 0.75rem 2.5rem;
      font-size: 13px;
      color: #666;
   }
}
@media (max-width: 768px) {
   .centered-logo-header .logo-center img {
      max-height: 50px !important;
   }
   .centered-logo-header .header-actions {
      gap: 0.5rem;
   }
   .centered-logo-header .header-actions .ti {
      font-size: 1.25rem;
   }
}

.video-section {
   position: absolute;
   background-color: rgba(0, 0, 0, 0.4);
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   width: 100%;
   height: 100%;
   overflow: hidden;
}
.video-section video {
   pointer-events: none;
}
/*.hero-video {*/
/*   width: 100%;*/
/*   height: auto;*/
/*   min-height: 100%;*/
/*   object-fit: cover;*/
/*   display: block;*/
/*}*/
.video-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to right,
      rgba(0,0,0,.7),
      rgba(0,0,0,.4),
      rgba(0,0,0,.2)
   );
   pointer-events: none;
}
.hero-slide {
   position: relative;
}
.hero-video-wrapper{
   position: absolute;
   inset: 0;
   overflow: hidden;
   z-index: 0;
}
.hero-video{
   position: absolute;
   top: 50%;
   left: 50%;
   width: 100vw;
   height: 56.25vw;
   min-width: 177.77vh;
   min-height: 100vh;
   transform: translate(-50%,-50%);
   pointer-events: none;
   border: none;
}

.navbar .navbar-nav .nav-item > .nav-link {
   /*text-transform: capitalize;*/
   color: var(--ecbz-primary);
}
.text-muted.details p, .details p, .details {
   /*margin: 0 !important;*/
   font-size: var(--ecbz-font-size), sans-serif;
   line-height: var(--ecbz-line-height) !important;
   color: var(--ecbz-body-text-color) !important;
}
/*.section .text-muted.details h1,*/
/*.section .text-muted.details h2,*/
/*.section .text-muted.details h3,*/
/*.section .text-muted.details h4,*/
/*.section .text-muted.details h5,*/
/*.section .text-muted.details h6 {*/
/*   color: var(--ecbz-primary) !important;*/
/*}*/
.btn.btn-icon.btn-sm.btn-whatsapp {
   height: auto;
   width: auto;
}
.title {
   color: var(--ecbz-primary) !important;
   box-shadow: none !important;
   text-shadow: none !important;
}
.sub-title {
   color: var(--ecbz-secondary) !important;
   font-family: var(--ecbz-sub-heading-font), system-ui !important;
   font-size: 13px;
   font-weight: 500;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   padding: 0;
}
.sub-title.line {
   display: inline-block;
   font-family: var(--ecbz-sub-heading-font), sans-serif;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   color: var(--ecbz-secondary);
   border-left: 2px solid var(--ecbz-secondary);
   border-radius: 0;
   padding: 0 0 0 10px;
   background: none;
   border-top: none;
   border-right: none;
   border-bottom: none;
}
.sub-title.dot {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   font-family: var(--ecbz-sub-heading-font), sans-serif;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   color: var(--ecbz-secondary);
   border-radius: 4px;
   padding: 4px 10px;
   border: none;
}
.sub-title.dot::before {
   content: '';
   display: inline-block;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--ecbz-secondary);
   flex-shrink: 0;
}
/*.title {*/
/*   margin-bottom: 1.5rem;*/
/*}*/
.service .image img {
   /*min-height: 230px;*/
   /*max-height: 250px;*/
   border-radius: 6px 6px 0 0;
   object-fit: cover;
}
@media (min-width: 991px) {
   .safari.image img, .excursion.image img, .destination.image img {
      min-height: 450px;
      max-height: 480px;
      border-radius: 6px 6px 0 0;
      object-fit: cover;
   }
}

#topnav .navigation-menu.nav-right > li:last-child a {
   padding-right: 20px;
}
.navbar .navbar-nav .nav-item.dropdown nav-link,
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu li .nav-link.active {
   color: var(--ecbz-secondary);
}
@media (min-width: 768px) {
   #topnav .navigation-menu > li.has-submenu:hover > .submenu {
      visibility: visible;
      opacity: 1;
      margin-top: 0;
   }
}
@media (min-width: 768px) {
   #topnav .navigation-menu > li.has-submenu:hover > .submenu > li.has-submenu:hover > .submenu {
      margin-right: 3px;
   }
}
.navbar-nav .dropdown:hover > .dropdown-menu {
   display: block;
   margin-top: 0;
}
.dropdown-menu .dropdown-menu {
   right: 100%;
   top: 0;
   margin-top: -1px;
}
.dropdown-menu > li:hover > .dropdown-menu {
   display: block;
}
.card.service .card-body.content p {
   line-height: var(--ecbz-line-height) !important;
}
.section:has(#sub-services-wrapper) {
   overflow: visible !important;
}
#sub-services-wrapper {
   position: relative;
}
#sub-services-nav {
   position: sticky;
   top: 80px;
   z-index: 10;
   /*background: #f8f9fa;*/
}
#sub-services-wrapper {
   overflow: visible;
}
.sub-service-link {
   position: relative;
   padding: 10px 18px;
   font-size: 14px;
   background-color: #f7f8fa !important;
   color: var(--ecbz-secondary) !important;
   text-decoration: none;
   transition: all 0.5s ease-in-out;
}
.sub-service-link:hover, .sub-service-link:hover, .sub-service-link.active {
   background-color: var(--ecbz-primary) !important;
   color: var(--ecbz-white) !important;
}
.sub-service-link a:hover {
   color: var(--ecbz-secondary) !important;
}
.sub-service-link.active a:hover {
   color: var(--ecbz-white) !important;
}
/*.sub-service-link.active::after {*/
/*   content: "";*/
/*   position: absolute;*/
/*   left: 0;*/
/*   bottom: -4px;*/
/*   width: 100%;*/
/*   height: 2px;*/
/*   background: var(--ecbz-primary);*/
/*}*/
.card.course, .card.safari {
   border: 1px solid #e9ecef !important;
   background-color: #f6f6f8;
}
/*.section .card.course .details ul li:before {*/
/*   content: "." !important;*/
/*   font-weight: 900 !important;*/
/*   justify-content: start !important;*/
/*   align-content: center !important;*/
/*}*/
.btn.btn-clear {
   color: var(--ecbz-white);
   background-color: transparent !important;
   border-color: var(--ecbz-white) !important;
}
.fw-bold {
   font-weight: 700 !important;
}
.pb-80 {
   padding-bottom: 80px !important;
}
#course-link-wrapper {
   padding-bottom: 80px;
   overflow: visible;
}
#course-links-nav {
   position: sticky !important;
   top: 90px !important; /* match the header height */
   z-index: 100 !important;
   background: #f8f9fa;
}
.course-links {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
}
.course-links .course-link {
   padding: 0 50px 0 50px;
   border-right: 1px solid #414249;
   text-decoration: none;
   font-size: 15px;
}
.course-links .course-link:last-child {
   border-right: none;
   padding-right: 0;
}
.course-links .course-link:first-child {
   padding-left: 0;
}
[id^="course-"],
#training-methodology,
#who-should-attend {
   scroll-margin-top: 90px;
}

.navbar .navbar-nav .nav-item > .nav-link {
   font-family: var(--ecbz-body-font), sans-serif !important;
   font-size: 12px;
   font-weight: 500;
   /*letter-spacing: 0.08em;*/
   text-transform: uppercase;
   padding: 0 8px !important;
}
.nav-link {
   font-family: var(--ecbz-body-font), sans-serif !important;
   font-size: 14px;
   font-weight: 500;
   /*letter-spacing: 0.08em;*/
   text-transform: capitalize;
}
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu {
   font-size: 14px;
   font-weight: 600;
   text-transform: capitalize;
}
@media(max-width: 991px) {
   section.section:has(.aos-init), .section:has(.aos-init) {
      overflow: hidden !important;
   }
}
.bg-home-2.hero-slide {
   max-height: 500px;
   min-height: 450px;
}
@media(min-width: 587px) {
   .bg-home-2.hero-slide {
      max-height: 850px;
      min-height: 850px;
   }
}
.bg-overlay img {
   background-attachment: fixed !important;
}


.sticky-pricing-bar {
   /*position: fixed;*/
   /*bottom: 0;*/
   /*left: 0;*/
   /*width: 100%;*/
   background: var(--ecbz-secondary);
   /*box-shadow: 0 -5px 15px rgba(0,0,0,0.1);*/
   padding: 12px 0;
   flex: 1;
   display: flex;
   align-items: center;
   /*z-index: 999;*/
}
.pricing-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 1rem;
   align-items: center;
}
@media (min-width: 768px) {
   .pricing-grid {
      grid-template-columns: repeat(4, 1fr); /* one row on desktop */
   }
}
.sticky-pricing-bar .price {
   font-size: 24px;
   font-weight: 700;
   color: var(--ecbz-primary);
}
.sticky-pricing-bar .text {
   font-size: 24px;
   font-weight: 700;
   color: var(--ecbz-primary);
}
.sticky-pricing-bar small {
   display: block;
   font-size: 14px;
   color: #ffffff !important;
}
.sticky-pricing-bar .pricing-info {
   text-align: center;
}
body {
   --pricing-bar-height: 0px;
}
body:has(.pricing-sticky) .whatsapp-icon,
body:has(.pricing-sticky) .back-to-top {
   bottom: calc(var(--pricing-bar-height) + 20px); /* extra spacing */
}
body:has(.pricing-sticky) {
   padding-bottom: 107px;
}
@media (max-width: 768px) {
   .sticky-pricing-bar {
      padding: 10px;
   }
   .sticky-pricing-bar .pricing-info {
      text-align: start;
      padding-bottom: 1.5rem;
   }
   body:has(.pricing-sticky) {
      padding-bottom: 180px;
   }
   body:has(.pricing-sticky) .whatsapp-icon {
      bottom: 190px !important;
   }
   body:has(.pricing-sticky) .back-to-top {
      bottom: 190px !important;
   }
}
@media (max-width: 576px) {
   body:has(.pricing-sticky) {
      padding-bottom: 180px;
   }
   body:has(.pricing-sticky) .whatsapp-icon {
      bottom: 250px !important;
   }
   body:has(.pricing-sticky) .back-to-top {
      bottom: 250px !important;
   }
}
.border-gray {
   border-color: #A0AABA2B;
}
.border-top-bottom {
   border-top: 0.01rem solid rgba(255,255,255,0.5);
   border-bottom: 0.01rem solid rgba(255,255,255,0.5);
}
.service .text-muted.service-desc,
.service-item .service-desc, .service-desc {
   font-size: var(--ecbz-font-size);
   display: -webkit-box;
   -webkit-line-clamp: 4;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
@media (min-width: 992px) {
   #topnav .navigation-menu > .has-submenu .menu-arrow {
      display: block;
      color: #3c4858;
      right: -5px;
      top: 33px !important;
      transition: all 0.5s ease-in-out;
   }
   #topnav .navigation-menu.nav-light > li > a {
      color: var(--ecbz-white);
   }
   #topnav .navigation-menu.nav-light > li:hover > a {
      color: var(--ecbz-secondary) !important;
   }
   #topnav .navigation-menu.nav-light > li.active > a {
      color: var(--ecbz-primary) !important;
   }
   #topnav .navigation-menu.nav-light > li:hover > .menu-arrow {
      border-color: var(--ecbz-secondary) !important;
   }
   #topnav .navigation-menu > .has-submenu:hover .menu-arrow,
   #topnav .navigation-menu > .has-submenu.active .menu-arrow{
      top: 33px !important;
   }
   #topnav .navigation-menu.nav-light .has-submenu.active .menu-arrow {
      border-color: var(--ecbz-primary) !important;
   }
   #topnav .navigation-menu > li .submenu li a.sub-menu-item.active {
      color: var(--ecbz-primary) !important;
   }
}
.btn-whatsapp {
   background-color: #2db742 !important;
   border-radius: 50%;
   --webkit-border-radius: 50%;
   --moz-border-radius: 50%;
   height: 56px !important;
   width: 56px !important;
}
.btn-whatsapp::before {
   box-sizing: border-box;
   --webkit-box-sizing: border-box;
   --moz-box-sizing: border-box;
}
.wa-popup-txt {
   background-color: #f5f7f9;
   border-radius: 4px;
   -webkit-border-radius: 4px;
   -moz-border-radius: 4px;
   color: #43474e;
   font-size: 12px;
   letter-spacing: -.03em;
   line-height: 1.5;
   margin-right: 7px;
   padding: 8px;
   position: absolute;
   right: 100%;
   top: 50%;
   -webkit-transform: translateY(-50%);
   -ms-transform: translateY(-50%);
   transform: translateY(-50%);
   transition: all .4s ease;
   -webkit-transition: all .4s ease;
   -moz-transition: all .4s ease;
   width: 156px;
}
/*.btn.btn-icon.btn-sm.btn-whatsapp {*/
/*   height: auto;*/
/*   width: auto;*/
/*}*/
.desc-italic, .desc-italic p {
   font-style: italic;
}
.section.counter {
   padding: 80px 0 !important;
}
.ic-cinematic {
   background: #0d0d0d;
   padding: 5rem 0;
   font-family: 'DM Sans', sans-serif;
}
.ic-cinematic .ic-eyebrow {
   font-family: 'IBM Plex Mono', monospace;
   font-size: 11px;
   letter-spacing: .18em;
   color: #888;
   text-transform: uppercase;
   margin-bottom: .5rem;
}
.ic-cinematic .ic-title {
   font-family: 'Syne', sans-serif;
   font-size: clamp(1.8rem, 4vw, 2.6rem);
   font-weight: 800;
   color: #fff;
   line-height: 1.15;
   margin-bottom: 3rem;
}
.ic-cinematic .ic-title .ic-accent {
   color: #c9f31d;
}
.ic-cinematic .ic-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
   gap: 1px;
   background: #222;
   border-radius: 14px;
   overflow: hidden;
}
.ic-cinematic .ic-card {
   background: #0d0d0d;
   padding: 2rem 1.5rem;
   display: flex;
   flex-direction: column;
   gap: .35rem;
   transition: background .2s ease;
}
.ic-cinematic .ic-card:hover {
   background: #141414;
}
.ic-cinematic .ic-num-wrap {
   display: flex;
   align-items: flex-start;
   gap: 2px;
}
.ic-cinematic .ic-num {
   font-family: 'Syne', sans-serif;
   font-size: clamp(2.2rem, 5vw, 3rem);
   font-weight: 800;
   color: #fff;
   line-height: 1;
}
.ic-cinematic .ic-suffix {
   font-family: 'Syne', sans-serif;
   font-size: 1.4rem;
   font-weight: 800;
   color: #c9f31d;
   margin-top: 5px;
}
.ic-cinematic .ic-label {
   font-size: 13px;
   color: #888;
   font-weight: 400;
   line-height: 1.4;
}
.ic-cinematic .ic-bar {
   height: 2px;
   background: #c9f31d;
   border-radius: 2px;
   width: 0;
   transition: width 1.8s cubic-bezier(.22, 1, .36, 1);
   margin-top: .75rem;
}
/* Respect section background overrides from CMS */
.ic-cinematic.section-bg {
   position: relative;
   overflow: hidden;
}
.ic-cinematic.section-bg .ic-grid {
   position: relative;
   z-index: 1;
}
.ic-editorial {
   background: #f5f2ec;
   padding: 5rem 0;
}
/* Override: support CMS light/dark background settings */
.ic-editorial.bg-white {
   background: #fff !important;
}
.ic-editorial.bg-light {
   background: #f5f2ec !important;
}
.ic-editorial.bg-dark,
.ic-editorial.bg-primary {
   background: #1a1a1a !important;
}

.ic-editorial .ic-ed-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   flex-wrap: wrap;
   gap: 1.5rem;
   border-bottom: 1.5px solid #c8c3b5;
   padding-bottom: 1.75rem;
   margin-bottom: 0;
}
.ic-editorial .ic-ed-headline {
   font-family: 'Playfair Display', serif;
   font-size: clamp(1.5rem, 4vw, 2.1rem);
   font-weight: 700;
   color: #1a1a1a;
   line-height: 1.2;
   margin: 0;
   max-width: 360px;
}
.ic-editorial .ic-ed-sub {
   font-size: 13px;
   color: #7a7060;
   line-height: 1.65;
   max-width: 280px;
   margin: 0;
}
.ic-editorial .ic-ed-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.ic-editorial .ic-ed-item {
   padding: 2rem 1.25rem 2rem 0;
   border-right: 1px solid #c8c3b5;
}
.ic-editorial .ic-ed-item:not(:first-child) {
   padding-left: 1.5rem;
}
.ic-editorial .ic-ed-item:last-child {
   border-right: none;
}
.ic-editorial .ic-ed-num-wrap {
   display: flex;
   align-items: flex-start;
   gap: 2px;
}
.ic-editorial .ic-ed-num {
   font-family: 'Syne', sans-serif;
   font-size: clamp(2rem, 3vw, 2.8rem);
   font-weight: 800;
   color: #1a1a1a;
   line-height: 1;
}
.ic-editorial .ic-ed-suffix {
   font-family: 'Syne', sans-serif;
   font-size: 1.5rem;
   font-weight: 800;
   color: #b85c2a;
   margin-top: 6px;
}
.ic-editorial .ic-ed-label {
   font-size: 11px;
   color: #7a7060;
   text-transform: uppercase;
   letter-spacing: .1em;
   font-weight: 500;
   margin-top: .6rem;
   display: flex;
   align-items: center;
   gap: 6px;
}
.ic-editorial .ic-ed-dot {
   display: inline-block;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: #b85c2a;
   flex-shrink: 0;
}
.ic-editorial .ic-ed-desc {
   font-size: 12px;
   color: #a09880;
   margin-top: .3rem;
   line-height: 1.45;
}
/* Mobile stacked */
@media (max-width: 575.98px) {
   .ic-editorial .ic-ed-header {
      flex-direction: column;
      align-items: flex-start;
   }
   .ic-editorial .ic-ed-item {
      border-right: none;
      border-bottom: 1px solid #c8c3b5;
      padding: 1.5rem 0 !important;
   }
   .ic-editorial .ic-ed-item:last-child {
      border-bottom: none;
   }
}
.section-label {
   font-size: 12px;
   font-weight: 500;
   letter-spacing: 0.24em;
   text-transform: uppercase;
   color: var(--ecbz-primary);
   margin-bottom: 0.75rem;
   display: block;
}
.section-title.title {
   font-size: 22px;
   font-weight: 500;
   color: var(--ecbz-primary);
   margin: 0 0 6px;
}
.section-sub {
   font-size: 14px;
   color: var(--ecbz-secondary);
   margin: 0 0 1.5rem;
   line-height: 1.6;
}
.grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
   gap: 14px;
}

code, pre {
   font-size: .875em;
   font-style: italic;
   /*color: var(--ecbz-primary);*/
   word-wrap: break-word !important;
   text-wrap: wrap !important;
   overflow: clip !important;
   /*background-color: #f6f6f8;*/
   /*border-left: 3px solid var(--ecbz-black-soft);*/
   /*padding-left: 10px;*/
}
blockquote, blockquote p, blockquote h1, blockquote h2,
blockquote h3, blockquote h4, blockquote h5, blockquote h6,
.story-quote {
   font-family: var(--ecbz-heading-font), sans-serif;
   font-size: clamp(42px, 3.5vw, 42px) !important;
   font-weight: 300 !important;
   font-style: italic !important;
   color: var(--ecbz-secondary);
   line-height: 1.4 !important;
   letter-spacing: 0.02em !important;
   /*margin-bottom: 1.5rem !important;*/
}
blockquote p {
   margin: 0 !important;
}
.btn.btn-text-dark, .btn-default.btn-text-dark {
   color: #222222 !important;
}

.card {
   /*border-style: var(--ecbz-border-style) !important;*/
   border-color: var(--ecbz-border-color) !important;
   border-radius: var(--ecbz-border-radius) !important;
   border-width: 1px !important;
   box-shadow: var(--ecbz-card-shadow) !important;
   overflow: hidden;
}

.card.shadow, .card.shadow-sm, .card.shadow-md, .card.shadow-lg, .card.shadow-xl,
.shadow, .shadow-sm, .shadow-md, .shadow-lg, .shadow-xl, .nav-sticky.navbar {
   box-shadow: var(--ecbz-card-shadow) !important;
}
.card:hover, .features.features-classic:hover {
   box-shadow: var(--ecbz-card-shadow) !important;
}
.card-1 {
   border-top: 2px solid var(--ecbz-primary) !important;
}
.card.card-1 .title:hover {
   color: var(--ecbz-primary) !important;
}
.card-2 {
   border-top: 2px solid var(--ecbz-secondary) !important;
}
.card.card-2 .title:hover {
   color: var(--ecbz-secondary-rgb) !important;
}
.card-3 {
   border-top: 2px solid var(--ecbz-primary-light) !important;
}
.card.card-3 .title:hover {
   color: var(--ecbz-primary-light-rgb) !important;
}
.accent-3 {
   background: var(--ecbz-primary-light) !important;
}
.card-4 {
   border-top: 2px solid var(--ecbz-secondary-light) !important;
}
.card.card-4 .title:hover {
   color: var(--ecbz-secondary-light-rgb) !important;
}
.card-5 {
   border-top: 2px solid var(--ecbz-black-soft) !important;
}
.card.card-5 .title:hover {
   color: var(--ecbz-black-soft) !important;
}
.card-6 {
   border-top: 2px solid var(--ecbz-gray-soft) !important;
}
.card.card-6 .title:hover {
   color: var(--ecbz-gray-soft) !important;
}
.card.card-1, .card.card-2, .card.card-3, .card.card-4, .card.card-5, .card.card-6 {
   border: 1px solid var(--ecbz-border-color);
}
.rounded, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5 {
   border-radius: var(--ecbz-border-radius) !important;
}
.form-control, .form-select {
   border-radius: var(--ecbz-input-border-radius) !important;
   background-color: var(--ecbz-input-bg-color) !important;
   border: 1px solid var(--ecbz-input-border-color) !important;
}
.form-control:focus, .form-select:focus {
   border-color: var(--ecbz-input-focus-color) !important;
   box-shadow: var(--ecbz-card-shadow) !important;
}
/*.btn {*/
/*   font-weight: normal !important;*/
/*}*/
.btn.btn-primary, .btn.btn-soft-primary, .btn.btn-outline-primary, .btn-primary, .btn-soft-primary, .btn-outline-primary,
.btn.btn-secondary, .btn.btn-soft-secondary, .btn.btn-outline-secondary, .btn-secondary, .btn-soft-secondary, .btn-outline-secondary,
.btn.btn-success, .btn.btn-soft-success, .btn.btn-outline-success, .btn-success, .btn-soft-success, .btn-outline-success,
.btn.btn-warning, .btn.btn-soft-warning, .btn.btn-outline-warning, .btn-warning, .btn-soft-warning, .btn-outline-warning,
.btn.btn-danger, .btn.btn-soft-danger, .btn.btn-outline-danger, .btn-danger, .btn-soft-danger, .btn-outline-danger,
.btn.btn-info, .btn.btn-soft-info, .btn.btn-outline-info, .btn-info, .btn-soft-info, .btn-outline-info,
.btn.btn-blue, .btn.btn-soft-blue, .btn.btn-outline-blue, .btn-blue, .btn-soft-blue, .btn-outline-blue,
.btn.btn-dark, .btn.btn-soft-dark, .btn.btn-outline-dark, .btn-dark, .btn-soft-dark, .btn-outline-dark,
.btn.btn-light, .btn.btn-soft-light, .btn.btn-outline-light, .btn-light, .btn-soft-light, .btn-outline-light,
.btn.btn-muted, .btn.btn-soft-muted, .btn.btn-outline-muted, .btn-muted, .btn-soft-muted, .btn-outline-muted,
.btn.btn-footer, .btn.btn-soft-footer, .btn.btn-outline-footer, .btn-footer, .btn-soft-footer, .btn-outline-footer,
.btn.btn-default, .btn.btn-soft-default, .btn.btn-outline-default, .btn-default, .btn-soft-default, .btn-outline-default {
   padding: 10px 15px !important;
   border-radius: var(--ecbz-border-radius) !important;
   border-style: var(--ecbz-border-style) !important
}
.btn-whatsapp {
   border-radius: var(--ecbz-border-radius) !important;
   border-style: var(--ecbz-border-style) !important
}
.btn-default.btn-default-light {
   border-color: var(--ecbz-white) !important;
   color: var(--ecbz-white) !important;
}
.border {
   border-color: var(--ecbz-border-color) !important;
}
.section.section-bg .btn-default {
   border-color: var(--ecbz-white) !important;
   color: var(--ecbz-white) !important;
}
/*.navbar {*/
/*   backdrop-filter: blur(14px);*/
/*   -webkit-backdrop-filter: blur(14px);*/
/*   !*border-bottom: 1px solid var(--ecbz-primary-light);*!*/
/*   opacity: 0.98;*/
/*}*/
.nav-text {
   font-size: 15px !important;
   font-weight: 300;
   /*letter-spacing: 0.14em;*/
   text-transform: capitalize !important;
   white-space: nowrap;
}
.hero {
   position: relative;
   width: 100%;
   height: 820px;
   overflow: hidden;
   background: #0a1628;
}
.slide {
   position: absolute;
   inset: 0;
   opacity: 0;
   transition: opacity 1.2s ease;
}
.slide.active {
   opacity: 1;
}
.slide-bg {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
}
.slide-overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(to right, rgba(5, 20, 50, 0.55) 0%, rgba(5, 20, 50, 0.38) 55%, transparent 100%);
}
.hero-content {
   position: absolute;
   inset: 0;
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 0 56px;
   max-width: 740px;
   z-index: 2;
}
.hero-eyebrow {
   display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 18px;
}
.eyebrow-line {
   width: 32px;
   height: 2px;
   background: #BB1D2A;
}
.eyebrow-text {
   font-family: 'Inter', sans-serif;
   font-size: 11px;
   font-weight: 600;
   letter-spacing: 0.18em;
   text-transform: uppercase;
   color: #BB1D2A;
}
.hero-title {
   font-family: 'Playfair Display', serif;
   font-size: 50px !important;
   font-weight: 700;
   line-height: 1.2;
   color: #ffffff;
   margin: 0 0 16px;
}
.hero-title em {
   font-style: italic;
   color: #EAB84B;
}
.hero-sub {
   font-family: 'Inter', sans-serif;
   font-size: 15px;
   line-height: 1.7;
   color: rgba(255, 255, 255, 0.80);
   margin: 0 0 32px;
   max-width: 460px;
}
.hero-ctas {
   display: flex;
   gap: 12px;
   flex-wrap: wrap;
}
.hero-ctas .btn-default {
   border-color: var(--ecbz-white) !important;
   color: var(--ecbz-white) !important;
}
.btn-primary-hero {
   font-family: 'Inter', sans-serif;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   background: #BB1D2A;
   color: #fff;
   border: none;
   padding: 12px 26px;
   cursor: pointer;
   border-radius: 0;
}
.btn-outline-hero {
   font-family: 'Inter', sans-serif;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   background: transparent;
   color: #fff;
   border: 1.5px solid rgba(255, 255, 255, 0.5);
   padding: 12px 26px;
   cursor: pointer;
   border-radius: 0;
}
.btn-primary-hero:hover {
   background: #9a1522;
}
.btn-outline-hero:hover {
   border-color: #fff;
   background: rgba(255, 255, 255, 0.08);
}
.hero-stats {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   z-index: 3;
   display: flex;
}
.stat-item {
   flex: 1;
   background: rgba(8, 20, 50, 0.88);
   border-top: 2px solid transparent;
   padding: 16px 20px;
   display: flex;
   flex-direction: column;
   gap: 3px;
   border-right: 0.5px solid rgba(255, 255, 255, 0.08);
}
.stat-item:first-child {
   border-top-color: #BB1D2A;
}
.stat-item:nth-child(2) {
   border-top-color: #EAB84B;
}
.stat-item:nth-child(3) {
   border-top-color: #2C6E3F;
}
.stat-item:last-child {
   border-right: none;
   border-top-color: #1A5FAB;
}
.stat-num {
   font-family: 'Playfair Display', serif;
   font-size: 22px;
   font-weight: 700;
   color: #fff;
}
.stat-label {
   font-family: 'Inter', sans-serif;
   font-size: 11px;
   color: rgba(255, 255, 255, 0.55);
   letter-spacing: 0.05em;
}
.carousel-controls {
   position: absolute;
   right: 40px;
   bottom: 110px;
   z-index: 4;
   display: flex;
   gap: 8px;
}
.ctrl-btn {
   width: 38px;
   height: 38px;
   border: 1.5px solid rgba(255, 255, 255, 0.3);
   background: transparent;
   color: #fff;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 16px;
   border-radius: 0;
   transition: background 0.2s;
}
.ctrl-btn:hover {
   background: rgba(255, 255, 255, 0.15);
}
.carousel-dots {
   position: absolute;
   right: 44px;
   bottom: 80px;
   z-index: 4;
   display: flex;
   gap: 6px;
}
.dot {
   width: 20px;
   height: 3px;
   background: rgba(255, 255, 255, 0.3);
   cursor: pointer;
   border-radius: 0;
   transition: background 0.3s, width 0.3s;
}
.dot.active {
   background: #EAB84B;
   width: 32px;
}
.progress-bar {
   position: absolute;
   bottom: 0;
   left: 0;
   height: 3px;
   background: #EAB84B;
   z-index: 5;
   transition: width 0.1s linear;
}
.flag-accent {
   position: absolute;
   top: 0;
   right: 0;
   width: 5px;
   height: 100%;
   z-index: 3;
   display: flex;
   flex-direction: column;
}
.flag-accent span {
   flex: 1;
}
.slide-counter {
   position: absolute;
   right: 44px;
   top: 32px;
   font-family: 'Inter', sans-serif;
   font-size: 12px;
   color: rgba(255, 255, 255, 0.45);
   z-index: 4;
   letter-spacing: 0.1em;
}
.values-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
   gap: 0;
   max-width: 1100px;
   margin: 0 auto;
   border: 1px solid rgba(var(--ecbz-primary-light-rgb),0.2);
}
.value-card {
   padding: 3rem 2rem;
   border-right: 1px solid rgba(var(--ecbz-primary-light-rgb),0.2);
   border-bottom: 1px solid rgba(var(--ecbz-primary-light-rgb),0.2);
   position: relative;
   transition: background 0.4s;
}
.value-card:nth-child(4n) { border-right: none; }
.value-card:hover { background: var(--ecbz-secondary-light); }
.value-number {
   font-family: var(--ecbz-heading-font), "Montserrat", sans-serif;
   font-size: 52px;
   font-weight: 300;
   color: rgba(201,168,76,0.18);
   line-height: 1;
   margin-bottom: 1.25rem;
   display: block;
   letter-spacing: -0.02em;
}
.value-icon-line {
   width: 32px;
   height: 1px;
   background: var(--ecbz-primary);
   margin-bottom: 1.25rem;
}
.value-name {
   font-family: var(--ecbz-heading-font), sans-serif;
   font-size: 22px !important;
   font-weight: 400;
   color: var(--ecbz-secondary);
   letter-spacing: 0.03em;
   margin-bottom: 0.75rem;
   line-height: 1.2;
}
.value-body {
   font-size: 13px !important;
   color: var(--ecbz-secondary);
   line-height: 1.85;
   font-weight: 300;
   letter-spacing: 0.02em;
}
.variant-label {
   font-size: 10px;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   color: var(--ecbz-secondary);
   font-weight: 500;
   padding: 1rem 0 0.5rem;
   border-top: 0.5px solid var(--ecbz-secondary);
   margin-top: 1.5rem
}

.variant-label:first-child {
   border-top: none;
   margin-top: 0
}
.va {
   /*background: var(--ecbz-body-color);*/
   /*padding: 56px 40px;*/
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 56px;
   align-items: start;
}
.va-img-wrap {
   position: relative;
}
.va-img {
   width: 100%;
   aspect-ratio: 4/3;
   object-fit: cover;
   border-radius: 8px;
   display: block;
   /*background: #C8C8C4*/
}
.va-img-placeholder {
   width: 100%;
   /*aspect-ratio: 3/3;*/
   border-radius: var(--ecbz-border-radius);
   /*background: linear-gradient(135deg, #1F5234 0%, #163C25 60%, #0D2418 100%);*/
   display: flex;
   align-items: start;
   justify-content: start;
   position: relative;
   overflow: hidden;
   padding-right: 5rem;
}
.va-img-placeholder-right {
   width: 100%;
   /*aspect-ratio: 3/3;*/
   border-radius: var(--ecbz-border-radius);
   /*background: linear-gradient(135deg, #1F5234 0%, #163C25 60%, #0D2418 100%);*/
   display: flex;
   align-items: start;
   justify-content: start;
   position: relative;
   overflow: hidden;
   padding-left: 5rem;
}
.va-img-placeholder::after, .va-img-placeholder-right::after {
   content: '';
   position: absolute;
   inset: 0;
   background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")
}
.va-img-icon {
   font-size: 48px;
   color: rgba(255, 255, 255, 0.15)
}
.va-accent-box {
   position: absolute;
   bottom: -16px;
   right: -16px;
   background: var(--ecbz-secondary);
   border-radius: 6px;
   padding: 16px 20px;
   min-width: 130px
}
.va-accent-num {
   font-family: var(--ecbz-heading-font), serif;
   font-size: 28px;
   font-weight: 700;
   color: #fff;
   line-height: 1
}
.va-accent-label {
   font-size: 10px;
   color: rgba(255, 255, 255, 0.75);
   text-transform: uppercase;
   letter-spacing: 0.08em;
   margin-top: 3px
}
.va-stripe {
   position: absolute;
   top: 16px;
   left: -10px;
   width: 4px;
   height: 60px;
   background: var(--ecbz-secondary);
   border-radius: 2px
}
.va-stripe-right {
   position: absolute;
   top: 16px;
   right: -8px;
   width: 4px;
   height: 60px;
   background: var(--ecbz-secondary);
   border-radius: 2px
}
.va-content {}
.va-eyebrow {
   font-size: 10px;
   font-weight: 500;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--ecbz-secondary);
   margin-bottom: 12px;
   display: flex;
   align-items: center;
   gap: 8px
}
.va-eyebrow::before {
   content: '';
   display: block;
   width: 24px;
   height: 2px;
   background: var(--ecbz-secondary);
   border-radius: 1px;
   flex-shrink: 0
}
.va-title {
   font-family: var(--ecbz-heading-font), serif;
   font-size: 30px;
   font-weight: 700;
   color: var(--ecbz-primary);
   line-height: 1.2;
   letter-spacing: -0.3px;
   margin-bottom: 16px
}
.va-body, .va-body p {
   font-size: 14px;
   color: var(--ecbz-body-text-color);
   line-height: 1.75;
   /*margin-bottom: 20px*/
}
.va-features {
   display: flex;
   flex-direction: column;
   gap: 10px;
   margin-bottom: 24px
}
.va-feature {
   display: flex;
   align-items: flex-start;
   gap: 10px
}
.va-feature-dot {
   width: 20px;
   height: 20px;
   border-radius: 50%;
   background: #E8F0EB;
   border: 1.5px solid var(--ecbz-border-color);
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   margin-top: 1px
}
.va-feature-dot-inner {
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--ecbz-primary)
}
.va-feature-text {
   font-size: 13px;
   color: #3A3A36;
   line-height: 1.5
}
.va-btn {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: #163C25;
   color: #fff;
   padding: 11px 24px;
   border-radius: 5px;
   font-size: 13px;
   font-weight: 600;
   text-decoration: none;
   letter-spacing: 0.02em
}
.va-btn-ghost {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: transparent;
   color: #163C25;
   border: 1.5px solid #163C25;
   padding: 10px 24px;
   border-radius: 5px;
   font-size: 13px;
   font-weight: 500;
   text-decoration: none;
   margin-left: 8px
}
@media (max-width: 575.8px) {
   .va {
      min-width: 100%;
      padding: 0;
      gap: 20px;
      grid-template-columns: repeat(1, 1fr);
   }
}
@media (min-width: 576px) {
   .va {
      min-width: 100%;
      /*padding: 16px 10px;*/
      gap: 20px;
      grid-template-columns: repeat(1, 1fr);
   }
}
@media (min-width: 768px) {
   .va {
      min-width: 100%;
      /*padding: 26px 0;*/
      gap: 20px;
      grid-template-columns: repeat(1, 1fr);
   }
}
@media (min-width: 992px) {
   .va {
      min-width: 100%;
      /*padding: 56px 40px;*/
      gap: 20px;
      grid-template-columns: 1fr 1fr;
   }
}
.kncci-eyebrow {
   font-family: var(--ecbz-body-font), 'Playfair Display', serif;
   font-size: 11px !important;
   font-weight: 500;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--ecbz-secondary);
   margin-bottom: 0.5rem;
}
.kncci-section-title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: clamp(1.75rem, 3vw, 2rem);
   font-weight: 600;
   color: var(--ecbz-primary);
   line-height: 1.25;
   margin-bottom: 0;
}
.kncci-section-body {
   font-size: 15px;
   line-height: 1.75;
   max-width: 65ch;
   margin-inline: auto;
}
.kncci-card-link {
   display: inline-flex;
   align-items: center;
   font-size: 13px;
   font-weight: 600;
   color: var(--ecbz-secondary);
   text-decoration: none;
   gap: 0.25rem;

   &:hover {
      color: var(--ecbz-primary);
      text-decoration: underline;
   }
}
.kncci-partners-grid {
   display: grid;
   grid-template-columns: repeat(5, 1fr);
   column-gap: var(--ecbz-column-gap);
   row-gap: var(--ecbz-row-gap);
   align-items: center;
   justify-items: center;
}
.kncci-partner-item {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
}
.kncci-partner-item img {
   min-height: 100px;
   max-height: 120px;
   width: auto;
   object-fit: contain;
}
@media (max-width: 991.98px) {
   .kncci-partners-grid {
      grid-template-columns: repeat(3, 1fr);
   }
}
@media (max-width: 575.98px) {
   .kncci-partners-grid {
      grid-template-columns: repeat(2, 1fr);
   }
}
.kncci-feature-card {
   display: flex;
   flex-direction: column;
   padding: 1.75rem;
   background: #fff;
   border: 1px solid var(--ecbz-primary-light);
   border-radius: 8px;
   transition: box-shadow 0.25s ease, transform 0.25s ease;

   &:hover {
      box-shadow: 0 8px 32px rgba(22, 60, 37, 0.10);
      transform: translateY(-3px);
   }
}
.kncci-feature-icon {
   width: 52px;
   height: 52px;
   border-radius: 10px;
   background: var(--ecbz-primary-light);
   display: flex;
   align-items: center;
   justify-content: center;
   margin-bottom: 1.25rem;
   flex-shrink: 0;

   i {
      font-size: 1.5rem;
      color: var(--ecbz-primary);
      line-height: 1;
   }
}

.kncci-feature-number {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.25rem;
   font-weight: 700;
   color: var(--ecbz-primary);
}
.kncci-feature-title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin-bottom: 0.5rem;
   line-height: 1.35;
}

.kncci-feature-body {
   font-size: 14px;
   line-height: 1.7;
   flex: 1;
}
.kncci-inline-icon {
   width: 44px;
   height: 44px;
   border-radius: 50%;
   background: var(--ecbz-primary);
   display: flex;
   align-items: center;
   justify-content: center;

   i {
      font-size: 1.125rem;
      color: #fff;
      line-height: 1;
   }
}
.kncci-inline-title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin-bottom: 0.375rem;
}
.kncci-inline-body {
   font-size: 14px;
   line-height: 1.7;
}
.kncci-values-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr));
   gap: 2rem;
}
.kncci-value-card {
   padding: 1.5rem 0;
   border-top: 2px solid var(--ecbz-primary);
   position: relative;
   transition: border-color 0.2s;

   &:hover {
      border-color: var(--ecbz-primary);
   }
}
.kncci-value-number {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 2.5rem;
   font-weight: 700;
   color: var(--ecbz-primary-light);
   line-height: 1;
   display: block;
   margin-bottom: 0.75rem;
   transition: color 0.2s;
}
.kncci-value-card:hover .kncci-value-number {
   color: var(--ecbz-primary);
}
.kncci-value-name {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin-bottom: 0.5rem;
}
.kncci-value-body {
   font-size: 14px;
   line-height: 1.7;
}
.kncci-image-card {
   display: flex;
   flex-direction: column;
   border-radius: 8px;
   overflow: hidden;
   background: #fff;
   border: 1px solid var(--ecbz-secondary);
   transition: box-shadow 0.25s ease;

   &:hover {
      box-shadow: 0 8px 32px rgba(22, 60, 37, 0.12);
   }
}
.kncci-image-card__thumb {
   display: block;
   position: relative;
   overflow: hidden;
   height: 220px;
   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.5s ease;
   }
   &:hover img {
      transform: scale(1.05);
   }
}
.kncci-image-card__overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(to top, rgba(22,60,37,0.35) 0%, transparent 60%);
   pointer-events: none;
}
.kncci-image-card__body {
   padding: 1.25rem 1.5rem 1.5rem;
   display: flex;
   flex-direction: column;
   flex: 1;
}
.kncci-image-card__title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   text-decoration: none;
   line-height: 1.35;
   margin-bottom: 0.5rem;
   display: block;

   &:hover {
      color: var(--ecbz-primary);
   }
}
.kncci-image-card__excerpt {
   font-size: 13px;
   line-height: 1.65;
   flex: 1;
   /*Clamp to 3 lines;*/
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
.kncci-tier-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
   gap: 1.5rem;

   @media (min-width: 992px) {
      grid-template-columns: repeat(5, 1fr);
   }
}
.kncci-tier-card {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   padding: 1.75rem 1.5rem;
   background: var(--ecbz-body-color);
   border-radius: 10px;
   border-top: 4px solid var(--ecbz-primary);
   transition: transform 0.25s ease, box-shadow 0.25s ease;

   &:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 36px rgba(0,0,0,0.10);
   }
}
.kncci-tier-badge {
   display: inline-block;
   font-size: 10px;
   font-weight: 600;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: var(--ecbz-primary);
   background: rgba(255,255,255,0.7);
   border: 1px solid var(--ecbz-body-color);
   border-radius: 100px;
   padding: 2px 10px;
   margin-bottom: 1rem;
}
.kncci-tier-icon {
   margin-bottom: 0.75rem;

   i {
      font-size: 1.75rem;
      color: var(--ecbz-primary);
   }
}
.kncci-tier-name {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin-bottom: 0.625rem;
   line-height: 1.3;
}
.kncci-tier-body {
   font-size: 13px;
   line-height: 1.7;
   color: var(--ecbz-body-color);
   flex: 1;

   ul {
      padding-left: 1.1rem;
      margin: 0.5rem 0 0;

      li {
         margin-bottom: 0.3rem;
      }
   }
}
.kncci-tier-cta {
   display: inline-flex;
   align-items: center;
   gap: 0.25rem;
   margin-top: 1.25rem;
   font-size: 12px;
   font-weight: 600;
   color: var(--ecbz-primary);
   text-decoration: none;
   letter-spacing: 0.02em;

   &:hover {
      text-decoration: underline;
   }
}
.kncci-cards-carousel .swiper-pagination-bullet {
  background: var(--ecbz-primary-light);
  opacity: 1;
  width: 8px;
  height: 8px;
  transition: background 0.2s, transform 0.2s;
}
.kncci-cards-carousel .swiper-pagination-bullet-active {
   background: var(--ecbz-primary);
   transform: scale(1.3);
}
@media (prefers-reduced-motion: reduce) {
   .kncci-feature-card,
   .kncci-tier-card,
   .kncci-image-card {
      transition: none;
   }

   [data-aos] {
      opacity: 1 !important;
      transform: none !important;
   }
}
.kncci-service-card {
   display: flex;
   flex-direction: column;
   background: #fff;
   border-radius: 10px;
   overflow: hidden;
   border: 1px solid var(--ecbz-border-color);
   transition: box-shadow 0.25s ease, transform 0.25s ease;

   &:hover {
      box-shadow: 0 12px 40px rgba(22, 60, 37, 0.12);
      transform: translateY(-4px);
   }
}

.kncci-service-card__thumb {
   display: block;
   position: relative;
   overflow: hidden;
   height: 210px;
   flex-shrink: 0;

   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.5s ease;
   }

   &:hover img {
      transform: scale(1.06);
   }
}
.kncci-service-card__overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(to top, rgba(22, 60, 37, 0.4) 0%, transparent 55%);
   pointer-events: none;
   transition: opacity 0.3s ease;
}

.kncci-service-card:hover .kncci-service-card__overlay {
   opacity: 0.7;
}
.kncci-service-card__body {
   display: flex;
   flex-direction: column;
   flex: 1;
   padding: 1.375rem 1.5rem 1.5rem;
}
.kncci-service-card__title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.0625rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   text-decoration: none;
   line-height: 1.35;
   margin-bottom: 0.625rem;
   display: block;

   &:hover {
      color: var(--ecbz-primary);
   }
}
.kncci-service-card__desc {
   font-size: 13px;
   line-height: 1.7;
   flex: 1;
   margin: 0 0 1rem;
   /* Clamp to 3 lines*/
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
.kncci-service-tab-btn {
   display: flex;
   flex-direction: row;
   align-items: center;
   gap: 0.875rem;
   padding: 0.875rem 1.125rem;
   background: #fff;
   border: 1px solid var(--ecbz-primary);
   border-radius: 8px;
   cursor: pointer;
   transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
   text-align: left;
   width: 100%;

   &.active,
   &:hover {
      background: var(--ecbz-primary);
      border-color: var(--ecbz-primary);
      color: #fff;

      .kncci-tab-number {
         color: rgba(255, 255, 255, 0.55);
      }

      .kncci-tab-title {
         color: #fff;
      }

      .kncci-tab-arrow {
         opacity: 1;
         transform: translateX(0);
      }
   }
}
.kncci-tab-number {
   font-family: var(--ecbz-heading-font), 'Playfair', serif;
   font-size: 0.9375rem;
   font-weight: 700;
   color: var(--ecbz-primary);
   flex-shrink: 0;
   transition: color 0.2s;
}
.kncci-tab-title {
   font-family: var(--ecbz-heading-font), 'Playfair', serif;
   font-size: 0.9375rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   flex: 1;
   transition: color 0.2s;
}
.kncci-tab-arrow {
   font-size: 1.125rem;
   opacity: 0;
   transform: translateX(-4px);
   transition: opacity 0.2s, transform 0.2s;
   flex-shrink: 0;
}
.kncci-service-panel__image {
   position: relative;
   border-radius: 10px;
   overflow: hidden;
   aspect-ratio: 16 / 10;

   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
   }
}
.kncci-service-panel__overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(to top, rgba(22, 60, 37, 0.80) 0%, rgba(22, 60, 37, 0.1) 55%, transparent 80%);
   pointer-events: none;
}
.kncci-service-panel__caption {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   padding: 2rem 2rem 1.75rem;
}
.kncci-service-panel__title {
   font-family: var(--ecbz-heading-font), 'Playfair', serif;
   font-size: 1.375rem;
   font-weight: 600;
   color: #fff;
   margin-bottom: 0.5rem;
   line-height: 1.3;
}

.kncci-service-panel__desc {
   font-size: 13px;
   line-height: 1.7;
   color: rgba(255, 255, 255, 0.8);
   margin-bottom: 1rem;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
}

.kncci-service-panel__cta {
   display: inline-flex;
   align-items: center;
   gap: 0.25rem;
   font-size: 13px;
   font-weight: 600;
   color: var(--ecbz-white);
   text-decoration: none;
   letter-spacing: 0.02em;
   border: 1px solid var(--ecbz-border-color);
   border-radius: var(--ecbz-border-radius);
   padding: 10px 15px !important;

   &:hover {
      color: #fff;
   }
}
.kncci-service-text-card {
    display: flex;
    flex-direction: column;
    padding: 1.75rem 0 1.5rem;
    border-top: 2px solid var(--ecbz-border-color);
    transition: border-color 0.2s ease;

    &:hover {
       border-color: var(--ecbz-primary);

       .kncci-service-text-card__num {
          color: var(--ecbz-primary);
       }
    }
}
.kncci-service-text-card__num {
   font-family: var(--ecbz-heading-font), 'Playfair', serif;
   font-size: 2.25rem !important;
   font-weight: 700;
   color: var(--ecbz-primary-light);
   line-height: 1;
   margin-bottom: 0.75rem;
   transition: color 0.2s ease;
}

.kncci-service-text-card__rule {
   width: 32px;
   height: 2px;
   background: var(--ecbz-secondary);
   margin-bottom: 1rem;
}
.kncci-service-text-card__title {
   font-family: var(--ecbz-heading-font), 'Playfair', serif;
   font-size: 2.0625rem !important;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   text-decoration: none;
   line-height: 1.35;
   margin-bottom: 0.625rem;
   display: block;

   &:hover {
      color: var(--ecbz-primary);
   }
}
.kncci-service-text-card__desc {
   font-size: 13px; /*var(--ecbz-font-size); */
   line-height: 1.7;
   flex: 1;
   margin-bottom: 1rem;
}
.kncci-service-detail__body {
   font-size: 15px;
   line-height: 1.8;
   color: var(--ecbz-body-text-color);

   h2, h3, h4 {
      font-family: var(--ecbz-heading-font), sans-serif;
      color: var(--ecbz-body-text-color);
      margin-top: 1.75rem;
      margin-bottom: 0.625rem;
   }

   p { margin-bottom: 1rem; }

   ul, ol {
      padding-left: 1.25rem;
      margin-bottom: 1rem;

      li { margin-bottom: 0.375rem; }
   }
}
.kncci-gallery-thumb {
   position: relative;
   border-radius: 8px;
   overflow: hidden;

   img {
      display: block;
      width: 100%;
      transition: transform 0.45s ease;
   }

   &:hover img {
      transform: scale(1.06);
   }
}
.kncci-gallery-thumb__overlay {
   position: absolute;
   inset: 0;
   background: rgba(22, 60, 37, 0.55);
   display: flex;
   align-items: center;
   justify-content: center;
   opacity: 0;
   transition: opacity 0.3s ease;
}
.kncci-gallery-thumb:hover .kncci-gallery-thumb__overlay {
   opacity: 1;
}
.kncci-gallery-thumb__zoom {
   width: 44px;
   height: 44px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.15);
   border: 1.5px solid rgba(255, 255, 255, 0.6);
   display: flex;
   align-items: center;
   justify-content: center;
   color: #fff;
   font-size: 1.25rem;
   text-decoration: none;
   backdrop-filter: blur(4px);
   transition: background 0.2s;

   &:hover {
      background: rgba(255, 255, 255, 0.3);
   }
}
.kncci-other-services {
   padding-top: 4rem;
   padding-bottom: 4rem;
}
.kncci-nav-btn {
   width: 40px;
   height: 40px;
   border-radius: 50%;
   border: 1.5px solid var(--ecbz-border-color);
   background: #fff;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   font-size: 1.125rem;
   color: var(--ecbz-body-text-color);
   transition: background 0.2s, border-color 0.2s, color 0.2s;

   &:hover {
      background: var(--ecbz-primary);
      border-color: var(--ecbz-primary);
      color: #fff;
   }
}
@media (prefers-reduced-motion: reduce) {
   .kncci-service-card,
   .kncci-service-card__thumb img,
   .kncci-gallery-thumb img {
      transition: none;
   }
}
.kncci-board-featured {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 2rem;
   margin-bottom: 3.5rem;

   @media (max-width: 767px) {
      grid-template-columns: 1fr;
   }
}
.kncci-board-featured__card {
   display: flex;
   gap: 2rem;
   padding: 2rem;
   background: #fff;
   border: 1px solid var(--ecbz-border-color);
   border-radius: 12px;
   border-top: 4px solid var(--ecbz-secondary);
   transition: box-shadow 0.25s ease;

   &.is-chairman {
      border-top-color: var(--ecbz-primary);
   }

   &:hover {
      box-shadow: 0 8px 32px rgba(var(--ecbz-primary-rgb), 0.10);
   }

   @media (max-width: 575px) {
      flex-direction: column;
      gap: 1.25rem;
   }
}
.kncci-board-featured__photo-wrap {
   position: relative;
   flex-shrink: 0;
   width: 130px;
   height: 155px;

   @media (max-width: 575px) {
      width: 100px;
      height: 120px;
   }
}
.kncci-board-featured__photo {
   width: 100%;
   height: 100%;
   object-fit: cover;
   border-radius: 8px;
   display: block;
}
.kncci-board-featured__info {
   display: flex;
   flex-direction: column;
   gap: 0.75rem;
   flex: 1;
   min-width: 0;
}
.kncci-board-featured__name {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.1875rem !important;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin: 0;
   line-height: 1.3;
}
.kncci-board-featured__position {
   font-size: 13px !important;
   font-weight: 500;
   color: var(--ecbz-secondary, #B83232);
   margin: 0;
   text-transform: uppercase;
   letter-spacing: 0.06em;
}
.kncci-board-featured__org {
   font-size: 13px !important;
   color: var(--ecbz-body-text-color);
   margin: 0;

   i { font-size: 13px; !important; }
}

.kncci-board-featured__bio {
   font-size: 13px !important;
   line-height: 1.7;
   color: var(--ecbz-body-text-color, #4A4A46);
   /* Clamp to 4 lines — enough for a brief intro */
   display: -webkit-box;
   -webkit-line-clamp: 4;
   -webkit-box-orient: vertical;
   overflow: hidden;
}

.kncci-board-badge {
   position: absolute;
   bottom: -10px;
   left: 50%;
   transform: translateX(-50%);
   white-space: nowrap;
   font-size: 9px;
   font-weight: 600;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: #fff;
   background: var(--ecbz-primary);
   border-radius: 100px;
   padding: 3px 10px;
   border: 1.5px solid #fff;

   &.kncci-board-badge--vice {
      background: #3A3A36;
   }
}
.kncci-member-card {
   display: flex;
   flex-direction: column;
   background: #fff;
   border: 1px solid var(--ecbz-border-color);
   border-radius: 10px;
   overflow: hidden;
   transition: box-shadow 0.25s ease, transform 0.25s ease;

   &:hover {
      box-shadow: 0 10px 36px rgba(22, 60, 37, 0.10);
      transform: translateY(-3px);

      .kncci-member-card__social-overlay {
         opacity: 1;
      }
   }
}
.kncci-member-card__photo-wrap {
   position: relative;
   overflow: hidden;
   aspect-ratio: 3 / 3;
   flex-shrink: 0;
}
.kncci-member-card__photo {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: top center;
   display: block;
   transition: transform 0.45s ease;
}
.kncci-member-card:hover .kncci-member-card__photo {
   transform: scale(1.04);
}
.kncci-member-card__social-overlay {
   position: absolute;
   inset: 0;
   background: rgba(22, 60, 37, 0.60);
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 0.625rem;
   opacity: 0;
   transition: opacity 0.3s ease;
}
.kncci-member-card__body {
   padding: 1.125rem 1.25rem 1.25rem;
   display: flex;
   flex-direction: column;
   flex: 1;
}
.kncci-member-card__name {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1rem !important;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin: 0 0 0.25rem;
   line-height: 1.3;
}
.kncci-member-card__position {
   font-size: 11.5px !important;
   font-weight: 500;
   color: var(--ecbz-secondary);
   margin: 0 0 0.25rem;
   text-transform: uppercase;
   letter-spacing: 0.06em;
}

.kncci-member-card__org {
   font-size: 12px !important;
   color: #6B6B67;
   margin: 0 0 0.5rem;
}
.kncci-member-card__bio {
   font-size: 12.5px !important;
   line-height: 1.65;
   color: #4A4A46;
   flex: 1;
   margin-bottom: 0.5rem;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
.kncci-board-members-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 1.5rem;

   @media (max-width: 991px) {
      grid-template-columns: repeat(2, 1fr);
   }

   @media (max-width: 575px) {
      grid-template-columns: 1fr;
   }
}
.kncci-board-duo {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 2rem;

   @media (max-width: 767px) {
      grid-template-columns: 1fr;
   }
}
.kncci-board-duo__card {
   display: flex;
   gap: 1.75rem;
   padding: 2rem;
   background: var(--ecbz-primary-light);
   border-radius: 12px;
   border-left: 4px solid var(--ecbz-primary);
   transition: box-shadow 0.25s ease;

   &:hover {
      box-shadow: 0 8px 32px rgba(22, 60, 37, 0.12);
   }
   &:nth-child(2) {
      background: #f5f3ef;
      border-left-color: var(--ecbz-secondary);
   }
   @media (max-width: 575px) {
      flex-direction: column;
      gap: 1.25rem;
   }
}
.kncci-board-duo__photo-col {
   position: relative;
   flex-shrink: 0;
   width: 120px;
   align-self: flex-start;
}
.kncci-board-duo__photo {
   width: 120px;
   height: 140px;
   object-fit: cover;
   object-position: top center;
   border-radius: 8px;
   display: block;
}
.kncci-board-duo__info-col {
   flex: 1;
   min-width: 0;
}
.kncci-board-duo__name {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.125rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   margin: 0 0 0.25rem;
   line-height: 1.3;
}
.kncci-board-duo__position {
   font-size: 12px;
   font-weight: 500;
   color: var(--ecbz-secondary);
   text-transform: uppercase;
   letter-spacing: 0.06em;
   margin: 0 0 0.25rem;
}
.kncci-board-duo__org {
   font-size: 12.5px;
   color: var(--ecbz-body-text-color);
   margin: 0 0 0.75rem;
}
.kncci-board-duo__bio {
   font-size: 13px;
   line-height: 1.7;
   color: var(--ecbz-body-text-color);
   display: -webkit-box;
   -webkit-line-clamp: 5;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
.kncci-board-socials {
   display: flex;
   flex-wrap: wrap;
   gap: 0.5rem;
}
.kncci-board-social {
   width: 32px;
   height: 32px;
   border-radius: 50%;
   border: 1px solid var(--ecbz-border-color);
   background: #fff;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   color: var(--ecbz-body-text-color);
   font-size: 0.9375rem;
   text-decoration: none;
   transition: background 0.2s, border-color 0.2s, color 0.2s;

   &:hover {
      background: var(--ecbz-primary, #163C25);
      border-color: var(--ecbz-primary, #163C25);
      color: #fff;
   }
   &.kncci-board-social--light {
      background: rgba(255, 255, 255, 0.15);
      border-color: rgba(255, 255, 255, 0.5);
      color: #fff;

      &:hover {
         background: rgba(255, 255, 255, 0.3);
      }
   }
   &.kncci-board-social--sm {
      width: 26px;
      height: 26px;
      font-size: 0.8125rem;
   }
}
@media (prefers-reduced-motion: reduce) {
   .kncci-member-card,
   .kncci-member-card__photo {
      transition: none;
   }

   .kncci-member-card__social-overlay {
      opacity: 1;
      background: rgba(22, 60, 37, 0.40);
   }
}

.kncci-date-badge {
   position: absolute;
   top: 12px;
   left: 12px;
   background: var(--ecbz-primary);
   color: #fff;
   border-radius: 6px;
   padding: 6px 10px;
   text-align: center;
   min-width: 44px;
   line-height: 1;

   & --sm {
      padding: 4px 8px;
      min-width: 36px;
      border-radius: 5px;
   }
}
.kncci-date-badge__day {
   display: block;
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.25rem !important;
   font-weight: 700;
   line-height: 1 !important;

   .kncci-date-badge--sm & {
      font-size: 1rem !important;
   }
}
.kncci-date-badge__month {
   display: block;
   font-size: 9px;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: 0.08em;
   color: rgba(255, 255, 255, 0.75);
   margin-top: 2px;
}
.kncci-event-pills {
   display: flex;
   flex-wrap: wrap;
   gap: 0.375rem;
   margin-bottom: 0.625rem;
}
.kncci-pill {
   display: inline-flex;
   align-items: center;
   font-size: 10px;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   border-radius: 100px;
   padding: 2px 9px;
   line-height: 1.6;

   &--past {
      background: var(--ecbz-body-color);
      color: var(--ecbz-body-text-color);
   }

   &--today {
      background: #FEF3C7;
      color: var(--ecbz-primary);
   }

   &--soon {
      background: #D1FAE5;
      color: #065F46;
   }

   &--members {
      background: rgba(var(--ecbz-primary-light), 0.14);
      color: var(--ecbz-primary);
   }

   &--virtual {
      background: #EDE9FE;
      color: #4C1D95;
   }

   &--category {
      background: #FEF3C7;
      color: #78350F;
   }
}
.kncci-event-card {
   display: flex;
   flex-direction: column;
   background: #fff;
   border: 1px solid var(--ecbz-border-color, #E0DDD6);
   border-radius: 10px;
   overflow: hidden;
   transition: box-shadow 0.25s ease, transform 0.25s ease;

   &:hover {
      box-shadow: 0 10px 36px rgba(22, 60, 37, 0.10);
      transform: translateY(-3px);
   }
}
.kncci-event-card__thumb {
   position: relative;
   display: block;
   overflow: hidden;
   height: 200px;
   flex-shrink: 0;

   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.45s ease;
   }

   &:hover img {
      transform: scale(1.05);
   }
}
.kncci-event-card__overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(to top, rgba(var(--ecbz-primary-rgb), 0.3) 0%, transparent 55%);
   pointer-events: none;
}
.kncci-event-card__body {
   display: flex;
   flex-direction: column;
   flex: 1;
   padding: 1.125rem 1.25rem 1.25rem;
}
.kncci-event-card__title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1rem !important;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   text-decoration: none;
   line-height: 1.35 !important;
   margin-bottom: 0.625rem !important;
   display: block;
   /*Clamp to 2 lines*/
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;

   &:hover { color: var(--ecbz-primary); }
}
.kncci-event-card__meta {
   display: flex;
   flex-direction: column;
   gap: 0.3rem;
   flex: 1;
   margin-bottom: 0.75rem;
}
.kncci-event-meta__item {
   display: flex;
   align-items: center;
   gap: 0.375rem;
   font-size: 12.5px !important;
   color: #6B6B67;

   i { font-size: 13px !important; flex-shrink: 0; }
}
.kncci-event-card__register {
   display: inline-flex;
   align-items: center;
   font-size: 12.5px;
   font-weight: 600;
   color: var(--ecbz-primary);
   text-decoration: none;
   gap: 0.2rem;

   &:hover {
      color: var(--ecbz-primary);
      text-decoration: underline;
   }
}
.kncci-event-hcard {
   display: flex;
   gap: 1rem;
   background: #fff;
   border: 1px solid #E0DDD6;
   border-radius: 10px;
   overflow: hidden;
   transition: box-shadow 0.2s ease;

   &:hover {
      box-shadow: 0 6px 24px rgba(22, 60, 37, 0.09);
   }
}
.kncci-event-hcard__thumb {
   position: relative;
   display: block;
   flex-shrink: 0;
   width: 110px;
   overflow: hidden;

   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.4s ease;
   }

   &:hover img { transform: scale(1.05); }
}
.kncci-event-hcard__body {
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 0.875rem 1rem 0.875rem 0;
   gap: 0.25rem;
}
.kncci-event-hcard__title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 0.9375rem;
   font-weight: 600;
   color: var(--ecbz-body-text-color);
   text-decoration: none;
   line-height: 1.35;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;

   &:hover { color: var(--ecbz-primary); }
}
.kncci-event-hero {
   display: flex;
   flex-direction: column;
   border-radius: 12px;
   overflow: hidden;
   position: relative;
   background: #111;
   min-height: 480px;
}
.kncci-event-hero__thumb {
   position: absolute;
   inset: 0;

   img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.6s ease;
   }

   &:hover img { transform: scale(1.04); }
}
.kncci-event-hero__overlay {
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to top,
      rgba(10, 26, 16, 0.90) 0%,
      rgba(10, 26, 16, 0.50) 45%,
      rgba(10, 26, 16, 0.10) 80%
   );
}
.kncci-event-hero__date-badge {
   position: absolute;
   top: 1.25rem;
   left: 1.25rem;
   background: var(--ecbz-primary);
   color: #fff;
   border-radius: 8px;
   padding: 8px 14px;
   text-align: center;
   z-index: 2;

   .kncci-date-badge__day {
      font-size: 1.5rem;
   }
}
.kncci-event-hero__body {
   position: relative;
   z-index: 2;
   margin-top: auto;
   padding: 1.75rem 2rem 2rem;
   display: flex;
   flex-direction: column;
   gap: 0.5rem;
}
.kncci-event-hero__title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 1.5rem;
   font-weight: 600;
   color: #fff;
   text-decoration: none;
   line-height: 1.3;
   display: block;

   &:hover { color: var(--ecbz-primary); }
}
.kncci-event-hero__desc {
   font-size: 13.5px;
   line-height: 1.65;
   color: rgba(255, 255, 255, 0.78);
   margin: 0;
}
.kncci-event-hero__footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   flex-wrap: wrap;
   gap: 0.5rem;
   margin-top: 0.25rem;

   .kncci-event-meta__item { color: rgba(255, 255, 255, 0.65); }
}
.kncci-hero-cta {
   display: inline-flex;
   align-items: center;
   gap: 0.25rem;
   font-size: 13px;
   font-weight: 600;
   color: var(--ecbz-secondary);
   text-decoration: none;
   white-space: nowrap;

   &:hover {
      color: #fff;
      text-decoration: underline;
   }
}
.kncci-event-sidebar__image-wrap {
   border-radius: 10px;
   overflow: hidden;
   position: relative;

   img.kncci-event-sidebar__image {
      width: 100%;
      aspect-ratio: 4 / 3;
      object-fit: cover;
      display: block;
   }

   .kncci-event-pills {
      position: absolute;
      bottom: 10px;
      left: 10px;
      margin: 0;
   }
}
.kncci-event-facts {
   border: 1px solid var(--ecbz-border-color);
   border-radius: 10px;
   overflow: hidden;
}
.kncci-event-facts__list {
   list-style: none;
   margin: 0;
   padding: 0;
}

.kncci-event-facts__item {
   display: flex;
   align-items: flex-start;
   gap: 0.875rem;
   padding: 0.875rem 1.125rem;
   border-bottom: 1px solid #E0DDD6;

   &:last-child { border-bottom: none; }
}
.kncci-event-facts__icon {
   width: 32px;
   height: 32px;
   border-radius: 6px;
   background: #E8F0EB;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;

   i {
      font-size: 1rem;
      color: var(--ecbz-primary,);
   }
}
.kncci-event-facts__label {
   font-size: 10.5px !important;
   font-weight: 600 !important;
   letter-spacing: 0.08em !important;
   text-transform: uppercase;
   color: #9C9C98;
   margin: 0 0 0.125rem;
}
.kncci-event-facts__value {
   font-size: 13.5px !important;
   color: var(--ecbz-body-text-color);
   font-weight: 500;
   margin: 0;
   line-height: 1.4 !important;
}
.kncci-event-facts__link {
   color: var(--ecbz-primary);
   text-decoration: none;

   &:hover { text-decoration: underline; }
}
.kncci-event-past-notice {
   padding: 0.875rem 1rem;
   background: #E4E1DA;
   border-radius: 8px;
   font-size: 13px !important;
   color: #4A4A46;
   text-align: center;
}
.kncci-event-body {
   font-size: 15px !important;
   line-height: 1.85 !important;
   color: #3A3A36;

   h2, h3, h4 {
      font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
      color: #1A1A18;
      margin-top: 2rem;
      margin-bottom: 0.75rem;
   }

   p { margin-bottom: 1rem; }

   ul, ol {
      padding-left: 1.375rem;
      margin-bottom: 1rem;
      li { margin-bottom: 0.4rem; }
   }
}

.kncci-filter-form {
   display: flex;
   flex-wrap: wrap;
   gap: 1rem;
   align-items: flex-end;
   padding: 1.25rem 1.5rem;
   background: #fff;
   border: 1px solid var(--ecbz-border-color, #E0DDD6);
   border-radius: 10px;
}

.kncci-filter-group {
   display: flex;
   flex-direction: column;
   gap: 0.25rem;
   min-width: 160px;
}
.kncci-filter-label {
   font-size: 10.5px;
   font-weight: 600;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   color: #6B6B67;
}
.kncci-filter-select {
   font-size: 13.5px !important;
   padding: 0.5rem 0.875rem;
   border: 1px solid #E0DDD6;
   border-radius: 6px;
   background: #fff;
   color: var(--ecbz-body-text-color);
   cursor: pointer;
   transition: border-color 0.2s;

   &:focus {
      outline: none;
      border-color: var(--ecbz-primary);
   }
}
.kncci-events-empty {
   &__icon {
      font-size: 3.5rem !important;
      color: #C8C4BA;
      display: block;
      margin-bottom: 1rem;
   }

   &__title {
      font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
      font-size: 1.375rem;
      color: #1A1A18;
   }
}
.kncci-tag {
   display: inline-block;
   font-size: 11.5px;
   padding: 3px 10px;
   border-radius: 100px;
   background: #E4E1DA;
   color: #3A3A36;
   text-decoration: none;
   transition: background 0.2s, color 0.2s;

   &:hover {
      background: var(--ecbz-primary, #163C25);
      color: #fff;
   }
}
@media (prefers-reduced-motion: reduce) {
   .kncci-event-card,
   .kncci-event-hcard,
   .kncci-event-hero__thumb img,
   .kncci-event-card__thumb img {
      transition: none;
   }
}
.mt-card {
   border-radius: 10px;
   overflow: hidden;
   border: 1px solid #E0DDD6;
   background: #fff;
   display: flex;
   flex-direction: column;
   transition: box-shadow 0.2s, transform 0.2s;
   position: relative
}
.mt-card:hover {
   box-shadow: 0 8px 28px rgba(0, 0, 0, 0.10);
   transform: translateY(-3px)
}
.mt-card-header {
   padding: 18px 18px 14px;
   position: relative
}
.mt-tier-badge {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   font-size: 10px;
   font-weight: 600;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   padding: 3px 9px;
   border-radius: 3px;
   margin-bottom: 10px
}
.mt-tier-name {
   font-family: var(--ecbz-heading-font), serif;
   font-size: 18px !important;
   font-weight: 700;
   line-height: 1.2;
   margin-bottom: 4px
}
.mt-tier-desc {
   font-size: 11px !important;
   color: #5C5C58;
   line-height: 1.5;
   min-height: 32px
}
.mt-pricing {
   padding: 14px 18px;
   border-top: 1px solid #F0EEE8;
   border-bottom: 1px solid #F0EEE8;
   background: #FAFAF8
}
.mt-price-label {
   font-size: 9px !important;
   font-weight: 500;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: #9C9C98;
   margin-bottom: 3px
}
.mt-price-val {
   font-family: var(--ecbz-heading-font), serif;
   font-size: 20px !important;
   font-weight: 700;
   color: #163C25;
   line-height: 1
}
.mt-price-val span {
   font-size: 11px !important;
   font-family: var(--ecbz-body-font), sans-serif;
   font-weight: 400;
   color: #5C5C58
}
.mt-price-row {
   display: flex;
   gap: 16px
}
.mt-price-item {
   flex: 1
}
.mt-features {
   padding: 14px 18px;
   flex: 1;
   display: flex;
   flex-direction: column;
   gap: 7px
}
.mt-feature {
   display: flex;
   align-items: flex-start;
   gap: 7px;
   font-size: 12px !important;
   color: #3A3A36;
   line-height: 1.4
}
.mt-feature-icon {
   width: 16px;
   height: 16px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   margin-top: 1px;
   font-size: 9px !important;
   font-weight: 700
}
.mt-feature-icon.yes {
   background: #E8F0EB;
   color: #163C25
}
.mt-feature-icon.no {
   background: #F5F5F3;
   color: #C8C8C4
}
.mt-feature.excluded {
   color: #9C9C98
}
.mt-portal-badge {
   margin: 0 18px 14px;
   padding: 8px 10px;
   border-radius: 6px;
   font-size: 10px;
   font-weight: 500;
   display: flex;
   align-items: center;
   gap: 6px;
   line-height: 1.4
}
.mt-portal-badge-dot {
   width: 6px;
   height: 6px;
   border-radius: 50%;
   flex-shrink: 0
}
.mt-cta {
   padding: 0 18px 18px;
   margin-top: auto
}
.mt-btn {
   display: block;
   text-align: center;
   padding: 10px 16px;
   border-radius: 6px;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: 0.02em;
   text-decoration: none;
   border: none;
   cursor: pointer;
   width: 100%;
   transition: opacity 0.15s
}
.mt-btn:hover {
   opacity: 0.88
}
.mt-featured-flag {
   position: absolute;
   top: 0;
   right: 0;
   background: var(--ecbz-secondary);
   color: #fff;
   font-size: 9px;
   font-weight: 600;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   padding: 4px 10px;
   border-radius: 0 10px 0 6px
}
.tier-entrepreneur .mt-card-header {
   background: #F3F8F5
}
.tier-entrepreneur .mt-tier-badge {
   background: #E8F0EB;
   color: #1F5234
}
.tier-entrepreneur .mt-tier-name {
   color: #163C25
}
.tier-entrepreneur .mt-btn {
   background: #163C25;
   color: #fff
}
.tier-affiliate .mt-card-header, .tier-affiliate-membership .mt-card-header {
   background: #EEF5FC
}
.tier-affiliate .mt-tier-badge, .tier-affiliate-membership .mt-tier-badge {
   background: #E6F1FB;
   color: #1A5FA8
}
.tier-affiliate .mt-tier-name, .tier-affiliate-membership .mt-tier-name {
   color: #0C2E52
}
.tier-affiliate .mt-btn, .tier-affiliate-membership .mt-btn {
   background: #1A5FA8;
   color: #fff
}
.tier-bronze .mt-card-header, .tier-bronze-membership .mt-card-header {
   background: #FBF6EE
}
.tier-bronze .mt-tier-badge, .tier-bronze-membership .mt-tier-badge {
   background: #FBF3E4;
   color: #9A6214
}
.tier-bronze.mt-tier-name, .tier-bronze-membership .mt-tier-name {
   color: #5C3A0A
}
.tier-bronze.mt-btn, .tier-bronze-membership .mt-btn {
   background: #9A6214;
   color: #fff
}
.tier-gold .mt-card-header, .tier-gold-membership .mt-card-header {
   background: #FFFBEA
}
.tier-gold .mt-tier-badge, .tier-gold-membership .mt-tier-badge {
   background: #FBF3E4;
   color: #7A4E00
}
.tier-gold .mt-tier-name, .tier-gold-membership .mt-tier-name {
   color: #5C3A0A
}
.tier-gold .mt-btn, .tier-gold-membership .mt-btn {
   background: #BF8840;
   color: #fff
}
.tier-gold, .tier-gold-membership {
   border-color: #DCAA68
}
.tier-platinum .mt-card-header, .tier-platinum-membership .mt-card-header {
   background: #F3F0FB
}
.tier-platinum .mt-tier-badge, .tier-platinum-membership .mt-tier-badge {
   background: #F0EBF9;
   color: #3C3489
}
.tier-platinum .mt-tier-name, .tier-platinum-membership .mt-tier-name {
   color: #25124A
}
.tier-platinum .mt-btn, .tier-platinum-membership .mt-btn {
   background: linear-gradient(135deg, #4A2B8A, #6B46C1);
   color: #fff
}
.tier-platinum, .tier-platinum-membership {
   border-color: #A78BDC
}
.mt-note {
   margin-top: 24px;
   padding: 14px 20px;
   background: #163C25;
   border-radius: 8px;
   display: flex;
   align-items: center;
   gap: 12px
}
.mt-note-icon {
   width: 32px;
   height: 32px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.1);
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0
}
.mt-note-text {
   font-size: 13px;
   color: rgba(255, 255, 255, 0.8);
   line-height: 1.5
}
.mt-note-text strong {
   color: #fff
}
.dir-header {
   background: var(--ecbz-primary);
   padding: 120px 0 30px;
   position: relative;
   overflow: hidden;
}
.dir-header::before {
   content: '';
   position: absolute;
   left: 0; top: 0; bottom: 0;
   width: 4px;
   background: linear-gradient(
      to bottom,
      var(--ecbz-primary),
      rgba(var(--ecbz-primary-rgb),0.15)
   );
}
.dir-header::after {
   content: '';
   position: absolute;
   right: -80px; top: -80px;
   width: 340px; height: 340px;
   border-radius: 50%;
   background: rgba(255,255,255,0.025);
   pointer-events: none;
}
.dir-eyebrow {
   font-size: 11px !important;
   font-weight: 500;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: var(--ecbz-primary);
   display: flex;
   align-items: center;
   gap: 8px;
   margin-bottom: 10px;
}
.dir-eyebrow::before {
   content: '';
   display: block;
   width: 22px; height: 2px;
   background: var(--ecbz-primary);
   border-radius: 1px;
   flex-shrink: 0;
}
.dir-header-title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: clamp(24px, 3vw, 34px)  !important;
   font-weight: 700;
   color: var(--ecbz-white);
   margin-bottom: 8px;
   line-height: 1.2;
}
.dir-header-sub {
   font-size: 14px !important;
   color: var(--ecbz-white-soft);
   line-height: 1.65;
   max-width: 520px;
}
.dir-header-stats {
   display: flex;
   gap: 28px;
   margin-top: 24px;
   padding-top: 20px;
   border-top: 1px solid rgba(255,255,255,0.08);
   flex-wrap: wrap;
}
.dir-hstat-num {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 24px !important;
   font-weight: 700;
   color: #fff;
   line-height: 1;
}
.dir-hstat-num em {
   font-style: normal;
   color: var(--ecbz-primary);
}
.dir-hstat-label {
   font-size: 10px !important;
   color: var(--ecbz-white);
   text-transform: uppercase;
   letter-spacing: 0.07em;
   margin-top: 3px;
}
.filter-search-wrap {
   position: relative;
}
.filter-search-wrap .search-icon {
   position: absolute;
   left: 10px;
   top: 50%;
   transform: translateY(-50%);
   color: #9C9C98;
   pointer-events: none;
}
.filter-search-wrap input {
   width: 100%;
   padding: 9px 12px 9px 34px;
   border: 1px solid var(--ecbz-primary-light, #E0DDD6);
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 13px !important;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   color: var(--ecbz-body-text-color, #1A1A18);
   background: #FAFAF8;
   outline: none;
   transition: border-color 0.15s, background 0.15s;
}
.filter-search-wrap input:focus {
   border-color: var(--ecbz-primary);
   background: #fff;
}
.filter-select {
   width: 100%;
   padding: 9px 30px 9px 11px;
   border: 1px solid #E0DDD6;
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 13px !important;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   color: var(--ecbz-body-text-color, #1A1A18);
   background: #FAFAF8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239C9C98' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 10px center / 12px;
   appearance: none;
   cursor: pointer;
   outline: none;
   transition: border-color 0.15s;
}
.filter-select:focus {
   border-color: var(--ecbz-primary);
   background-color: #fff;
}

.tier-checks {
   display: flex !important;
   flex-direction: row;
   gap: 4px;
}
.tier-check-label {
   display: flex;
   align-items: center;
   gap: 8px;
   padding: 5px 8px;
   border-radius: 5px;
   cursor: pointer;
   transition: background 0.15s;
}
.tier-check-label:hover {
   background: #E8F0EB;
}
.tier-check-label input[type="checkbox"] {
   width: 14px;
   height: 14px;
   accent-color: var(--ecbz-primary);
   cursor: pointer;
   flex-shrink: 0;
}
.tier-badge {
   font-size: 10px !important;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   padding: 2px 8px;
   border-radius: 3px;
   white-space: nowrap;
   line-height: 1.5;
}
.tier-badge--entrepreneur {
   background: #E8F0EB;
   color: #1F5234;
}
.tier-badge--affiliate-membership {
   background: #E6F1FB;
   color: #1A5FA8;
}
.tier-badge--bronze-membership {
   background: #FBF3E4;
   color: #9A6214;
}
.tier-badge--gold-membership {
   background: #FFFBEA;
   color: #7A4E00;
   border: 0.5px solid #DCAA68;
}
.tier-badge--platinum-membership {
   background: #F0EBF9;
   color: #3C3489;
}
/* Active filter chips */
.active-chips {
   display: flex;
   flex-wrap: wrap;
   gap: 5px;
}
.filter-chip {
   display: inline-flex;
   align-items: center;
   gap: 4px;
   background: #E8F0EB;
   color: var(--ecbz-primary);
   border: 0.5px solid #9EC4AC;
   border-radius: 4px;
   padding: 3px 8px;
   font-size: 11px !important;
   font-weight: 500;
   text-decoration: none;
   line-height: 1.4;
}
.filter-chip:hover {
   background: #D4E8DC;
   color: var(--ecbz-primary);
   text-decoration: none;
}
.filter-chip-x {
   font-size: 13px !important;
   line-height: 1;
   opacity: 0.55;
}

/* Filter buttons */
.filter-btn-row {
   display: flex;
   gap: 8px;
   margin-top: 4px;
}
.btn-apply-filter {
   flex: 1;
   background: var(--ecbz-primary);
   color: #fff;
   border: none;
   padding: 9px 12px;
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 12px !important;
   font-weight: 600;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   cursor: pointer;
   transition: opacity 0.15s;
}
.btn-apply-filter:hover { opacity: 0.88; }
.btn-clear-filter {
   background: transparent;
   color: #5C5C58;
   border: 1px solid #E0DDD6;
   padding: 9px 12px;
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 12px !important;
   font-weight: 500;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   cursor: pointer;
   transition: border-color 0.15s;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
}
.btn-clear-filter:hover {
   border-color: var(--ecbz-primary);
   color: var(--ecbz-primary);
   text-decoration: none;
}

.dir-main {
   padding: 20px 24px;
   background: var(--ecbz-body-color, #F6F5F2);
   min-height: 250px;
}

.dir-toolbar {
   display: flex;
   align-items: center;
   gap: 12px;
   margin-bottom: 16px;
   flex-wrap: wrap;
   padding-bottom: 14px;
   border-bottom: 1px solid #E0DDD6;
}
.dir-result-count {
   font-size: 13px !important;
   color: #5C5C58;
   flex: 1;
}
.dir-result-count strong {
   color: var(--ecbz-primary);
}
.dir-sort {
   display: flex;
   align-items: center;
   gap: 6px;
   font-size: 12px !important;
   color: #5C5C58;
}
.dir-sort select {
   border: 1px solid #E0DDD6;
   border-radius: 5px;
   padding: 5px 26px 5px 8px;
   font-size: 12px !important;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%239C9C98' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 8px center / 10px;
   appearance: none;
   cursor: pointer;
   outline: none;
}
.dir-view-toggle {
   display: flex;
   border: 1px solid #E0DDD6;
   border-radius: 5px;
   overflow: hidden;
}
.dir-view-btn {
   padding: 5px 9px;
   background: #fff;
   border: none;
   cursor: pointer;
   color: #9C9C98;
   line-height: 1;
   transition: background 0.15s, color 0.15s;
}
.dir-view-btn.active,
.dir-view-btn:hover {
   background: var(--ecbz-primary);
   color: #fff;
}
.dir-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
}
.dir-grid.view-list {
   grid-template-columns: 1fr;
}
.mem-card {
   background: #fff;
   border: 1px solid var(--ecbz-border-color, #E0DDD6);
   border-radius: 8px;
   overflow: hidden;
   display: flex;
   flex-direction: column;
   transition: box-shadow 0.18s, transform 0.18s;
   text-decoration: none;
   color: inherit;
   position: relative;
}
.mem-card:hover {
   box-shadow: 0 6px 22px rgba(0,0,0,0.09);
   transform: translateY(-2px);
   text-decoration: none;
   color: inherit;
}
.mem-card.is-featured {
   border-color: #DCAA68;
}
.mem-card.is-featured::after {
   content: 'Featured';
   position: absolute;
   top: 10px; right: 10px;
   font-size: 9px !important;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   background: var(--ecbz-primary-light, #BF8840);
   color: #fff;
   padding: 2px 8px;
   border-radius: 3px;
}

.mem-card-top {
   padding: 16px 16px 10px;
   display: flex;
   align-items: flex-start;
   gap: 12px;
}

/* Logo / initials avatar */
.mem-logo {
   width: 46px;
   height: 46px;
   border-radius: 7px;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 17px !important;
   font-weight: 700;
   overflow: hidden;
   border: 1px solid;
}
.mem-logo img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
/* Colour per tier — applied via PHP below */
.mem-logo--entrepreneur {
   background: #E8F0EB;
   color: #1F5234;
   border-color: #9EC4AC;
}
.mem-logo--affiliate-membership {
   background: #E6F1FB;
   color: #1A5FA8;
   border-color: #7BB3E0;
}
.mem-logo--bronze-membership {
   background: #FBF3E4;
   color: #9A6214;
   border-color: #DCAA68;
}
.mem-logo--gold-membership {
   background: #FFFBEA;
   color: #7A4E00;
   border-color: #BF8840;
}
.mem-logo--platinum-membership {
   background: #F0EBF9;
   color: #3C3489;
   border-color: #A78BDC;
}

.mem-info { flex: 1; min-width: 0; }
.mem-name {
   font-size: 13px !important;
   font-weight: 600;
   color: var(--ecbz-primary);
   line-height: 1.3;
   margin-bottom: 3px;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
}
.mem-sector-label {
   font-size: 11px !important;
   color: #5C5C58;
   display: flex;
   align-items: center;
   gap: 4px;
   margin-bottom: 4px;
}
.mem-card-body {
   padding: 0 16px 10px;
   flex: 1;
}
.mem-desc {
   font-size: 12px !important;
   color: #5C5C58;
   line-height: 1.6;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
}
.mem-card-footer {
   padding: 10px 16px;
   border-top: 1px solid #F0EEE8;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 8px;
}
.mem-location {
   font-size: 11px !important;
   color: #9C9C98;
   display: flex;
   align-items: center;
   gap: 4px;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
   flex: 1;
}
.mem-links {
   display: flex;
   gap: 5px;
   flex-shrink: 1;
}
.mem-link-btn {
   width: 26px; height: 26px;
   border-radius: 4px;
   background: #E8F0EB;
   border: none;
   display: flex; align-items: center; justify-content: center;
   cursor: pointer;
   color: var(--ecbz-primary);
   text-decoration: none;
   transition: background 0.15s;
}
.mem-link-btn:hover {
   background: var(--ecbz-primary);
   color: #fff;
   text-decoration: none;
}
.dir-grid.view-list .mem-card {
   flex-direction: row;
   align-items: center;
}
.dir-grid.view-list .mem-card-top {
   flex-shrink: 0;
   padding: 14px 0 14px 16px;
   align-items: center;
}
.dir-grid.view-list .mem-card-body {
   flex: 1;
   padding: 14px 12px;
   border-left: 1px solid #F0EEE8;
}
.dir-grid.view-list .mem-desc {
   -webkit-line-clamp: 1;
}
.dir-grid.view-list .mem-card-footer {
   border-top: none;
   border-left: 1px solid #F0EEE8;
   padding: 14px 16px;
   flex-direction: column;
   align-items: flex-end;
   gap: 8px;
   flex-shrink: 0;
   min-width: 120px;
}

.dir-empty {
   grid-column: 1 / -1;
   padding: 56px 24px;
   text-align: center;
   color: #5C5C58;
}
.dir-empty-icon {
   font-size: 48px !important;
   margin-bottom: 14px;
   opacity: 0.25;
   display: block;
}
.dir-empty-title {
   font-family: var(--ecbz-heading-font), 'Playfair Display', serif;
   font-size: 18px !important;
   font-weight: 600;
   color: var(--ecbz-primary);
   margin-bottom: 6px;
}
.dir-empty-sub {
   font-size: 13px !important;
   color: #9C9C98;
}

.dir-pagination {
   margin-top: 24px;
   display: flex;
   justify-content: center;
}
.dir-pagination nav svg { display: none; }
.dir-pagination nav span[aria-disabled],
.dir-pagination nav a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   min-width: 32px; height: 32px;
   border-radius: 5px;
   border: 1px solid var(--ecbz-primary, #E0DDD6);
   background: #fff;
   font-size: 12px !important;
   color: var(--ecbz-secondary-light, #3A3A36);
   margin: 0 2px;
   padding: 0 8px;
   text-decoration: none;
   transition: background 0.15s, border-color 0.15s;
}
.dir-pagination nav a:hover {
   background: var(--ecbz-primary-light, #E8F0EB);
   border-color: var(--ecbz-primary);
   color: var(--ecbz-primary);
}
.dir-pagination nav span[aria-current] > span,
.dir-pagination .page-item.active .page-link {
   background: var(--ecbz-primary) !important;
   color: #fff !important;
   border-color: var(--ecbz-primary) !important;
}

@media (max-width: 991px) {
   .dir-layout {
      grid-template-columns: 1fr;
   }
   .dir-sidebar {
      position: static;
      max-height: none;
      border-right: none;
      border-bottom: 1px solid #E0DDD6;
   }
   .dir-grid {
      grid-template-columns: repeat(2, 1fr);
   }
   .dir-header-stats { gap: 20px; }
}
@media (max-width: 575px) {
   .dir-grid {
      grid-template-columns: 1fr;
   }
   .dir-main { padding: 16px; }
   .dir-grid.view-list .mem-card { flex-direction: column; }
   .dir-grid.view-list .mem-card-footer {
      flex-direction: row;
      border-left: none;
      border-top: 1px solid #F0EEE8;
      min-width: unset;
      align-items: center;
   }
}
.dir-layout {
   display: block;
   grid-template-columns: repeat(2, 1fr);
   min-height: 60vh;
}
.dir-toolbar-filters {
   background: var(--ecbz-body-color);
   border-bottom: 1px solid #E0DDD6;
   padding: 16px 24px;
   display: flex;
   align-items: center;
   gap: 10px;
   flex-wrap: wrap;
   position: relative;
   /*top: 72px; !* below fixed navbar *!*/
   /*z-index: 5;*/
}

.filter-search-wrap {
   position: relative;
   /*flex: 1 1 120px;*/
   min-width: 100px;
}
.filter-search-wrap .search-icon {
   position: absolute;
   left: 10px;
   top: 50%;
   transform: translateY(-50%);
   color: #9C9C98;
   pointer-events: none;
}
.filter-search-wrap input {
   width: 100%;
   padding: 9px 12px 9px 34px;
   border: 1px solid var(--ecbz-primary-light, #E0DDD6);
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 13px !important;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   color: var(--ecbz-body-text-color, #1A1A18);
   background: #FAFAF8;
   outline: none;
   transition: border-color 0.15s, background 0.15s;
}
.filter-search-wrap input:focus {
   border-color: var(--ecbz-primary);
   background: #fff;
}
.filter-select {
   flex: 0 1 160px;
   padding: 9px 30px 9px 11px;
   border: 1px solid var(--ecbz-input-border-color);
   border-radius: var(--ecbz-input-border-radius, 6px);
   font-size: 13px !important;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   color: var(--ecbz-body-text-color, #1A1A18);
   background: #FAFAF8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239C9C98' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 10px center / 12px;
   appearance: none;
   cursor: pointer;
   outline: none;
   transition: border-color 0.15s;
}
.filter-select:focus {
   border-color: var(--ecbz-primary);
   background-color: #fff;
}

.tier-checks {
   display: flex !important;
   flex-wrap: wrap;
   gap: 4px;
}
.tier-check-label {
   display: flex;
   align-items: center;
   gap: 6px;
   padding: 5px 8px;
   border-radius: 5px;
   cursor: pointer;
   transition: background 0.15s;
}
.tier-check-label:hover {
   background: #E8F0EB;
}
.tier-check-label input[type="checkbox"] {
   width: 14px;
   height: 14px;
   accent-color: var(--ecbz-primary);
   cursor: pointer;
   flex-shrink: 0;
}
.tier-badge {
   font-size: 10px !important;
   font-weight: 600;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   padding: 2px 8px;
   border-radius: 3px;
   white-space: nowrap;
   line-height: 1.5;
}
.tier-badge--entrepreneur { background: #E8F0EB; color: #1F5234; }
.tier-badge--affiliate-membership { background: #E6F1FB; color: #1A5FA8; }
.tier-badge--bronze-membership { background: #FBF3E4; color: #9A6214; }
.tier-badge--gold-membership { background: #FFFBEA; color: #7A4E00; border: 0.5px solid #DCAA68; }
.tier-badge--platinum-membership { background: #F0EBF9; color: #3C3489; }

.btn-clear-filter {
   background: transparent;
   color: #5C5C58;
   border: 1px solid #E0DDD6;
   padding: 9px 14px;
   border-radius: var(--ecbz-border-radius, 6px);
   font-size: 12px !important;
   font-weight: 500;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   cursor: pointer;
   transition: border-color 0.15s;
   white-space: nowrap;
}
.btn-clear-filter:hover {
   border-color: var(--ecbz-primary);
   color: var(--ecbz-primary);
}

#filterChips {
   padding: 10px 24px 0;
}
.active-chips {
   display: flex;
   flex-wrap: wrap;
   gap: 5px;
}
.filter-chip {
   display: inline-flex;
   align-items: center;
   gap: 4px;
   background: #E8F0EB;
   color: var(--ecbz-primary);
   border: 0.5px solid #9EC4AC;
   border-radius: 4px;
   padding: 3px 8px;
   font-size: 11px !important;
   font-weight: 500;
   font-family: var(--ecbz-body-font), 'Inter', sans-serif;
   cursor: pointer;
   line-height: 1.4;
}
.filter-chip:hover {
   background: #D4E8DC;
}
.filter-chip-x {
   font-size: 13px !important;
   line-height: 1;
   opacity: 0.55;
}

@media (max-width: 991px) {
   .dir-toolbar-filters {
      position: static;
      gap: 8px;
   }
   .filter-search-wrap,
   .filter-select {
      flex: 1 1 100%;
   }
   .dir-grid {
      grid-template-columns: repeat(2, 1fr);
   }
   .dir-header-stats { gap: 20px; }
}
@media (max-width: 575px) {
   .dir-toolbar-filters {
      padding: 14px 16px;
   }
   #filterChips {
      padding: 8px 16px 0;
   }
   .dir-grid {
      grid-template-columns: 1fr;
   }
   .dir-main { padding: 16px; }
}
/*.whatsapp-float {*/
/*   position: fixed;*/
/*   bottom: 2rem;*/
/*   right: 2rem;*/
/*   z-index: 200;*/
/*   display: flex;*/
/*   align-items: center;*/
/*   gap: 10px;*/
/*   background: #25D366;*/
/*   color: #fff;*/
/*   padding: 12px 20px 12px 16px;*/
/*   border-radius: var(--ecbz-border-radius);*/
/*   font-family: var(--ecbz-body-font), sans-serif;*/
/*   font-size: 12px;*/
/*   font-weight: 500;*/
/*   letter-spacing: 0.08em;*/
/*   text-transform: uppercase;*/
/*   box-shadow: 0 4px 20px rgba(37, 211, 102, 0.3);*/
/*   transition: var(--transition);*/
/*   cursor: pointer;*/
/*}*/
/*.whatsapp-float:hover {*/
/*   background: #1ebe5d;*/
/*   transform: translateY(-2px);*/
/*}*/
/*.whatsapp-float-icon {*/
/*   font-size: 18px;*/
/*}*/
/*footer {*/
/*   border-top: 1px solid rgba(var(--ecbz-primary-light), 0.15);*/
/*   padding: 5rem 2rem 2rem;*/
/*}*/
/*.footer-grid {*/
/*   display: grid;*/
/*   grid-template-columns: 2fr 1fr 1fr 1fr;*/
/*   gap: 3rem;*/
/*   !*max-width: 1200px;*!*/
/*   margin: 0 auto;*/
/*   padding-bottom: 3rem;*/
/*   border-bottom: 1px solid rgba(201, 168, 76, 0.1);*/
/*}*/
/*.footer-brand-name {*/
/*   font-family: var(--ecbz-heading-font);*/
/*   font-size: 22px;*/
/*   font-weight: 300;*/
/*   letter-spacing: 0.12em;*/
/*   text-transform: uppercase;*/
/*   color: var(--ecbz-primary);*/
/*   margin-bottom: 1rem;*/
/*}*/
.footer-brand-desc {
   font-size: 13px;
   color: var(--ecbz-primary-light);
   line-height: 1.8;
   letter-spacing: 0.03em;
   margin-bottom: 1.5rem;
   max-width: 260px;
}
.footer-socials { display: flex; gap: 12px; flex-wrap: wrap; }
.footer-social {
   width: 40px;
   height: 40px;
   /*border: 1px solid rgba(var(--ecbz-secondary-rgb), 0.2);*/
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--ecbz-secondary);
   /*font-size: 14px;*/
   transition: 300ms;
   cursor: pointer;
   font-family: var(--ecbz-body-font), sans-serif;
   font-weight: 300;
   /*font-size: 11px;*/
   letter-spacing: 0.05em;
   text-transform: uppercase;
   padding: 0 10px;
   /*width: auto;*/
   /*height: 32px;*/
   border-radius: 0;
}
.footer-social:hover {
   /*background: var(--ecbz-primary);*/
   color: var(--ecbz-secondary);
   /*border-color: var(--ecbz-primary);*/
}
/*.footer-col-title {*/
/*   font-size: 11px;*/
/*   font-weight: 500;*/
/*   letter-spacing: 0.2em;*/
/*   text-transform: uppercase;*/
/*   color: var(--ecbz-primary);*/
/*   margin-bottom: 1.25rem;*/
/*}*/
/*.footer-links { list-style: none; display: flex; flex-direction: column; gap: 0.6rem; }*/
/*.footer-links a {*/
/*   font-size: 13px;*/
/*   color: var(--ecbz-primary-light);*/
/*   letter-spacing: 0.04em;*/
/*   transition: color 0.3s;*/
/*}*/
/*.footer-links a:hover { color: var(--ecbz-primary); }*/
/*.footer-contact-item {*/
/*   font-size: 13px;*/
/*   color: var(--ecbz-primary-light);*/
/*   letter-spacing: 0.04em;*/
/*   margin-bottom: 0.6rem;*/
/*   line-height: 1.6;*/
/*}*/
/*.footer-contact-item a { color: var(--ecbz-primary-light); transition: color 0.3s; }*/
/*.footer-contact-item a:hover { color: var(--ecbz-primary); }*/
/*.footer-bottom {*/
/*   display: flex;*/
/*   align-items: center;*/
/*   justify-content: space-between;*/
/*   max-width: 1200px;*/
/*   margin: 2rem auto 0;*/
/*   flex-wrap: wrap;*/
/*   gap: 1rem;*/
/*}*/
/*.footer-copy {*/
/*   font-size: 12px;*/
/*   color: rgba(var(--ecbz-primary-light-rgb), 0.6);*/
/*   letter-spacing: 0.06em;*/
/*}*/
/*.footer-backlink {*/
/*   display: flex;*/
/*   gap: 8px;*/
/*   align-items: center;*/
/*}*/
/*.footer-payment {*/
/*   display: flex;*/
/*   gap: 8px;*/
/*   align-items: center;*/
/*}*/
/*.payment-badge {*/
/*   font-size: 10px;*/
/*   font-weight: 500;*/
/*   letter-spacing: 0.1em;*/
/*   text-transform: uppercase;*/
/*   padding: 4px 10px;*/
/*   border: 1px solid rgba(var(--ecbz-primary-light-rgb), 0.2);*/
/*   color: rgba(var(--ecbz-primary-rgb), 0.7);*/
/*   border-radius: 0;*/
/*}*/

.ad-slot {
   position: relative;
   margin: 1.5rem auto;
   display: flex;
   justify-content: center;
}
.ad-slot--hero_top,
.ad-slot--hero_bottom,
.ad-slot--footer_banner,
.ad-slot--between_sections {
   width: 100%;
}
/*
 * Rotation stage: when a slot has more than one competing ad, every
 * ad-unit is stacked in the same box and only one is visible at a time —
 * this is what stops multiple ads from being laid out side-by-side or
 * visually overlapping in an uncontrolled way.
 */
.ad-slot[data-ad-rotate="true"] {
   position: relative;
   overflow: hidden;
   min-height: 1px; /* replaced by the first ad's rendered size once loaded */
}
.ad-slot[data-ad-rotate="true"] .ad-unit {
   position: absolute;
   inset: 0;
   margin: auto;
   opacity: 0;
   visibility: hidden;
   transition: opacity 0.6s ease;
   pointer-events: none;
}
.ad-slot[data-ad-rotate="true"] .ad-unit.is-active {
   position: relative;
   opacity: 1;
   visibility: visible;
   pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
   .ad-slot[data-ad-rotate="true"] .ad-unit {
      transition: none;
   }
}

/*
 * Rail placements (left_rail / right_rail): fixed-position gutter ads,
 * included once in index.blade.php rather than per-page. Hidden below
 * 1400px since there's no room for a gutter alongside the main content
 * at narrower viewports.
 */
.ad-slot--left_rail,
.ad-slot--right_rail {
   position: fixed;
   top: 50%;
   transform: translateY(-50%);
   width: 160px;
   z-index: 20;
   margin: 0;
}
.ad-slot--left_rail {
   left: 1rem;
}
.ad-slot--right_rail {
   right: 1rem;
}
@media (max-width: 1399.98px) {
   .ad-slot--left_rail,
   .ad-slot--right_rail {
      display: none;
   }
}

.ad-unit {
   position: relative;
   display: inline-block;
   max-width: 100%;
}
.ad-unit-link,
.ad-unit-text {
   display: block;
   color: inherit;
   text-decoration: none;
}
.ad-unit img,
.ad-unit video {
   display: block;
   max-width: 100%;
   height: auto;
   border-radius: 6px;
   object-fit: contain;
}
.ad-unit-html {
   max-width: 100%;
   overflow: hidden;
   border-radius: 6px;
}
.ad-unit-html--clickable {
   cursor: pointer;
}
.ad-unit-text {
   padding: 1rem 1.25rem;
   background: #f4f6f5;
   border: 1px solid #e2e6e4;
   border-radius: 6px;
   font-size: 0.9rem;
   line-height: 1.4;
}
.ad-unit-badge {
   position: absolute;
   top: 4px;
   right: 4px;
   background: rgba(0, 0, 0, 0.55);
   color: #fff;
   font-size: 0.625rem;
   letter-spacing: 0.04em;
   text-transform: uppercase;
   padding: 2px 6px;
   border-radius: 3px;
   pointer-events: none;
}
.section .ad-slot {
   min-height: 60px;
}
.product-card {
   border: 1px var(--ecbz-border-style) var(--ecbz-border-color);
   border-radius: var(--ecbz-border-radius);
   overflow: hidden;
   height: 100%;
   transition: box-shadow .2s ease, transform .2s ease;
   background: #fff;
}
.product-card:hover {
   box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
   transform: translateY(-2px);
}
.product-card__image {
   aspect-ratio: 4 / 3;
   /*background: #f1f5f9;*/
   overflow: hidden;
}
.product-card__image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
}
.product-card__image .placeholder {
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   color: #94a3b8;
   font-size: var(--ecbz-font-size);
}
.product-card__body {
   padding: 1rem 1.1rem 1.15rem;
}
.product-card__type {
   font-size: var(--ecbz-font-size);
   text-transform: uppercase;
   letter-spacing: var(--ecbz-letter-spacing);
   color: var(--ecbz-body-text-color);
   font-weight: 600;
}
.product-card__name {
   font-weight: 600;
   color: var(--ecbz-primary);
   margin: .25rem 0 .35rem;
   display: block;
}
.product-card__name:hover {
   color: var(--ecbz-primary);
}
.product-card__desc {
   font-size: var(--ecbz-font-size);
   color: var(--ecbz-body-text-color);
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
   min-height: 2.6em;
}
.product-card__footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-top: .75rem;
}
.product-card__price {
   font-weight: 700;
   color: var(--ecbz-black-soft);
}
.badge-popular {
   background: var(--ecbz-primary);
   color: var(--ecbz-white-soft);
   font-weight: 600;
   font-size: var(--ecbz-font-size);
}
/*.empty-state {*/
/*   text-align: center;*/
/*   padding: 4rem 1rem;*/
/*   color: #64748b;*/
/*}*/


.owl-carousel .owl-dots {
   margin-top: -30px !important;
   position: relative !important;
}
.owl-theme .owl-dots .owl-dot span {
   background: var(--ecbz-secondary-light) !important;
}
.owl-theme .owl-dots .owl-dot:hover span {
   background: var(--ecbz-secondary) !important;
}
.owl-theme .owl-dots .owl-dot.active span {
   background: var(--ecbz-secondary) !important;
}
.owl-carousel .fadeOut {
   animation-name: fadeOut;
}
.owl-carousel .fadeIn {
   animation-name: fadeIn;
}
@keyframes fadeOut {
   from { opacity: 1; }
   to { opacity: 0; }
}
@keyframes fadeIn {
   from { opacity: 0; }
   to { opacity: 1; }
}

.w__1 { width: 1%; }
.w__2 { width: 2%; }
.w__3 { width: 3%; }
.w__4 { width: 4%; }
.w__5 { width: 5%; }
.w__6 { width: 6%; }
.w__7 { width: 7%; }
.w__8 { width: 8%; }
.w__9 { width: 9%; }
.w__10 { width: 10%; }
.w__11 { width: 11%; }
.w__12 { width: 12%; }
.w__13 { width: 13%; }
.w__14 { width: 14%; }
.w__15 { width: 15%; }
.w__16 { width: 16%; }
.w__17 { width: 17%; }
.w__18 { width: 18%; }
.w__19 { width: 19%; }
.w__20 { width: 20%; }
.w__21 { width: 21%; }
.w__22 { width: 22%; }
.w__23 { width: 23%; }
.w__24 { width: 24%; }
.w__25 { width: 25%; }
.w__26 { width: 26%; }
.w__27 { width: 27%; }
.w__28 { width: 28%; }
.w__29 { width: 29%; }
.w__30 { width: 30%; }
.w__31 { width: 31%; }
.w__32 { width: 32%; }
.w__33 { width: 33%; }
.w__34 { width: 34%; }
.w__35 { width: 35%; }
.w__36 { width: 36%; }
.w__37 { width: 37%; }
.w__38 { width: 38%; }
.w__39 { width: 39%; }
.w__40 { width: 40%; }
.w__41 { width: 41%; }
.w__42 { width: 42%; }
.w__43 { width: 43%; }
.w__44 { width: 44%; }
.w__45 { width: 45%; }
.w__46 { width: 46%; }
.w__47 { width: 47%; }
.w__48 { width: 48%; }
.w__49 { width: 49%; }
.w__50 { width: 50%; !important }
.w__51 { width: 51%; !important }
.w__52 { width: 52%; !important }
.w__53 { width: 53%; !important }
.w__54 { width: 54%; !important }
.w__55 { width: 55%; !important }
.w__56 { width: 56%; !important }
.w__57 { width: 57%; !important }
.w__58 { width: 58%; !important }
.w__59 { width: 59%; !important }
.w__60 { width: 60%; !important }
.w__61 { width: 61%; !important }
.w__62 { width: 62%; !important }
.w__63 { width: 63%; !important }
.w__64 { width: 64%; !important }
.w__65 { width: 65%; !important }
.w__66 { width: 66%; !important }
.w__67 { width: 67%; !important }
.w__68 { width: 68%; !important }
.w__69 { width: 69%; !important }
.w__70 { width: 70%; !important }
.w__71 { width: 71%; !important }
.w__72 { width: 72%; !important }
.w__73 { width: 73%; !important }
.w__74 { width: 74%; !important }
.w__75 { width: 75%; !important }
.w__76 { width: 76%; !important }
.w__77 { width: 77%; !important }
.w__78 { width: 78%; !important }
.w__79 { width: 79%; !important }
.w__80 { width: 80%; !important }
.w__81 { width: 81%; !important }
.w__82 { width: 82%; !important }
.w__83 { width: 83%; !important }
.w__84 { width: 84%; !important }
.w__85 { width: 85%; !important }
.w__86 { width: 86%; !important }
.w__87 { width: 87%; !important }
.w__88 { width: 88%; !important }
.w__89 { width: 89%; !important }
.w__90 { width: 90%; !important }
.w__91 { width: 91%; !important }
.w__92 { width: 92%; !important }
.w__93 { width: 93%; !important }
.w__94 { width: 94%; !important }
.w__95 { width: 95%; !important }
.w__96 { width: 96%; !important }
.w__97 { width: 97%; !important }
.w__98 { width: 98%; !important }
.w__99 { width: 99%; !important }
.w__100 { width: 100%; !important }
@media(max-width: 587px) {
   .w__1, .w__2, .w__3, .w__4, .w__5, .w__6, .w__7, .w__8, .w__9, .w__10,
   .w__11, .w__12, .w__13, .w__14, .w__15, .w__16, .w__17, .w__18, .w__19, .w__20,
   .w__21, .w__22, .w__23, .w__24, .w__25, .w__26, .w__27, .w__28, .w__29, .w__30,
   .w__31, .w__32, .w__33, .w__34, .w__35, .w__36, .w__37, .w__38, .w__39, .w__40,
   .w__41, .w__42, .w__43, .w__44, .w__45, .w__46, .w__47, .w__48, .w__49, .w__50,
   .w__51, .w__52, .w__53, .w__54, .w__55, .w__56, .w__57, .w__58, .w__59, .w__60,
   .w__61, .w__62, .w__63, .w__64, .w__65, .w__66, .w__67, .w__68, .w__36, .w__70,
   .w__71, .w__72, .w__73, .w__74, .w__75, .w__76, .w__77, .w__78, .w__79, .w__80,
   .w__81, .w__82, .w__83, .w__84, .w__85, .w__86, .w__87, .w__88, .w__89, .w__90,
   .w__91, .w__92, .w__93, .w__94, .w__95, .w__96, .w__97, .w__98, .w__99, .w__100
   {
      width: 100%; !important
   }
}

