/*
Theme Name: Navdurga Landscape & Foundation Complete
Theme URI: https://example.com/navdurga-landscape-foundation-complete
Author: OpenAI
Description: Modern, mobile-friendly, Elementor-compatible WordPress theme for foundation cutting and garden services businesses.
Version: 4.0.0
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: navdurga-pro
*/

:root{
  --ngp-primary:#166534;
  --ngp-primary-2:#1f7a4d;
  --ngp-secondary:#f4c84b;
  --ngp-dark:#0f1720;
  --ngp-text:#334155;
  --ngp-muted:#64748b;
  --ngp-soft:#f8fafc;
  --ngp-bg:#eef6ef;
  --ngp-card:#ffffff;
  --ngp-border:#dbe7de;
  --ngp-danger:#0c8f5d;
  --ngp-shadow:0 16px 48px rgba(15,23,32,.08);
  --ngp-shadow-lg:0 30px 80px rgba(15,23,32,.13);
  --ngp-radius:28px;
  --ngp-radius-sm:18px;
  --ngp-container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ngp-text);background:#fff;line-height:1.75}
body.elementor-page .site-main,body.ngp-elementor-page .site-main{min-height:30vh}
a{color:var(--ngp-primary-2);text-decoration:none;transition:all .2s ease}
a:hover{color:var(--ngp-primary)}
img{max-width:100%;height:auto;display:block}
.site-width,.container{width:min(100% - 32px,var(--ngp-container));margin-inline:auto}
.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
main.site-main{min-height:52vh}

