/* SolarQuery services v4.0. Original layout © ThinkStart Private Limited. */
.sq-service-page { --svc-mint:#edf6f1; --svc-deep:#213b31; }
.svc-breadcrumb { display:flex; flex-wrap:wrap; gap:.5rem; padding-block:1.25rem; font-size:1rem; line-height:1.5; }
.svc-breadcrumb a { color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-breadcrumb span[aria-hidden] { color:#718078; }
.svc-hero { background:linear-gradient(90deg,#fff 0%,#fff 60%,#edf6f1 60%,#edf6f1 100%); padding-bottom:2rem; }
.svc-hero-grid { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,1fr); gap:3.5rem; align-items:center; padding-block:1rem 2rem; }
.svc-hero h1 { font-size:clamp(2.375rem,3.7vw,3.625rem); line-height:1.09; letter-spacing:-.04em; margin:1rem 0 1.25rem; }
.svc-hero-copy>p { font-size:1.125rem; line-height:1.75; max-width:37rem; }
.svc-actions { display:flex; flex-wrap:wrap; gap:.875rem 1.25rem; align-items:center; margin-top:1.5rem; }
.svc-actions a { min-height:2.75rem; }
.svc-actions .svc-link { display:inline-flex; align-items:center; gap:.5rem; font-size:1rem; font-weight:600; color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-hero-figure { border-radius:5rem 1rem 1rem 1rem; overflow:hidden; background:#deebe3; margin:0; }
.svc-hero-figure img { display:block; width:100%; aspect-ratio:1.13; object-fit:cover; }
.svc-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; border-top:1px solid #c8d9cf; padding-top:1.5rem; }
.svc-highlights>div { display:flex; gap:.625rem; font-size:1rem; line-height:1.55; align-items:flex-start; color:#354f43; }
.svc-highlights .sq-icon { color:var(--sq-action-dark); width:1.375rem; height:1.375rem; margin-top:.125rem; }
.svc-jump-wrap { border-block:1px solid #dde8e0; background:#fff; }
.svc-jump { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; padding-block:.75rem; align-items:center; }
.svc-jump a { display:flex; align-items:center; min-height:2.75rem; font-size:1rem; font-weight:600; text-decoration:underline; text-underline-offset:.2em; }
.svc-jump .svc-all-link { margin-left:auto; color:var(--sq-action-dark); }
.svc-section { padding-block:4.75rem; }
.svc-soft { background:var(--svc-mint); }
.svc-heading { max-width:49rem; margin-bottom:2rem; }
.svc-heading .sq-kicker { margin-bottom:.75rem; }
.svc-heading h2 { font-size:clamp(1.875rem,3vw,2.625rem); line-height:1.2; }
.svc-heading>p { margin-top:1rem; font-size:1.125rem; line-height:1.75; }
.svc-overview { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.25fr); gap:4rem; align-items:start; }
.svc-overview p+p { margin-top:1rem; }
.svc-overview p { font-size:1.125rem; line-height:1.85; }
.svc-offerings { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.svc-offering { padding:1.75rem; border:1px solid #d5e2d8; border-radius:1rem; background:#fff; }
.svc-number { display:block; font-size:1rem; color:var(--sq-action-dark); font-weight:600; margin-bottom:1.25rem; letter-spacing:.05em; }
.svc-offering h3,.svc-option h3,.svc-consideration h3 { font-size:1.25rem; line-height:1.35; margin-bottom:.625rem; letter-spacing:-.015em; }
.svc-offering p,.svc-option p,.svc-consideration p { font-size:1rem; line-height:1.8; }
.svc-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.svc-option { padding:1.5rem 1.5rem 1.5rem 0; border-right:1px solid #d5e2d8; }
.svc-option:last-child { border-right:0; }
.svc-option .sq-icon { color:var(--sq-action-dark); margin-bottom:1rem; width:2rem; height:2rem; }
.svc-picture-split { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:3.5rem; align-items:start; }
.svc-picture-split figure { border-radius:1.25rem; overflow:hidden; background:#e7f0e8; }
.svc-picture-split figure img { width:100%; aspect-ratio:1.12; object-fit:cover; }
.svc-picture-split figure p { padding:1.25rem; font-size:1.125rem; line-height:1.65; color:#344f42; background:#edf6f1; }
.svc-consideration { padding-bottom:1.25rem; margin-bottom:1.25rem; border-bottom:1px solid #d8e3db; }
.svc-consideration:last-child { margin-bottom:0; }
.svc-cost { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:3.5rem; }
.svc-cost ul { margin:1.5rem 0 0; padding-left:1.25rem; }
.svc-cost li { padding-left:.25rem; margin-bottom:.75rem; font-size:1.125rem; }
.svc-cost-aside { background:#fff; padding:2rem; border:1px solid #cbded1; border-radius:1rem; align-self:start; }
.svc-cost-aside h3 { font-size:1.5rem; margin-bottom:1rem; }
.svc-cost-aside p { font-size:1rem; line-height:1.8; }
.svc-cost-aside a { width:100%; margin-top:1.5rem; }
.svc-band { background:#213b31; color:#fff; padding:2rem; border-radius:1rem; display:flex; justify-content:space-between; align-items:center; gap:2rem; margin-top:2rem; }
.svc-band h3 { font-size:1.5rem; line-height:1.3; }
.svc-band p { color:#dbe9e1; font-size:1rem; margin-top:.5rem; line-height:1.7; }
.svc-band .sq-button { flex:none; }
.svc-process { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin-block:2rem; }
.svc-process article { border-top:2px solid var(--sq-action-dark); padding-top:1rem; }
.svc-process h3 { font-size:1.25rem; line-height:1.35; margin-bottom:.75rem; }
.svc-process p { font-size:1rem; line-height:1.8; }
.svc-enquiry-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:3rem; align-items:start; }
.svc-enquiry-aside ul { padding:0; list-style:none; margin-block:1.5rem; }
.svc-enquiry-aside li { padding:.75rem 0; border-bottom:1px solid #d3e0d6; font-size:1rem; line-height:1.7; }
.svc-enquiry-aside li::before { content:'✓'; color:var(--sq-action-dark); margin-right:.5rem; font-weight:700; }
.svc-enquiry-aside figure img { width:100%; aspect-ratio:1.8; object-fit:cover; border-radius:1rem; }
.svc-enquiry-aside>p { font-size:1rem; line-height:1.7; margin-top:1rem; }
.svc-form { padding:2rem; border:1px solid #cbded1; border-radius:1rem; background:#fff; box-shadow:0 12px 38px #183b2910; }
.svc-form h3 { font-size:1.5rem; line-height:1.35; margin-bottom:.5rem; }
.svc-form>p { font-size:1rem; line-height:1.7; margin-bottom:1.25rem; }
.svc-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; }
.svc-form-grid .svc-wide { grid-column:1/-1; }
.svc-form .sq-field { margin-bottom:1rem; }
.svc-form textarea { min-height:7.5rem; }
.svc-form .sq-check { font-size:1rem; }
.svc-form .sq-check input { margin-top:.375rem; }
.svc-form-status { border-left:3px solid var(--sq-action-dark); padding:1rem; font-size:1rem; line-height:1.7; background:#edf6f1; margin-block:1rem; }
.svc-form-status[data-error=true] { border-color:#843126; color:#843126; background:#fff6f2; }
.svc-field-error { font-size:1rem; line-height:1.5; color:#843126; margin-top:.375rem; }
.svc-hp { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.svc-form-footer { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1.25rem; margin-top:1rem; font-size:1rem; }
.svc-providers { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr)); gap:1.25rem; }
.svc-provider { padding:1.75rem; border:1px solid #d3e1d7; border-radius:1rem; display:flex; flex-direction:column; }
.svc-provider-top { display:flex; align-items:center; gap:1rem; margin-bottom:1rem; }
.svc-provider-mark { display:grid; place-items:center; width:3rem; height:3rem; border:1px solid #c9dcd0; border-radius:.75rem; background:#edf6f1; color:var(--sq-action-dark); font-size:1.125rem; font-weight:700; flex:none; }
.svc-provider h3 { font-size:1.25rem; line-height:1.4; }
.svc-provider p { font-size:1rem; line-height:1.75; margin-bottom:.75rem; }
.svc-provider small { display:block; font-size:1rem; line-height:1.6; padding:.75rem 0; margin-top:auto; border-top:1px solid #dbe6de; }
.svc-provider a { display:inline-flex; align-items:center; justify-content:space-between; gap:1rem; font-size:1rem; min-height:2.75rem; font-weight:600; color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-provider-note { font-size:1rem; max-width:65rem; line-height:1.75; margin-bottom:1.75rem; color:#526459; }
.svc-faq-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:4rem; }
.svc-faq details { border-bottom:1px solid #d4e1d8; }
.svc-faq summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.125rem 0; font-size:1.125rem; font-weight:600; cursor:pointer; list-style:none; }
.svc-faq summary::after { content:'+'; font-size:1.5rem; color:var(--sq-action-dark); flex:none; }
.svc-faq details[open] summary::after { content:'−'; }
.svc-faq details>p { padding:0 1.5rem 1.25rem 0; font-size:1rem; line-height:1.85; }
.svc-related { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.svc-related article { border:1px solid #d5e2d8; border-radius:1rem; overflow:hidden; background:#fff; }
.svc-related img { width:100%; aspect-ratio:1.6; object-fit:cover; }
.svc-related article>div { padding:1.25rem; }
.svc-related h3 { font-size:1.375rem; line-height:1.35; margin-bottom:.5rem; }
.svc-related p { font-size:1rem; line-height:1.75; margin-bottom:1rem; }
.svc-related a { display:flex; align-items:center; justify-content:space-between; min-height:2.75rem; font-size:1rem; font-weight:600; color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-all-services { margin-top:2rem; border:1px solid #c6d9cd; border-radius:.75rem; padding:1rem 1.25rem; background:#fff; }
.svc-all-services summary { font-size:1.125rem; font-weight:600; cursor:pointer; }
.svc-all-services nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem 1.5rem; padding-top:1rem; }
.svc-all-services a { display:flex; align-items:center; min-height:2.75rem; font-size:1rem; color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-reading { padding-block:2rem; border-top:1px solid #dbe5de; }
.svc-reading summary { font-size:1rem; font-weight:600; cursor:pointer; }
.svc-reading ul { font-size:1rem; line-height:1.8; }
.svc-directory-intro { max-width:51rem; padding-block:2rem 3rem; }
.svc-directory-intro h1 { font-size:clamp(2.5rem,4vw,3.75rem); margin:1rem 0; }
.svc-directory-intro p { font-size:1.125rem; line-height:1.8; }
.svc-directory-tools { display:flex; flex-wrap:wrap; align-items:end; gap:1rem; padding:1.5rem; background:#edf6f1; border:1px solid #d0e1d5; border-radius:1rem; margin-bottom:2rem; }
.svc-directory-tools .sq-field { flex:1 1 18rem; margin:0; }
.svc-directory-filters { display:flex; flex-wrap:wrap; gap:.5rem; }
.svc-directory-filters button { border:1px solid #718078; padding:.5rem .875rem; border-radius:99px; font-size:1rem; background:#fff; color:#354f43; }
.svc-directory-filters button[aria-pressed=true] { background:#213b31; color:#fff; }
.svc-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.svc-directory-group { padding-block:1.5rem 3rem; }
.svc-directory-group>h2 { font-size:1.75rem; margin-bottom:1.5rem; }
.svc-directory-card { border:1px solid #d3e1d7; border-radius:1rem; overflow:hidden; display:flex; flex-direction:column; }
.svc-directory-card>img { width:100%; aspect-ratio:1.7; object-fit:cover; }
.svc-directory-card>div { padding:1.5rem; display:flex; flex-direction:column; flex:1; }
.svc-directory-card h3 { font-size:1.375rem; line-height:1.3; margin-bottom:.75rem; }
.svc-directory-card p { font-size:1rem; line-height:1.75; margin-bottom:1rem; }
.svc-directory-card a { margin-top:auto; display:flex; justify-content:space-between; align-items:center; font-size:1rem; font-weight:600; min-height:2.75rem; color:var(--sq-action-dark); text-decoration:underline; text-underline-offset:.2em; }
.svc-nav-current { font-weight:700!important; color:var(--sq-action-dark)!important; }
@media(max-width:65em) {
 .svc-hero-grid,.svc-overview,.svc-picture-split,.svc-cost,.svc-enquiry-layout,.svc-faq-layout { gap:2rem; }
 .svc-hero h1 { font-size:2.625rem; }
 .svc-offerings,.svc-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .svc-form { padding:1.5rem; }
 .svc-related { gap:1rem; }
}
@media(max-width:48em) {
 .svc-hero { background:#edf6f1; }
 .svc-hero-grid,.svc-overview,.svc-picture-split,.svc-cost,.svc-enquiry-layout,.svc-faq-layout { grid-template-columns:minmax(0,1fr); gap:2rem; }
 .svc-hero-grid { padding-top:.5rem; }
 .svc-hero-figure { border-radius:3rem 1rem 1rem 1rem; }
 .svc-hero-figure img { aspect-ratio:1.6; }
 .svc-highlights { grid-template-columns:minmax(0,1fr); gap:.75rem; }
 .svc-section { padding-block:3rem; }
 .svc-options,.svc-process { grid-template-columns:minmax(0,1fr); gap:1rem; }
 .svc-option { border-right:0; border-bottom:1px solid #d5e2d8; padding:1rem 0; }
 .svc-related { grid-template-columns:minmax(0,1fr); }
 .svc-related img { aspect-ratio:1.9; }
 .svc-band { flex-direction:column; align-items:flex-start; padding:1.5rem; gap:1.25rem; }
 .svc-picture-split figure img { aspect-ratio:1.5; }
 .svc-all-services nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .svc-jump { gap:.25rem 1rem; }
 .svc-jump .svc-all-link { margin-left:0; }
}
@media(max-width:34em) {
 .svc-hero h1 { font-size:2.25rem; }
 .svc-offerings,.svc-directory-grid,.svc-form-grid,.svc-all-services nav { grid-template-columns:minmax(0,1fr); }
 .svc-offering,.svc-cost-aside { padding:1.25rem; }
 .svc-form { padding:1.25rem; }
 .svc-hero .svc-actions>.sq-button { width:100%; }
 .svc-directory-tools { padding:1rem; }
}
@media(prefers-reduced-motion:reduce) { .sq-service-page *, .sq-service-page *::before,.sq-service-page *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
