/* Shared DCPL navbar and compact spacing for every page. */
.dcpl-shared-header { position: sticky; top: 0; z-index: 1050; width: 100%; background: rgba(255,255,255,.97); border-bottom: 1px solid rgba(20,40,30,.08); box-shadow: 0 4px 18px rgba(15,35,25,.06); }
.dcpl-shared-header .navbar { min-height: 76px; padding: 7px 0; }
.dcpl-shared-header .container { display:flex; align-items:center; gap:18px; }
.dcpl-shared-header .navbar-brand { display:flex; align-items:center; gap:10px; min-width:0; margin:0; text-decoration:none; }
.dcpl-shared-header .brand-logo { display:flex; align-items:center; flex:0 0 auto; }
.dcpl-shared-header .brand-logo img { width:70px; height:50px; object-fit:contain; }
.dcpl-shared-header .brand-text { display:flex; flex-direction:column; line-height:1.1; }
.dcpl-shared-header .brand-text strong { color:#15251c; font-size:14px; font-weight:800; white-space:nowrap; }
.dcpl-shared-header .brand-text span { color:#f59e0b; font-size:11px; font-weight:800; letter-spacing:.18em; margin-top:4px; }
.dcpl-shared-header .navbar-collapse { align-items:center; }
.dcpl-shared-header .navbar-nav { gap:2px; }
.dcpl-shared-header .nav-link { display:flex; align-items:center; gap:7px; padding:10px 11px; border:0; background:transparent; color:#26372d; font-size:13px; font-weight:650; text-decoration:none; border-radius:9px; white-space:nowrap; }
.dcpl-shared-header .nav-link:hover, .dcpl-shared-header .nav-link.active { color:#15803d; background:rgba(22,163,74,.08); }
.dcpl-shared-header .navbar-toggler { border:1px solid #dce6df; padding:7px 10px; color:#166534; box-shadow:none!important; }
.dcpl-shared-header .navbar-toggler i { font-size:24px; }
.dcpl-shared-header .dcpl-other-item { position:relative; }
.dcpl-shared-header .other-dropdown-menu { display:none; position:absolute; top:100%; right:0; min-width:180px; padding:7px; background:#fff; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 12px 30px rgba(0,0,0,.12); }
.dcpl-shared-header .other-dropdown-menu.show { display:block; }
.dcpl-shared-header .other-dropdown-menu a { display:flex; gap:9px; padding:10px; color:#26372d; text-decoration:none; border-radius:8px; font-size:13px; }
.dcpl-shared-header .other-dropdown-menu a:hover { background:#f0fdf4; color:#166534; }
.dcpl-shared-header .dcpl-nav-cta .nav-book-inspection { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:11px 14px; margin-left:5px; color:#172217; background:#fbbf24; border-radius:10px; text-decoration:none; font-weight:800; font-size:12px; white-space:nowrap; }
/* Reduce excess vertical whitespace on long pages while keeping content and readable type. */
section.section-padding, .section-padding, .company-overview-section, .why-dcpl-section, .gst-registration-section, .solar-calculator-section { padding-top:clamp(28px,4vw,54px)!important; padding-bottom:clamp(28px,4vw,54px)!important; }
section .container > .section-heading-center, section .container > .section-header, section .container > .section-title { margin-bottom:22px; }
.form-card { padding:clamp(14px,2vw,22px)!important; margin-bottom:14px!important; }
@media(max-width:1199px) { .dcpl-shared-header .nav-link { padding:9px 7px; font-size:12px; } .dcpl-shared-header .brand-logo img { width:60px; height:46px; } .dcpl-shared-header .brand-text strong { font-size:12px; } .dcpl-shared-header .dcpl-nav-cta .nav-book-inspection { padding:10px; } }
@media(max-width:991px) {
 .dcpl-shared-header .navbar { min-height:68px; }
 .dcpl-shared-header .container { flex-wrap:wrap; justify-content:space-between; }
 .dcpl-shared-header .navbar-collapse { flex-basis:100%; width:100%; }
 .dcpl-shared-header .navbar-nav { align-items:stretch!important; padding:8px 0 12px; gap:2px; }
 .dcpl-shared-header .nav-link { width:100%; padding:11px 12px; font-size:14px; }
 .dcpl-shared-header .other-dropdown-menu { position:static; box-shadow:none; border-radius:8px; margin:0 8px 8px; }
 .dcpl-shared-header .dcpl-nav-cta .nav-book-inspection { margin:7px 0 0; width:100%; }
 .dcpl-shared-header .brand-logo img { width:58px; height:43px; }
}
@media(max-width:420px) { .dcpl-shared-header .brand-text strong { font-size:11px; } .dcpl-shared-header .brand-logo img { width:49px; height:39px; } .dcpl-shared-header .brand-text span { font-size:10px; } }

/* Calculator: progressive disclosure keeps the first decision short. */
.calculator-optional-details { border:1px solid #e4eae5; border-radius:13px; margin:0 0 12px; background:#fff; overflow:hidden; }
.calculator-optional-details > summary { cursor:pointer; list-style:none; padding:13px 16px; color:#166534; font-weight:750; font-size:14px; background:#f7fbf8; }
.calculator-optional-details > summary::-webkit-details-marker { display:none; }
.calculator-optional-details > summary:after { content:'+'; float:right; font-size:18px; line-height:1; }
.calculator-optional-details[open] > summary:after { content:'−'; }
.calculator-optional-details .form-card { border:0!important; box-shadow:none!important; margin:0!important; }
.calculator-quick-note { color:#64748b; font-size:13px; line-height:1.5; margin:0 0 14px; }
#aiSolarCalculator .calculator-heading p { max-width:760px; margin-inline:auto; }
#aiSolarCalculator .form-group { margin-bottom:12px!important; }
#aiSolarCalculator .form-control { min-height:43px; }
#aiSolarCalculator .progress-wrapper { margin-bottom:16px; }

.calculator-subsidy-note { display:block; margin-top:7px; color:#64748b; font-size:11px; line-height:1.45; font-weight:500; }
.calculator-estimate-disclaimer { font-size:12px!important; color:#64748b!important; margin-top:7px!important; }
