/* Batch 2 uses the existing Solar Panels UK (spuk-*) design system. */
.aoro-pending-link { display: none !important; }
.smu-wrap { font-family: "Spline Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.smu-wrap .spuk-hero-h1,
.smu-wrap .spuk-h2,
.smu-wrap .spuk-h2-light,
.smu-wrap .spuk-cta-h2,
.smu-wrap h3 { font-family: "Spline Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
.smu-hero { min-height: 760px; }
.smu-wrap .spuk-hero-h1 { max-width: 790px; font-size: clamp(40px, 4.7vw, 62px) !important; font-weight: 700 !important; line-height: 1.08 !important; }
.smu-wrap .spuk-hero-sub { max-width: 700px; }
.smu-wrap .spuk-data-panel { padding: 30px; }
.smu-panel-title { margin-left: 8px; color: rgba(255,255,255,.5); font-size: 11px; }
.smu-wrap .spuk-dp-stats { gap: 20px; }
.smu-wrap .spuk-dp-val { font-size: 19px; }
.smu-panel-flow { display: grid; gap: 12px; margin: 6px 0 26px; }
.smu-panel-flow div { display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: center; padding: 13px 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; background: rgba(255,255,255,.035); }
.smu-panel-flow span { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; color: #071426; background: #a0ffd4; font-size: 11px; font-weight: 800; }
.smu-panel-flow p { margin: 0 !important; color: rgba(255,255,255,.82) !important; font-size: 13px !important; line-height: 1.4 !important; }
.smu-service-row { grid-template-columns: repeat(3, minmax(0,1fr)); }
.smu-support-callout { margin-top: 30px; padding: 24px; border: 1px solid #b9d8ce; border-radius: 12px; background: rgba(31,111,92,.055); }
.smu-support-callout strong { display: block; margin-bottom: 7px; color: #0f172a; font-size: 18px; }
.smu-support-callout p { margin: 0 0 14px !important; color: #475569 !important; font-size: 14px !important; line-height: 1.65 !important; }
.smu-support-callout a,
.smu-inline-links a { color: #1F6F5C !important; font-size: 14px; font-weight: 700; text-decoration: none; }
.smu-support-callout a:hover,
.smu-inline-links a:hover { text-decoration: underline; }
.smu-image-panel { position: relative; overflow: hidden; min-height: 540px; padding: 0; background: #071426; }
.smu-image-panel img { width: 100%; height: 540px; object-fit: cover; }
.smu-image-panel::after { position: absolute; inset: 45% 0 0; content: ""; background: linear-gradient(transparent, rgba(7,20,38,.9)); }
.smu-image-caption { position: absolute; right: 28px; bottom: 28px; left: 28px; z-index: 1; display: flex; flex-direction: column; color: #fff; }
.smu-image-caption strong { font-size: 21px; }
.smu-image-caption span { margin-top: 4px; color: rgba(255,255,255,.7); font-size: 13px; }
.smu-inline-links { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 24px; }
.smu-wrap .spuk-trust-micro-light a { color: rgba(255,255,255,.72) !important; text-decoration: none; }
.smu-wrap .spuk-trust-micro-light a:hover { color: #fff !important; text-decoration: underline; }

.cs-wrap { font-family: "Spline Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.cs-wrap .spuk-hero-h1,
.cs-wrap .spuk-h2,
.cs-wrap .spuk-h2-light,
.cs-wrap .spuk-cta-h2,
.cs-wrap h3 { font-family: "Spline Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
.cs-hero { min-height: 760px; }
.cs-wrap .spuk-hero-h1 { max-width: 790px; font-size: clamp(40px, 4.7vw, 62px) !important; font-weight: 700 !important; line-height: 1.08 !important; }
.cs-wrap .spuk-hero-sub { max-width: 690px; }
.cs-panel-title { margin-left: 8px; color: rgba(255,255,255,.5); font-size: 11px; }
.cs-evidence-list { display: grid; gap: 12px; margin-bottom: 25px; }
.cs-evidence-list div { padding: 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 9px; background: rgba(255,255,255,.035); }
.cs-evidence-list span,
.cs-evidence-list small { display: block; }
.cs-evidence-list span { margin-bottom: 3px; color: #a0ffd4; font-size: 17px; font-weight: 800; }
.cs-evidence-list small { color: rgba(255,255,255,.68); font-size: 12px; }
.cs-projects-s { background: #f8fafc; }
.cs-section-head { max-width: 760px; margin: 0 auto 54px; text-align: center; }
.cs-inst-section { width: 100%; max-width: none; margin: 0; padding: 0 !important; background: transparent !important; }
.cs-inst-section .solar-inst-grid { max-width: none; margin: 0; }
.cs-inst-section .solar-inst-card { overflow: hidden; background: #fff; }
.cs-inst-section .solar-inst-img img { width: 100%; height: 100%; object-fit: cover; }
.cs-inst-section .solar-inst-specs { color: #0f172a !important; font-size: 21px !important; font-weight: 700 !important; }
.cs-inst-section .solar-inst-outcome { color: #475569 !important; font-size: 14px !important; }
.cs-data-note { max-width: 880px; margin: 34px auto 0 !important; color: #64748b !important; font-size: 13px !important; line-height: 1.7 !important; text-align: center; }
.cs-type-link { display: block; color: inherit !important; text-decoration: none !important; }
.cs-type-link strong { display: inline-block; margin-top: 20px; color: #a0ffd4; font-size: 13px; }
.cs-centred { max-width: 720px; margin-inline: auto; }
.cs-process-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 26px; margin-top: 48px; }
.cs-process-links a { color: #1F6F5C !important; font-size: 15px; font-weight: 700; text-decoration: none; }
.cs-process-links a:hover { text-decoration: underline; }
.cs-evidence-callout { margin-top: 28px; padding: 20px 22px; border-left: 3px solid #1F6F5C; color: #1F6F5C; background: rgba(31,111,92,.06); font-size: 15px; font-weight: 700; }
.cs-area-image { position: relative; overflow: hidden; min-height: 520px; padding: 0; background: #071426; }
.cs-area-image img { width: 100%; height: 520px; object-fit: cover; }
.cs-area-image::after { position: absolute; inset: 48% 0 0; content: ""; background: linear-gradient(transparent,rgba(7,20,38,.88)); }
.cs-image-caption { position: absolute; right: 28px; bottom: 28px; left: 28px; z-index: 1; display: flex; flex-direction: column; color: #fff; }
.cs-image-caption strong { font-size: 21px; }
.cs-image-caption span { margin-top: 4px; color: rgba(255,255,255,.7); font-size: 13px; }
.cs-cta-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }

.ux-b2-related { padding: 18px 24px; border-top: 1px solid #e2e8f0; background: #f8fafc; }
.ux-b2-related > div { display: flex; max-width: 1200px; margin: 0 auto; align-items: center; justify-content: center; gap: 20px; }
.ux-b2-related > div > span { color: #64748b; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ux-b2-related a { color: #1F6F5C !important; font-size: 14px; font-weight: 700; text-decoration: none; }
.ux-b2-related a:hover { text-decoration: underline; }

@media (max-width: 991px) {
  .smu-hero { min-height: auto; }
  .smu-service-row { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .smu-wrap .spuk-hero-right { width: min(100%, 540px); }
  .cs-hero { min-height: auto; }
  .cs-wrap .spuk-hero-right { width: min(100%, 540px); }
}

@media (max-width: 767px) {
  .smu-wrap .spuk-hero-h1 { font-size: clamp(34px, 10vw, 44px) !important; }
  .smu-wrap .spuk-hero-grid { padding-inline: 22px; }
  .smu-wrap .spuk-hero-cta-row { align-items: stretch; }
  .smu-wrap .spuk-btn-primary,
  .smu-wrap .spuk-btn-ghost { width: 100%; }
  .smu-service-row { grid-template-columns: 1fr; }
  .smu-image-panel,
  .smu-image-panel img { min-height: 390px; height: 390px; }
  .cs-wrap .spuk-hero-h1 { font-size: clamp(34px, 10vw, 44px) !important; }
  .cs-wrap .spuk-hero-grid { padding-inline: 22px; }
  .cs-wrap .spuk-hero-cta-row,
  .cs-cta-actions { align-items: stretch; }
  .cs-wrap .spuk-btn-primary,
  .cs-wrap .spuk-btn-ghost { width: 100%; }
  .cs-area-image,
  .cs-area-image img { min-height: 390px; height: 390px; }
  .ux-b2-related > div { flex-direction: column; gap: 8px; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .smu-wrap *,
  .smu-wrap *::before,
  .smu-wrap *::after { animation: none !important; transition-duration: .01ms !important; }
}
