/* Studio 01 page components. Shared by About, Solar Projects and PM Surya Ghar. */
.marketing-page { background:#fff; --primary-main:var(--ds-brand); --accent-blue-main:var(--ds-brand); --base-500:var(--ds-muted); --base-600:var(--ds-muted); --base-700:var(--ds-ink); }
.marketing-page *, .marketing-page *::before, .marketing-page *::after { box-sizing:border-box; }
.marketing-page .container { width:min(1200px,calc(100% - 64px)); max-width:1200px; margin-inline:auto; padding-inline:0; }
.marketing-page main { padding:0; }
.marketing-page main :is(section,article,div,aside) { min-width:0; }
.marketing-page main :is(h1,h2,h3,p) { overflow-wrap:break-word; }
.marketing-page main h1 { color:var(--ds-ink); font-size:clamp(2.7rem,4.7vw,4.5rem); line-height:1.06; letter-spacing:-.065em; margin:0; font-weight:600; mix-blend-mode:normal; text-shadow:none; }
.marketing-page main h2 { color:var(--ds-ink); font-size:clamp(1.9rem,3vw,2.8rem); line-height:1.18; letter-spacing:-.05em; margin:0 0 18px; }
.marketing-page main h3 { color:var(--ds-ink); font-size:1.2rem; line-height:1.4; letter-spacing:-.025em; margin:0 0 12px; }
.marketing-page main p { color:var(--ds-muted); font-size:.96rem; line-height:1.8; }
.marketing-page main .lead { font-size:1.04rem; line-height:1.8; margin:0; }
.marketing-page .section { padding:96px 0; background:#fff; }
.marketing-page main > section::before, .marketing-page main > section::after { display:none; }
.marketing-page .section.alt { background:var(--ds-paper); }
.marketing-page .head { max-width:740px; margin:0 auto 44px; text-align:center; }
.marketing-page .head .sub { font-size:1rem; color:var(--ds-muted); }
.marketing-page .page-hero { padding:80px 0 64px; background:var(--ds-paper); color:var(--ds-ink); }
.marketing-page .hero-inner { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); gap:64px; align-items:center; }
.marketing-page .hero-copy { gap:24px; }
.marketing-page :is(.hero-eyebrow,.badge-inline,.tag,.ds-kicker) { width:fit-content; max-width:100%; font-size:.67rem; line-height:1.6; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:#27614d; background:#edf4ee; border:1px solid #ccdcd2; border-radius:999px; padding:7px 12px; box-shadow:none; }
.marketing-page .hero-eyebrow { display:inline-flex; }
.marketing-page .hero-media { border:1px solid var(--ds-border); background:#fff; padding:8px; border-radius:24px; box-shadow:var(--ds-shadow); overflow:hidden; }
.marketing-page .hero-media img { width:100%; height:auto; aspect-ratio:5/4; object-fit:cover; border-radius:18px; display:block; }
.marketing-page .hero-media .caption { position:static; background:transparent; color:var(--ds-muted); padding:14px 8px 6px; border-radius:0; font-size:.72rem; letter-spacing:0; }
.marketing-page .hero-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding-top:20px; border-top:1px solid var(--ds-border); }
.marketing-page .hero-metric { background:none; border:0; border-right:1px solid var(--ds-border); border-radius:0; padding:0 12px 0 0; gap:7px; color:var(--ds-muted); }
.marketing-page .hero-metric:last-child { border:0; }
.marketing-page .hero-metric span:first-child { font-size:.96rem; color:#264b3e; font-weight:600; }
.marketing-page .hero-metric span:last-child { font-size:.76rem; line-height:1.6; }
.marketing-page .cta-actions { display:flex; flex-wrap:wrap; gap:12px; }
.marketing-page .btn { min-height:50px; border-radius:var(--ds-control-radius); padding:15px 22px; font-size:.88rem; line-height:1.5; box-shadow:none; white-space:normal; text-align:center; }
.marketing-page main .btn-primary { color:#fff; background:var(--ds-brand); border:1px solid var(--ds-brand); box-shadow:none; }
.marketing-page main .btn-primary:hover { background:var(--ds-brand-hover); border-color:var(--ds-brand-hover); }
.marketing-page main .btn-secondary { color:var(--ds-ink); background:transparent; border:1px solid #becfc6; box-shadow:none; }
.marketing-page main .btn-secondary:hover { background:#e7eee9; }
.marketing-page :is(.feature-grid,.team-grid,.resource-grid,.project-gallery-grid,.case-study-grid,.testimonial-grid,.faq-grid) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.marketing-page :is(.feature-card,.team-card,.resource-card,.card,.case-card,.testimonial-card,.faq-item,.stat-card) { background:#fff; border:1px solid var(--ds-border); border-radius:var(--ds-radius); padding:30px; box-shadow:none; }
.marketing-page :is(.feature-card,.resource-card,.team-card) { transition:border-color .2s,transform .2s; }
.marketing-page :is(.feature-card,.resource-card,.team-card):hover { transform:translateY(-3px); border-color:#97bbab; box-shadow:var(--ds-shadow); }
.marketing-page .feature-card > i { display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:#edf4ef; border:1px solid #dce9e0; font-size:1.1rem; color:var(--ds-brand); margin-bottom:24px; }
.marketing-page .feature-card:first-child { background:#163e36; border-color:#163e36; }
.marketing-page .feature-card:first-child :is(h3,li,p) { color:#d2e2d7; }
.marketing-page .feature-card:first-child h3 { color:#f2f7f3; }
.marketing-page .feature-card:first-child i { color:var(--ds-accent); }
.marketing-page .feature-card:first-child > i { background:#285448; border-color:#426b5e; }
.marketing-page .list-check { margin:16px 0 0; padding:0; display:grid; gap:12px; }
.marketing-page .list-check li { display:flex; gap:12px; align-items:flex-start; color:var(--ds-muted); font-size:.89rem; line-height:1.8; }
.marketing-page .list-check i { color:var(--ds-brand); margin-top:5px; flex-shrink:0; }
.marketing-page .grid { gap:24px; }
.marketing-page .ds-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:64px; }
.marketing-page .ds-duo, .marketing-page .ds-overview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; align-items:start; }
.marketing-page .ds-split > .grid { align-content:start; gap:20px; }
.marketing-page .media-frame { border-radius:24px; border:1px solid var(--ds-border); box-shadow:none; background:var(--ds-paper); padding:8px; }
.marketing-page .media-frame img { width:100%; height:auto; max-height:600px; object-fit:cover; border-radius:18px; display:block; }
.marketing-page .founder-section .media-frame img { aspect-ratio:4/5; object-position:top center; }
.marketing-page .stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.marketing-page .stat-label { color:var(--ds-muted); font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; }
.marketing-page .stat-value { color:var(--ds-brand); font-size:clamp(1.5rem,2.6vw,2.4rem); font-weight:500; letter-spacing:-.04em; margin:16px 0; }
.marketing-page .stat-card p { font-size:.86rem; }
.marketing-page .team-card img { width:100%; height:auto; aspect-ratio:4/4.5; object-fit:cover; object-position:top; border-radius:14px; margin-bottom:24px; }
.marketing-page .team-card p { font-size:.86rem; }
.marketing-page .timeline { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; padding:0; margin:0; counter-reset:steps; }
.marketing-page.about-page .timeline { grid-template-columns:repeat(2,minmax(0,1fr)); }
.marketing-page .timeline::before { display:none; }
.marketing-page .timeline li { margin:0; padding:28px 0 0; border-top:1px solid #ccdcd2; background:none; border-radius:0; box-shadow:none; counter-increment:steps; }
.marketing-page .timeline li::before { content:'0' counter(steps); position:static; display:block; background:none; border:0; width:auto; height:auto; color:var(--ds-brand); font-size:2rem; font-weight:500; margin:0 0 20px; box-shadow:none; }
.marketing-page .timeline p { font-size:.9rem; }
.marketing-page .cta-panel { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:44px; padding:48px; border-radius:24px; background:#153b35; color:#d0e0d5; box-shadow:none; }
.marketing-page .cta-panel h2 { color:#f5f8f5; }
.marketing-page .cta-panel p { color:#c5d8ce; }
.marketing-page .cta-panel .hero-eyebrow { color:#d8f36a; border-color:#426b5e; background:#285448; margin-bottom:20px; }
.marketing-page .cta-panel .cta-actions { flex-direction:column; align-items:stretch; }
.marketing-page .cta-panel .btn-primary { background:var(--ds-accent); border-color:var(--ds-accent); color:var(--ds-ink); }
.marketing-page .cta-panel .btn-primary:hover { background:#c8e55d; }
.marketing-page .cta-panel .btn-secondary { border-color:#76948a; color:#fff; }
.marketing-page .cta-panel .btn-secondary:hover { background:#285448; }
.marketing-page .project-card { margin:0; border:1px solid var(--ds-border); border-radius:20px; box-shadow:none; overflow:hidden; background:#fff; }
.marketing-page .project-card img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; display:block; }
.marketing-page .project-card figcaption { padding:18px 22px; font-size:.84rem; color:var(--ds-muted); }
.marketing-page .case-filter-group { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-bottom:32px; }
.marketing-page .case-filter { background:#fff; color:var(--ds-ink); border:1px solid var(--ds-border); border-radius:999px; min-height:46px; padding:10px 20px; font-size:.85rem; font-weight:500; }
.marketing-page .case-filter.is-active { background:var(--ds-brand); color:#fff; border-color:var(--ds-brand); }
.marketing-page .case-card { padding:0; overflow:hidden; }
.marketing-page .case-media:empty { display:none; }
.marketing-page .case-media img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.marketing-page .case-body { padding:28px; }
.marketing-page .case-segment { background:#edf4ee; color:var(--ds-brand); font-size:.72rem; }
.marketing-page .case-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.marketing-page .case-metrics dd { color:var(--ds-ink); font-weight:600; font-size:1rem; }
.marketing-page .site-search-empty, .marketing-page .site-search-loading { grid-column:1/-1; padding:28px; border:1px dashed var(--ds-border); border-radius:16px; margin:0; text-align:center; }
.marketing-page .highlight-banner { background:#edf4ee; color:var(--ds-ink); border:1px solid var(--ds-border); border-radius:20px; padding:32px; box-shadow:none; }
.marketing-page .highlight-banner h2 { margin-top:20px; }
.marketing-page .ds-scheme-summary { background:#153b35; padding:36px; border-radius:24px; color:#fff; box-shadow:var(--ds-shadow); }
.marketing-page .ds-scheme-summary h2 { color:#fff; margin-top:24px; font-size:2.2rem; }
.marketing-page .ds-scheme-summary .ds-kicker { display:inline-block; color:var(--ds-accent); background:#285448; border-color:#426b5e; }
.marketing-page .table-wrapper { overflow-x:auto; border:0; border-radius:0; background:transparent; box-shadow:none; }
.marketing-page table { width:100%; min-width:0; border-collapse:collapse; background:transparent; }
.marketing-page table :is(thead,tbody,tr) { background:transparent; }
.marketing-page table th, .marketing-page table td { padding:20px 0; background:transparent; border-bottom:1px solid #426b5e; color:#e5efe8; text-align:left; font-size:.94rem; }
.marketing-page table th { font-size:.72rem; font-weight:500; color:#acc6b8; text-transform:uppercase; letter-spacing:.06em; }
.marketing-page table td:last-child { color:var(--ds-accent); font-size:1.2rem; font-weight:600; text-align:right; }
.marketing-page table th:last-child { text-align:right; }
.marketing-page table caption, .marketing-page .ds-scheme-summary .ds-note { caption-side:bottom; color:#c5d8ce; font-size:.75rem; line-height:1.8; text-align:left; padding-top:20px; }
.marketing-page table caption a { color:#d8f36a; text-decoration:underline; }
.marketing-page .faq-grid { grid-template-columns:1fr; max-width:840px; margin:auto; gap:0; }
.marketing-page .faq-item { padding:28px 0; border:0; border-bottom:1px solid var(--ds-border); border-radius:0; background:transparent; }
.marketing-page .faq-item h3 { font-size:1.1rem; }
.marketing-page .animate-fade-up { animation:none; opacity:1; transform:none; }
.ds-skip { position:fixed; top:-100px; left:16px; z-index:9999; background:#fff; color:var(--ds-ink); border:2px solid var(--ds-brand); padding:12px 20px; }
.ds-skip:focus { top:12px; }
@media(min-width:1600px) { .marketing-page .container { max-width:1320px; width:min(1320px,calc(100% - 96px)); } }
@media(max-width:1000px) {
 .marketing-page .container { width:calc(100% - 48px); }
 .marketing-page .hero-inner, .marketing-page .ds-split { gap:32px; }
 .marketing-page :is(.feature-grid,.team-grid,.resource-grid,.project-gallery-grid,.case-study-grid,.testimonial-grid,.stat-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .marketing-page .cta-panel { grid-template-columns:1fr; }
}
@media(max-width:800px) {
 .marketing-page .hero-inner { grid-template-columns:1fr; gap:36px; }
 .marketing-page .page-hero { padding:48px 0; }
 .marketing-page .hero-media img { aspect-ratio:16/10; }
 .marketing-page .timeline { grid-template-columns:1fr; }
}
@media(max-width:700px) {
 .marketing-page .container { width:calc(100% - 36px); }
 .marketing-page main { padding-inline:0!important; }
 .marketing-page main > section { border-radius:0!important; }
 .marketing-page .section { padding:64px 0; }
 .marketing-page .page-hero { padding:36px 0 44px; }
 .marketing-page main h1 { font-size:clamp(2.45rem,10vw,3.6rem); }
 .marketing-page main h2 { font-size:2rem; }
 .marketing-page .head { text-align:left; margin-bottom:32px; }
 .marketing-page .hero-copy { gap:22px; }
 .marketing-page :is(.ds-split,.ds-duo,.ds-overview,.feature-grid,.team-grid,.resource-grid,.case-study-grid,.testimonial-grid) { grid-template-columns:1fr; }
 .marketing-page .hero-metric span:first-child { font-size:.82rem; }
 .marketing-page .hero-metric span:last-child { font-size:.7rem; }
 .marketing-page .hero-metrics { gap:12px; }
 .marketing-page .cta-actions { flex-direction:column; }
 .marketing-page :is(.feature-card,.team-card,.resource-card,.card,.testimonial-card,.stat-card) { padding:24px; }
 .marketing-page .cta-panel, .marketing-page .ds-scheme-summary { padding:26px; }
 .marketing-page .project-gallery-grid { gap:14px; }
 .marketing-page .project-card figcaption { padding:12px; font-size:.75rem; }
 .marketing-page .case-filter-group { justify-content:flex-start; gap:8px; }
 .marketing-page .case-filter { padding:10px 16px; }
 .marketing-page.about-page .timeline { grid-template-columns:1fr; }
 .marketing-page .hero-media .caption { padding:12px 6px 4px; }
 .marketing-page .site-header .header-inner { width:calc(100% - 28px); padding:14px 0; }
 .marketing-page .site-header .brand-text { font-size:clamp(.85rem,3.6vw,1.2rem); }
 .marketing-page .stat-value { font-size:1.55rem; }
}
@media(max-width:380px) { .marketing-page .project-gallery-grid, .marketing-page .stat-grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .marketing-page *, .marketing-page *::before, .marketing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
