
        :root {
            --color-lightest: #F7F7F7;
            --color-light: #EAEAEA;
            --color-medium: #CCCCCC;
            --color-dark-gray: #999999;
            --color-dark: #333333;
            --color-white: #FFFFFF;
        }
        
        * {
            font-family: 'Poppins', sans-serif;
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            overflow-x: hidden;
            color: var(--color-dark);
            background-color: var(--color-white);
            line-height: 1.75;
        }
        
        /* Navbar Styles */
        .navbar {
            background: transparent !important;
            padding: 1.1rem 0;
            transition: all 0.4s ease;
            position: relative;
            z-index: 1000;
        }
        
        .navbar.scrolled {
            background: rgba(255, 255, 255, 0.97) !important;
            box-shadow: 0 3px 20px rgba(51, 51, 51, 0.1);
            padding: 0.75rem 0;
        }
        
        .navbar-brand {
            font-weight: 800;
            font-size: 1.6rem;
            color: var(--color-dark) !important;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        
        .navbar-brand i {
            font-size: 1.85rem;
            color: var(--color-dark);
        }
        
        .navbar-brand span {
            color: var(--color-dark);
        }
        
        .nav-link {
            font-weight: 500;
            color: var(--color-dark) !important;
            margin: 0 0.55rem;
            position: relative;
            transition: all 0.3s;
            font-size: 0.97rem;
        }
        
        .nav-link:hover, .nav-link.active {
            color: var(--color-dark) !important;
            font-weight: 600;
        }
        
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 50%;
            transform: translateX(-50%) scaleX(0);
            width: 65%;
            height: 2px;
            background: var(--color-dark);
            border-radius: 2px;
            transition: transform 0.3s ease;
        }
        
        .nav-link:hover::after, .nav-link.active::after {
            transform: translateX(-50%) scaleX(1);
        }
        
        .btn-cta {
            background: var(--color-dark);
            color: var(--color-white) !important;
            border: 2px solid var(--color-dark);
            padding: 0.6rem 1.75rem;
            border-radius: 45px;
            font-weight: 700;
            font-size: 0.96rem;
            transition: all 0.35s;
        }
        
        .btn-cta:hover {
            background: var(--color-white);
            color: var(--color-dark) !important;
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(51, 51, 51, 0.25);
        }

        .nav-item{
            margin-left:30px !important;
        }
        
        /* Hero Section */
        .hero-section {
            background: linear-gradient(135deg, rgba(51,51,51,0.88), rgba(153,153,153,0.82)), url('https://planner5d.com/blog/content/images/2024/04/home-renovation-costs.jpg');
            background-size: cover;
            background-position: center;
            min-height: 92vh;
            display: flex;
            align-items: center;
            position: relative;
            overflow: hidden;
            padding: 2rem 0;
        }
        
        .hero-section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(circle at 30% 70%, rgba(247,247,247,0.08) 0%, transparent 55%);
        }
        
        .hero-content {
            position: relative;
            z-index: 2;
            padding: 1.5rem 0;
        }
        
        .hero-title {
            font-size: 5rem;
            font-weight: 800;
            color: var(--color-white);
            line-height: 1.14;
            margin-bottom: 1.7rem;
            text-shadow: 0 2px 12px rgba(0,0,0,0.3);
        }
        
        .hero-title span {
            display: block;
            color: var(--color-lightest);
        }
        
        .hero-subtitle {
            font-size: 1.38rem;
            color: rgba(255,255,255,0.96);
            margin-bottom: 2.3rem;
            font-weight: 400;
            max-width: 600px;
        }
        
        .btn-hero {
            background: var(--color-white);
            color: var(--color-dark);
            padding: 1.1rem 3rem;
            border-radius: 48px;
            font-weight: 700;
            font-size: 1.15rem;
            border: 2px solid var(--color-white);
            transition: all 0.38s;
            box-shadow: 0 12px 35px rgba(0, 0, 0, 0.28);
            display: inline-flex;
            align-items: center;
            gap: 0.65rem;
        }
        
        .btn-hero:hover {
            background: var(--color-dark);
            color: var(--color-white);
            transform: translateY(-4px);
            box-shadow: 0 18px 45px rgba(0, 0, 0, 0.4);
        }
        
        .hero-badges {
            display: flex;
            gap: 1.7rem;
            margin-top: 2.3rem;
            flex-wrap: wrap;
        }
        
        .hero-badge {
            display: flex;
            align-items: center;
            gap: 0.55rem;
            color: rgba(255,255,255,0.97);
            font-weight: 500;
            font-size: 1rem;
        }
        
        .hero-badge i {
            color: var(--color-lightest);
            font-size: 1.25rem;
        }
        
        /* Section Headers */
        .section-header {
            text-align: center;
            margin-bottom: 4.3rem;
        }
        
        .section-title {
            font-weight: 700;
            font-size: 2.45rem;
            color: var(--color-dark);
            position: relative;
            display: inline-block;
            margin-bottom: 1.35rem;
        }
        
        .section-title::after {
            content: '';
            position: absolute;
            bottom: -13px;
            left: 50%;
            transform: translateX(-50%);
            width: 88px;
            height: 3px;
            background: var(--color-dark);
            border-radius: 2px;
        }
        
        .section-subtitle {
            color: var(--color-dark-gray);
            font-size: 1.16rem;
            max-width: 670px;
            margin: 0 auto;
            font-weight: 400;
        }
        
        /* About Section */
        .about-img {
            border-radius: 24px;
            box-shadow: 0 26px 70px rgba(51, 51, 51, 0.16);
            transition: transform 0.45s ease, box-shadow 0.45s ease;
            width: 100%;
            height: 470px;
            object-fit: cover;
            border: 4px solid var(--color-white);
        }
        
        .about-img:hover {
            transform: translateY(-8px);
            box-shadow: 0 36px 80px rgba(51, 51, 51, 0.24);
        }
        
        .about-content p {
            color: var(--color-dark-gray);
            margin-bottom: 1.15rem;
            font-size: 1.05rem;
            line-height: 1.88;
        }
        
        .btn-read-more {
            background: var(--color-dark);
            color: var(--color-white);
            border: 2px solid var(--color-dark);
            padding: 0.78rem 2.1rem;
            border-radius: 30px;
            font-weight: 600;
            transition: all 0.35s;
            display: inline-flex;
            align-items: center;
            gap: 0.55rem;
            margin-top: 1.25rem;
        }
        
        .btn-read-more:hover {
            background: var(--color-white);
            color: var(--color-dark);
            transform: translateY(-3px);
            box-shadow: 0 9px 26px rgba(51, 51, 51, 0.32);
        }
        
        /* Counter Section */
        .counter-section {
            background: linear-gradient(135deg, var(--color-dark), #444444);
            padding: 5.4rem 0;
            position: relative;
            overflow: hidden;
        }
        
        .counter-section::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(247,247,247,0.07) 1px, transparent 1px);
            background-size: 62px 62px;
            opacity: 0.7;
        }
        
        .counter-item {
            text-align: center;
            padding: 2.1rem 1.5rem;
            position: relative;
            z-index: 2;
        }
        
        .counter-number {
            font-size: 3.7rem;
            font-weight: 800;
            display: block;
            margin-bottom: 0.45rem;
            color: var(--color-lightest);
            line-height: 1;
        }
        
        .counter-label {
            font-size: 1.16rem;
            color: rgba(255,255,255,0.91);
            font-weight: 500;
        }
        
        /* Vision & Mission */
        .vision-mission-card {
            background: var(--color-lightest);
            border-radius: 25px;
            padding: 3.1rem;
            height: 100%;
            border: 1px solid var(--color-light);
            box-shadow: 0 11px 42px rgba(51, 51, 51, 0.07);
            transition: all 0.45s ease;
            position: relative;
            overflow: hidden;
        }
        
        .vision-mission-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: var(--color-dark);
        }
        
        .vision-mission-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 23px 58px rgba(51, 51, 51, 0.18);
        }
        
        .vm-icon {
            width: 82px;
            height: 82px;
            background: var(--color-dark);
            border-radius: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color-white);
            font-size: 2rem;
            margin-bottom: 1.9rem;
            box-shadow: 0 10px 32px rgba(51, 51, 51, 0.28);
        }
        
        .vm-title {
            font-weight: 700;
            font-size: 1.62rem;
            color: var(--color-dark);
            margin-bottom: 1.25rem;
        }
        
        .vm-desc {
            color: var(--color-dark-gray);
            line-height: 1.96;
            font-size: 1.05rem;
        }
        
        /* Why Choose Us */
        .feature-card {
            background: var(--color-white);
            padding: 2.35rem;
            border-radius: 21px;
            box-shadow: 0 9px 33px rgba(51,51,51,0.08);
            transition: all 0.4s ease;
            height: 100%;
            border: 1px solid var(--color-light);
            position: relative;
            overflow: hidden;
        }
        
        .feature-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: var(--color-dark);
            transform: scaleX(0);
            transition: transform 0.4s ease;
        }
        
        .feature-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 20px 52px rgba(51, 51, 51, 0.2);
        }
        
        .feature-card:hover::before {
            transform: scaleX(1);
        }
        
        .feature-icon {
            width: 78px;
            height: 78px;
            background: var(--color-lightest);
            border-radius: 19px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color-dark);
            font-size: 2rem;
            margin-bottom: 1.75rem;
            border: 2px solid var(--color-medium);
        }
        
        .feature-title {
            font-weight: 700;
            font-size: 1.38rem;
            color: var(--color-dark);
            margin-bottom: 1.05rem;
        }
        
        .feature-desc {
            color: var(--color-dark-gray);
            line-height: 1.92;
            font-size: 1.01rem;
        }
        
        /* Work Process */
        .process-section {
            background: var(--color-lightest);
            padding: 6.2rem 0;
        }
        
        .process-card {
            background: var(--color-white);
            border-radius: 23px;
            padding: 2.45rem 1.9rem;
            text-align: center;
            box-shadow: 0 11px 38px rgba(51,51,51,0.09);
            transition: all 0.4s ease;
            position: relative;
            height: 100%;
            border: 1px solid var(--color-light);
        }
        
        .process-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 19px 53px rgba(51, 51, 51, 0.19);
        }
        
        .process-number {
            width: 63px;
            height: 63px;
            background: var(--color-dark);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color-white);
            font-weight: 800;
            font-size: 1.75rem;
            margin: 0 auto 1.55rem;
            box-shadow: 0 9px 28px rgba(51, 51, 51, 0.32);
        }
        
        .process-title {
            font-weight: 700;
            font-size: 1.33rem;
            color: var(--color-dark);
            margin-bottom: 0.95rem;
        }
        
        .process-desc {
            color: var(--color-dark-gray);
            font-size: 0.99rem;
            line-height: 1.87;
        }
        
        .process-connector {
            position: absolute;
            top: 48px;
            right: -28px;
            width: 56px;
            height: 2px;
            background: var(--color-medium);
            display: none;
        }
        
        @media (min-width: 992px) {
            .process-connector {
                display: block;
            }
            .process-card:last-child .process-connector {
                display: none;
            }
        }
        
        /* Services Cards */
        .service-card {
            background: var(--color-white);
            border-radius: 23px;
            overflow: hidden;
            box-shadow: 0 13px 38px rgba(51,51,51,0.1);
            transition: all 0.45s ease;
            height: 100%;
            border: none;
            display: flex;
            flex-direction: column;
        }
        
        .service-card:hover {
            transform: translateY(-12px);
            box-shadow: 0 26px 62px rgba(51, 51, 51, 0.23);
        }
        
        .service-img {
            height: 248px;
            object-fit: cover;
            width: 100%;
            transition: transform 0.45s ease;
        }
        
        .service-card:hover .service-img {
            transform: scale(1.05);
        }
        
        .service-content {
            padding: 2.05rem;
            background: var(--color-lightest);
            flex-grow: 1;
            display: flex;
            flex-direction: column;
        }
        
        .service-title {
            font-weight: 700;
            font-size: 1.43rem;
            margin-bottom: 1.08rem;
            color: var(--color-dark);
            line-height: 1.46;
        }
        
        .service-desc {
            color: var(--color-dark-gray);
            line-height: 1.94;
            margin-bottom: 1.68rem;
            flex-grow: 1;
            font-size: 1.01rem;
        }
        
        .btn-service {
            background: var(--color-dark);
            color: var(--color-white);
            border: 2px solid var(--color-dark);
            padding: 0.73rem 1.85rem;
            border-radius: 29px;
            font-weight: 600;
            transition: all 0.35s;
            align-self: flex-start;
            display: inline-flex;
            align-items: center;
            gap: 0.48rem;
        }
        
        .btn-service:hover {
            background: var(--color-white);
            color: var(--color-dark);
            transform: translateY(-3px);
            box-shadow: 0 9px 25px rgba(51, 51, 51, 0.36);
        }
        
        /* Booking Form */
        .booking-section {
            background: linear-gradient(135deg, rgba(247,247,247,0.95), rgba(234,234,234,0.92));
            padding: 6.1rem 0;
        }
        
        .booking-card {
            background: var(--color-white);
            padding: 3.35rem;
            border-radius: 27px;
            box-shadow: 0 23px 68px rgba(51,51,51,0.11);
            border: 1px solid var(--color-light);
        }
        
        .form-control, .form-select {
            padding: 0.92rem 1.25rem;
            border-radius: 13px;
            border: 2px solid var(--color-medium);
            background: var(--color-lightest);
            transition: all 0.32s;
            font-size: 0.99rem;
            color: var(--color-dark);
        }
        
        .form-control:focus, .form-select:focus {
            border-color: var(--color-dark);
            background: var(--color-white);
            box-shadow: 0 0 0 4px rgba(51, 51, 51, 0.14);
        }
        
        .form-label {
            font-weight: 600;
            color: var(--color-dark);
            margin-bottom: 0.65rem;
            font-size: 0.98rem;
        }
        
        .btn-book {
            background: var(--color-dark);
            color: var(--color-white);
            border: 2px solid var(--color-dark);
            padding: 0.98rem 2.45rem;
            border-radius: 48px;
            font-weight: 700;
            font-size: 1.08rem;
            width: 100%;
            transition: all 0.36s;
            box-shadow: 0 9px 28px rgba(51, 51, 51, 0.31);
        }
        
        .btn-book:hover {
            background: var(--color-white);
            color: var(--color-dark);
            transform: translateY(-3px);
            box-shadow: 0 14px 38px rgba(51, 51, 51, 0.42);
        }
        
        /* Reviews */
        .review-card {
            background: var(--color-white);
            padding: 2.35rem;
            border-radius: 21px;
            box-shadow: 0 9px 33px rgba(51,51,51,0.08);
            margin: 1rem;
            text-align: center;
            transition: all 0.4s ease;
            border: 1px solid var(--color-light);
            height: 100%;
        }
        
        .review-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 20px 52px rgba(51, 51, 51, 0.19);
        }
        
        .review-stars {
            color: #FFB300;
            margin-bottom: 1.25rem;
            font-size: 1.13rem;
        }
        
        .review-text {
            font-style: italic;
            color: var(--color-dark-gray);
            margin-bottom: 1.65rem;
            line-height: 1.96;
            font-size: 1.03rem;
        }
        
        .reviewer-avatar {
            width: 63px;
            height: 63px;
            border-radius: 50%;
            background: var(--color-dark);
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color-white);
            font-weight: 700;
            font-size: 1.38rem;
            margin: 0 auto 1.05rem;
            box-shadow: 0 7px 23px rgba(51, 51, 51, 0.27);
        }
        
        .reviewer-name {
            font-weight: 700;
            color: var(--color-dark);
            font-size: 1.13rem;
        }
        
        .reviewer-location {
            color: var(--color-dark-gray);
            font-size: 0.97rem;
        }
        
        /* FAQ Section */
        .accordion-item {
            border: none;
            margin-bottom: 1.25rem;
            border-radius: 17px !important;
            overflow: hidden;
            box-shadow: 0 4px 20px rgba(51,51,51,0.07);
            background: var(--color-white);
            border: 1px solid var(--color-light);
        }
        
        .accordion-button {
            background: var(--color-lightest);
            font-weight: 600;
            color: var(--color-dark);
            padding: 1.45rem 1.95rem;
            font-size: 1.09rem;
            border: none !important;
        }
        
        .accordion-button:not(.collapsed) {
            background: var(--color-dark);
            color: var(--color-white);
            box-shadow: none;
        }
        
        .accordion-button:focus {
            box-shadow: none;
        }
        
        .accordion-button::after {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333333'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
        }
        
        .accordion-button:not(.collapsed)::after {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
            transform: rotate(-180deg);
        }
        
        .accordion-body {
            padding: 1.45rem 1.95rem;
            color: var(--color-dark-gray);
            line-height: 2.02;
            font-size: 1.04rem;
            background: var(--color-lightest);
        }
        
        /* CTA Section */
        .cta-section {
            background: linear-gradient(135deg, var(--color-dark), #444444);
            padding: 6.4rem 0;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        
        .cta-section::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(247,247,247,0.11) 1px, transparent 1px);
            background-size: 58px 58px;
            opacity: 0.48;
        }
        
        .cta-content {
            position: relative;
            z-index: 2;
        }
        
        .cta-title {
            font-size: 2.85rem;
            font-weight: 700;
            color: var(--color-white);
            margin-bottom: 1.28rem;
            line-height: 1.29;
        }
        
        .cta-subtitle {
            color: rgba(255,255,255,0.93);
            font-size: 1.26rem;
            margin-bottom: 2.65rem;
            max-width: 710px;
            margin-left: auto;
            margin-right: auto;
            font-weight: 400;
        }
        
        .btn-cta-white {
            background: var(--color-white);
            color: var(--color-dark);
            padding: 1.12rem 3.35rem;
            border-radius: 48px;
            font-weight: 700;
            font-size: 1.16rem;
            border: 2px solid var(--color-white);
            transition: all 0.4s;
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            box-shadow: 0 13px 38px rgba(0,0,0,0.27);
        }
        
        .btn-cta-white:hover {
            background: var(--color-dark);
            color: var(--color-white);
            transform: translateY(-4px);
            box-shadow: 0 20px 52px rgba(0,0,0,0.38);
        }
        
        /* Contact Section */
        .contact-card {
            background: var(--color-white);
            padding: 2.35rem;
            border-radius: 21px;
            margin-bottom: 1.95rem;
            text-align: center;
            transition: all 0.4s ease;
            border: 1px solid var(--color-light);
            box-shadow: 0 9px 30px rgba(51,51,51,0.08);
        }
        
        .contact-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 20px 52px rgba(51, 51, 51, 0.2);
        }
        
        .contact-icon {
            font-size: 2.9rem;
            color: var(--color-dark);
            margin-bottom: 1.25rem;
            display: block;
        }
        
        .contact-title {
            font-weight: 700;
            color: var(--color-dark);
            margin-bottom: 0.88rem;
            font-size: 1.28rem;
        }
        
        .contact-detail {
            color: var(--color-dark-gray);
            margin: 0;
            line-height: 1.92;
            font-size: 1.05rem;
        }
        
        .contact-form-card {
            background: var(--color-white);
            padding: 3.35rem;
            border-radius: 27px;
            box-shadow: 0 24px 68px rgba(51,51,51,0.12);
            border: 1px solid var(--color-light);
        }
        
        .form-message {
            padding: 0.98rem 1.35rem;
            border-radius: 11px;
            margin-bottom: 1.45rem;
            display: none;
            font-weight: 500;
            font-size: 0.98rem;
        }
        
        .form-message.success {
            background: rgba(76, 175, 80, 0.15);
            color: #2e7d32;
            border: 1px solid #4caf50;
            display: block;
        }
        
        .form-message.error {
            background: rgba(244, 67, 54, 0.15);
            color: #c62828;
            border: 1px solid #f44336;
            display: block;
        }
        
        /* Footer */
        footer {
            background: linear-gradient(135deg, var(--color-dark), #444444);
            color: rgba(255,255,255,0.93);
            padding: 5.4rem 0 2.15rem;
        }
        
        .footer-col h5 {
            font-weight: 700;
            margin-bottom: 1.95rem;
            color: var(--color-white);
            font-size: 1.33rem;
            position: relative;
            padding-bottom: 0.88rem;
        }
        
        .footer-col h5::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 52px;
            height: 2.5px;
            background: var(--color-white);
            border-radius: 2px;
        }
        
        .footer-col ul {
            list-style: none;
            padding: 0;
        }
        
        .footer-col ul li {
            margin-bottom: 0.98rem;
        }
        
        .footer-col ul li a {
            color: rgba(255,255,255,0.84);
            text-decoration: none;
            transition: all 0.36s;
            display: inline-flex;
            align-items: center;
            gap: 0.58rem;
            font-size: 1.03rem;
        }
        
        .footer-col ul li a:hover {
            color: var(--color-white);
            transform: translateX(4.5px);
        }
        
        .footer-col ul li a i {
            font-size: 0.86rem;
            opacity: 0;
            transition: opacity 0.36s;
            color: var(--color-lightest);
        }
        
        .footer-col ul li a:hover i {
            opacity: 1;
        }
        
        .footer-about p {
            color: rgba(255,255,255,0.84);
            line-height: 2.02;
            font-size: 1.03rem;
        }
        
        .newsletter-form .form-control {
            background: rgba(255,255,255,0.13);
            border: 1px solid rgba(255,255,255,0.26);
            color: var(--color-white);
            border-radius: 29px;
            padding: 0.93rem 1.68rem;
            font-size: 0.99rem;
        }
        
        .newsletter-form .form-control::placeholder {
            color: rgba(255,255,255,0.71);
        }
        
        .newsletter-form .form-control:focus {
            background: rgba(255,255,255,0.19);
            border-color: var(--color-white);
            box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.19);
            color: var(--color-white);
        }
        
        .newsletter-form .btn {
            background: var(--color-white);
            color: var(--color-dark);
            border: 2px solid var(--color-white);
            border-radius: 29px;
            padding: 0.93rem 2.15rem;
            font-weight: 700;
            margin-top: 1.08rem;
            width: 100%;
            transition: all 0.36s;
            font-size: 1.01rem;
        }
        
        .newsletter-form .btn:hover {
            background: var(--color-dark);
            color: var(--color-white);
            transform: translateY(-3px);
            box-shadow: 0 9px 27px rgba(0, 0, 0, 0.38);
        }
        
        .footer-bottom {
            border-top: 1px solid rgba(255,255,255,0.13);
            margin-top: 3.75rem;
            padding-top: 2.15rem;
            text-align: center;
            color: rgba(255,255,255,0.77);
            font-size: 0.99rem;
        }
        
        .footer-bottom a {
            color: var(--color-lightest);
            text-decoration: none;
            margin: 0 0.95rem;
            font-weight: 500;
            transition: color 0.36s;
        }
        
        .footer-bottom a:hover {
            color: var(--color-white);
        }
        
        /* Responsive */
        @media (max-width: 992px) {
            .hero-title {
                font-size: 3.15rem;
            }
            
            .hero-subtitle {
                font-size: 1.23rem;
            }
            
            .section-title {
                font-size: 2.18rem;
            }
            
            .process-connector {
                display: none !important;
            }
        }
        
        @media (max-width: 768px) {
            .navbar-collapse {
                background: var(--color-white);
                padding: 1.55rem;
                border-radius: 17px;
                margin-top: 1rem;
                box-shadow: 0 11px 43px rgba(51,51,51,0.13);
            }
            
            .hero-title {
                font-size: 2.55rem;
            }
            
            .hero-subtitle {
                font-size: 1.13rem;
            }
            
            .cta-title {
                font-size: 2.25rem;
            }
            
            .booking-card, .contact-form-card {
                padding: 2.55rem;
            }
        }
        
        @media (max-width: 576px) {
            .hero-title {
                font-size: 2.15rem;
            }
            
            .counter-number {
                font-size: 2.95rem;
            }
            
            .section-title {
                font-size: 1.95rem;
            }
            
            .service-img {
                height: 205px;
            }
            
            .about-img {
                height: 370px;
            }
        }
        
        /* Animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(36px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        .animate-on-scroll {
            opacity: 0;
            animation: fadeInUp 0.74s ease forwards;
        }
        
        .delay-1 { animation-delay: 0.11s; }
        .delay-2 { animation-delay: 0.22s; }
        .delay-3 { animation-delay: 0.33s; }
        .delay-4 { animation-delay: 0.44s; }
        
        /* Scrollbar */
        ::-webkit-scrollbar {
            width: 10px;
        }
        
        ::-webkit-scrollbar-track {
            background: var(--color-lightest);
        }
        
        ::-webkit-scrollbar-thumb {
            background: var(--color-dark);
            border-radius: 5px;
        }
        
        ::-webkit-scrollbar-thumb:hover {
            background: #555;
        }
        
        /* Form Validation Styles */
        .form-control.is-invalid, .form-select.is-invalid {
            border-color: #dc3545;
            padding-right: calc(1.5em + 0.75rem);
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
            background-repeat: no-repeat;
            background-position: right calc(0.375em + 0.1875rem) center;
            background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
        }
        
        .invalid-feedback {
            display: none;
            width: 100%;
            margin-top: 0.38rem;
            font-size: 0.86rem;
            color: #dc3545;
        }
        
        .form-control.is-invalid ~ .invalid-feedback,
        .form-select.is-invalid ~ .invalid-feedback {
            display: block;
        }
