
        :root {
            --green: #678b4a; /* Olive green from image */
            --golden: #D4AF36; /* Rust/golden brown */
            --bg-color: #faf7f2; /* Creamy background */
            --text-dark: #23211f; /* Dark text */
            --text-light: #7a7672; /* Grey text */
            --border-color: #e5dfd5;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Lexend', sans-serif;
            background-color: var(--bg-color);
            color: var(--text-dark);
            line-height: 1.6;
            overflow-x: hidden;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        ul {
            list-style: none;
        }

        .container {
            max-width: 100%;
            margin: 0 auto;
            padding: 0;
        }

        /* --- Header (Elementor handles this via widget, removing static conflicts) --- */
        header.site-header,
        header .elementor-section,
        header .elementor-container,
        header .elementor-column,
        header .elementor-widget-wrap,
        header .e-con,
        header .e-container,
        .hfe-header,
        .hfe-header .elementor-section,
        .hfe-header .elementor-container,
        .hfe-header .elementor-column,
        .hfe-header .elementor-widget-wrap,
        .hfe-header .e-con,
        .hfe-header .e-container {
            padding: 0 !important;
            margin: 0 !important;
            gap: 0 !important;
        }

        /* --- Hero Section --- */
        .hero {
            padding: 80px 0;
            position: relative;
        }

        .hero-title {
            font-size: 90px;
            font-weight: 500;
            line-height: 1.05;
            text-align: center;
            margin-bottom: 80px;
            position: relative;
            z-index: 2;
            letter-spacing: -2px;
        }

        .hero-title span {
            color: var(--green);
            font-style: italic;
            font-weight: 400;
        }

        .hero-images {
            position: relative;
            height: 600px;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .hero-img-1 {
            position: absolute;
            left: 5%;
            top: -150px;
            width: 380px;
            height: 520px;
            object-fit: cover;
            border-radius: 20px;
            z-index: 1;
            box-shadow: 0 20px 40px rgba(0,0,0,0.08);
        }

        .hero-img-2 {
            position: absolute;
            right: 25%;
            top: -150px;
            width: 250px;
            height: 245px;
            object-fit: cover;
            border-radius: 125px 125px 0 0;
            z-index: 1;
            box-shadow: 0 20px 40px rgba(0,0,0,0.08);
            margin-bottom: 0 !important;
        }
        
        .hero-img-3 {
            position: absolute;
            right: calc(25% - 30px);
            top: 20px;
            width: 280px;
            height: 520px;
            object-fit: cover;
            border-radius: 20px;
            z-index: 2;
            box-shadow: 0 20px 40px rgba(0,0,0,0.08);
        }

        .play-btn {
            position: absolute;
            top: 40%;
            left: 48%;
            transform: translate(-50%, -50%);
            width: 90px;
            height: 90px;
            background-color: var(--bg-color);
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 3;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            cursor: pointer;
            transition: transform 0.3s ease;
        }
        
        .play-btn:hover {
            transform: translate(-50%, -50%) scale(1.05);
        }

        .play-btn i {
            color: var(--text-dark);
            font-size: 20px;
            margin-left: 5px; /* center optical balance */
        }

        /* --- Features Section --- */
        .features {
            padding: 120px 0 80px;
            position: relative;
        }
        
        .features-intro {
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            margin-bottom: 60px;
            position: relative;
        }

        .features-intro-left {
            max-width: 700px;
            z-index: 2;
        }

        .features-intro h2 {
            font-size: 44px;
            font-weight: 600;
            line-height: 1.25;
            letter-spacing: -0.5px;
            color: #202b36; /* Dark slate blue from image */
        }

        .features-intro h2 span {
            color: #657e3c; /* Olive green */
        }
        
        .features-intro-right {
            max-width: 420px;
            position: relative;
            z-index: 2;
            padding-bottom: 10px;
        }

        .features-intro p {
            color: #a4a095;
            font-size: 13px;
            line-height: 1.8;
            font-weight: 500;
        }

        .features-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            position: relative;
            z-index: 2;
        }

        .feature-card {
            background-color: #fcfbf9;
            border: 1px solid #f2efeb;
            border-radius: 12px;
            padding: 40px 25px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.01);
        }

        .feature-card svg {
            width: 40px;
            height: 40px;
            margin-bottom: 35px;
        }

        .feature-card h3 {
            font-size: 18px;
            font-weight: 600;
            color: #273746;
            margin-bottom: 15px;
        }

        .feature-card p {
            color: #b5b1a3;
            font-size: 13px;
            line-height: 1.6;
            font-weight: 500;
        }
        
        .rings-illustration {
            position: absolute;
            top: -40px;
            right: 0px;
            width: 450px;
            z-index: 1;
            pointer-events: none;
        }

        /* --- Large Text Section --- */
        .large-text-section {
            padding: 60px 0;
            overflow: hidden;
            white-space: nowrap;
        }
        
        .large-text {
            font-size: 130px;
            font-weight: 700;
            color: var(--text-dark);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 50px;
            letter-spacing: -3px;
        }
        
        .large-text i {
            color: var(--green);
            font-size: 90px;
        }

        /* --- About Section --- */
        .about-section {
            padding: 100px 0;
            display: flex;
            align-items: center;
            gap: 80px;
        }

        .about-image {
            flex: 1;
        }
        
        .about-image img {
            width: 100%;
            border-radius: 20px;
            height: 650px;
            object-fit: cover;
        }

        .about-content {
            flex: 1;
        }

        .about-content h4 {
            color: var(--text-dark);
            text-transform: uppercase;
            letter-spacing: 2px;
            font-size: 12px;
            font-weight: 600;
            margin-bottom: 20px;
        }

        .about-content h2 {
            font-size: 52px;
            font-weight: 500;
            margin-bottom: 30px;
            line-height: 1.1;
            letter-spacing: -1.5px;
        }

        .about-content p {
            color: var(--text-light);
            margin-bottom: 40px;
            font-size: 16px;
            line-height: 1.7;
        }
        
        .about-btn {
            background-color: var(--golden);
            color: white;
            padding: 15px 35px;
            border-radius: 30px;
            display: inline-block;
            font-weight: 500;
            font-size: 15px;
            transition: background-color 0.3s;
        }

        .about-btn:hover {
            background-color: #925635;
        }

        .about-quote {
            margin-top: 50px;
            position: relative;
        }
        
        .about-quote p {
            font-size: 18px;
            font-style: italic;
            color: var(--text-dark);
            margin-bottom: 0;
            font-weight: 500;
        }

        /* --- Stats Section --- */
        .stats-section {
            padding: 80px 0;
            border-top: 1px solid var(--border-color);
        }

        .stats-grid {
            display: grid;
            grid-template-columns: 1.5fr repeat(4, 1fr);
            gap: 30px;
            align-items: end;
        }

        .stats-intro {
            padding-right: 40px;
        }

        .stats-intro h3 {
            font-size: 28px;
            font-weight: 500;
            margin-bottom: 15px;
            letter-spacing: -0.5px;
        }

        .stats-intro p {
            color: var(--text-light);
            font-size: 15px;
        }

        .stat-item h2 {
            font-size: 65px;
            font-weight: 500;
            line-height: 1;
            margin-bottom: 10px;
            letter-spacing: -2px;
        }

        .stat-item p {
            color: var(--text-dark);
            font-size: 15px;
            font-weight: 500;
        }

        .stats-row-2 {
            display: grid;
            grid-template-columns: 1.5fr repeat(4, 1fr);
            gap: 30px;
            margin-top: 40px;
        }

        /* --- Full Width Banner --- */
        .full-banner {
            width: 100%;
            height: 550px;
            background-image: url('https://images.unsplash.com/photo-1583939411023-14783179e581?q=80&w=2070&auto=format&fit=crop');
            background-size: cover;
            background-position: center;
        }

        /* --- Projects Section --- */
        .projects-section {
            padding: 120px 0;
            text-align: center;
        }

        .projects-header {
            margin-bottom: 80px;
        }

        .projects-header h4 {
            color: var(--text-dark);
            text-transform: uppercase;
            letter-spacing: 2px;
            font-size: 12px;
            font-weight: 600;
            margin-bottom: 15px;
        }

        .projects-header h2 {
            font-size: 48px;
            font-weight: 500;
            letter-spacing: -1px;
        }

        .projects-header p {
            color: var(--text-light);
            max-width: 500px;
            margin: 20px auto 0;
            font-size: 16px;
        }

        .projects-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 40px;
            text-align: left;
        }

        .project-card img {
            width: 100%;
            border-radius: 20px;
            margin-bottom: 25px;
            object-fit: cover;
            transition: transform 0.4s ease;
        }
        
        .project-card:hover img {
            transform: scale(1.02);
        }
        
        .project-card:nth-child(1) img { height: 700px; }
        .project-card:nth-child(2) img { height: 450px; }
        .project-card:nth-child(3) img { height: 450px; }
        .project-card:nth-child(4) img { height: 700px; }

        .project-card h3 {
            font-size: 26px;
            font-weight: 500;
            margin-bottom: 8px;
            letter-spacing: -0.5px;
        }

        .project-card p {
            color: var(--text-light);
            font-size: 15px;
        }
        
        .grid-col {
            display: flex;
            flex-direction: column;
            gap: 40px;
        }

        /* --- Testimonial Section --- */
        .testimonial-section {
            padding: 100px 0;
            text-align: center;
        }

        .testimonial-text {
            font-size: 42px;
            font-weight: 500;
            max-width: 900px;
            margin: 0 auto 50px;
            line-height: 1.3;
            letter-spacing: -1px;
        }

        .testimonial-author img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            margin-bottom: 15px;
            object-fit: cover;
        }
        
        .testimonial-author h4 {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 5px;
        }
        
        .testimonial-author p {
            color: var(--text-light);
            font-size: 14px;
        }

        /* --- Newsletter Section --- */
        .newsletter-section {
            padding: 60px 0;
        }

        .newsletter-box {
            background-image: url('https://images.unsplash.com/photo-1520854221256-17451cc331bf?q=80&w=2070&auto=format&fit=crop');
            background-size: cover;
            background-position: center;
            border-radius: 20px;
            padding: 100px 80px;
            position: relative;
            overflow: hidden;
        }
        
        .newsletter-box::before {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0; bottom: 0;
            background: rgba(255, 255, 255, 0.9);
            z-index: 1;
        }

        .newsletter-content {
            position: relative;
            z-index: 2;
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .newsletter-content h2 {
            font-size: 42px;
            font-weight: 500;
            max-width: 400px;
            letter-spacing: -1px;
            line-height: 1.2;
        }

        .newsletter-form {
            display: flex;
            background: white;
            padding: 8px;
            border-radius: 40px;
            width: 500px;
            border: 1px solid var(--border-color);
        }

        .newsletter-form input {
            border: none;
            outline: none;
            padding: 15px 25px;
            flex: 1;
            border-radius: 30px;
            font-family: inherit;
            font-size: 15px;
            background: transparent;
        }

        .newsletter-form button {
            background-color: var(--golden);
            color: white;
            border: none;
            padding: 15px 35px;
            border-radius: 30px;
            cursor: pointer;
            font-weight: 500;
            font-family: inherit;
            font-size: 15px;
            transition: background-color 0.3s;
        }
        
        .newsletter-form button:hover {
            background-color: #925635;
        }

        /* --- Blog Section --- */
        .blog-section {
            padding: 100px 0 120px;
        }

        .blog-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            margin-bottom: 60px;
        }

        .blog-header h2 {
            font-size: 42px;
            font-weight: 500;
            max-width: 450px;
            line-height: 1.2;
            letter-spacing: -1px;
        }

        .blog-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }

        .blog-card img {
            width: 100%;
            height: 280px;
            object-fit: cover;
            border-radius: 20px;
            margin-bottom: 25px;
        }

        .blog-card .tag {
            color: var(--text-dark);
            font-size: 13px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 12px;
            display: block;
        }

        .blog-card h3 {
            font-size: 22px;
            font-weight: 500;
            margin-bottom: 20px;
            line-height: 1.3;
            letter-spacing: -0.5px;
        }
        
        .blog-card .author {
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 14px;
            color: var(--text-light);
        }

        /* --- Footer --- */
        footer {
            /* background-color: #272421; */
            color: white;
            /* padding: 100px 0 0; */
            text-align: center;
            overflow: hidden;
        }

        .footer-content {
            display: flex;
            justify-content: space-between;
            padding: 0;
            margin-bottom: 80px;
            text-align: left;
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
        }
        
        .footer-col h4 {
            font-size: 14px;
            margin-bottom: 25px;
            color: #8c8884;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .footer-col ul li {
            margin-bottom: 12px;
        }
        
        .footer-col ul li a {
            color: #d1cdc7;
            transition: color 0.3s;
            font-size: 15px;
        }

        .footer-col ul li a:hover {
            color: var(--golden);
        }

        .huge-text {
            font-size: 25vw;
            font-weight: 700;
            color: #ac6741;
            line-height: 0.75;
            margin-bottom: -3vw;
            letter-spacing: -8px;
            white-space: nowrap;
        }
        
        /* --- Responsive Design --- */
        @media (max-width: 1024px) {
            .hero-title { font-size: 70px; }
            .features-grid { grid-template-columns: 1fr 1fr; }
            .features-intro p { position: static; margin-top: 20px; }
            .about-section { flex-direction: column; }
            .stats-grid, .stats-row-2 { grid-template-columns: 1fr 1fr; }
            .stats-intro { grid-column: span 2; }
            .projects-grid { grid-template-columns: 1fr; }
            .newsletter-content { flex-direction: column; gap: 30px; text-align: center; }
            .blog-grid { grid-template-columns: 1fr; }
            .footer-content { flex-direction: column; gap: 50px; }
            .large-text { font-size: 80px; }
        }
        
        @media (max-width: 768px) {
            .hero {
                padding: 0 0 40px 0;
                display: flex;
                flex-direction: column;
            }
            .hero-title {
                position: absolute;
                top: 60px;
                left: 5%;
                width: 90%;
                font-size: 38px;
                z-index: 10;
                margin-bottom: 0;
                text-align: center;
            }
            .hero-images {
                display: flex;
                flex-direction: column;
                height: auto;
                align-items: center;
                gap: 20px;
            }
            .hero-img-1, .hero-img-2, .hero-img-3 {
                position: static;
                margin: 0 !important;
                box-shadow: none;
                height: auto;
            }
            .hero-img-1 {
                width: 100%;
                min-height: 450px;
                border-radius: 0 0 20px 20px;
            }
            .hero-img-2, .hero-img-3 {
                width: 90%;
                border-radius: 20px;
            }
            .play-btn {
                position: static;
                transform: none;
                margin: 10px auto;
            }
        }
        
        @media (max-width: 480px) {
            .hero-title {
                font-size: 48px;
                text-align: left;
                left: 8%;
                width: 84%;
                top: 40px;
                line-height: 1.1;
            }
            .hero-title span {
                font-style: normal;
                color: #5c7b2a;
            }
            .hero-images {
                display: block;
            }
            .hero-images::after {
                content: "";
                display: table;
                clear: both;
            }
            .hero-img-1 {
                width: 92%;
                margin: 0 auto !important;
                border-radius: 20px;
                min-height: 500px;
                display: block;
            }
            .hero-img-2 {
                width: 55%;
                float: right;
                margin-top: 30px !important;
                margin-right: 4% !important;
                border-radius: 20px !important;
            }
            .hero-img-3 {
                width: 55%;
                float: left;
                margin-top: -120px !important;
                margin-left: 4% !important;
                position: relative;
                z-index: 2;
            }
            .play-btn {
                clear: both;
                float: left;
                margin: 40px 0 0 5% !important;
                width: 140px;
                height: 140px;
                background-color: #e5e4dc;
            }
        }
        
        /* --- NJ Footer Widget --- */
        @keyframes nj-float-anim {
            0% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(10deg); }
            100% { transform: translateY(0px) rotate(0deg); }
        }

        .nj-floating-icon {
            position: absolute;
            top: -40px;
            right: 15%;
            font-size: 35px;
            color: #FFD54F;
            z-index: 10;
            opacity: 0.9;
            animation: nj-float-anim 4s ease-in-out infinite;
        }

        .nj-floating-icon svg {
            width: 35px;
            height: 35px;
            fill: #FFD54F;
        }

        .nj-footer-widget-wrapper {
            width: 100vw;
            position: relative;
            left: 50%;
            transform: translateX(-50%);
        }

        .nj-footer-widget {
            background:linear-gradient(135deg,#09132b,#132d5b,#1c4a8d);
            color:#fff;
            padding:70px 0 0;
            position:relative;
            overflow:visible;
            width: 100%;
        }

        .nj-footer-widget:before{
            content:"";
            position:absolute;
            width:350px;
            height:350px;
            background:rgba(255,255,255,.05);
            border-radius:50%;
            top:-150px;
            left:-100px;
        }

        .nj-footer-widget:after{
            content:"";
            position:absolute;
            width:300px;
            height:300px;
            background:rgba(255,255,255,.04);
            right:-100px;
            bottom:-100px;
            border-radius:50%;
        }

        .nj-footer-widget .footer-container{
            max-width:1300px;
            margin:auto;
            display:grid;
            grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
            gap:40px;
            padding:0 20px 60px;
            position:relative;
            z-index:2;
        }

        .nj-footer-widget .footer-box h3{
            font-size:24px;
            margin-bottom:25px;
            font-weight:600;
            color:#FFD54F;
            position:relative;
            text-align:left;
        }

        .nj-footer-widget .footer-box h3:after{
            content:"";
            position:absolute;
            width:55px;
            height:3px;
            background:#FFD54F;
            left:0;
            bottom:-10px;
        }

        .nj-footer-widget .footer-box p{
            line-height:1.9;
            color:#ddd;
            font-size:15px;
        }

        .nj-footer-widget .footer-box ul{
            list-style:none;
        }

        .nj-footer-widget .footer-box ul li{
            margin-bottom:15px;
        }

        .nj-footer-widget .footer-box ul li a{
            text-decoration:none;
            color:#ddd;
            transition:.4s;
            display:flex;
            align-items:right;
            font-size:12px;
            line-height:1.8;
        }

        .nj-footer-widget .footer-box ul li a i,
        .nj-footer-widget .footer-box ul li a svg {
            color:#FFD54F;
            display:flex;
            justify-content:center;
            align-items:center;
            margin-right:12px;
            font-size:16px;
            border-radius:50%;
        }
        
        .nj-footer-widget .footer-box ul li a svg {
            width: 16px;
            height: 16px;
            fill: #FFD54F;
        }

        .nj-footer-widget .footer-box ul li a:hover{
            color:#FFD54F;
            padding-left:8px;
        }

        .nj-footer-widget .contact-info li{
            display:flex;
            margin-bottom:15px;
            line-height:1.8;
            color:#ddd;
        }

        .nj-footer-widget .contact-info i,
        .nj-footer-widget .contact-info svg {
            color:#FFD54F;
            display:flex;
            justify-content:center;
            align-items:center;
            margin-right:15px;
            margin-top:4px;
            flex-shrink:0;
            font-size:18px;
            border-radius:50%;
        }

        .nj-footer-widget .contact-info svg {
            width: 16px;
            height: 16px;
            fill: #000;
        }

        .nj-footer-widget .footer-social{
            text-align:center;
            padding:30px 0;
            border-top:1px solid rgba(255,255,255,.12);
            position:relative;
            z-index:2;
        }

        .nj-footer-widget .footer-social a{
            width:48px;
            height:48px;
            display:inline-flex;
            justify-content:center;
            align-items:center;
            background:#fff;
            color:#0b3d91;
            border-radius:50%;
            margin:8px;
            font-size:18px;
            transition:.4s;
            text-decoration:none;
        }
        
        .nj-footer-widget .footer-social a svg {
            width: 18px;
            height: 18px;
            fill: #0b3d91;
        }

        .nj-footer-widget .footer-social a:hover{
            background:#FFD54F;
            color:#000;
            transform:translateY(-8px);
        }

        .nj-footer-widget .copyright{
            text-align:center;
            padding:20px;
            background:rgba(0,0,0,.25);
            font-size:15px;
            color:#ddd;
            letter-spacing:.5px;
        }

        .back-top{
            position:fixed;
            right:25px;
            bottom:25px;
            width:55px;
            height:55px;
            background:linear-gradient(135deg,#FFD54F,#ff9800);
            color:#000;
            border-radius:50%;
            display:flex;
            justify-content:center;
            align-items:center;
            font-size:22px;
            text-decoration:none;
            box-shadow:0 10px 25px rgba(0,0,0,.35);
            transition:.4s;
            z-index:999;
        }
        
        .back-top svg {
            width: 22px;
            height: 22px;
            fill: #000;
        }

        .back-top:hover{
            transform:translateY(-8px);
            background:#fff;
        }

        /* Alignment Overrides via Elementor */
        .nj-align-right .nj-footer-widget .footer-box { text-align: right; }
        .nj-align-right .nj-footer-widget .footer-box h3 { text-align: right; }
        .nj-align-right .nj-footer-widget .footer-box h3:after { left: auto; right: 0; }
        .nj-align-right .nj-footer-widget .footer-box ul li a { justify-content: flex-end; flex-direction: row-reverse; }
        .nj-align-right .nj-footer-widget .footer-box ul li a i,
        .nj-align-right .nj-footer-widget .footer-box ul li a svg { margin-right: 0; margin-left: 12px; }
        .nj-align-right .nj-footer-widget .footer-box ul li a:hover { padding-left: 0; padding-right: 8px; }
        .nj-align-right .nj-footer-widget .contact-info li { justify-content: flex-end; flex-direction: row-reverse; text-align: right; }
        .nj-align-right .nj-footer-widget .contact-info i,
        .nj-align-right .nj-footer-widget .contact-info svg { margin-right: 0; margin-left: 15px; }

        .nj-align-center .nj-footer-widget .footer-box { text-align: center; }
        .nj-align-center .nj-footer-widget .footer-box h3 { text-align: center; }
        .nj-align-center .nj-footer-widget .footer-box h3:after { left: 50%; transform: translateX(-50%); }
        .nj-align-center .nj-footer-widget .footer-box ul li a { justify-content: center; }
        .nj-align-center .nj-footer-widget .contact-info li { justify-content: center; text-align: center; }

        /* --- NJ Blog Slider Widget --- */
        .latest-news { padding: 80px 0; position: relative; overflow: hidden; background: #faf7f2; color: #20243a; font-family:'Lexend',sans-serif; }
        .latest-news .container { width: 90%; max-width: 1300px; margin: auto; }
        
        /* Swiper Core Fallback CSS */
        .nj-blog-swiper-wrapper { overflow: hidden; position: relative; }
        .nj-blog-swiper-wrapper .swiper-wrapper { display: flex; width: 100%; box-sizing: content-box; }
        .nj-blog-swiper-wrapper .swiper-slide { flex-shrink: 0; height: 100%; position: relative; }
        
        .latest-news .top-section { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 60px; gap: 40px; }
        .latest-news .small-title { font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #2b3149; margin-top: 12px; }
        .latest-news .main-title { max-width: 500px; font-size: 38px; line-height: 1.05; font-weight: 700; color: #1f2642; margin: 0; }
        .latest-news .blog-card { transition: .4s; }
        .latest-news .blog-card:hover { transform: translateY(-8px); }
        .latest-news .blog-image { width: 100%; height: 330px; overflow: hidden; border-radius: 22px; }
        .latest-news .blog-image img { width: 100%; height: 100%; object-fit: cover; transition: .5s; }
        .latest-news .blog-card:hover img { transform: scale(1.05); }
        
        .latest-news .category { margin-top: 22px; font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #2e3550; }
        .latest-news .blog-title { margin-top: 10px; font-size: 38px; font-weight: 600; line-height: 1.2; color: #1d233c; margin-bottom: 0; }
        .latest-news .blog-title a { color: inherit; text-decoration: none; transition: 0.3s; }
        .latest-news .blog-title a:hover { opacity: 0.8; }
        .latest-news .blog-title.small { font-size: 20px; }
        .latest-news .blog-meta { margin-top: 12px; font-size: 14px; color: #9d9d9d; }
        
        /* Floating Animation for Decor */
        .latest-news .decor { position: absolute; left: 0; top: 40px; width: 220px; opacity: .18; animation: nj-float-anim 4s ease-in-out infinite; }
        .latest-news .decor img { width: 100%; height: auto; }
        
        @media(max-width:992px){
            .latest-news .top-section { flex-direction: column; }
            .latest-news .main-title { font-size: 44px; }
        }
        @media(max-width:768px){
            .latest-news .main-title { font-size: 36px; }
            .latest-news .blog-image { height: 260px; }
        }
        /* --- NJ Testimonial Widget --- */
        .testimonial-section{
            --bg:#faf6ef;
            --heading:#1b2232;
            --text:#777;
            --name:#111;
            --button:#1b2232;
            --button-hover:#b88d52;
            width:100%;
            padding:90px 20px;
            background:var(--bg);
            font-family:'Lexend',sans-serif;
        }
        .testimonial-section .testimonial-container{
            max-width:1100px;
            margin:auto;
            position:relative;
            overflow:hidden;
        }
        .testimonial-section .slide{
            display:none;
            animation:fade .8s ease;
        }
        .testimonial-section .slide.active{
            display:block;
        }
        @keyframes fade{
            from{ opacity:0; transform:translateY(20px); }
            to{ opacity:1; transform:translateY(0px); }
        }
        .testimonial-section .testimonial-content{
            text-align:center;
        }
        .testimonial-section .testimonial-text{
            font-size:38px;
            font-weight:700;
            line-height:1.18;
            color:#000000;
            max-width:1000px;
            margin:auto auto 45px;
        }
        .testimonial-section .client{
            display:flex;
            flex-direction:column;
            align-items:center;
        }
        .testimonial-section .client img{
            width:70px;
            height:70px;
            border-radius:50%;
            object-fit:cover;
            border:4px solid #fff;
            box-shadow:0 5px 20px rgba(0,0,0,.12);
        }
        .testimonial-section .client h4{
            margin-top:18px;
            font-size:24px;
            font-weight:600;
            color:var(--name);
            margin-bottom: 0;
        }
        .testimonial-section .client span{
            font-size:17px;
            color:var(--text);
            margin-top:5px;
        }
        .testimonial-section .controls{
            margin-top:45px;
            display:flex;
            justify-content:center;
            gap:15px;
        }
        .testimonial-section .controls button{
            width:50px;
            height:50px;
            border:none;
            border-radius:50%;
            cursor:pointer;
            font-size:22px;
            background:#000000;
            color:#fff;
            transition:.4s;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .testimonial-section .controls button:hover{
            background:#d4af36;
        }
        .testimonial-section .dots{
            display:flex;
            justify-content:center;
            gap:10px;
            margin-top:25px;
        }
        .testimonial-section .dot{
            width:12px;
            height:12px;
            border-radius:50%;
            background:#cfcfcf;
            cursor:pointer;
            transition:.3s;
        }
        .testimonial-section .dot.active{
            background:var(--button);
        }
        @media(max-width:991px){
            .testimonial-section .testimonial-text{ font-size:42px; }
        }
        @media(max-width:767px){
            .testimonial-section{ padding:60px 20px; }
            .testimonial-section .testimonial-text{ font-size:30px; }
            .testimonial-section .client h4{ font-size:20px; }
        }
        @media(max-width:480px){
            .testimonial-section .testimonial-text{ font-size:24px; line-height:1.5; }
        }
        html{
            scroll-behavior:smooth;
        }

        @media(max-width:768px){
            .nj-footer-widget{
                padding-top:50px;
            }
        }

        /* --- Global Lexend Font Enforcer --- */
        body, 
        h1, h2, h3, h4, h5, h6, 
        p, a, li, ul, ol, button, input, textarea, select,
        .elementor-heading-title,
        .elementor-widget-text-editor,
        .elementor-button,
        .elementor-text-editor,
        .elementor-widget-heading .elementor-heading-title,
        .elementor-post__title,
        .elementor-post__excerpt,
        .elementor-nav-menu a {
            font-family: 'Lexend', sans-serif !important;
        }

        /* --- Custom Contact Form 7 --- */
        .nj-contact-form {
            max-width: 600px;
            font-family: 'Lexend', sans-serif;
            background: transparent;
        }

        .nj-contact-form h2 {
            font-size: 38px;
            font-weight: 700;
            color: #1a1a1a;
            line-height: 1.2;
            margin-bottom: 30px;
        }

        .nj-contact-form .nj-form-group {
            margin-bottom: 20px;
        }

        .nj-contact-form input[type="text"],
        .nj-contact-form input[type="email"],
        .nj-contact-form textarea {
            width: 100%;
            background-color: transparent;
            border: 1px solid #dcd7ce;
            border-radius: 30px;
            padding: 15px 20px;
            font-size: 15px;
            color: #333;
            outline: none;
            transition: border-color 0.3s;
            box-sizing: border-box;
        }

        .nj-contact-form textarea {
            border-radius: 20px;
            min-height: 150px;
            resize: vertical;
        }

        .nj-contact-form input[type="text"]::placeholder,
        .nj-contact-form input[type="email"]::placeholder,
        .nj-contact-form textarea::placeholder {
            color: #a3998f;
            font-weight: 400;
        }

        .nj-contact-form input[type="text"]:focus,
        .nj-contact-form input[type="email"]:focus,
        .nj-contact-form textarea:focus {
            border-color: #D4AF36;
        }

        .nj-contact-form .nj-form-agreement {
            margin: 25px 0;
            font-size: 14px;
            color: #a3998f;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .nj-contact-form .wpcf7-list-item {
            margin: 0;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .nj-contact-form .nj-form-agreement input[type="checkbox"] {
            width: 18px;
            height: 18px;
            border: 1px solid #dcd7ce;
            border-radius: 4px;
            cursor: pointer;
            accent-color: #D4AF36;
            margin: 0;
        }

        .nj-contact-form .nj-form-agreement .wpcf7-list-item-label {
            color: #a3998f;
        }

        .nj-contact-form .nj-form-agreement .nj-highlight {
            color: #D4AF36;
        }

        .nj-contact-form .nj-form-submit {
            margin-top: 10px;
        }

        .nj-contact-form input[type="submit"] {
            background-color: #D4AF36;
            color: #ffffff;
            border: none;
            border-radius: 30px;
            padding: 15px 40px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            transition: background-color 0.3s;
            width: 100%;
        }

        .nj-contact-form input[type="submit"]:hover {
            background-color: #b8982f;
        }

        .nj-contact-form .wpcf7-not-valid-tip {
            font-size: 12px;
            color: #D4AF36;
            margin-top: 5px;
            margin-left: 15px;
        }

        .nj-contact-form .wpcf7-response-output {
            border-radius: 10px;
            margin-top: 20px;
            border-color: #D4AF36 !important;
            color: #D4AF36;
        }

/* Hide Breadcrumbs on Gallery */
.nirja-custom-breadcrumb { display: none !important; }