.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(219,231,222,.95)}
.topbar{background:linear-gradient(90deg,var(--ngp-dark),var(--ngp-primary));color:#effaf3;font-size:14px}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:10px 0}
.topbar a{color:#effaf3}
.header-main{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:16px 0}
.site-title{font-size:clamp(22px,2.2vw,34px);margin:0;font-weight:800;line-height:1.05;color:var(--ngp-dark)}
.site-title a{color:inherit}
.site-description{margin:6px 0 0;color:var(--ngp-muted);font-size:14px}
.menu-toggle{display:none;border:1px solid var(--ngp-border);background:#fff;padding:12px 14px;border-radius:14px;box-shadow:var(--ngp-shadow);font-weight:700;cursor:pointer}
.main-navigation ul{display:flex;align-items:center;justify-content:flex-end;gap:18px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.main-navigation a{font-weight:700;color:var(--ngp-dark);font-size:15px}
.main-navigation .current-menu-item>a,.main-navigation .current_page_item>a,.main-navigation a:hover{color:var(--ngp-primary)}
.button,.wp-block-button__link,input[type=submit],button,.elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;padding:14px 22px;font-weight:700;cursor:pointer;box-shadow:var(--ngp-shadow);line-height:1.2}
.button-primary{background:var(--ngp-primary);color:#fff}.button-primary:hover{background:#0f4f29;color:#fff}
.button-secondary{background:var(--ngp-secondary);color:#241a00}.button-secondary:hover{background:#e8bc3d;color:#241a00}
.button-light{background:#fff;color:var(--ngp-dark)}
.button-outline{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;box-shadow:none}
.button-outline:hover{background:rgba(255,255,255,.12);color:#fff}


.site-branding{display:flex;align-items:center;min-width:0}
.branding-link{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none;min-width:0}
.site-logo-wrap,.custom-logo-link{display:inline-flex;align-items:center}
.custom-logo{display:block;max-height:72px;width:auto;height:auto}
.site-brand-text{display:flex;flex-direction:column;gap:4px}
.site-brand-text .site-title{font-size:clamp(22px,2.3vw,30px);font-weight:800;line-height:1.1;color:var(--ngp-dark)}
.site-brand-text .site-description{font-size:14px;color:var(--ngp-muted);line-height:1.4}
.main-navigation{display:flex;align-items:center;gap:18px}
.main-navigation > div > ul, .main-navigation > ul, .main-navigation .menu{display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0}
.main-navigation a{display:inline-flex;align-items:center;gap:10px}
.main-navigation img{display:block;max-width:32px;height:auto;border-radius:8px}
.nav-cta{display:flex;align-items:center;margin-left:8px}
.site-main--elementor{min-height:40vh}

.hero-section,.page-banner{
  position:relative;overflow:hidden;color:#fff;
  background:
    linear-gradient(135deg,rgba(15,23,32,.88),rgba(22,101,52,.84)),
    url('assets/service-catalog.jpg') center/cover no-repeat;
}
.hero-section::before,.page-banner::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 80% 10%,rgba(244,200,75,.18),transparent 28%),
             radial-gradient(circle at 10% 95%,rgba(255,255,255,.10),transparent 26%);
}
.hero-inner,.page-banner-inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center;padding:100px 0 90px}
.lead-label{display:inline-flex;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.hero-section h1,.page-banner h1{margin:0 0 16px;font-size:clamp(34px,5vw,62px);line-height:1.02;color:#fff}
.hero-section p,.page-banner p{font-size:18px;max-width:720px}
.hero-badges{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 30px}
.badge{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);font-size:14px;font-weight:700}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-card,.card,.info-card,.service-card,.project-card,.testimonial-card,.placeholder-card,.contact-card,.stat-card{
  background:var(--ngp-card);border:1px solid var(--ngp-border);border-radius:var(--ngp-radius);box-shadow:var(--ngp-shadow)
}
.hero-card{padding:28px;color:var(--ngp-text);position:relative}
.hero-card::after{content:"Editable starter block";position:absolute;top:18px;right:18px;background:rgba(22,101,52,.08);color:var(--ngp-primary);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700}
.hero-card img{border-radius:20px;margin-bottom:18px;aspect-ratio:16/10;object-fit:cover;width:100%}
.hero-card h3{margin:0 0 10px;font-size:28px;color:var(--ngp-dark)}
.meta-list,.feature-list,.placeholder-list{margin:0;padding-left:18px}
.meta-list li,.feature-list li,.placeholder-list li{margin-bottom:8px}

.section{padding:82px 0}
.section-alt{background:var(--ngp-soft)}
.section-green{background:linear-gradient(180deg,#f8fcf8,#eef7ef)}
.section-dark{background:var(--ngp-dark);color:#e8f4ec}
.section-dark .section-title,.section-dark h2,.section-dark h3{color:#fff}
.eyebrow{margin:0 0 12px;color:var(--ngp-primary);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px}
.section-title{margin:0 0 16px;color:var(--ngp-dark);font-size:clamp(28px,4vw,46px);line-height:1.08}
.section-intro{max-width:780px;color:var(--ngp-muted);margin:0 0 28px}
.grid{display:grid;gap:24px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.stats-grid,.archive-grid,.service-grid,.project-grid,.testimonial-grid,.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.kpi,.service-card,.project-card,.testimonial-card,.placeholder-card,.contact-card,.info-card,.stat-card{padding:24px}
.kpi strong{display:block;font-size:34px;line-height:1;color:var(--ngp-primary);margin-bottom:10px}
.card{padding:28px}
.split-banner{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.split-banner-media{min-height:430px;border-radius:var(--ngp-radius);background:center/cover no-repeat;box-shadow:var(--ngp-shadow-lg);position:relative;overflow:hidden}
.split-banner-media::after{content:"Foundation / project banner placeholder";position:absolute;left:18px;bottom:18px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--ngp-dark);font-weight:700;font-size:12px}
.split-banner-content{background:#fff;border-radius:var(--ngp-radius);border:1px solid var(--ngp-border);box-shadow:var(--ngp-shadow);padding:36px}
.service-card h3,.project-card h3,.testimonial-card h3,.info-card h3,.stat-card h3{margin:12px 0 10px;color:var(--ngp-dark);font-size:24px}
.service-icon{width:56px;height:56px;border-radius:18px;background:rgba(22,101,52,.1);color:var(--ngp-primary);display:grid;place-items:center;font-size:22px;font-weight:800}
.service-label,.tag{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eef7f1;color:var(--ngp-primary);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.service-card p,.project-card p,.testimonial-card p,.info-card p,.stat-card p{color:var(--ngp-muted)}
.image-frame{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:18px;margin-bottom:16px}
.placeholder-image,.banner-placeholder{
  width:100%;aspect-ratio:16/10;border-radius:20px;border:2px dashed #b8cab9;
  background:linear-gradient(135deg,#f9fbf9,#edf4ed);display:grid;place-items:center;color:var(--ngp-muted);
  font-weight:700;text-align:center;padding:16px
}
.banner-placeholder{min-height:420px;aspect-ratio:auto}
.edit-note{margin-top:18px;padding:16px 18px;border-radius:18px;background:#f5f9f6;border:1px solid #dbe7dd;color:var(--ngp-muted)}
.dual-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dual-image-grid img,.dual-image-grid .placeholder-image{border-radius:22px;aspect-ratio:1/1;object-fit:cover;box-shadow:var(--ngp-shadow)}
.page-header{padding:72px 0 20px;background:linear-gradient(180deg,#f8fbf8,#fff)}
.page-header h1{margin:0 0 10px;font-size:clamp(30px,4.5vw,48px);line-height:1.08;color:var(--ngp-dark)}
.entry-content{max-width:100%}
.entry-content > *:first-child{margin-top:0}
.entry-content h2,.entry-content h3,.entry-content h4{color:var(--ngp-dark)}
.entry-content .ngp-page-section,.entry-content .ngp-card-grid,.entry-content .ngp-inline-cta,.entry-content .ngp-service-list,.entry-content .ngp-gallery-placeholder,.entry-content .ngp-form-placeholder,.entry-content .ngp-carousel-block,.entry-content .ngp-service-hero{margin:0 0 28px}
.entry-content .ngp-page-section,.entry-content .ngp-service-hero{padding:30px;border:1px solid var(--ngp-border);border-radius:var(--ngp-radius);background:#fff;box-shadow:var(--ngp-shadow)}
.entry-content .ngp-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.entry-content .ngp-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.entry-content .ngp-service-item,.entry-content .ngp-gallery-item,.entry-content .ngp-form-placeholder,.entry-content .ngp-inline-cta,.entry-content .ngp-card,.entry-content .ngp-carousel-block{
  padding:22px;border:1px solid var(--ngp-border);border-radius:24px;background:#f9fbf9;box-shadow:var(--ngp-shadow)
}
.entry-content .ngp-gallery-placeholder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.entry-content .ngp-gallery-box{
  aspect-ratio:4/3;border:2px dashed #b8cab9;border-radius:18px;display:grid;place-items:center;text-align:center;
  padding:14px;color:var(--ngp-muted);font-weight:700;background:#fff
}
.entry-content .ngp-service-item h3,.entry-content .ngp-card h3,.entry-content .ngp-carousel-block h3{margin-top:0}
.entry-content .ngp-note{display:block;margin-top:12px;color:var(--ngp-muted);font-size:14px}
.entry-content .ngp-upload-note{font-size:14px;color:var(--ngp-muted)}
.entry-content .ngp-service-thumb{margin-bottom:14px}
.entry-content .ngp-service-thumb .ngp-gallery-box{aspect-ratio:16/10}
.entry-content .ngp-list{padding-left:18px;margin:0}
.entry-content .ngp-list li{margin-bottom:8px}
.post-type-archive-ngp_service .archive-grid,.post-type-archive-ngf_service .archive-grid,.tax-service_category .archive-grid{margin-top:24px}

.ngp-home-showcase{
  display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch
}
.ngp-pill-list{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 0}
.ngp-pill{padding:9px 13px;border-radius:999px;background:#eef7f1;color:var(--ngp-primary);font-weight:700;font-size:13px}
.ngp-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ngp-check-item{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:18px;background:#f7fbf8;border:1px solid var(--ngp-border)}
.ngp-check-item strong{display:block;color:var(--ngp-dark)}

.ngp-slider{position:relative;overflow:hidden;border-radius:24px}
.ngp-slider-track{display:flex;transition:transform .45s ease}
.ngp-slide{min-width:100%;padding:28px}
.ngp-slider-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.ngp-slider-button{width:44px;height:44px;border-radius:999px;background:#fff;border:1px solid var(--ngp-border);box-shadow:var(--ngp-shadow);display:grid;place-items:center;font-size:18px;font-weight:700;padding:0}
.ngp-slider-button:hover{background:#f4faf5}
.ngp-stars{color:#dba100;letter-spacing:.15em;font-size:18px;font-weight:700;margin-bottom:12px}
.ngp-quote{font-size:18px;line-height:1.8;color:var(--ngp-text)}
.ngp-client{display:flex;align-items:center;gap:14px;margin-top:18px}
.ngp-client-avatar{
  width:54px;height:54px;border-radius:999px;background:linear-gradient(135deg,var(--ngp-primary),#7dd69d);color:#fff;
  display:grid;place-items:center;font-weight:800
}
.ngp-client small{display:block;color:var(--ngp-muted)}
.ngp-gallery-carousel .ngp-slide{padding:0}
.ngp-gallery-carousel .ngp-slide-inner{padding:22px}
.ngp-gallery-visual{aspect-ratio:16/9;border-radius:24px;overflow:hidden;border:1px solid var(--ngp-border);background:#fff}
.ngp-gallery-visual img{width:100%;height:100%;object-fit:cover}
.ngp-gallery-visual .placeholder-image{height:100%;aspect-ratio:auto;border-radius:0}
.ngp-caption{margin-top:14px;color:var(--ngp-muted)}

.floating-actions{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:12px;z-index:999}
.floating-actions a{min-width:152px;justify-content:center}
.site-footer{background:var(--ngp-dark);color:#eef5f0;padding:64px 0 24px;margin-top:40px}
.site-footer a{color:#eef5f0}
.site-footer a:hover{color:var(--ngp-secondary)}
.footer-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:26px}
.footer-widget-area ul,.footer-menu{list-style:none;padding:0;margin:0}
.footer-menu li{margin-bottom:10px}
.footer-meta{display:grid;gap:8px}
.copyright{margin-top:32px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);font-size:14px;color:#c4d0c7}
.catalog-image{border-radius:var(--ngp-radius);box-shadow:var(--ngp-shadow-lg);border:1px solid var(--ngp-border)}

@media (max-width: 980px){
  .header-main,.hero-inner,.page-banner-inner,.grid-2,.split-banner,.footer-grid,.ngp-home-showcase{grid-template-columns:1fr}
  .nav-cta{margin-left:0;padding-top:12px}
  .stats-grid,.archive-grid,.service-grid,.project-grid,.testimonial-grid,.gallery-grid,.entry-content .ngp-gallery-placeholder{grid-template-columns:repeat(2,minmax(0,1fr))}
  .main-navigation{display:none;width:100%}
  .main-navigation.active{display:block}
  .main-navigation ul{flex-direction:column;align-items:flex-start;padding-top:14px}
  .menu-toggle{display:inline-flex}
}
@media (max-width: 640px){
  .site-width,.container{width:min(100% - 22px,var(--ngp-container))}
  .section{padding:60px 0}
  .stats-grid,.archive-grid,.service-grid,.project-grid,.testimonial-grid,.gallery-grid,.dual-image-grid,.entry-content .ngp-card-grid,.entry-content .ngp-service-list,.entry-content .ngp-gallery-placeholder,.ngp-check-grid{grid-template-columns:1fr}
  .hero-section p,.page-banner p{font-size:16px}
  .floating-actions a{min-width:auto}
  .hero-actions{flex-direction:column;align-items:flex-start}
}
