﻿ :root {
     --primary: #F26727;
     --dark: #1a1a2e;
     --light: #ffffff;
 }

 nav {
     background: white;
     backdrop-filter: blur(0px);
     -webkit-backdrop-filter: blur(0px);
     transition: all 0.5s ease;
 }

 nav.scrolled {
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
     padding-top: 12px !important;
     padding-bottom: 12px !important;
 }

 nav.scrolled .top-sec {
     display: none;
 }

 nav.scrolled .logo {
     height: 55px !important;
 }

 /* mobile menu */
 .mobile-menu {
     position: fixed;
     top: 0;
     left: -100%;
     width: 85%;
     max-width: 380px;
     height: 100vh;
     background: rgba(26, 26, 46, 0.98);
     backdrop-filter: blur(20px);
     -webkit-backdrop-filter: blur(20px);
     z-index: 9999;
     transition: left 0.4s cubic-bezier(0.23, 1, 0.32, 1);
     padding: 2rem 1.5rem;
     box-shadow: 2px 0 30px rgba(0, 0, 0, 0.3);
     overflow-y: auto;
 }

 .mobile-menu.active {
     left: 0;
 }

 .menu-overlay {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: rgba(0, 0, 0, 0.5);
     z-index: 9998;
     opacity: 0;
     visibility: hidden;
     transition: all 0.3s ease;
     backdrop-filter: blur(3px);
 }

 .menu-overlay.active {
     opacity: 1;
     visibility: visible;
 }

 .mobile-dropdown-btn.active i {
     transform: rotate(180deg);
 }

 .mobile-dropdown-content.show {
     display: block;
     animation: slideDown 0.3s ease;
 }

 @keyframes slideDown {
     from {
         opacity: 0;
         transform: translateY(-10px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .gradient-text {
     background: linear-gradient(135deg, #F26727 0%, #ff8a50 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 .before-after-container {
     position: relative;
     width: 100%;
     height: 400px;
     overflow: hidden;
     border-radius: 20px;
     box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
 }

 @media (min-width: 768px) {
     .before-after-container {
         height: 500px;
     }
 }

 .before-image,
 .after-image {
     position: absolute;
     top: 0;
     width: 100%;
     height: 100%;
     background-size: cover;
     background-position: center;
 }

 .after-image {
     width: 50%;
 }

 .slider-handle {
     position: absolute;
     left: 50%;
     top: 0;
     height: 100%;
     width: 4px;
     background: #F26727;
     cursor: ew-resize;
     transform: translateX(-50%);
     z-index: 20;
 }

 .slider-handle::before {
     content: '';
     position: absolute;
     left: 50%;
     top: 50%;
     transform: translate(-50%, -50%);
     width: 50px;
     height: 50px;
     background: #F26727;
     border-radius: 50%;
     box-shadow: 0 0 20px rgba(242, 103, 39, 0.5);
 }

 .slider-handle::after {
     content: '↔';
     position: absolute;
     left: 50%;
     top: 50%;
     transform: translate(-50%, -50%);
     color: white;
     font-size: 18px;
     font-weight: bold;
 }

 .process-step {
     position: relative;
 }

 .process-step::before {
     content: '';
     position: absolute;
     top: 40px;
     left: -20px;
     width: 40px;
     height: 2px;
     background: var(--primary);
     opacity: 0.3;
 }

 .process-step:first-child::before {
     display: none;
 }

 @media (max-width: 767px) {
     .process-step::before {
         display: none;
     }
 }

 .testimonialSwiper {
     padding-bottom: 20px;
 }

 .testimonialSwiper .swiper-slide {
     opacity: 0 !important;
     transition: opacity 0.6s ease !important;
     height: auto !important;
     padding: 1.5rem 1rem 1rem !important;
 }

 @media (max-width: 639px) {
     .testimonialSwiper .swiper-slide {
         padding: 0.5rem !important;
     }
 }

 .testimonialSwiper .swiper-slide-active {
     opacity: 1 !important;
 }

 .testimonial-pagination {
     display: flex;
     justify-content: flex-end;
     gap: 8px;
     padding-right: 80px;
     bottom: 80px !important;
 }

 .testimonial-pagination .swiper-pagination-bullet {
     width: 12px !important;
     height: 12px !important;
     background: #d1d5db !important;
     opacity: 1 !important;
     transition: all 0.3s ease !important;
     margin: 0 4px !important;
 }

 .testimonial-pagination .swiper-pagination-bullet-active {
     width: 32px !important;
     background: #F26727 !important;
     border-radius: 20px !important;
 }

 .faq-icon.rotate-45 {
     transform: rotate(45deg);
 }

 @media (max-width: 1024px) {
     .lg\:grid-cols-2 {
         gap: 2rem;
     }
 }

 @media (max-width: 1023px) {
     .top-sec {
         display: none !important;
     }
 }

 /* anchor offset for fixed header */
 .scroll-offset {
     scroll-margin-top: 100px;
 }



 /* Sidebar Card */
 #service-sidebar {
     position: sticky;
     top: 110px;
 }

 .sidebar-card {
     background: linear-gradient(145deg, #e55d1d 0%, #dd6e36 100%);
     border-radius: 24px;
     overflow: hidden;

     color: white;
 }

 /* Service Sections */
 .service-section {
     margin-bottom: 0.75rem;
 }

 .service-main {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 0.9rem 1rem;
     background: rgba(255, 255, 255, 0.1);
     border-radius: 12px;
     font-weight: 600;
     color: white;
     margin-bottom: 0.25rem;
     transition: all 0.3s;
     backdrop-filter: blur(5px);
     border: 1px solid rgba(255, 255, 255, 0.1);
     text-decoration: none;
 }

 .service-main i {
     color: rgba(255, 255, 255, 0.8);
     transition: transform 0.3s;
 }

 .service-main:hover {
     background: rgba(255, 255, 255, 0.2);
     border-color: rgba(255, 255, 255, 0.3);
 }

 .service-main:hover i {
     transform: translateX(5px);
 }

 /* Service Submenu Container */
 .service-sub-container {
     padding: 12px;
     border-radius: 12px;
     transition: all 0.3s ease;
     display: none;
     /* Hidden by default */
 }

 .service-sub-container.active,
 .service-sub-container.show,
 .service-sub-container[style*="display: block"] {
     display: block;
 }

 /* Service Submenu Items */
 .service-sub {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 0.7rem 1rem 0.7rem 1.2rem;
     color: rgba(255, 255, 255, 0.8);
     font-size: 0.95rem;
     border-bottom: 1px solid rgba(255, 255, 255, 0.1);
     transition: all 0.3s;
 }

 .service-sub:last-child {
     border-bottom: none;
 }

 .service-sub:hover {
     color: white;
     background: rgba(255, 255, 255, 0.1);
     padding-left: 1.5rem;
 }

 .service-sub i {
     opacity: 0;
     transition: all 0.3s;
     color: white;
 }

 .service-sub:hover i {
     opacity: 1;
     transform: translateX(5px);
 }

 .service-sub a {
     display: flex;
     align-items: center;
     justify-content: space-between;
     width: 100%;
     color: inherit;
     text-decoration: none;
 }

 /* Active Service Item */
 .active-service {
     background: rgba(255, 255, 255, 0.15);
     color: white;
     border-left: 4px solid white;
     font-weight: 500;
 }

 .service-main.active-service,
 .service-sub.active-service {
     background: rgba(255, 255, 255, 0.2) !important;
     border-left: 4px solid white !important;
     font-weight: 600 !important;
 }

 .service-sub.active-service a {
     color: white;
     font-weight: 600;
 }

 .service-sub.active-service i {
     opacity: 1 !important;
 }

 /* Contact Items */
 .contact-item {
     display: flex;
     align-items: center;
     gap: 1rem;
     padding: 1rem;
     background: rgba(255, 255, 255, 0.1);
     border-radius: 16px;
     backdrop-filter: blur(5px);
     border: 1px solid rgba(255, 255, 255, 0.15);
     transition: all 0.3s;
     text-decoration: none;
     color: white;
 }

 .contact-item:hover {
     background: rgba(255, 255, 255, 0.2);
     transform: translateX(5px);
 }

 .contact-icon {
     width: 44px;
     height: 44px;
     background: rgba(255, 255, 255, 0.2);
     border-radius: 14px;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .contact-icon i {
     font-size: 1.5rem;
     color: white;
 }

 /* Rating Badge */
 .rating-badge-sidebar {
     background: rgba(255, 255, 255, 0.1);
     backdrop-filter: blur(10px);
     border: 1px solid rgba(255, 255, 255, 0.2);
     border-radius: 20px;
     padding: 1.2rem;
     display: flex;
     align-items: center;
     gap: 1rem;
 }

 /* Trust Grid */
 .trust-grid-sidebar {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 0.5rem;
 }

 .trust-item-sidebar {
     background: rgba(255, 255, 255, 0.1);
     backdrop-filter: blur(5px);
     border: 1px solid rgba(255, 255, 255, 0.15);
     border-radius: 16px;
     padding: 1rem 0.5rem;
     text-align: center;
     transition: all 0.3s;
 }

 .trust-item-sidebar:hover {
     background: rgba(255, 255, 255, 0.2);
     transform: translateY(-3px);
 }

 .trust-item-sidebar i {
     font-size: 1.5rem;
     color: white;
     margin-bottom: 0.5rem;
 }

 .trust-item-sidebar p {
     color: rgba(255, 255, 255, 0.9);
     font-size: 0.75rem;
     font-weight: 500;
 }

 /* CTA Button in Sidebar */
 .sidebar-card .bg-white {
     transition: all 0.3s ease;
 }

 .sidebar-card .bg-white:hover {
     background: #f8f9fa !important;
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2) !important;
 }

 /* Responsive adjustments */
 @media (max-width: 1024px) {
     .sidebar-card {
         position: static;
         top: auto;
         margin-top: 2rem;
     }

     .trust-grid-sidebar {
         gap: 0.25rem;
     }

     .trust-item-sidebar {
         padding: 0.75rem 0.25rem;
     }
 }

 @media (max-width: 640px) {
     .rating-badge-sidebar {
         flex-direction: column;
         text-align: center;
     }

     .contact-item {
         padding: 0.75rem;
     }

     .contact-icon {
         width: 36px;
         height: 36px;
     }

     .contact-icon i {
         font-size: 1.2rem;
     }
 }

 /* Animation for submenu */
 @keyframes slideDown {
     from {
         opacity: 0;
         transform: translateY(-10px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .service-sub-container[style*="display: block"] {
     animation: slideDown 0.3s ease forwards;
 }