
/*====================================================================
   Custom CSS File for most of Desktop and Mobile look for Kipya Template
   Developed by Amazing LWEGATECH LTD team.
===================================================================**/
:root {
  --kpy-font-body: "montserrat", sans-serif;
  --kpy-font-heading: "playfair display", serif;

 /* Core Colors */
--kpy-primary: #004a85;
--kpy-primary-rgb: 0, 74, 133;

--kpy-secondary: #09bcd3;
--kpy-secondary-rgb: 9, 188, 211;

--kpy-light: #ee1821;
--kpy-light-rgb: 238, 24, 33;

--kpy-base: #000000;
--kpy-base-rgb: 0, 0, 0;

--kpy-white: #ffffff;
--kpy-white-rgb: 255, 255, 255;


}

[data-aos] { opacity: 0; transition-property: opacity, transform; }
[data-aos].aos-animate { opacity: 1; }
body {
  font-family: var(--kpy-font-body);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--kpy-font-heading);
}



/** ==========================================================
Menu
===========================================================**/
.top-bar { background: var(--kpy-primary); color: var(--kpy-white); padding: 2px 0; font-size: 0.85rem; position: relative; z-index: 1001; border-top: 1px solid rgba(var(--kpy-white-rgb), 0.15); border-bottom: 1px solid rgba(var(--kpy-white-rgb), 0.15); }
.top-bar-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; display: flex; justify-content: space-between; align-items: center; }
.top-bar-contact { display: flex; align-items: center; gap: 15px; flex-wrap: wrap; }
.top-bar-contact .contact-items { display: flex; align-items: center; gap: 8px; }
.top-bar-contact .contact-items i { font-size: 0.9rem; opacity: 0.9; }
.top-bar-contact .contact-items a { color: var(--kpy-white); text-decoration: none; transition: color 0.3s ease; }
.top-bar-contact .contact-item a:hover { color: var(--kpy-secondary); }
.top-bar-contact .contact-item span { color: var(--kpy-white); }
.top-bar-divider { width: 1px; height: 20px; background: rgba(255, 255, 255, 0.3); }
.top-bar-social { display: flex; align-items: center; gap: 10px; }
.top-bar-social .social-link { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: rgba(255, 255, 255, 0.15); color: var(--kpy-white); text-decoration: none; font-size: 0.95rem; transition: all 0.3s ease; }
.top-bar-social .social-link:hover { background: var(--kpy-white); color: var(--kpy-primary); transform: translateY(-2px); }
@media (max-width: 768px) { .top-bar { display: none; } }
.main-header {position:absolute;left:0;right:0;z-index:1000;transition:all 0.3s ease; background:var(--kpy-white);}
.main-header.scrolled {position:fixed; top:0; background:var(--kpy-white);box-shadow:0 2px 15px rgba(0,0,0,0.1);}
.main-header.canvas-active {background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);}
.header-main {background:transparent;transition:all 0.3s ease;}
.header-container {display:flex;justify-content:space-between;align-items:center;margin:0 auto;padding:0 20px;}
.logo {flex-shrink:0;}
.logo img {height:60px;transition:all 0.3s ease;}
.main-header.scrolled .logo img {filter:none;}
.main-nav {flex-grow:1;display:flex;justify-content:center;align-items:center;position:relative;}
.nav-menu {display:flex;list-style:none;gap:10px;margin-bottom:0;}
.nav-menu>li {position:relative;padding:25px 0;}
.nav-item {display:flex;align-items:center;gap:5px;padding:0 14px;color:var(--kpy-primary);text-decoration:none;font-weight:400;font-size:1.1rem;border-radius:6px;transition:all 0.3s ease;position:relative;overflow:hidden;}
.main-header.scrolled .nav-item {color:var(--kpy-primary);}
.nav-item:hover {color:var(--kpy-secondary);background:rgba(255,255,255,0.1);}
.main-header.scrolled .nav-item:hover {color:var(--kpy-primary);background:rgba(var(--kpy-secondary-rgb),0.05);}
.nav-item.active {color:var(--kpy-white);}
.main-header.scrolled .nav-item.active {color:var(--kpy-primary);}
.dropdown-arrow {font-size:0.8rem;transition:transform 0.3s ease;}
.has-dropdown:hover .dropdown-arrow {transform:rotate(180deg);}
.search-icon-wrapper {position:relative;margin-left:20px;}
.search-toggle {background:none;border:none;font-size:1.3rem;color:var(--kpy-primary);cursor:pointer;transition:all 0.3s ease;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.main-header.scrolled .search-toggle {color:var(--kpy-base);}
.search-toggle:hover {background:rgba(255,255,255,0.2);color:var(--kpy-white);}
.main-header.scrolled .search-toggle:hover {background:rgba(var(--kpy-primary-rgb),0.1);color:var(--kpy-primary);}
.search-dropdown {position:absolute;top:100%;right:0;width:350px;background:var(--kpy-white);border-radius:12px;box-shadow:0 15px 30px rgba(0,0,0,0.15);padding:20px;display:none;z-index:1000;margin-top:10px;}
.search-dropdown.active {display:block;animation:slideDown 0.3s ease;}
@keyframes slideDown {from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}
.search-input-wrapper {position:relative;display:flex;align-items:center;background:var(--kpy-white);border-radius:8px;border:2px solid rgba(var(--kpy-primary-rgb),0.1);transition:all 0.3s ease;margin-bottom:15px;}
.search-input-wrapper:focus-within {border-color:var(--kpy-primary);box-shadow:0 0 0 3px rgba(var(--kpy-primary-rgb),0.1);}
.search-input {flex:1;border:none;outline:none;padding:12px 15px;font-size:1rem;background:transparent;color:var(--kpy-base);font-weight:500;}
.search-input::placeholder {color:#999;font-weight:400;}
.search-submit {background:var(--kpy-primary);color:var(--kpy-white);border:none;width:40px;height:40px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s ease;font-size:1rem;margin-right:5px;}
.search-submit:hover {background:var(--kpy-secondary);transform:scale(1.05);}
.search-results  {max-height:300px;overflow-y:auto;display:none;}
.search-results.has-results {display:block;}
.search-result-item a {display:block;padding:12px 15px;color:var(--kpy-base);text-decoration:none;border-radius:6px;transition:all 0.3s ease;border-bottom:1px solid rgba(0,0,0,0.05);}
.search-result-item:hover {background:rgba(var(--kpy-primary-rgb),0.05);color:var(--kpy-primary);}
.search-result-title {font-weight:600;margin-bottom:4px;color:var(--kpy-primary);}
.search-result-excerpt {font-size:0.9rem;color:var(--kpy-base);opacity:0.8;}
.no-results {padding:15px;text-align:center;color:var(--kpy-base);font-style:italic;}
.mobile-search-results { background: #fff; border-radius: 8px; margin-top: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); max-height: 250px; overflow-y: auto; display: none; }
.mobile-search-results.has-results { display: block; }
.mobile-search-results .search-result-item { padding: 10px 15px; border-bottom: 1px solid #eee; display: block; color: #333; text-decoration: none; }
.mobile-search-results .search-result-item:hover { background: #f3f3f3; }
.no-results { padding: 10px 15px; color: #666; font-size: 14px; }

.mega-menu {position:absolute;left:200px;transform:translateX(-50%) translateY(10px);width:90%;max-width:1200px;min-width:800px;background:var(--kpy-white);padding:30px;display:none;z-index:100;opacity:0;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);}
.mega-menu::before {content:'';position:absolute;top:-8px;right:70%;transform:translateX(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid var(--kpy-white);filter:drop-shadow(0 -2px 2px rgba(0,0,0,0.05));}
.has-mega-menu:hover .mega-menu {display:block;opacity:1;transform:translateX(-50%) translateY(0);}
.mega-menu-content {display:grid;grid-template-columns:repeat(3,1fr);gap:30px;width:100%;}
.mega-menu-column {min-width:0;}
.mega-menu-column h4 {color:var(--kpy-primary);margin-bottom:20px !important;padding-bottom:12px;border-bottom:2px solid var(--kpy-secondary);font-size:1.2rem;font-weight:600;position:relative;}
.mega-menu-column h4 a {color:var(--kpy-primary);}
.mega-menu-column h4::after {content:'';position:absolute;bottom:-2px;left:0;width:40px;height:2px;background:var(--kpy-primary);}
.mega-menu-column ul {list-style:none;padding-left:0;margin:0;}
.mega-menu-column ul li {margin-bottom:10px;position:relative;}
.mega-menu-column ul li a {color:var(--kpy-base);text-decoration:none;transition:all 0.3s ease;padding:3px 0;display:block;position:relative;overflow:hidden;font-weight:500; border-bottom: 1px solid rgb(0 74 133 / 20%);}
.mega-menu-column ul li a::before {content:'';position:absolute;left:0;top:0;height:100%;width:3px;background:var(--kpy-primary);transform:scaleY(0);transition:transform 0.3s ease;}
.mega-menu-column ul li a:hover {background:rgba(var(--kpy-primary-rgb),0.05);color:var(--kpy-primary);padding-left:20px;transform:translateX(5px);}
.mega-menu-column ul li a:hover::before {transform:scaleY(1);}
.simple-dropdown {position:absolute;left:90%;transform:translateX(-50%) translateY(10px);min-width:200px;background:var(--kpy-white);padding:20px 0;list-style:none;display:none;z-index:100;opacity:0;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);}

.has-simple-dropdown:hover .simple-dropdown {display:block;opacity:1;transform:translateX(-50%) translateY(0);}
.simple-dropdown li a {display:block;padding:8px 24px;color:var(--kpy-primary);text-decoration:none;transition:all 0.3s ease;position:relative;font-weight:500; border-bottom: 1px solid rgb(0 74 133 / 20%);}
.simple-dropdown li a::before {content:'';position:absolute;left:0;top:0;height:100%;width:3px;background:var(--kpy-primary);transform:scaleY(0);transition:transform 0.3s ease;}
.simple-dropdown li a:hover {background:rgba(var(--kpy-primary-rgb),0.05);color:var(--kpy-primary);padding-left:32px;transform:translateX(5px);}
.simple-dropdown li a:hover::before {transform:scaleY(1);}
.contact-canvas {position:fixed;top:0;right:-400px;width:380px;height:100vh;background:var(--kpy-white);box-shadow:-5px 0 25px rgba(0,0,0,0.15);z-index:1100;transition:right 0.4s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;overflow:hidden;}
.contact-canvas.active {right:0;}
.contact-canvas-header {display:flex;justify-content:space-between;align-items:center;padding:25px 30px;background:var(--kpy-primary);color:var(--kpy-white);border-bottom:3px solid var(--kpy-secondary);}
.contact-canvas-header h3 {margin:0;font-size:1.4rem;font-weight:600;}
.contact-canvas-close {background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--kpy-white);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all 0.3s ease;}
.contact-canvas-close:hover {background:rgba(255,255,255,0.2);}
.contact-canvas-content {flex:1;padding:30px;overflow-y:auto;display:flex;flex-direction:column;gap:25px;}
.contact-info-section {display:flex;flex-direction:column;}
.contact-item {display:flex;gap:15px;align-items:flex-start;}
.contact-icon {width:45px;height:45px;background:rgba(var(--kpy-primary-rgb),0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.contact-icon i {font-size:1.2rem;color:var(--kpy-primary);}
.contact-details h4 {margin:0 0 8px 0;color:var(--kpy-primary);font-size:1rem;font-weight:600;}
.contact-details a {display:block;color:var(--kpy-base);text-decoration:none;margin-bottom:5px;transition:color 0.3s ease;font-size:0.9rem;}
.contact-details a:hover {color:var(--kpy-secondary);}
.contact-details p {margin:0;color:var(--kpy-base);font-size:0.9rem;line-height:1.4;}
.social-section h4 {margin:0 0 15px 0;color:var(--kpy-primary);font-size:1rem;font-weight:600;}
.social-icons-grid {display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.social-icon {display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:rgba(var(--kpy-primary-rgb),0.1);color:var(--kpy-primary);text-decoration:none;border-radius:8px;transition:all 0.3s ease;font-size:1.2rem;}
.social-icon:hover {background:var(--kpy-primary);color:var(--kpy-white);transform:translateY(-2px);}
.contact-canvas-overlay {position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);z-index:1050;display:none;backdrop-filter:blur(3px);}
.contact-canvas-overlay.active {display:block;}
.header-actions {display:flex;align-items:center;gap:15px;}
.contact-toggle,.mobile-nav-toggle {background:none;border:none;font-size:1.3rem;color:var(--kpy-primary);cursor:pointer;transition:all 0.3s ease;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.mobile-search {display: none;}
.main-header.scrolled .contact-toggle,.main-header.scrolled .mobile-nav-toggle {color:var(--kpy-base);}
.contact-toggle:hover,.mobile-nav-toggle:hover {background:rgba(255,255,255,0.2);color:var(--kpy-white);}
.main-header.scrolled .contact-toggle:hover,.main-header.scrolled .mobile-nav-toggle:hover {background:rgba(var(--kpy-primary-rgb),0.1);color:var(--kpy-primary);}
.mobile-nav-toggle {display:none;}
.mobile-nav-menu {position:fixed;top:0;right:-100%;width:300px;height:100vh;background:var(--kpy-white);box-shadow:-5px 0 15px rgba(0,0,0,0.1);z-index:1100;padding:20px;overflow-y:auto;transition:right 0.4s ease;}
.mobile-nav-menu.active {right:0;}
.mobile-nav-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(0,0,0,0.1);}
.mobile-nav-close {background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--kpy-base);}
.mobile-nav-list {list-style:none;}
.mobile-nav-list li {margin-bottom:5px;}
.mobile-nav-list a {display:block;padding:12px 15px;color:var(--kpy-base);text-decoration:none;border-radius:6px;transition:all 0.3s ease;}
.mobile-nav-list a:hover {background:rgba(var(--kpy-primary-rgb),0.05);color:var(--kpy-primary);}
.mobile-submenu {display:none;padding-left:15px;border-left:2px solid rgba(var(--kpy-primary-rgb),0.1);margin-left:10px;transition:all 0.3s ease;}
.mobile-submenu.active {display:block;}
.has-children>a::after {content:"▼";float:right;font-size:0.8rem;transition:transform 0.3s ease;color:var(--kpy-primary);}
.has-children.open>a::after {transform:rotate(180deg);}
.mobile-submenu .mobile-submenu a {font-size:0.95rem;}
@media (max-width:992px){.nav-menu{gap:5px;}.nav-item{padding:10px 15px;font-size:0.9rem;}.mega-menu-content{grid-template-columns:repeat(2,1fr);}}
@media (max-width:768px){.contact-canvas{width:320px;}.contact-canvas-content{padding:20px;gap:20px;}.search-dropdown{width:300px;right:-50px;}.mobile-nav-toggle{display:flex;}.main-nav{display:none;}.header-container{padding:0 15px;}.logo img{height:50px;}}
@media (max-width:576px){.mega-menu-content{grid-template-columns:1fr;}.mobile-nav-menu{width:280px;}.contact-canvas{width:100%;right:-100%;}.search-dropdown{width:280px;right:-80px;}}
@media (max-width: 991px) { .desktop-search { display: none !important;}
.mobile-search {display: block;margin-right: 15px;}}




/* ========================================================== */
/* Responsive adjustments */
/* ========================================================== */
@media (max-width: 991px) {
.order-now-wrapper { margin: 0 10px; }
.order-now-btn { padding: 8px 16px; font-size: 0.9rem; }
}

@media (max-width: 768px) {
.account-wrapper { margin: 0 5px; }
.order-now-wrapper { display: none; }
.header-actions { gap: 2px; }
}

@media (min-width: 769px) {
.mobile-account-link, .mobile-order-now { display: none; }
}


#header-search-results { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.12); margin-top: 8px; overflow: hidden; z-index: 100; display: none; }
#header-search-results.has-results { display: block; }
#header-search-results .list-unstyled { list-style: none; margin: 0; padding: 8px 0; }
#header-search-results li { margin: 0; }
#header-search-results li a { display: block; padding: 12px 20px; color: #333; text-decoration: none; font-size: 0.9rem; transition: all 0.2s ease; border-left: 3px solid transparent; }
#header-search-results li a:hover { background: #f5f7fa; color: #14407b; border-left-color: #14407b; padding-left: 24px; }

/* ============================================ 
HOME CTA
============================================ */


.commun.wp-block-group { position: relative; }
.commun.wp-block-group .wp-block-group__inner-container { padding: 0; }
.commun.wp-block-group .wp-block-cover { position: relative; min-height: 450px; display: flex; align-items: center; overflow: hidden; }
.commun.wp-block-group .wp-block-cover .wp-block-cover__image-background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-size: cover !important; background-position: center !important; background-attachment: fixed !important; z-index: 0; }
.commun.wp-block-group .wp-block-cover .wp-block-cover__background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; }
.commun.wp-block-group .wp-block-cover::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, rgba(0,0,0,0.7) 0%, rgba(0,74,133,0.4) 100%); z-index: 1; }
.commun.wp-block-group .wp-block-cover__inner-container { position: relative; z-index: 2; max-width: 800px; margin: 0 auto; padding: 80px 30px; text-align: center; }
.commun.wp-block-group h2 { font-family: var(--kpy-font-heading, "playfair display", serif); font-size: 3rem; color: #ffffff; margin-bottom: 20px; font-weight: 700; line-height: 1.2; }
.commun.wp-block-group p { font-size: 1.1rem; color: rgba(255,255,255,0.9); margin-bottom: 40px; font-family: var(--kpy-font-body, "montserrat", sans-serif); line-height: 1.7; max-width: 650px; margin-left: auto; margin-right: auto; }
.commun.wp-block-group .wp-block-spacer { height: 20px; }
.commun.wp-block-group .wp-block-buttons { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; }
.commun.wp-block-group .wp-block-button__link { padding: 16px 40px; border-radius: 0; font-weight: 600; text-decoration: none; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); font-size: 1rem; letter-spacing: 0.5px; cursor: pointer; display: inline-block; }
.commun.wp-block-group .wp-block-button:first-child .wp-block-button__link { background: var(--kpy-primary, #004a85); color: #ffffff; border: 2px solid var(--kpy-primary, #004a85); }
.commun.wp-block-group .wp-block-button:first-child .wp-block-button__link:hover { background: transparent; color: #ffffff; border-color: #ffffff; transform: translateY(-3px); box-shadow: 0 10px 25px rgba(0,0,0,0.3); }
.commun.wp-block-group .wp-block-button:last-child .wp-block-button__link { background: transparent; color: #ffffff; border: 2px solid #ffffff; }
.commun.wp-block-group .wp-block-button:last-child .wp-block-button__link:hover { background: #ffffff; color: var(--kpy-primary, #004a85); transform: translateY(-3px); box-shadow: 0 10px 25px rgba(0,0,0,0.3); }
@media (max-width: 768px) { .commun.wp-block-group h2 { font-size: 2rem; } .commun.wp-block-group .wp-block-cover__inner-container { padding: 50px 20px; } .commun.wp-block-group .wp-block-cover { min-height: 350px; } }

/* Responsive */
@media (max-width: 992px) {
    .price.wp-block-group .wp-block-columns { grid-template-columns: repeat(2, 1fr); gap: 25px; }
    .price.wp-block-group .wp-block-column:nth-child(2) { grid-column: span 2; transform: scale(1); }
    .price.wp-block-group .wp-block-column:nth-child(2):hover { transform: translateY(-10px) scale(1); }
    .commun.wp-block-group h2 { font-size: 2.2rem; }
    .commun.wp-block-group p { font-size: 1rem; }
}
@media (max-width: 768px) {
    .price.wp-block-group { margin: 40px 0; }
    .price.wp-block-group .wp-block-columns { grid-template-columns: 1fr; gap: 20px; }
    .price.wp-block-group .wp-block-column:nth-child(2) { grid-column: span 1; transform: scale(1); }
    .price.wp-block-group .wp-block-column { padding: 25px 20px; }
    .price.wp-block-group .wp-block-column p:last-child { font-size: 1.5rem; }
    .price.wp-block-group .wp-block-column:nth-child(2)::after { display: none; }
    .price.wp-block-group ol.wp-block-list li { font-size: 1.1rem; }
    .commun.wp-block-group .wp-block-cover { min-height: 450px; background-attachment: scroll; }
    .commun.wp-block-group h2 { font-size: 1.8rem; }
    .commun.wp-block-group .wp-block-cover__inner-container { padding: 50px 20px; }
    .commun.wp-block-group .wp-block-buttons { flex-direction: column; align-items: center; }
    .commun.wp-block-group .wp-block-button__link { width: 100%; text-align: center; padding: 14px 30px; }
}




/* ============================================ 
SERVICES GRID - JK GLOBAL ENGINEERS BRAND COLORS ============================================ */
.services-grid { display: grid; gap: 30px; padding: 40px; }
.services-grid--cols-1 { grid-template-columns: repeat(1, 1fr); }
.services-grid--cols-2 { grid-template-columns: repeat(2, 1fr); }
.services-grid--cols-3 { grid-template-columns: repeat(3, 1fr); }
.services-grid--cols-4 { grid-template-columns: repeat(4, 1fr); }
.service-card { position: relative; min-height: 350px; border-radius: 12px; overflow: hidden; background-size: cover; background-position: center; background-repeat: no-repeat; background-color: var(--kpy-primary); transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); cursor: pointer; display: flex; align-items: flex-end; }
.service-card:hover { transform: translateY(-10px); box-shadow: 0 20px 50px rgba(var(--kpy-primary-rgb), 0.3); }
.service-card-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to top, rgba(var(--kpy-primary-rgb), 0.95) 0%, rgb(0 74 133 / 43%) 50%, rgb(0 74 133 / 0%) 100%); transition: all 0.4s ease; z-index: 1; }
.service-card-content { position: relative; z-index: 2; padding: 40px 30px 30px; width: 100%; color: var(--kpy-white); transition: all 0.4s ease; }
.service-card:hover .service-card-content { color: var(--kpy-primary); }
.service-icon { width: 60px; height: 60px; background: rgba(var(--kpy-secondary-rgb), 0.2); border: 2px solid rgba(var(--kpy-secondary-rgb), 0.5); border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; transition: all 0.4s ease; }
.service-card:hover .service-icon { background: var(--kpy-primary); border-color: var(--kpy-primary); transform: rotateY(180deg); }
.service-icon i { font-size: 26px; color: var(--kpy-secondary); transition: all 0.4s ease; }
.service-card h3 { font-size: 22px; font-weight: 700; margin-bottom: 12px; line-height: 1.3; color: var(--kpy-white); transition: all 0.4s ease; font-family: var(--kpy-font-heading); }
.service-card p { font-size: 14px; line-height: 1.6; margin-bottom: 20px; opacity: 0.9; color: rgba(var(--kpy-white-rgb), 0.9); transition: all 0.4s ease; font-family: var(--kpy-font-body); }
.service-link { display: inline-flex; align-items: center; gap: 8px; color: var(--kpy-white); text-decoration: none; font-weight: 600; font-size: 15px; text-transform: uppercase; letter-spacing: 0.5px; transition: all 0.3s ease; padding: 8px 20px; border: 2px solid var(--kpy-secondary); border-radius: 50px; font-family: var(--kpy-font-body); }
.service-card:hover .service-link { background: var(--kpy-primary); border-color: var(--kpy-primary); color: var(--kpy-secondary); gap: 12px; }
.service-link i { transition: all 0.3s ease; font-size: 13px; }
.service-card:hover .service-link i { transform: translateX(3px); }
.services-error { text-align: center; padding: 60px 30px; background: rgba(var(--kpy-primary-rgb), 0.05); border-radius: 12px; border: 2px dashed var(--kpy-primary); }
.error-icon { font-size: 40px; color: var(--kpy-secondary); margin-bottom: 15px; }
.services-error h3 { color: var(--kpy-primary); font-size: 20px; margin-bottom: 10px; font-family: var(--kpy-font-heading); }
.services-error p { color: rgba(var(--kpy-base-rgb), 0.6); font-size: 15px; font-family: var(--kpy-font-body); }
@media (max-width: 992px) {
.services-grid--cols-3, .services-grid--cols-4 { grid-template-columns: repeat(2, 1fr); }
.service-card { min-height: 320px; }
}
@media (max-width: 768px) {
.services-grid--cols-2, .services-grid--cols-3, .services-grid--cols-4 { grid-template-columns: repeat(1, 1fr); }
.service-card { min-height: 300px; }
.service-card-content { padding: 30px 20px 25px; }
.service-card h3 { font-size: 20px; }
}

.services { padding: 80px 0; background: #fff; }
.services .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.services .wp-block-columns { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 50px; margin-bottom: 60px; }
.services .wp-block-columns:last-of-type { margin-bottom: 0; }
.services .wp-block-column { min-width: 0; }
.services .wp-block-image { margin: 0; overflow: hidden; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.services .wp-block-image img { width: 100%; height: 350px; object-fit: cover; display: block; transition: transform 0.5s ease; }
.services .wp-block-image:hover img { transform: scale(1.04); }
.services .wp-block-column p { font-size: 1rem; color: #555; line-height: 1.9; margin: 0; }
.services .wp-block-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 60px; }
.services .wp-block-gallery .wp-block-image { box-shadow: 0 4px 16px rgba(0,0,0,0.08); border-radius: 12px; }
.services .wp-block-gallery .wp-block-image img { height: 240px; }
@media (max-width: 900px) {
.services .wp-block-columns { grid-template-columns: 1fr; gap: 30px; margin-bottom: 40px; }
.services .wp-block-image img { height: 280px; }
.services .wp-block-gallery { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
.services { padding: 50px 0; }
.services .wp-block-image img { height: 220px; }
.services .wp-block-gallery { grid-template-columns: 1fr; }
.services .wp-block-gallery .wp-block-image img { height: 220px; }
}

.services .wp-block-column h2 { font-family: 'Playfair Display', serif; font-size: 1.8rem; color: #14407b; margin: 0 0 16px 0; font-weight: 700; line-height: 1.2; position: relative; padding-bottom: 12px; }
.services .wp-block-column h2::after { content: ''; position: absolute; bottom: 0; left: 0; width: 50px; height: 3px; background: #fdd20a; border-radius: 2px; }
@media (max-width: 900px) {
.services .wp-block-column h2 { font-size: 1.5rem; }
}


/* ========================================================== */
/* About Section Home */
/* ========================================================== */
.jk-global-section { width: 100%; padding: 80px 20px 60px; position: relative; z-index: 10; margin-top: -150px; font-family: var(--kpy-font-body); }
        .jk-top-wrapper { display: flex; gap: 35px; max-width: 1200px; margin: auto; align-items: stretch; flex-wrap: wrap; }
        .jk-left-card { flex: 1; min-width: 300px; background: var(--kpy-primary); position: relative; overflow: hidden; padding: 50px 40px; color: var(--kpy-white); display: flex; align-items: center; box-shadow: 0 15px 40px rgba(var(--kpy-base-rgb), 0.2); }
        .jk-left-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at top left, rgba(var(--kpy-secondary-rgb), 0.25), transparent 30%), repeating-linear-gradient(-15deg, rgba(255,255,255,0.03), rgba(255,255,255,0.03) 2px, transparent 2px, transparent 35px); }
        .jk-corner { position: absolute; top: 0; left: 0; width: 0; height: 0; border-top: 45px solid var(--kpy-secondary); border-right: 45px solid transparent; z-index: 2; }
        .jk-left-content { position: relative; z-index: 2; }
        .jk-left-content h2 { font-family: var(--kpy-font-heading); font-size: 20px; font-weight: 300; letter-spacing: 5px; margin-bottom: 10px; color: var(--kpy-secondary); }
        .jk-left-content h1 { font-family: var(--kpy-font-heading); font-size: 42px; line-height: 1.1; margin-bottom: 20px; text-transform: uppercase; color: var(--kpy-white); font-weight: 700; }
        .jk-left-content p { color: rgba(var(--kpy-white-rgb), 0.8); font-size: 16px; }
        .jk-right-card { flex: 2; min-width: 300px; background: #f5f5f5; padding: 50px 40px; display: flex; gap: 30px; flex-wrap: wrap; align-items: flex-start; box-shadow: 0 15px 40px rgba(var(--kpy-base-rgb), 0.15); }
        .jk-years-box { width: 150px; height: 200px; background: var(--kpy-primary); display: flex; flex-direction: column; justify-content: center; align-items: center; flex-shrink: 0; }
        .jk-years-box span { font-family: var(--kpy-font-heading); font-size: 72px; line-height: 1; color: var(--kpy-white); font-weight: bold; }
        .jk-years-box small { font-family: var(--kpy-font-body); font-size: 20px; color: var(--kpy-white); text-transform: uppercase; letter-spacing: 2px; }
        .jk-company-content { flex: 1; min-width: 200px; }
        .jk-company-content p { color: #555; line-height: 1.8; margin: 0 0 35px 0; font-size: 0.95rem; }
        .jk-btn-wrap { text-align: right; }
        .jk-btn { display: inline-flex; align-items: center; gap: 10px; background: var(--kpy-primary); color: var(--kpy-white); text-decoration: none; padding: 14px 28px; font-weight: 600; font-size: 0.9rem; transition: all 0.3s ease; font-family: var(--kpy-font-body); }
        .jk-btn:hover { background: var(--kpy-secondary); color: var(--kpy-base); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(var(--kpy-secondary-rgb), 0.3); }
        .jk-btn i { font-size: 0.8rem; transition: transform 0.3s ease; }
        .jk-btn:hover i { transform: translateX(4px); }
        .jk-solutions-grid { max-width: 1200px; margin: 30px auto 0; display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
        .jk-solution-box { background: var(--kpy-white); text-decoration: none; padding: 35px 16px; text-align: center; transition: all 0.3s ease; border: 1px solid #e8e8e8; border-radius: 4px; box-shadow: 0 2px 10px rgba(var(--kpy-base-rgb), 0.05); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; }
        .jk-solution-box:hover { background: var(--kpy-primary); transform: translateY(-5px); border-color: var(--kpy-primary); box-shadow: 0 10px 30px rgba(var(--kpy-primary-rgb), 0.2); }
        .jk-service-icon i { font-size: 40px; color: var(--kpy-primary); transition: color 0.3s; }
        .jk-solution-box h4 { font-size: 0.9rem; color: var(--kpy-base); margin: 0; font-weight: 600; transition: color 0.3s; line-height: 1.3; font-family: var(--kpy-font-body); }
        .jk-solution-box:hover h4, .jk-solution-box:hover .jk-service-icon i { color: var(--kpy-white); }
        .jk-global-section .aos-init { opacity: 0; }
        .jk-global-section .aos-animate { opacity: 1; }
        @media (max-width: 1024px) { .jk-solutions-grid { grid-template-columns: repeat(3, 1fr); } }
        @media (max-width: 768px) { .jk-global-section { padding: 40px 15px; margin-top: -80px; } .jk-left-content h1 { font-size: 32px; } .jk-right-card { padding: 30px 20px; } .jk-years-box { width: 120px; height: 150px; } .jk-years-box span { font-size: 56px; } .jk-solutions-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; } }
        @media (max-width: 480px) { .jk-left-card { min-height: auto; padding: 35px 20px; } .jk-left-content h1 { font-size: 26px; } .jk-right-card { flex-direction: column; align-items: center; text-align: center; } .jk-years-box { width: 100px; height: 120px; } .jk-years-box span { font-size: 44px; } .jk-btn-wrap { text-align: center; } .jk-solutions-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; } .jk-solution-box { padding: 25px 12px; } .jk-solution-box h4 { font-size: 0.8rem; } }


/* ========================================================== */
/* About Page */
/* ========================================================== */
.about { padding: 80px; position: relative; overflow: hidden; }
.about .wp-block-group__inner-container { max-width: 1280px; margin: 0 auto; padding: 0 20px; position: relative; z-index: 2; }
.about .wp-block-columns { display: flex; gap: 50px; align-items: center; flex-direction: row !important; }
.about .wp-block-column { display: flex; flex-direction: column; justify-content: center; flex: 1; }
.about .wp-block-column:first-child { flex: 1; animation: fadeInLeft 0.8s ease forwards; }
.about .wp-block-column:first-child figure { margin: 0; height: auto; display: flex; align-items: center; justify-content: center; }
.about .wp-block-column:first-child img { width: 100%;  height: 450px; object-fit: cover; border-radius: 5px; transition: transform 0.5s ease, box-shadow 0.5s ease; display: block; margin: 0 auto; }
.about .wp-block-column:last-child { flex: 1; animation: fadeInRight 0.8s ease forwards; background: transparent; }
.about .wp-block-column:last-child figure { margin-bottom: 20px; display: block; animation: bounceIn 0.6s ease forwards; }
.about .wp-block-column:last-child figure img { width: 60px; height: 60px; object-fit: contain; transition: transform 0.3s ease; }
.about .wp-block-column:last-child figure img:hover { transform: rotate(10deg) scale(1.1); }
.about .wp-block-column:last-child h5 { font-size: 14px; letter-spacing: 3px; text-transform: uppercase; color: var(--kpy-primary, #811411); margin-bottom: 12px; font-weight: 600; display: block; position: relative; display: inline-block; }
.about .wp-block-column:last-child h5::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 40px; height: 2px; background: var(--kpy-primary, #811411); animation: expandWidth 0.6s ease forwards; }
.about .wp-block-column:last-child h2 { font-size: 3rem; font-weight: 700; color: var(--kpy-base, #000); margin-bottom: 20px; line-height: 1.2; display: block; background: linear-gradient(135deg, var(--kpy-primary) 0%, var(--kpy-secondary) 100%); background-clip: text; -webkit-background-clip: text; color: transparent; }
.about .wp-block-column:last-child > p { font-size: 16px; color: #555; line-height: 1.6; margin-bottom: 30px; display: block; animation: fadeInUp 0.6s ease 0.2s forwards; opacity: 0; animation-fill-mode: forwards; }
.about .wp-block-columns .wp-block-columns { display: flex; gap: 40px; margin-top: 10px; width: 100%; flex-direction: row !important; }
.about .wp-block-list { list-style: none; padding: 0; margin: 0; display: block; }
.about .wp-block-list li { position: relative; padding-left: 55px;  font-size: 14px; color: #333; display: block; transition: transform 0.3s ease, color 0.3s ease; cursor: pointer; min-height: 48px; display: flex; align-items: center; }
.about .wp-block-list li:hover { transform: translateX(5px); color: var(--kpy-primary); }
.about .wp-block-list li:nth-child(1)::before { content: '\f0eb'; font-family: 'Font Awesome 6 Free'; font-weight: 900; position: absolute; left: 0; padding: 12px; background: var(--kpy-primary); top: 0; font-size: 16px; border-radius: 50%; color: var(--kpy-white); width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; box-sizing: border-box; transition: transform 0.3s ease, background 0.3s ease; }
.about .wp-block-list li:nth-child(2)::before { content: '\f3c5'; font-family: 'Font Awesome 6 Free'; font-weight: 900; position: absolute; left: 0; padding: 12px; background: var(--kpy-primary, #811411); top: 0; font-size: 16px; border-radius: 50%; color: var(--kpy-white); width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; box-sizing: border-box; transition: transform 0.3s ease, background 0.3s ease; }
.about .wp-block-list li:hover::before { transform: scale(1.1); background: var(--kpy-secondary); }
.about .wp-block-columns.is-layout-flex { align-items: center !important; }
.about .wp-block-column { height: auto; }
@keyframes fadeInLeft { from { opacity: 0; transform: translateX(-40px); } to { opacity: 1; transform: translateX(0); } }
@keyframes fadeInRight { from { opacity: 0; transform: translateX(40px); } to { opacity: 1; transform: translateX(0); } }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@keyframes bounceIn { 0% { opacity: 0; transform: scale(0.3); } 50% { opacity: 1; transform: scale(1.05); } 70% { transform: scale(0.9); } 100% { transform: scale(1); } }
@keyframes expandWidth { from { width: 0; } to { width: 40px; } }
@keyframes float { 0% { transform: translateY(0px); } 50% { transform: translateY(-10px); } 100% { transform: translateY(0px); } }
.about .wp-block-list li:nth-child(1) { animation: fadeInUp 0.5s ease 0.1s forwards; opacity: 0; animation-fill-mode: forwards; }
.about .wp-block-list li:nth-child(2) { animation: fadeInUp 0.5s ease 0.2s forwards; opacity: 0; animation-fill-mode: forwards; }
.about .wp-block-list li:nth-child(3) { animation: fadeInUp 0.5s ease 0.3s forwards; opacity: 0; animation-fill-mode: forwards; }
.about .wp-block-list li:nth-child(4) { animation: fadeInUp 0.5s ease 0.4s forwards; opacity: 0; animation-fill-mode: forwards; }
.about .wp-block-column:last-child:hover { transform: translateY(-5px); transition: transform 0.4s ease; }
@media (max-width: 992px) { .about .wp-block-columns { flex-direction: column !important; gap: 30px; } .about .wp-block-column:first-child img { max-width: 300px; margin: 0 auto; display: block; } .about .wp-block-column:last-child { text-align: center; } .about .wp-block-column:last-child h2 { font-size: 32px; } .about .wp-block-column:last-child h5::after { left: 50%; transform: translateX(-50%); } }
@media (max-width: 768px) { .about { padding: 40px 0; } .about .wp-block-column:last-child h2 { font-size: 28px; } .about .wp-block-list li { text-align: center; padding-left: 0; display: inline-block; margin: 5px; background: rgba(129,20,17,0.08); padding: 8px 16px; border-radius: 30px; } .about .wp-block-list li::before { position: relative; display: inline-block;display:none !important; } .about .wp-block-list li:hover { transform: translateY(-3px); } }
@media (max-width: 480px) { .about .wp-block-column:last-child h2 { font-size: 24px; } .about .wp-block-column:first-child img { max-width: 100%; } }
.about .wp-block-buttons { display: flex; gap: 10px; }
.about .wp-block-button { display: inline-block; }
.about .wp-block-button__link { background: var(--kpy-primary); color: var(--kpy-white, #ffffff); padding: 12px 28px; border-radius: 0; text-decoration: none; font-size: 14px; font-weight: 600; display: inline-flex; align-items: center; gap: 10px; transition: all 0.3s ease; border: none; cursor: pointer; }

.about .wp-block-button__link::after { content: '\f061'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 12px; transition: transform 0.3s ease; }
.about .wp-block-button__link:hover::after { transform: translateX(5px); }





/* ==========================================================
   Main Slider Styles - JK Global Engineers
   ========================================================== */
.main-slider { position: relative; width: 100%; height: 100vh; min-height: 600px; overflow: hidden; }
.main-slider .swiper-container { width: 100%; height: 100%; }
.main-slider .swiper-slide { position: relative; overflow: hidden; }
.image-layer { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-size: cover; background-position: center; background-repeat: no-repeat; transform: scale(1); will-change: transform; }
.swiper-slide-active .image-layer.kenburns-active { animation: kenburns 8s ease-out forwards; }
@keyframes kenburns { 0% { transform: scale(1) rotate(0deg); } 100% { transform: scale(1.15) rotate(0.5deg); } }
.slider-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(ellipse 55% 45% at center, rgb(0 74 133) 0%, rgb(0 74 133 / 33%) 40%, rgb(0 74 133 / 0%) 75%, rgba(21, 124, 206, 0) 100%); }
.slider-content-wrapper { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; height: 100%; width: 100%; }
.main-slider .container { width: 100%; }
.main-slider-content { display: flex; align-items: center; justify-content: center; text-align: center; padding: 60px 20px; margin-top:80px; }
.main-slider-content__inner { max-width: 800px; width: 100%; }
.sub-title { display: flex; align-items: center; justify-content: center; gap: 15px; margin-bottom: 20px; animation: fadeInUp 1s ease-out 0.3s both; }
.sub-title-line { display: block; width: 50px; height: 3px; background: var(--kpy-secondary, #f4b223); border-radius: 2px; }
.sub-title-text { color: var(--kpy-secondary, #f4b223); font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 3px; }
.big-title { margin-bottom: 25px; animation: fadeInUp 1s ease-out 0.5s both; }
.slider-title-main { color: #ffffff; font-size: 4rem; font-weight: 800; line-height: 1.15; margin: 0; text-shadow: 2px 4px 8px rgb(0 74 133 / 55%); position: relative; text-transform: uppercase; letter-spacing: 2px;}
.text { margin-bottom: 35px; animation: fadeInUp 1s ease-out 0.7s both; }
.text p { color: rgba(255, 255, 255, 0.9); font-size: 1.15rem; line-height: 1.8; margin: 0 auto; font-weight: 400; max-width: 650px; }
.slider-cta { margin-bottom: 40px; animation: fadeInUp 1s ease-out 0.9s both; }
.slider-btn { display: inline-flex; align-items: center; gap: 12px; padding: 15px 40px; background: var(--kpy-secondary, #f4b223); color: #1a1a1a; text-decoration: none; font-weight: 700; font-size: 1rem; border-radius: 8px; text-transform: uppercase; letter-spacing: 1px; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; box-shadow: 0 4px 15px rgba(244, 178, 35, 0.3); }
.slider-btn::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; background: rgba(255, 255, 255, 0.3); border-radius: 50%; transform: translate(-50%, -50%); transition: width 0.6s ease, height 0.6s ease; }
.slider-btn:hover { background: #ffffff; color: #1a1a1a; transform: translateY(-3px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3); }
.slider-btn:hover::before { width: 300px; height: 300px; }
.slider-btn i { transition: transform 0.3s ease; font-size: 1.1rem; }
.slider-btn:hover i { transform: translateX(8px); }
.scroll-down-prompt { display: none; flex-direction: column; align-items: center; justify-content: center; margin-top: 60px; width: 100%; animation: fadeInUp 1s ease-out 1.1s both; position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); }
.scroll-down-text { color: rgba(255, 255, 255, 0.8); font-size: 13px; text-transform: uppercase; letter-spacing: 4px; margin-bottom: 15px; font-weight: 600; }
.scroll-down-arrow { animation: bounceDown 2s infinite; cursor: pointer; transition: transform 0.3s ease; opacity: 0.8; }
.scroll-down-arrow:hover { transform: scale(1.15); opacity: 1; }
/* Scoped styles - only affect the main custom slider */
.custom-main-slider { position: relative; width: 100%; height: 100vh; min-height: 600px; overflow: hidden; }
.custom-main-slider .swiper-wrapper { position: relative; width: 100%; height: 100%; }
.custom-main-slider .swiper-slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; visibility: hidden; transition: opacity 1s ease-in-out, visibility 1s ease-in-out; }
.custom-main-slider .swiper-slide.swiper-slide-active { opacity: 1; visibility: visible; }
.custom-main-slider .image-layer { transform: scale(1); transition: transform 6s ease-in-out; }
.custom-main-slider .image-layer.kenburns-active { transform: scale(1.1); }
.custom-main-slider .swiper-pagination { position: absolute; bottom: 100px !important; left: 50% !important; transform: translateX(-50%); display: flex; gap: 8px; z-index: 10; width: auto !important; }
.custom-main-slider .swiper-pagination-bullet { width: 10px; height: 10px; border-radius: 50%; background: rgba(255, 255, 255, 0.5); cursor: pointer; transition: all 0.3s ease; display: inline-block; border: 2px solid transparent; opacity: 1 !important; margin: 0 4px !important; }
.custom-main-slider .swiper-pagination-bullet-active { background: #fff; border-color: #fff; transform: scale(1.2); }
.custom-main-slider .swiper-pagination-bullet:hover { background: rgba(255, 255, 255, 0.8); }
.custom-main-slider .swiper-button-prev, .custom-main-slider .swiper-button-next { cursor: pointer; z-index: 10; }
@media (max-width: 768px) { .custom-main-slider { min-height: 400px; } .custom-main-slider .swiper-pagination { bottom: 80px !important; } .custom-main-slider .swiper-pagination-bullet { width: 8px; height: 8px; margin: 0 3px !important; } }
@keyframes bounceDown { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-15px); } 60% { transform: translateY(-7px); } }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }
.main-slider__nav { position: absolute; bottom: 60px; right: 60px; display: flex; gap: 15px; z-index: 10; }
.main-slider__nav .swiper-button-prev, .main-slider__nav .swiper-button-next { position: relative; width: 55px; height: 55px; margin: 0; background: rgba(255, 255, 255, 0.08); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 2px solid rgba(255, 255, 255, 0.15); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #ffffff; font-size: 1.3rem; cursor: pointer; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); left: auto; right: auto; top: auto; }
.main-slider__nav .swiper-button-prev::after, .main-slider__nav .swiper-button-next::after { content: none; display: none; }
.main-slider__nav .swiper-button-prev:hover, .main-slider__nav .swiper-button-next:hover { background: var(--kpy-secondary, #f4b223); border-color: var(--kpy-secondary, #f4b223); color: #1a1a1a; transform: scale(1.1); box-shadow: 0 8px 25px rgba(244, 178, 35, 0.4); }
.main-slider__nav .swiper-button-prev:active, .main-slider__nav .swiper-button-next:active { transform: scale(0.95); }
.swiper-pagination { position: absolute; bottom: 65px !important; left: 60px !important; width: auto !important; z-index: 10; display: flex; align-items: center; gap: 5px; }
.swiper-pagination-bullet { width: 10px; height: 10px; background: rgba(255, 255, 255, 0.4); opacity: 1; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); margin: 0 8px !important; border-radius: 10px; position: relative; }
.swiper-pagination-bullet:hover { background: rgba(255, 255, 255, 0.8); }
.swiper-pagination-bullet-active { background: var(--kpy-secondary, #f4b223); width: 35px; border-radius: 10px; box-shadow: 0 0 15px rgba(244, 178, 35, 0.6); }
@media (max-width: 1200px) { .slider-title-main { font-size: 2.8rem; } .main-slider-content__inner { max-width: 700px; } .main-slider__nav { bottom: 50px; right: 40px; } .swiper-pagination { bottom: 55px !important; left: 40px !important; } }
@media (max-width: 992px) { .slider-title-main { font-size: 2.4rem; } .main-slider-content__inner { max-width: 600px; } .text p { font-size: 1.05rem; } .main-slider__nav .swiper-button-prev, .main-slider__nav .swiper-button-next { width: 48px; height: 48px; } }
@media (max-width: 768px) { .main-slider { height: 85vh; min-height: 500px; } .slider-title-main { font-size: 2.2rem; } .main-slider-content__inner { max-width: 100%; } .sub-title-text { font-size: 0.75rem; letter-spacing: 2px; } .main-slider__nav { bottom: 30px; right: 20px; gap: 10px; } .main-slider__nav .swiper-button-prev, .main-slider__nav .swiper-button-next { width: 42px; height: 42px; font-size: 1.1rem; } .swiper-pagination { bottom: 35px !important; left: 20px !important; } .scroll-down-prompt { bottom: 25px; } .slider-btn { padding: 12px 30px; font-size: 0.9rem; } }
@media (max-width: 576px) { .slider-title-main { font-size: 1.8rem; } .main-slider__nav .swiper-button-prev, .main-slider__nav .swiper-button-next { width: 38px; height: 38px; font-size: 1rem; } .scroll-down-text { font-size: 11px; letter-spacing: 3px; } .slider-overlay { background: radial-gradient(ellipse 55% 45% at center, rgb(0 74 133) 0%, rgb(0 74 133 / 43%) 40%, rgb(0 74 133 / 13%) 75%, rgba(21, 124, 206, 0) 100%)} }

   

    /* ==========================================================
   Main Footer Styles - JK Global Engineers
   ========================================================== */
.main-footer { position: relative; background: var(--kpy-primary, #1a3a5c); color: #ffffff; overflow: hidden; }
.footer-wave { position: relative; margin-top: -2px; line-height: 0; }
.footer-wave svg { display: block; width: 100%; height: auto; }
.footer-main { padding: 80px 0 50px; position: relative; }
.footer-main::before { content: ''; position: absolute; top: 0; right: 0; width: 400px; height: 400px; background: radial-gradient(circle, rgba(244, 178, 35, 0.05) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }
.footer-main::after { content: ''; position: absolute; bottom: -100px; left: -100px; width: 300px; height: 300px; background: radial-gradient(circle, rgba(244, 178, 35, 0.03) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.5fr; gap: 40px; position: relative; z-index: 1; }
.footer-col { position: relative; }
.footer-logo { margin-bottom: 20px; }
.footer-logo-img { height: 70px; transition: filter 0.3s ease; }
.footer-site-name { color: #ffffff; font-size: 1.8rem; font-weight: 700; margin: 0; }
.footer-description { color: rgba(255, 255, 255, 0.75); font-size: 0.95rem; line-height: 1.7; margin-bottom: 25px; }
.footer-social-title { font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; color: var(--kpy-secondary, #f4b223); margin-bottom: 15px; }
.social-links { display: flex; gap: 10px; flex-wrap: wrap; }
.social-links .social-link { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255, 255, 255, 0.1); color: #ffffff; text-decoration: none; font-size: 1rem; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); border: 1px solid rgba(255, 255, 255, 0.15); position: relative; overflow: hidden; }
.social-links .social-link::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; background: var(--kpy-secondary, #f4b223); border-radius: 50%; transform: translate(-50%, -50%); transition: width 0.4s ease, height 0.4s ease; z-index: 0; }
.social-links .social-link:hover { border-color: var(--kpy-secondary, #f4b223); transform: translateY(-3px); box-shadow: 0 8px 20px rgba(244, 178, 35, 0.3); }
.social-links .social-link:hover::before { width: 100%; height: 100%; }
.social-links .social-link i { position: relative; z-index: 1; transition: color 0.3s ease; }
.social-links .social-link:hover i { color: var(--kpy-primary, #1a3a5c); }
.footer-title { color: #ffffff; font-size: 1.2rem; font-weight: 700; margin-bottom: 10px; position: relative; padding-bottom: 0; }
.footer-divider { width: 50px; height: 3px; background: var(--kpy-secondary, #f4b223); border-radius: 2px; margin-bottom: 25px; }
.footer-menu, .footer-services-list { list-style: none; padding: 0; margin: 0; }
.footer-menu li { margin-bottom: 12px; }
.footer-menu li a { color: rgba(255, 255, 255, 0.75); text-decoration: none; font-size: 0.95rem; transition: all 0.3s ease; display: flex; align-items: center; gap: 8px; }
.footer-menu li a i { font-size: 0.7rem; color: var(--kpy-secondary, #f4b223); transition: transform 0.3s ease; }
.footer-menu li a:hover { color: #ffffff; transform: translateX(5px); }
.footer-menu li a:hover i { transform: translateX(3px); }
.footer-services-list li { margin-bottom: 14px; }
.footer-services-list li a { display: flex; align-items: flex-start; gap: 12px; color: rgba(255, 255, 255, 0.75); text-decoration: none; font-size: 0.95rem; transition: all 0.3s ease; }
.footer-services-list .service-icon { width: 32px; height: 32px; background: rgba(244, 178, 35, 0.15); border-radius: 8px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: all 0.3s ease; }
.footer-services-list .services-icon i { font-size: 0.85rem; color: var(--kpy-secondary, #f4b223); transition: all 0.3s ease; }
.footer-services-list li a:hover { color: #ffffff; }
.footer-services-list li a:hover .services-icon { background: var(--kpy-secondary, #f4b223); transform: rotate(5deg); }
.footer-services-list li a:hover .services-icon i { color: var(--kpy-primary, #1a3a5c); }
.footer-contact-list { list-style: none; padding: 0; margin: 0; }
.footer-contact-list li { display: flex; gap: 12px; margin-bottom: 18px; align-items: flex-start; }
.contact-icon-box { width: 38px; height: 38px; background: rgba(255, 255, 255, 0.08); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); }
.contact-icon-box i { font-size: 0.95rem; color: var(--kpy-secondary, #f4b223); }
.footer-contact-list li:hover .contact-icon-box { background: var(--kpy-secondary, #f4b223); border-color: var(--kpy-secondary, #f4b223); }
.footer-contact-list li:hover .contact-icon-box i { color: var(--kpy-primary, #1a3a5c); }
.contact-info { flex: 1; }
.contact-label { display: block; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1.5px; color: var(--kpy-secondary, #f4b223); margin-bottom: 3px; }
.contact-info p { margin: 0; color: rgba(255, 255, 255, 0.75); font-size: 0.9rem; line-height: 1.6; }
.contact-info a { color: rgba(255, 255, 255, 0.75); text-decoration: none; font-size: 0.9rem; transition: color 0.3s ease; }
.contact-info a:hover { color: #ffffff; }
.footer-newsletter { background: rgba(0, 0, 0, 0.2); padding: 40px 0; border-top: 1px solid rgba(255, 255, 255, 0.08); border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.newsletter-wrapper { display: flex; align-items: center; justify-content: space-between; gap: 30px; flex-wrap: wrap; }
.newsletter-content h4 { color: #ffffff; font-size: 1.2rem; font-weight: 700; margin: 0 0 8px; display: flex; align-items: center; gap: 10px; }
.newsletter-content h4 i { color: var(--kpy-secondary, #f4b223); font-size: 1.3rem; }
.newsletter-content p { color: rgba(255, 255, 255, 0.6); font-size: 0.9rem; margin: 0; }
.newsletter-form { flex: 1; max-width: 500px; }
.newsletter-input-group { display: flex; gap: 10px; }
.newsletter-input { flex: 1; padding: 14px 20px; border: 2px solid rgba(255, 255, 255, 0.15); border-radius: 8px; background: rgba(255, 255, 255, 0.08); color: #ffffff; font-size: 0.95rem; outline: none; transition: all 0.3s ease; }
.newsletter-input::placeholder { color: rgba(255, 255, 255, 0.4); }
.newsletter-input:focus { border-color: var(--kpy-secondary, #f4b223); background: rgba(255, 255, 255, 0.12); box-shadow: 0 0 0 3px rgba(244, 178, 35, 0.1); }
.newsletter-btn { display: flex; align-items: center; gap: 8px; padding: 14px 28px; background: var(--kpy-secondary, #f4b223); color: var(--kpy-primary, #1a3a5c); border: none; border-radius: 8px; font-weight: 700; font-size: 0.95rem; cursor: pointer; transition: all 0.3s ease; white-space: nowrap; }
.newsletter-btn:hover { background: #ffffff; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(244, 178, 35, 0.3); }
.newsletter-btn i { font-size: 1rem; transition: transform 0.3s ease; }
.newsletter-btn:hover i { transform: translateX(3px); }
.footer-bottom { padding: 20px 0; background: rgba(0, 0, 0, 0.3); }
.footer-bottom-content { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; }
.copyright p { margin: 0; color: rgba(255, 255, 255, 0.6); font-size: 0.9rem; }
.copyright span { color: var(--kpy-secondary, #f4b223); font-weight: 600; }
.footer-bottom-links { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.footer-bottom-links a { color: rgba(255, 255, 255, 0.6); text-decoration: none; font-size: 0.85rem; transition: color 0.3s ease; }
.footer-bottom-links a:hover { color: var(--kpy-secondary, #f4b223); }
.footer-bottom-links .separator { color: rgba(255, 255, 255, 0.2); font-size: 0.8rem; }
.back-to-top { position: fixed; bottom: 30px; right: 30px; width: 48px; height: 48px; background: var(--kpy-secondary, #f4b223); color: var(--kpy-primary, #1a3a5c); border: none; border-radius: 50%; font-size: 1.2rem; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 999; opacity: 0; visibility: hidden; transform: translateY(20px); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 4px 15px rgba(244, 178, 35, 0.4); }
.back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: #ffffff; transform: translateY(-5px); box-shadow: 0 8px 25px rgba(244, 178, 35, 0.6); }
@media (max-width: 1200px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px 30px; } .footer-col-about { grid-column: 1 / -1; } }
@media (max-width: 992px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 25px; } .newsletter-wrapper { flex-direction: column; text-align: center; } .newsletter-content h4 { justify-content: center; } .newsletter-form { max-width: 100%; width: 100%; } }
@media (max-width: 768px) { .footer-main { padding: 60px 0 30px; } .footer-grid { grid-template-columns: 1fr; gap: 35px; } .footer-wave svg { height: 30px; } .newsletter-input-group { flex-direction: column; } .newsletter-btn { justify-content: center; } .footer-bottom-content { flex-direction: column; text-align: center; } .footer-bottom-links { justify-content: center; } .back-to-top { bottom: 20px; right: 20px; width: 42px; height: 42px; font-size: 1rem; } }
@media (max-width: 480px) { .social-links .social-link { width: 36px; height: 36px; font-size: 0.9rem; } .footer-title { font-size: 1.1rem; } }   
   
   
.abt-us { padding: 60px 0; background-color: #f8f9fa; font-family: var(--kpy-font); }
.abt-us .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.abt-us .wp-block-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: stretch; margin: 0; }
.abt-us .wp-block-column { padding: 0; display: flex; flex-direction: column; }
.abt-us figure { margin: 0; position: relative; overflow: hidden; height: 100%; display: flex; }
.abt-us figure img { width: 100%; height: 100%; display: block; transition: transform 0.5s ease; box-shadow: var(--shadow-lg); object-fit: cover;
    border-radius: 30px; }
.abt-us figure:hover img { transform: scale(1.02); }
.abt-us h2 { font-size: 2.5rem; font-weight: 700; color: var(--kpy-base, #000); margin-bottom: 20px; line-height: 1.2; display: block; background: linear-gradient(135deg, var(--kpy-primary) 0%, var(--kpy-secondary) 100%); background-clip: text; -webkit-background-clip: text; color: transparent;}
.abt-us p { font-size: 1.1rem; line-height: 1.8; color: var(--kpy-text-dark); margin-bottom: 30px; }
.abt-us .wp-block-buttons { margin-top: 20px; }
.abt-us .wp-block-button { display: inline-block; }
.abt-us .wp-block-button__link { display: inline-block; padding: 15px 40px; background-color: transparent !important; color: var(--kpy-secondary) !important; font-size: 1rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; border: 2px solid var(--kpy-primary); border-radius:0; }
.abt-us .wp-block-button__link:hover { background-color: var(--kpy-primary) !important; color: var(--kpy-white) !important; border-color: var(--kpy-primary); transform: translateY(-3px); box-shadow: var(--shadow-lg); }
.abt-us .visible { opacity: 0; animation: fadeInUp 0.8s ease forwards; }
.abt-us .wp-block-column:first-child .visible { animation-delay: 0.2s; }
.abt-us .wp-block-column:last-child .visible { animation-delay: 0.4s; }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 992px) { .abt-us h2 { font-size: 2.2rem; } .abt-us p { font-size: 1rem; } }
@media (max-width: 768px) { .abt-us { padding: 40px 0; } .abt-us .wp-block-columns { grid-template-columns: 1fr; gap: 30px; } .abt-us h2 { font-size: 2rem; text-align: center; } .abt-us h2::after { left: 50%; transform: translateX(-50%); width: 60px; } .abt-us p { text-align: center; } .abt-us .wp-block-buttons { text-align: center; } .abt-us .wp-block-button__link { padding: 12px 30px; } .abt-us figure { height: 400px; } }
@media (max-width: 480px) { .abt-us h2 { font-size: 1.8rem; } .abt-us .wp-block-columns { gap: 20px; } .abt-us .wp-block-button__link { width: 100%; text-align: center; } .abt-us figure { height: 300px; } }


/** ==========================================================
Values Section
===========================================================**/
.value { position: relative; padding: 100px 0; overflow: hidden; }
.value .container-xxl { max-width: 1400px; margin: 0 auto; padding: 0 15px; position: relative; z-index: 2; }
.value h2.has-text-align-center { font-family: var(--kpy-font-heading); text-align: center; font-size: 48px; font-weight: 700; margin-bottom: 60px; color: var(--kpy-secondary); position: relative; }
.value h2.has-text-align-center::after { content: ''; position: absolute; bottom: -15px; left: 50%; transform: translateX(-50%); width: 100px; height: 4px; background: var(--kpy-primary); border-radius: 2px; }
.value .wp-block-columns { display: flex; gap: 30px; margin-bottom: 30px; }
.value .wp-block-columns:last-of-type { margin-bottom: 0; }
.value .card { background: var(--kpy-white); border-radius: 30px; overflow: hidden; box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08); transition: all 0.4s ease; height: 100%; border: 1px solid rgba(0, 0, 0, 0.03); }
.value .card:hover { transform: translateY(-10px); box-shadow: 0 25px 60px rgba(238, 90, 0, 0.12); }
.value .card > .wp-block-columns { display: flex; align-items: stretch; gap: 0; height: 100%; margin: 0; }
.value .card .wp-block-column:first-child { flex: 0 0 40%; max-width: 40%; }
.value .card .wp-block-column:last-child { flex: 0 0 60%; max-width: 60%; padding: 35px; display: flex; flex-direction: column; justify-content: center; }
.value .card .wp-block-image { margin: 0; height: 100%; }
.value .card .wp-block-image img { width: 100%; height: 400px; object-fit: cover; display: block; transition: all 0.6s ease; }
.value .card:hover .wp-block-image img { transform: scale(1.05); }
.value .card h2 { font-size: 1.5rem; font-weight: 600; color: var(--kpy-base, #000); margin-bottom: 20px; line-height: 1.2; display: block; background: linear-gradient(135deg, var(--kpy-primary) 0%, var(--kpy-secondary) 100%); background-clip: text; -webkit-background-clip: text; color: transparent; }
.value .card p { font-family: var(--kpy-font-body); font-size: 15px; line-height: 1.7; color: var(--kpy-grey); margin: 0; }
.value .wp-block-columns.is-layout-flex { display: flex; }
.value .wp-block-columns > .wp-block-column { flex: 1; }
@media (min-width: 1024px) { .value .wp-block-columns { display: grid; grid-template-columns: repeat(2, 1fr); } .value .wp-block-columns .wp-block-column { width: 100%; } }
@media (max-width: 1024px) and (min-width: 769px) { .value .wp-block-columns { flex-wrap: wrap; } .value .wp-block-columns .wp-block-column { flex: 0 0 calc(50% - 15px); } }
@media (max-width: 768px) {.outdoorsy-main-header.outdoorsy-sticky .outdoorsy-main-logo{max-height:50px!important; margin-top:0;}
 .value { padding: 60px 0; } .value h2.has-text-align-center { font-size: 36px; } .value .wp-block-columns { flex-direction: column; } .value .card > .wp-block-columns { flex-direction: column; } .value .card .wp-block-column:first-child { max-width: 100%; flex: 0 0 100%; } .value .card .wp-block-column:last-child { max-width: 100%; flex: 0 0 100%; padding: 30px; } .value .card .wp-block-image img { height: 220px; } }
@media (max-width: 480px) { .value .card .wp-block-image img { height: 200px; } .value .card .wp-block-column:last-child { padding: 25px; } }





/* ========================================================== */
/* page hero */
/* ========================================================== */
.hero-section { position: relative;  height: 400px; background-size: cover; background-position: center; background-repeat: no-repeat; display: flex; align-items: center; justify-content: center; }
.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background:radial-gradient(ellipse 55% 45% at center, rgb(0 74 133) 0%, rgb(0 74 133 / 43%) 40%, rgb(0 74 133 / 0%) 75%, rgba(21, 124, 206, 0) 100%); display: flex; align-items: center; justify-content: center; text-align: center; backdrop-filter: blur(2px); }
.hero-content { position: relative; z-index: 2; color: #fff; padding: 20px; max-width:800px;}
.hero-title { font-size: 40px; font-weight: 700; margin-bottom: 10px; margin-top:10px;}
.hero-breadcrumb { font-size: 16px; opacity: 0.95; }
.hero-breadcrumb a { color: #fff; text-decoration: none; }
.hero-breadcrumb a:hover { text-decoration: underline; }
.hero-breadcrumb .separator { margin: 0 6px; }
@media (max-width: 768px) { .hero-section { height: 500px; } .hero-title { font-size: 32px; } .hero-breadcrumb { font-size: 14px; } .kpy-horizontal-news-link {display:block;}
    
}



/* ========================================================== */
/* Blog News */
/* ========================================================== */
    .kpy-blog-news-wrapper { margin: 60px; padding: 0; }
 .kpy-blog-grid { display: grid; gap: 35px; margin-bottom: 50px; }
    .kpy-blog-cols-1 { grid-template-columns: 1fr; }
    .kpy-blog-cols-2 { grid-template-columns: repeat(2, 1fr); }
    .kpy-blog-cols-3 { grid-template-columns: repeat(3, 1fr); }
    .kpy-blog-cols-4 { grid-template-columns: repeat(4, 1fr); }
    .kpy-blog-card { background: white; border-radius: 20px; overflow: hidden; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); transition: all 0.4s ease; height: 100%; }
    .kpy-blog-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); }
    .kpy-blog-card-featured { grid-column: span 2; }
    .kpy-blog-card-featured .kpy-blog-card-inner { display: grid; grid-template-columns: 1fr 1fr; }
    .kpy-blog-card-featured .kpy-blog-image { height: 100%; }
    .kpy-blog-card-featured .kpy-blog-content { padding: 40px; }
    .kpy-blog-card-featured .kpy-blog-title { font-size: 1.8rem; }
    .kpy-blog-image { position: relative; overflow: hidden; height: 280px; }
    .kpy-blog-card-featured .kpy-blog-image { height: 100%; min-height: 400px; }
    .kpy-blog-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }.kpy-blog-image-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgb(0 142 255 / 34%); display: flex; align-items: center; justify-content: center; opacity: 0; transition: all 0.4s ease; }
    .kpy-blog-card:hover .kpy-blog-image-overlay { opacity: 1; }
    .kpy-blog-read-more { color: white; font-size: 1rem; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-categories { position: absolute; top: 15px; left: 15px; display: flex; gap: 8px; flex-wrap: wrap; }
    .kpy-blog-category { display: inline-block; padding: 5px 12px; background: var(--kpy-primary, #811411); color: white; font-size: 0.7rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; border-radius: 20px; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-category:hover { background: var(--kpy-secondary, #000000); transform: translateY(-2px); }
    .kpy-blog-content { padding: 25px; background: white; }
    .kpy-blog-meta { display: flex; align-items: center; gap: 15px; margin-bottom: 15px; flex-wrap: wrap; font-size: 0.8rem; color: #888; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-author { display: flex; align-items: center; gap: 8px; }
    .kpy-blog-author-avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
    .kpy-blog-author span { font-weight: 500; }
    .kpy-blog-date, .kpy-blog-read-time { display: flex; align-items: center; gap: 5px; }
    .kpy-blog-date i, .kpy-blog-read-time i { font-size: 12px; color: var(--kpy-primary, #811411); }
    .kpy-blog-title { font-size: 1.3rem; font-weight: 700; margin: 0 0 15px; line-height: 1.4; font-family: var(--kpy-font-heading, "montserrat", sans-serif); }
    .kpy-blog-title a { color: var(--kpy-base, #000000); text-decoration: none; transition: color 0.3s ease; background: linear-gradient(to right, var(--kpy-primary, #811411), var(--kpy-primary, #811411)); background-size: 0 2px; background-repeat: no-repeat; background-position: bottom left; }
    .kpy-blog-title a:hover { color: var(--kpy-primary, #811411); background-size: 100% 2px; }
    .kpy-blog-excerpt { font-size: 0.9rem; line-height: 1.7; color: #666; margin-bottom: 20px; font-family: var(--kpy-font-body, "montserrat", sans-serif);  overflow: hidden; }
    .kpy-blog-footer { margin-top: 15px; }
    .kpy-blog-link { display: inline-flex; align-items: center; gap: 8px; color: var(--kpy-primary, #811411); text-decoration: none; font-weight: 500; font-size: 0.9rem; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-link:hover { gap: 15px; color: var(--kpy-secondary, #000000); }
    .kpy-blog-link i { font-size: 12px; transition: transform 0.3s ease; }
    .kpy-blog-link:hover i { transform: translateX(5px); }
    .kpy-blog-load-more { text-align: center; margin-top: 20px; }
    .kpy-blog-view-all { display: inline-flex; align-items: center; gap: 10px; padding: 12px 30px; background: transparent; border: 2px solid var(--kpy-primary, #811411); color: var(--kpy-primary, #811411); text-decoration: none; border-radius: 50px; font-weight: 600; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-view-all:hover { background: var(--kpy-primary, #811411); color: white; gap: 15px; }
    .kpy-blog-no-results { text-align: center; padding: 80px 20px; background: linear-gradient(135deg, #f9f9f9 0%, #f0f0f0 100%); border-radius: 20px; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
    .kpy-blog-no-results i { font-size: 60px; color: var(--kpy-primary, #811411); margin-bottom: 20px; opacity: 0.5; }
    .kpy-blog-no-results h3 { font-size: 1.5rem; margin: 0 0 10px; color: #333; }
    .kpy-blog-no-results p { color: #666; }
    @media (max-width: 992px) { .kpy-blog-cols-3, .kpy-blog-cols-4 { grid-template-columns: repeat(2, 1fr); } .kpy-blog-card-featured { grid-column: span 1; } .kpy-blog-card-featured .kpy-blog-card-inner { grid-template-columns: 1fr; } .kpy-blog-card-featured .kpy-blog-image { height: 300px; } .kpy-blog-card-featured .kpy-blog-title { font-size: 1.5rem; } }
    @media (max-width: 768px) { .kpy-blog-cols-2, .kpy-blog-cols-3, .kpy-blog-cols-4 { grid-template-columns: 1fr; } .kpy-blog-section-title { font-size: 2rem; } .kpy-blog-meta { font-size: 0.7rem; gap: 10px; } .kpy-blog-title { font-size: 1.2rem; } .kpy-blog-image { height: 200px; } .kpy-blog-content { padding: 20px; } }
    @keyframes blogFadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
    .kpy-blog-card { animation: blogFadeInUp 0.5s ease forwards; opacity: 0; }
    .kpy-blog-card:nth-child(1) { animation-delay: 0.05s; }
    .kpy-blog-card:nth-child(2) { animation-delay: 0.1s; }
    .kpy-blog-card:nth-child(3) { animation-delay: 0.15s; }
    .kpy-blog-card:nth-child(4) { animation-delay: 0.2s; }
    .kpy-blog-card:nth-child(5) { animation-delay: 0.25s; }
    .kpy-blog-card:nth-child(6) { animation-delay: 0.3s; }



/** ============================================================
* Project List
=============================================================**/

 .jk-projects-wrapper { max-width: 900px; margin: 50px auto; padding: 0 24px; font-family: 'Montserrat', sans-serif; }
    .jk-projects-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; flex-wrap: wrap; gap: 16px; }
    .jk-projects-count { font-size: 0.85rem; color: #888; font-weight: 500; }
    .jk-projects-count span { background: #f0f0f0; padding: 6px 14px; }
    .jk-search-form { display: flex; align-items: center; gap: 0; }
    .jk-search-input { padding: 10px 16px; border: 2px solid #e0e0e0; border-radius: 8px 0 0 8px; font-size: 0.9rem; width: 260px; font-family: 'Montserrat', sans-serif; transition: border-color 0.3s; }
    .jk-search-input:focus { outline: none; border-color: #004a85; }
    .jk-search-btn { padding: 10px 16px; background: #004a85; color: #fff; border: none; border-radius: 0 8px 8px 0; cursor: pointer; font-size: 0.9rem; transition: background 0.3s; }
    .jk-search-btn:hover { background: #003666; }
    .jk-search-clear { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; margin-left: 8px; background: #f0f0f0; border-radius: 50%; color: #888; text-decoration: none; font-size: 0.8rem; transition: all 0.3s; }
    .jk-search-clear:hover { background: #e0e0e0; color: #333; }
    .jk-projects-table-wrap { overflow-x: auto;  box-shadow: 0 2px 20px rgba(0,0,0,0.06); border: 1px solid #e0e0e0; }
    .jk-projects-table { width: 100%; border-collapse: collapse; background: #fff; font-size: 0.92rem; }
    .jk-projects-table thead { background: linear-gradient(135deg, #004a85, #0066b3); }
    .jk-projects-table th { color: #fff; padding: 18px 20px; text-align: left; font-weight: 600; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.8px; white-space: nowrap; border-right: 1px solid rgba(255,255,255,0.2); }
    .jk-projects-table th:last-child { border-right: none; }
    .jk-projects-table tbody tr { border-bottom: 1px solid #e8e8e8; transition: all 0.2s ease; }
    .jk-projects-table tbody tr:last-child { border-bottom: none; }
    .jk-projects-table tbody tr:hover { background: #f0f6fc; }
    .jk-projects-table tbody tr:nth-child(even) { background: #fafbfc; }
    .jk-projects-table tbody tr:nth-child(even):hover { background: #f0f6fc; }
    .jk-projects-table td { padding: 16px 20px; color: #444; line-height: 1.6; vertical-align: top; border-right: 1px solid #e8e8e8; }
    .jk-projects-table td:last-child { border-right: none; }
    .jk-th-num { width: 60px; text-align: center; }
    .jk-td-num { text-align: center; font-weight: 700; color: #004a85; width: 60px; font-size: 0.85rem; }
    .jk-th-contractor { min-width: 220px; }
    .jk-td-contractor { font-weight: 600; color: #1a1a1a; min-width: 220px; }
    .jk-th-desc { min-width: 340px; }
    .jk-td-desc { min-width: 340px; color: #555; }
    .jk-th-period { min-width: 160px; }
    .jk-td-period { white-space: nowrap; min-width: 160px; color: #555; }
    .jk-projects-pagination { margin-top: 30px; text-align: center; }
    .jk-pagination-inner { display: inline-flex; align-items: center; gap: 4px; background: #fff; padding: 6px; border-radius: 12px; box-shadow: 0 2px 12px rgba(0,0,0,0.05); }
    .jk-page-btn, .jk-page-num { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 8px; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 0.88rem; color: #555; transition: all 0.2s ease; }
    .jk-page-btn:hover, .jk-page-num:hover { background: #e8f0f8; color: #004a85; }
    .jk-page-num.active { background: #004a85; color: #fff; }
    .jk-page-dots { padding: 0 6px; color: #bbb; font-weight: 600; }
    .jk-pagination-info { margin-top: 10px; font-size: 0.8rem; color: #999; }
    .jk-projects-empty { text-align: center; padding: 60px 20px; color: #888; }
    .jk-empty-icon { font-size: 3rem; color: #ddd; margin-bottom: 16px; }
    .jk-projects-empty h3 { font-size: 1.2rem; color: #666; margin: 0 0 8px 0; font-weight: 600; }
    .jk-projects-empty p { font-size: 0.9rem; margin: 0 0 16px 0; }
    .jk-clear-search { display: inline-block; padding: 8px 20px; background: #004a85; color: #fff; text-decoration: none; border-radius: 6px; font-size: 0.85rem; font-weight: 600; transition: background 0.3s; }
    .jk-clear-search:hover { background: #003666; }
    @media (max-width: 768px) {
        .jk-projects-wrapper { padding: 0 12px; margin: 30px auto; }
        .jk-projects-header { flex-direction: column; align-items: flex-start; }
        .jk-search-input { width: 100%; }
        .jk-projects-table thead { display: none; }
        .jk-projects-table tbody tr { display: block; margin-bottom: 16px; border: 1px solid #e8e8e8; border-radius: 12px; padding: 4px; }
        .jk-projects-table td { display: block; padding: 10px 16px; text-align: right; border-right: none; border-bottom: 1px solid #f0f0f0; }
        .jk-projects-table td:last-child { border-bottom: none; }
        .jk-projects-table td::before { content: attr(data-label); float: left; font-weight: 700; color: #004a85; font-size: 0.75rem; text-transform: uppercase; }
        .jk-td-num { text-align: center; background: #f0f0f0; border-radius: 10px 10px 0 0; }
        .jk-td-num::before { display: none; }
        .jk-projects-table td:last-child { border-radius: 0 0 10px 10px; }
    }




/** ============================================================
Single Page Hero
=============================================================**/
.kpy-page-header{min-height:400px;padding:180px 0 100px;position:relative;display:flex;align-items:center;background-attachment:fixed !important;}
.kpy-header-content{max-width:700px;}.kpy-page-title{max-width:900px;font-family:var(--kpy-font-body);font-size:3.5rem;font-weight:600;color:#ffffff;text-shadow:0 2px 20px rgba(0,0,0,0.3);margin-bottom:20px;line-height:1.2;}
.kpy-header-content .breadcrumb{background:rgba(255,255,255,0.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:10px 20px;border-radius:0;display:inline-flex;color:#ffffff;font-size:0.9rem;}
.kpy-header-content .breadcrumb a{color:#ffffff;text-decoration:none;opacity:0.8;transition:opacity 0.3s ease;}
.kpy-header-content .breadcrumb a:hover{opacity:1;}
.kpy-single-news-section{padding:60px 0 80px;background:linear-gradient(135deg,#f8f9fa 0%,#ffffff 100%);}
.kpy-single-news-grid{display:grid;grid-template-columns:1fr 350px;gap:50px;}
.kpy-main-content{background:#ffffff;border-radius:12px;overflow:hidden;}
.kpy-news-article{padding:40px;}
.kpy-article-thumbnail{margin:-40px -40px 30px -40px;height:500px;overflow:hidden;position:relative;}
.kpy-featured-image{width:100%;height:100%;object-fit:cover;transition:transform 0.6s ease;}
.kpy-news-article:hover .kpy-featured-image{transform:scale(1.02);}
.kpy-article-meta{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;font-size:0.95rem;}
.kpy-article-meta span{display:flex;align-items:center;gap:8px;color:#666;}
.kpy-article-meta i{color:var(--kpy-primary,#811411);font-size:1rem;}
.kpy-article-title{font-family:var(--kpy-font-heading);font-size:2rem;color:var(--kpy-base,#000000);margin-bottom:30px;line-height:1.2;position:relative;padding-bottom:20px;}
.kpy-article-title::after{content:'';position:absolute;bottom:0;left:0;width:100px;height:4px;background:linear-gradient(90deg,var(--kpy-primary,#811411),var(--kpy-secondary,#000000));border-radius:2px;}
.kpy-article-content{font-size:1.1rem;line-height:1.8;color:#444;margin-bottom:40px;}
.kpy-article-content p{margin-bottom:25px;}
.kpy-article-content h2,.kpy-article-content h3{color:var(--kpy-base,#000000);margin-top:40px;margin-bottom:20px;}
.kpy-article-tags{display:flex;align-items:center;gap:15px;padding:20px 0;border-top:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8;margin-bottom:30px;}
.kpy-tags-label{display:flex;align-items:center;gap:8px;color:var(--kpy-base,#000000);font-weight:600;}
.kpy-article-tags a{display:inline-block;padding:5px 15px;background:rgba(129,20,17,0.1);color:var(--kpy-primary,#811411);text-decoration:none;border-radius:50px;font-size:0.9rem;transition:all 0.3s ease;}
.kpy-article-tags a:hover{background:var(--kpy-primary,#811411);color:#ffffff;}
.kpy-share-section{background:#f8f9fa;padding:30px;border-radius:12px;border:1px solid #e8e8e8;}
.kpy-share-title{font-size:1.2rem;color:var(--kpy-base,#000000);margin-bottom:20px;font-weight:600;}
.kpy-share-buttons{display:flex;flex-wrap:wrap;gap:12px;}
.kpy-share-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:8px;text-decoration:none;font-weight:500;transition:all 0.3s ease;flex:1;min-width:120px;justify-content:center;}
.kpy-share-btn i{font-size:1.2rem;}
.kpy-share-facebook{background:#1877f2;color:#ffffff;}
.kpy-share-twitter{background:#000000;color:#ffffff;}
.kpy-share-linkedin{background:#0a66c2;color:#ffffff;}
.kpy-share-whatsapp{background:#25d366;color:#ffffff;}
.kpy-share-btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,0.2);}
.kpy-sidebar{position:sticky;top:100px;align-self:start;margin-top:-100px;}
.kpy-sidebar-widget{background:#ffffff;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 5px 20px rgba(0,0,0,0.05);border:1px solid #e8e8e8;}
.kpy-widget-title{font-size:1.4rem;color:var(--kpy-base,#000000);margin-bottom:25px;display:flex;align-items:center;gap:10px;position:relative;padding-bottom:15px;}
.kpy-widget-title::after{content:'';position:absolute;bottom:0;left:0;width:50px;height:3px;background:var(--kpy-primary,#811411);border-radius:2px;}
.kpy-title-icon{width:40px;height:40px;background:rgba(129,20,17,0.1);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--kpy-primary,#811411);font-size:1.2rem;}
.kpy-related-news-widget .kpy-horizontal-news-list{display:flex;flex-direction:column;gap:15px;}
.kpy-horizontal-news-card{display:flex;flex-direction:row;align-items:stretch;overflow:hidden;transition:all 0.3s ease;margin-bottom:20px;width:100%;background:#ffffff;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.05);border:1px solid #e8e8e8;}
.kpy-horizontal-news-card:hover{transform:translateX(5px);box-shadow:0 10px 20px rgba(129,20,17,0.1);border-color:rgba(129,20,17,0.3);}
.kpy-horizontal-news-link{text-decoration:none;color:inherit;width:100%;}
.kpy-horizontal-thumbnail{flex:0 0 120px;overflow:hidden;position:relative;}
.kpy-horizontal-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease;}
.kpy-horizontal-news-card:hover .kpy-horizontal-image{transform:scale(1.1);}
.kpy-horizontal-content{flex:1;padding:15px;display:flex;flex-direction:column;justify-content:center;}
.kpy-horizontal-date{display:flex;align-items:center;gap:5px;font-size:0.8rem;color:var(--kpy-primary,#811411);margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px;}
.kpy-horizontal-date i{font-size:0.75rem;color:var(--kpy-primary,#811411);}
.kpy-horizontal-title{font-size:1rem;color:var(--kpy-base,#000000);margin-bottom:8px;line-height:1.4;font-weight:600;overflow:hidden;}
.kpy-horizontal-read-more{font-size:0.8rem;color:var(--kpy-primary,#811411);display:flex;align-items:center;gap:5px;opacity:0;transform:translateX(-10px);transition:all 0.3s ease;font-weight:500;}
.kpy-horizontal-news-card:hover .kpy-horizontal-read-more{opacity:1;transform:translateX(0);}
.kpy-horizontal-read-more i{font-size:0.7rem;transition:transform 0.3s ease;}
.kpy-horizontal-news-card:hover .kpy-horizontal-read-more i{transform:translateX(3px);}
.kpy-sidebar-widget:last-child{margin-bottom:0;}
@media (max-width: 992px){.kpy-single-news-grid{grid-template-columns:1fr;gap:30px;}.kpy-sidebar{position:static;}.kpy-article-thumbnail{height:350px;}.kpy-news-article{padding:25px;}}
@media (max-width: 768px){.kpy-page-title{font-size:2rem;}.kpy-article-title{font-size:1.5rem;}.kpy-article-thumbnail{margin:-25px -25px 20px -25px;height:250px;}.kpy-news-article{padding:20px;}.kpy-article-content{font-size:1rem;}.kpy-share-buttons{flex-direction:column;}.kpy-share-btn{width:100%;}.kpy-horizontal-news-card{flex-direction:column;}.kpy-horizontal-thumbnail{flex:0 0 180px;}.kpy-horizontal-image{height:180px;width:100%;}}



/* ============================================
Service Page Custom Styles
============================================ */
.service-hero { position: relative; }
/* Dual Layout Container */
.service-dual-layout { padding: 80px 0 60px 0; background: linear-gradient(135deg, #ffffff 0%, #fafafa 100%); }
.container { max-width: 1300px; margin: 0 auto; padding: 0 30px; }
.layout-grid { display: grid; grid-template-columns: 380px 1fr; gap: 50px; align-items: start; }




/* ============================================== 
STYLISH SIDEBAR DESIGN 
============================================== */
.service-sidebar { position: sticky; top: 100px; animation: slideInLeft 0.6s ease; margin-top: -100px;}
.service-sidebar-inner { background: white; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08); transition: transform 0.3s ease; }
.service-sidebar-inner:hover { transform: translateY(-5px); }
.sidebar-header { background: linear-gradient(135deg, var(--kpy-primary) 0%, #78d6e2 100%); padding: 30px 25px; text-align: center; position: relative; overflow: hidden; }
.sidebar-header::before { content: ''; position: absolute; top: -50%; right: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%); transform: rotate(45deg); }
.sidebar-title { color: white; font-size: 1.8rem; font-weight: 700; margin: 0 0 10px 0; position: relative; letter-spacing: -0.5px; }
.sidebar-title-line { width: 50px; height: 3px; background: white; margin: 0 auto; border-radius: 3px; position: relative; }
/* Services List */
.services-list { padding: 10px 0; }
.service-item { border-bottom: 1px solid var(--service-border); transition: all 0.3s ease; position: relative; }
.service-item:last-child { border-bottom: none; }
.service-item a { display: flex; align-items: center; gap: 15px; padding: 20px 25px; text-decoration: none; transition: all 0.3s ease; position: relative; overflow: hidden; }
.service-item a::before { content: ''; position: absolute; left: 0; top: 0; width: 4px; height: 100%; background: var(--service-primary); transform: scaleY(0); transition: transform 0.3s ease; }
.service-item:hover a::before, .service-item.active a::before { transform: scaleY(1); }
.service-item:hover { background: rgba(129, 20, 17, 0.03); }
.service-item.active { background: linear-gradient(90deg, rgba(129, 20, 17, 0.05) 0%, transparent 100%); }
.service-icon { width: 50px; height: 50px; background: linear-gradient(135deg, var(--service-primary) 0%, #a01a17 100%); border-radius: 12px; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; flex-shrink: 0; }
.service-icon i { color: white; font-size: 22px; transition: transform 0.3s ease; }
.service-item:hover .service-icon i { transform: scale(1.1); }
.service-info { flex: 1; }
.service-name { color: var(--service-dark); font-size: 1.1rem; font-weight: 600; margin: 0 0 5px 0; transition: color 0.3s ease; }
.service-item:hover .service-name, .service-item.active .service-name { color: var(--service-primary); }
.service-excerpt { color: #888; font-size: 0.85rem; margin: 0; line-height: 1.4; }
.service-arrow { opacity: 0; transform: translateX(-10px); transition: all 0.3s ease; }
.service-arrow i { color: var(--service-primary); font-size: 14px; }
.service-item:hover .service-arrow { opacity: 1; transform: translateX(0); }
 .service-image { width: 60px; height: 60px; border-radius: 12px; overflow: hidden; flex-shrink: 0; }
    .service-thumb { width: 100%; height: 100%; object-fit: cover; display: block; }
    .service-item a { display: flex; align-items: center; gap: 14px; padding: 14px 16px; text-decoration: none; color: inherit; }
    .service-item.active { background: #f0f4ff; border-left: 3px solid #14407b; }
    .service-item:hover { background: #f8f9fa; }
    .service-info { flex: 1; min-width: 0; }
    .service-name { margin: 0 0 4px 0; font-size: 0.95rem; color: #333; font-weight: 600; }
    .service-excerpt { margin: 0; font-size: 0.8rem; color: #888; line-height: 1.4; }
    .service-arrow { color: #14407b; opacity: 0; transition: opacity 0.3s ease; }
    .service-item:hover .service-arrow { opacity: 1; }
    .wp-block-gallery {display:grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 16px; margin: 30px 0; }
.wp-block-gallery .wp-block-image { margin: 0; overflow: hidden; border-radius: 12px; position: relative; }
.wp-block-gallery .wp-block-image img { width: 100%; height: 280px; object-fit: cover; display: block; transition: transform 0.4s ease; }
.wp-block-gallery .wp-block-image:hover img { transform: scale(1.06); }
.wp-block-gallery.columns-2 { grid-template-columns: repeat(2, 1fr); }
.wp-block-gallery.columns-3 { grid-template-columns: repeat(3, 1fr); }
.wp-block-gallery.columns-4 { grid-template-columns: repeat(4, 1fr); }
.wp-block-gallery.columns-5 { grid-template-columns: repeat(5, 1fr); }
@media (max-width: 1024px) {
.wp-block-gallery.columns-4, .wp-block-gallery.columns-5 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
.wp-block-gallery { grid-template-columns: repeat(2, 1fr); gap: 12px; }
.wp-block-gallery .wp-block-image img { height: 220px; }
}
@media (max-width: 480px) {
.wp-block-gallery { grid-template-columns: 1fr; gap: 10px; }
.wp-block-gallery .wp-block-image img { height: 250px; }
}

.sidebar-news { margin-top: 30px; background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 16px rgba(0,0,0,0.06); }
.sidebar-news .sidebar-header { padding: 20px 20px 0; }
.sidebar-news .sidebar-title { font-size: 1.1rem; color: #fff; margin: 0 0 8px 0; font-weight: 700; }
.sidebar-news .sidebar-title-line { width: 40px; height: 3px; background: #00f0ff; border-radius: 2px; margin-bottom: 16px; }
.news-slider { position: relative; }
.news-slide { display: none; animation: fadeSlide 0.5s ease; }
.news-slide.active { display: block; }
.news-image { width: 100%; height: 160px; overflow: hidden; }
.news-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.news-content { padding: 16px 20px 20px; }
.news-content h4 { font-size: 0.95rem; color: #14407b; margin: 0 0 8px 0; font-weight: 600; line-height: 1.3; }
.news-content p { font-size: 0.82rem; color: #666; line-height: 1.5; margin: 0; }
.news-dots { display: flex; justify-content: center; gap: 8px; padding: 0 20px 20px; }
.news-dots .dot { width: 8px; height: 8px; border-radius: 50%; background: #ddd; cursor: pointer; transition: background 0.3s ease; }
.news-dots .dot.active { background: #14407b; width: 24px; border-radius: 4px; }
@keyframes fadeSlide { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }



/* ==============================================
MAIN CONTENT AREA WITH STYLISH FEATURED IMAGE ============================================== */

.main-content-area { animation: fadeInUp 0.6s ease; }
.service-article { background: white; border-radius: 20px; overflow: hidden;  }
/* Stylish Featured Image */
.article-featured-image { position: relative; overflow: hidden; cursor: pointer; }
.featured-image-wrapper { position: relative; overflow: hidden; height: 400px; }
.featured-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); }
.featured-image-wrapper:hover .featured-img { transform: scale(1.05); }
.image-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgb(2 75 132 / 41%); display: flex; align-items: center; justify-content: center; opacity: 0; transition: all 0.4s ease; }
.featured-image-wrapper:hover .image-overlay { opacity: 1; }
.overlay-content { text-align: center; color: white; transform: translateY(20px); transition: transform 0.4s ease; }
.featured-image-wrapper:hover .overlay-content { transform: translateY(0); }
.overlay-content i { font-size: 40px; margin-bottom: 10px; display: block; }
.overlay-content span { font-size: 14px; letter-spacing: 1px; text-transform: uppercase; font-weight: 500; }
.image-caption { padding: 12px 20px; background: rgba(0, 0, 0, 0.05); font-size: 13px; color: var(--service-light-text); border-bottom: 1px solid var(--service-border); }
.image-caption i { margin-right: 8px; color: var(--service-primary); }
/* Article Content Styling */
.article-content { padding: 40px; font-size: 1.05rem; line-height: 1.8; color: var(--service-text); }
/* Headings */
.article-content h1, .article-content h2, .article-content h3, .article-content h4, .article-content h5, .article-content h6 { color: var(--service-dark); margin-top: 1.5em; margin-bottom: 0.5em; font-weight: 600; line-height: 1.3; }
.article-content h1 { font-size: 2.5rem; margin-top: 0; }
.article-content h2 { font-size: 2rem; position: relative; padding-bottom: 12px; }
.article-content h2:after { content: ''; position: absolute; bottom: 0; left: 0; width: 60px; height: 3px; background: var(--service-primary); border-radius: 2px; }
.article-content h3 { font-size: 1.5rem; }
.article-content h4 { font-size: 1.25rem; }
/* Paragraphs */
.article-content p { margin-bottom: 1.2em; }
.article-content p:first-child { font-size: 1.1rem; color: var(--service-primary); font-weight: 500; border-left: 3px solid var(--service-primary); padding-left: 20px; margin-bottom: 1.5em; }
/* Lists */
.article-content ul, .article-content ol { margin: 1.2em 0; padding-left: 1.5em; }
.article-content li { margin: 0.5em 0; position: relative; }
.article-content ul li { list-style-type: none; position: relative; padding-left: 1.5em; }
.article-content ul li:before { content: '▹'; position: absolute; left: 0; color: var(--service-primary); font-weight: bold; }
.article-content ol li { list-style-type: decimal; }
/* Blockquotes */
.article-content blockquote { margin: 1.5em 0; padding: 20px 30px; background: var(--service-gray); border-left: 4px solid var(--service-primary); font-style: italic; border-radius: 8px; }
.article-content blockquote p { margin-bottom: 0; }
/* Images within content */
.article-content img { max-width: 100%; height: auto; border-radius: 10px; margin: 1.5em 0; }
/* Tables */
.article-content table { width: 100%; margin: 1.5em 0; border-collapse: collapse; }
.article-content th, .article-content td { padding: 12px; border: 1px solid var(--service-border); text-align: left; }
.article-content th { background: var(--service-gray); font-weight: 600; }
/* Buttons within content */
.article-content .wp-block-button__link { background: var(--service-primary); color: white; padding: 12px 25px; border-radius: 30px; text-decoration: none; transition: all 0.3s ease; }
.article-content .wp-block-button__link:hover { background: #a01a17; transform: translateY(-2px); }
/* Service Additional Info */
.service-additional-info { margin: 30px 40px 40px; padding: 25px; background: linear-gradient(135deg, rgba(129, 20, 17, 0.05) 0%, rgba(129, 20, 17, 0.02) 100%); border-radius: 15px; border-left: 4px solid var(--service-primary); position: relative; }
.service-additional-info i { position: absolute; top: -15px; left: 20px; background: var(--service-primary); color: white; padding: 8px; border-radius: 50%; font-size: 14px; }




/* Hero Content */
.hero-content-wrapper { display: flex; align-items: center; gap: 80px; padding: 100px 0 30px; position: relative; z-index: 3; }
.hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(217,0,0,0.15); backdrop-filter: blur(10px); padding: 8px 20px; border-radius: 0; font-size: 0.85rem; font-weight: 500; color: #d90000; margin-bottom: 20px; border: 1px solid rgba(217,0,0,0.3); }
.kpy-sg-title { font-size: 3rem; font-weight: 800; color: #ffffff; margin: 0; line-height: 1.2; text-shadow: 0 2px 20px rgba(0,0,0,0.3); }






/** ==========================================================
Container CSS
===========================================================**/
@media (min-width: 1200px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1140px!important;
  }
}


/** ============================================================
Contact Form
=============================================================**/
.bakla-contact-main { background: var(--kpy-white); }
.bakla-contact-section { padding: 80px 0; background: #f8f9fa; }
.container { max-width: 1300px; margin: 0 auto; padding: 0 30px; }
.bakla-contact-grid { display: grid; grid-template-columns: 1fr 380px; gap: 40px; }
.bakla-form-card { background: var(--kpy-white); border-radius: 20px; padding: 40px; box-shadow: 0 10px 30px rgba(var(--kpy-base-rgb), 0.05); border: 1px solid rgba(var(--kpy-base-rgb), 0.1); }
.bakla-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
.bakla-form-group { margin-bottom: 20px; }
.bakla-label { display: block; font-size: 0.8rem; font-weight: 700; color: var(--kpy-base); margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.5px; }
.bakla-label span { color: var(--kpy-primary); }
.bakla-input { width: 100%; padding: 12px 16px; border: 2px solid rgba(var(--kpy-base-rgb), 0.15); border-radius: 10px; font-size: 0.95rem; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
.bakla-input:focus { outline: none; border-color: var(--kpy-primary); box-shadow: 0 0 0 3px rgba(var(--kpy-primary-rgb), 0.1); }
.bakla-select-wrap { position: relative; }
.bakla-select { appearance: none; cursor: pointer; }
.bakla-select-arrow { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--kpy-primary); pointer-events: none; font-size: 12px; }
.bakla-textarea { resize: vertical; min-height: 120px; }
.bakla-form-footer { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; margin-top: 10px; }
.bakla-submit-btn { display: inline-flex; align-items: center; gap: 10px; background: var(--kpy-primary); color: var(--kpy-white); border: none; padding: 14px 30px; border-radius: 50px; font-weight: 700; font-size: 0.9rem; cursor: pointer; transition: all 0.3s ease; font-family: var(--kpy-font-body, "montserrat", sans-serif); }
.bakla-submit-btn:hover { background: var(--kpy-secondary); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(var(--kpy-primary-rgb), 0.3); }
.bakla-form-note { display: flex; align-items: center; gap: 8px; font-size: 0.75rem; color: #888; margin: 0; }
.bakla-success-popup { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); background: var(--kpy-white); border-radius: 20px; padding: 40px; text-align: center; box-shadow: 0 20px 60px rgba(var(--kpy-base-rgb), 0.2); z-index: 1000; max-width: 400px; width: 90%; }
.bakla-success-icon { width: 60px; height: 60px; margin: 0 auto 20px; }
.bakla-success-content h3 { font-size: 1.5rem; color: var(--kpy-base); margin-bottom: 10px; }
.bakla-success-content p { color: #666; margin-bottom: 25px; }
.bakla-close-popup { background: var(--kpy-primary); color: var(--kpy-white); border: none; padding: 10px 25px; border-radius: 50px; cursor: pointer; font-weight: 600; }
.bakla-info-card, .bakla-hours-card { background: var(--kpy-white); border-radius: 20px; padding: 30px; box-shadow: 0 10px 30px rgba(var(--kpy-base-rgb), 0.05); border: 1px solid rgba(var(--kpy-base-rgb), 0.1); margin-bottom: 25px; }
.bakla-info-header, .bakla-hours-header { display: flex; align-items: center; gap: 12px; margin-bottom: 25px; padding-bottom: 15px; border-bottom: 2px solid rgba(var(--kpy-base-rgb), 0.1); }
.bakla-info-header i, .bakla-hours-header i { font-size: 24px; color: var(--kpy-primary); }
.bakla-info-header h3, .bakla-hours-header h3 { font-size: 1.3rem; font-weight: 700; color: var(--kpy-base); margin: 0; }
.bakla-info-items { display: flex; flex-direction: column; gap: 20px; }
.bakla-info-item { display: flex; align-items: flex-start; gap: 15px; }
.bakla-info-icon { width: 45px; height: 45px; background: rgba(var(--kpy-primary-rgb), 0.1); border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.bakla-info-icon i { font-size: 20px; color: var(--kpy-primary); }
.bakla-info-details { flex: 1; }
.bakla-info-label { display: block; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; color: #999; letter-spacing: 1px; margin-bottom: 5px; }
.bakla-info-value { display: block; color: var(--kpy-base); text-decoration: none; font-size: 0.9rem; font-weight: 500; margin: 2px 0; }
.bakla-info-value:hover { color: var(--kpy-primary); }
.bakla-map-wrapper { margin-top: 50px; }
.bakla-map-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; flex-wrap: wrap; gap: 15px; }
.bakla-map-title { display: flex; align-items: center; gap: 10px; font-size: 1rem; font-weight: 700; color: var(--kpy-base); }
.bakla-map-title i { color: var(--kpy-primary); font-size: 20px; }
.bakla-directions-btn { display: inline-flex; align-items: center; gap: 8px; background: var(--kpy-primary); color: var(--kpy-white); padding: 10px 20px; border-radius: 50px; text-decoration: none; font-size: 0.85rem; font-weight: 600; transition: all 0.3s ease; }
.bakla-directions-btn:hover { background: var(--kpy-secondary); transform: translateY(-2px); }
.bakla-map-frame { background: var(--kpy-white); border-radius: 20px; overflow: hidden; border: 1px solid rgba(var(--kpy-base-rgb), 0.1); }
.bakla-map-pin { background: var(--kpy-primary); color: var(--kpy-white); padding: 12px 20px; font-size: 0.85rem; display: flex; align-items: center; gap: 10px; }
@media (max-width: 992px) {
.bakla-contact-grid { grid-template-columns: 1fr; gap: 30px; }
.bakla-section-title { font-size: 2rem; }
}
@media (max-width: 768px) {
.container { padding: 0 20px; }
.bakla-contact-section { padding: 50px 0; }
.bakla-form-card { padding: 25px; }
.bakla-form-row { grid-template-columns: 1fr; gap: 0; }
.bakla-map-header { flex-direction: column; align-items: flex-start; }
}




    
/** ============================================================
Error 404 Page Not Found CSS
=============================================================**/
.Error_404 {overflow: hidden; padding:80px 0 120px;}
.Error_404 .error_pic {width: 35%; float: left; text-align: center;}
.Error_404 .error_pic i {color: #F72331; font-size: 250px; line-height: 250px; margin-right: .2em; text-align: center; font-variant: normal; text-transform: none; margin-left: .2em;}
.Error_404 .error_desk {width: 65%; float: left; padding-top: 40px;}
.Error_404 .error_desk h2 {font-size: 55px; line-height: 60px;color: #F72331;font-weight: 500;}
.Error_404 .error_desk h4 {font-size: 28px; line-height: 30px;}
.Error_404 .error_desk p .check {line-height: 45px; font-size: 16px;}
.Error_404 .error_desk p .button {padding: 13px 20px; margin: 0; border-radius: 5px; display: inline; margin-left: 10px; box-shadow: inset 0 0 0 0;}
.Error_404 .error_desk p .button:hover{color:#f9f9f9; text-decoration: none; background: #F72331;}
a.button, a.tp-button {transition:.2s all; background: transparent; color: #F72331; border:solid 2px;}
.wp-block-ub-tabbed-content-tab-title strong {font-weight:500!important;}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

/* Mobile styles (up to 767px)@media only screen and (max-width: 768px */
@media only screen and (max-width: 600px)  {
    .menu-section .logo {object-fit: contain !important;height: 70px;}
    .menu-section .navbar-nav {height: 100%;display: flex;align-items: flex-start;gap: 5px;}
    .menu-section .navbar-nav .nav-link {color: var(--kpy-var(--kpy-primary)) !important;font-family: var(--kpy-font);font-weight: 400;text-transform: uppercase;letter-spacing: 1px;font-size: 16px;height: 40px;display: flex;align-items: center;position: relative;transition: all 0.3s ease;padding: 0 0.5rem !important;}
    .menu-section {height: 80px;position: relative;top: 0;z-index: 1000;background: #f7f7f7;height: 80px;display: flex;align-items: center;transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);box-shadow: 0 2px 10px rgba(0, 0, 0, 0);}
    


}
/* Tablet styles (768px to 1024px) */
@media only screen and (max-width: 1024px) and (min-width: 768px) {


}

/* Large desktop styles (1140px and up) */
@media only screen and (min-width: 1140px) {
  
}

/* Extra large desktop styles (1440px and up) */
@media only screen and (min-width: 1440px) {

}

/* High DPI screens */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min-resolution: 144dpi) {

}

/* Admin Styles */
.post-type-newsletter_sub .wp-list-table th.column-subscribed_date,
.post-type-newsletter_sub .wp-list-table th.column-subscribed_ip {
    width: 15%;
}

.post-type-newsletter_sub .wp-list-table .column-title {
    width: 40%;
}

/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/
.wp-block-columns { display: flex; flex-wrap: wrap; gap: 60px; width: 100%; margin-left: auto; margin-right: auto; box-sizing: border-box; }
.wp-block-column { flex: 1 1 0; min-width: 0; box-sizing: border-box; }
.wp-block-columns.is-vertically-aligned-center { align-items: center; }
.wp-block-columns.is-vertically-aligned-top { align-items: flex-start; }
.wp-block-columns.is-vertically-aligned-bottom { align-items: flex-end; }
@media (max-width: 781px) { .wp-block-columns { flex-direction: column; } }
.wp-block-group.document .wp-block-columns.wp-block-columns-is-layout-flex {display:flex;flex-wrap:nowrap;gap:60px;width:100%;box-sizing:border-box;}
.wp-block-group.document .wp-block-columns.wp-block-columns-is-layout-flex > .wp-block-column {flex:0 0 auto;min-width:0;box-sizing:border-box;}
.wp-block-group.document .dataTables_wrapper {width:100%;max-width:100%;overflow-x:auto;}
@media (max-width:781px){.wp-block-group.document .wp-block-columns.wp-block-columns-is-layout-flex{flex-direction:column;}}


