:root {
        --ink: #081421;
        --navy: #0c2237;
        --navy-2: #123452;
        --teal: #2ea6a0;
        --teal-dark: #1c7774;
        --amber: #ffbf3c;
        --cream: #f6f1e7;
        --paper: #fffaf0;
        --surface: #ffffff;
        --orange: #df4d2a;
        --muted: #64748b;
        --line: rgba(8, 20, 33, 0.12);
        --shadow: 0 22px 60px rgba(8, 20, 33, 0.16);
        --radius: 26px;
        --max: 1180px;
      }

      * {
        box-sizing: border-box;
      }

      html {
        scroll-behavior: smooth;
      }

      body {
        margin: 0;
        color: var(--ink);
        background:
          radial-gradient(circle at 8% 0%, rgba(255, 191, 60, 0.18), transparent 28rem),
          radial-gradient(circle at 92% 12%, rgba(46, 166, 160, 0.14), transparent 24rem),
          var(--cream);
        font-family:
          Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
          "Segoe UI", sans-serif;
        line-height: 1.66;
        -webkit-font-smoothing: antialiased;
      }

      a {
        color: inherit;
        text-decoration: none;
      }

      .skip-link {
        position: fixed;
        z-index: 100;
        top: 12px;
        left: 12px;
        padding: 10px 14px;
        color: white;
        background: var(--ink);
        border-radius: 8px;
        transform: translateY(-150%);
      }

      .skip-link:focus {
        transform: translateY(0);
      }

      .fallback-page {
        min-height: 60vh;
        padding: 96px 0;
      }

      .fallback-page h1 {
        max-width: 800px;
      }

      .fallback-entry {
        max-width: 760px;
        padding: 28px 0;
        border-top: 1px solid var(--line);
      }

      img,
      svg {
        max-width: 100%;
        display: block;
      }

      button,
      input,
      textarea {
        font: inherit;
      }

      .container {
        width: min(100% - 40px, var(--max));
        margin-inline: auto;
      }

      .topbar {
        background: linear-gradient(90deg, var(--ink), var(--navy-2));
        color: rgba(255, 255, 255, 0.88);
        font-size: 14px;
      }

      .topbar .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        padding: 10px 0;
      }

      .topbar strong {
        color: var(--amber);
      }

      .topbar a {
        padding: 4px 10px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 999px;
        font-weight: 800;
      }

      .site-header {
        position: sticky;
        top: 0;
        z-index: 20;
        background: rgba(255, 250, 240, 0.9);
        border-bottom: 1px solid rgba(8, 20, 33, 0.08);
        backdrop-filter: blur(18px);
      }

      .header-inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
        min-height: 96px;
        padding: 14px 0;
      }

      .brand {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        font-weight: 900;
        letter-spacing: -0.03em;
        font-size: 22px;
      }

      .brand-logo,
      .footer-logo {
        height: auto;
        object-fit: contain;
      }

      .brand-logo {
        width: clamp(170px, 15vw, 220px);
        max-height: 78px;
      }

      .footer-logo {
        width: 180px;
        max-height: none;
      }

      .nav {
        display: flex;
        align-items: center;
        gap: 22px;
        color: #050505;
        font-size: clamp(14px, 1vw, 17px);
        font-weight: 950;
        letter-spacing: -0.035em;
        line-height: 1;
        text-transform: uppercase;
      }

      .nav a {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        white-space: nowrap;
      }

      .nav-trigger {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 0;
        color: inherit;
        background: transparent;
        border: 0;
        cursor: pointer;
        font: inherit;
        font-weight: inherit;
        letter-spacing: inherit;
        line-height: inherit;
        text-transform: inherit;
        white-space: nowrap;
      }

      .nav-item {
        position: relative;
      }

      .nav-trigger::after {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg) translateY(-2px);
      }

      .dropdown-menu {
        position: absolute;
        left: -18px;
        top: calc(100% + 22px);
        z-index: 30;
        display: grid;
        min-width: 260px;
        padding: 18px 0;
        color: #050505;
        background: white;
        border: 1px solid rgba(8, 20, 33, 0.1);
        border-radius: 0 0 18px 18px;
        box-shadow: 0 22px 50px rgba(8, 20, 33, 0.14);
        opacity: 0;
        pointer-events: none;
        transform: translateY(8px);
        transition:
          opacity 160ms ease,
          transform 160ms ease;
      }

      .nav-item-dropdown:hover .dropdown-menu,
      .nav-item-dropdown:focus-within .dropdown-menu,
      .nav-item-dropdown.is-open .dropdown-menu {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
      }

      .dropdown-menu a {
        display: block;
        padding: 14px 20px;
        font-size: 17px;
        font-weight: 950;
        letter-spacing: -0.05em;
        line-height: 1.1;
        text-transform: uppercase;
      }

      .dropdown-menu a::after {
        display: none;
      }

      .dropdown-menu a:hover {
        color: var(--teal-dark);
        background: var(--cream);
      }

      .nav a:hover {
        color: var(--teal-dark);
      }

      .nav-trigger:hover {
        color: var(--teal-dark);
      }

      .header-actions {
        display: flex;
        align-items: center;
        gap: 12px;
      }

      .header-actions .header-cta {
        min-height: 54px;
        padding: 0 26px;
        color: white;
        background: var(--orange);
        border-radius: 999px;
        box-shadow: none;
        font-size: clamp(14px, 1vw, 17px);
        letter-spacing: -0.03em;
        text-transform: uppercase;
      }

      .header-actions .header-cta:hover {
        box-shadow: 0 14px 28px rgba(223, 77, 42, 0.24);
      }

      .phone-link {
        color: var(--navy);
        font-weight: 900;
        white-space: nowrap;
      }

      .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        padding: 0 20px;
        border: 2px solid transparent;
        border-radius: 999px;
        font-weight: 900;
        line-height: 1;
        transition:
          transform 180ms ease,
          box-shadow 180ms ease,
          background 180ms ease;
      }

      .btn:hover {
        transform: translateY(-2px);
      }

      .btn-primary {
        color: var(--ink);
        background: var(--amber);
        box-shadow: 0 10px 22px rgba(255, 191, 60, 0.28);
      }

      .btn-primary:hover {
        box-shadow: 0 14px 28px rgba(255, 191, 60, 0.38);
      }

      .btn-dark {
        color: white;
        background: var(--ink);
      }

      .btn-outline {
        color: white;
        border-color: rgba(255, 255, 255, 0.42);
      }

      .menu-toggle {
        display: none;
        border: 0;
        border-radius: 999px;
        background: var(--ink);
        color: white;
        padding: 12px 16px;
        font-weight: 900;
      }

      .hero {
        position: relative;
        overflow: hidden;
        color: var(--ink);
        background:
          linear-gradient(120deg, rgba(255, 250, 240, 0.97), rgba(255, 250, 240, 0.88) 56%, rgba(255, 250, 240, 0.72)),
          radial-gradient(circle at 12% 18%, rgba(255, 191, 60, 0.28), transparent 30%),
          radial-gradient(circle at 86% 10%, rgba(46, 166, 160, 0.3), transparent 34%),
          url("../images/official-images/hero-solar-battery.png") center / cover no-repeat;
      }

      .hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.2));
        pointer-events: none;
      }

      .hero::after {
        content: "";
        position: absolute;
        inset: 12% -16% auto auto;
        width: 520px;
        height: 520px;
        background: rgba(255, 191, 60, 0.14);
        border: 1px solid rgba(255, 191, 60, 0.22);
        border-radius: 50%;
      }

      .hero-grid {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(360px, 0.82fr);
        gap: 64px;
        align-items: center;
        min-height: calc(100vh - 136px);
        padding: clamp(72px, 9vw, 118px) 0 96px;
      }

      .hero h1 {
        max-width: 820px;
        color: white;
        text-wrap: balance;
      }

      .hero .eyebrow {
        color: white;
        background: rgba(255, 255, 255, 0.12);
        border-color: rgba(255, 255, 255, 0.24);
      }

      .hero .hero-lede {
        color: rgba(255, 255, 255, 0.84);
      }

      .hero .hero-checks li {
        color: white;
        background: rgba(255, 255, 255, 0.12);
        border-color: rgba(255, 255, 255, 0.2);
        box-shadow: none;
        backdrop-filter: blur(12px);
      }

      .hero .hero-checks li::before {
        content: "";
        display: inline-block;
        width: 8px;
        height: 8px;
        margin-right: 9px;
        background: var(--amber);
        border-radius: 50%;
      }

      .hero .btn-outline {
        color: white;
        border-color: rgba(255, 255, 255, 0.42);
        background: rgba(255, 255, 255, 0.08);
      }

      .hero .hero-note {
        color: rgba(255, 255, 255, 0.74);
      }

      .eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
        padding: 8px 12px;
        color: #dff9f7;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 999px;
        font-size: 13px;
        font-weight: 900;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .dot {
        width: 9px;
        height: 9px;
        border-radius: 999px;
        background: var(--amber);
        box-shadow: 0 0 0 6px rgba(255, 191, 60, 0.18);
      }

      h1,
      h2,
      h3,
      p {
        margin-top: 0;
      }

      h1 {
        max-width: 820px;
        margin-bottom: 22px;
        font-size: clamp(44px, 7vw, 86px);
        line-height: 0.98;
        letter-spacing: -0.055em;
      }

      .hero-lede {
        max-width: 650px;
        margin-bottom: 28px;
        color: rgba(255, 255, 255, 0.82);
        font-size: clamp(18px, 2.2vw, 21px);
      }

      .hero-checks {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
        margin: 0 0 30px;
        padding: 0;
        list-style: none;
      }

      .hero-checks li {
        padding: 14px 14px;
        color: #f4fffe;
        background: rgba(255, 255, 255, 0.11);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 18px;
        font-size: 14px;
        font-weight: 800;
      }

      .hero-cta {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 14px;
      }

      .hero-note {
        color: rgba(255, 255, 255, 0.72);
        font-size: 14px;
        font-weight: 700;
      }

      .hero-visual {
        position: relative;
        min-height: 560px;
      }

      .job-card {
        position: absolute;
        inset: 22px 0 auto auto;
        width: min(100%, 500px);
        min-height: 500px;
        padding: 22px;
        background:
          linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 250, 240, 0.96)),
          var(--surface);
        border: 1px solid rgba(255, 255, 255, 0.52);
        border-radius: 36px;
        box-shadow: 0 34px 80px rgba(0, 0, 0, 0.34);
      }

      .photo-panel {
        position: relative;
        overflow: hidden;
        min-height: 350px;
        border-radius: 26px;
         background:
           linear-gradient(180deg, rgba(8, 20, 33, 0.02), rgba(8, 20, 33, 0.2)),
           url("../images/pdg-van.png") center / cover no-repeat;
      }

      .photo-panel::before {
        content: "";
        position: absolute;
        right: 34px;
        bottom: -18px;
        width: 190px;
        height: 270px;
        background:
          linear-gradient(#f0b57f 0 14%, transparent 15%),
          linear-gradient(90deg, transparent 0 32%, #153d63 33% 66%, transparent 67%),
          linear-gradient(135deg, #1e547e, #0e2d4d);
        border-radius: 44px 44px 20px 20px;
        box-shadow: -26px 18px 0 rgba(255, 191, 60, 0.75);
      }

      .photo-panel::after {
        content: "";
        position: absolute;
        left: 30px;
        bottom: 44px;
        width: 190px;
        height: 118px;
        background:
          linear-gradient(90deg, rgba(255, 255, 255, 0.22) 1px, transparent 1px) 0 0 / 24px 100%,
          linear-gradient(#26384b, #172638);
        border: 7px solid #f4f7f6;
        border-radius: 18px;
        box-shadow: 0 24px 36px rgba(0, 0, 0, 0.2);
      }

      .photo-panel::before,
      .photo-panel::after {
        display: none;
      }

      .rating-card,
      .emergency-card {
        position: absolute;
        z-index: 2;
        color: var(--ink);
        background: white;
        border-radius: 24px;
        box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
      }

      .rating-card {
        left: -16px;
        bottom: 116px;
        width: 224px;
        padding: 18px;
      }

      .rating-card strong {
        display: block;
        margin-bottom: 2px;
        font-size: 34px;
        line-height: 1;
        letter-spacing: -0.05em;
      }

      .stars {
        color: #f7a900;
        letter-spacing: 2px;
        font-weight: 900;
      }

      .emergency-card {
        right: -8px;
        bottom: 28px;
        width: 250px;
        padding: 18px;
      }

      .emergency-card span {
        display: block;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .emergency-card strong {
        display: block;
        margin-top: 6px;
        font-size: 24px;
        letter-spacing: -0.04em;
      }

      .mini-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-top: 16px;
      }

      .mini-list div {
        padding: 12px;
        color: var(--ink);
        background: rgba(8, 20, 33, 0.06);
        border-radius: 16px;
        font-size: 13px;
        font-weight: 800;
      }

      .trust-strip {
        position: relative;
        z-index: 2;
        margin-top: -40px;
        padding: 0 0 42px;
        color: var(--ink);
        background: transparent;
      }

      .trust-grid {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 12px;
        padding: 12px;
        background: rgba(255, 255, 255, 0.86);
        border: 1px solid rgba(255, 255, 255, 0.72);
        border-radius: 24px;
        box-shadow: 0 18px 50px rgba(8, 20, 33, 0.16);
        backdrop-filter: blur(18px);
      }

      .trust-item {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 64px;
        padding: 12px;
        background: rgba(8, 20, 33, 0.04);
        border: 1px solid rgba(8, 20, 33, 0.08);
        border-radius: 18px;
        font-size: 13px;
        font-weight: 850;
      }

      .trust-icon {
        display: grid;
        flex: 0 0 auto;
        place-items: center;
        width: 34px;
        height: 34px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 12px;
        font-weight: 950;
      }

      .brand-promo {
        padding: 72px 0 0;
        background: var(--paper);
      }

      .homepage-promo {
        padding: 44px 0 84px;
        background: linear-gradient(180deg, var(--cream) 0%, var(--paper) 100%);
      }

      .promo-carousel-head {
        display: flex;
        justify-content: space-between;
        gap: 24px;
        align-items: end;
        margin-bottom: 24px;
      }

      .promo-carousel-head h2 {
        max-width: 760px;
        color: var(--ink);
      }

      .promo-controls {
        display: flex;
        gap: 10px;
        flex: 0 0 auto;
      }

      .promo-arrow {
        display: grid;
        place-items: center;
        width: 50px;
        height: 50px;
        color: white;
        background: var(--ink);
        border: 0;
        border-radius: 50%;
        cursor: pointer;
        font-size: 34px;
        line-height: 1;
      }

      .promo-track {
        display: flex;
        gap: 20px;
        overflow-x: auto;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
      }

      .promo-track::-webkit-scrollbar {
        display: none;
      }

      .promo-slide {
        flex: 0 0 100%;
        scroll-snap-align: start;
      }

      .promo-dots {
        display: flex;
        justify-content: center;
        gap: 10px;
        margin-top: 18px;
      }

      .promo-dot {
        width: 11px;
        height: 11px;
        padding: 0;
        background: rgba(8, 20, 33, 0.25);
        border: 0;
        border-radius: 50%;
        cursor: pointer;
      }

      .promo-dot.is-active {
        width: 34px;
        background: var(--ink);
        border-radius: 999px;
      }

      .promo-panel {
        position: relative;
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        gap: 28px;
        overflow: hidden;
        min-height: 500px;
        color: white;
        background:
          radial-gradient(circle at 82% 20%, rgba(30, 105, 150, 0.34), transparent 30%),
          radial-gradient(circle at 90% 88%, rgba(255, 105, 0, 0.24), transparent 24%),
          linear-gradient(110deg, #030303 0%, #080b0f 44%, #132033 100%);
        border-radius: 34px;
        box-shadow: 0 28px 70px rgba(3, 7, 12, 0.24);
      }

      .promo-panel::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.54), transparent 58%);
        pointer-events: none;
      }

      .promo-copy,
      .promo-visual {
        position: relative;
        z-index: 1;
      }

      .promo-copy {
        padding: clamp(34px, 5vw, 64px);
      }

      .promo-kicker {
        margin-bottom: 18px;
        color: #ff6a00;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.18em;
        text-transform: uppercase;
      }

      .promo-capacity {
        display: block;
        margin-bottom: 14px;
        color: #ff6a00;
        font-size: clamp(76px, 11vw, 150px);
        line-height: 0.86;
        letter-spacing: -0.08em;
      }

      .promo-copy h2,
      .promo-copy h3 {
        max-width: 680px;
        color: white;
        font-size: clamp(34px, 4.2vw, 64px);
        line-height: 0.98;
        letter-spacing: -0.06em;
        text-transform: uppercase;
      }

      .promo-subtitle {
        margin-top: 12px;
        margin-bottom: 26px;
        color: rgba(255, 255, 255, 0.9);
        font-size: clamp(24px, 3vw, 42px);
        line-height: 1.08;
        letter-spacing: -0.035em;
        text-transform: uppercase;
      }

      .promo-price {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        align-items: baseline;
        margin-bottom: 8px;
        text-transform: uppercase;
      }

      .promo-price span {
        color: white;
        font-size: clamp(18px, 2vw, 28px);
        font-weight: 950;
        letter-spacing: -0.02em;
      }

      .promo-price strong {
        color: #ff6a00;
        font-size: clamp(54px, 7vw, 92px);
        line-height: 0.9;
        letter-spacing: -0.07em;
      }

      .promo-qualifier {
        margin-bottom: 22px;
        color: rgba(255, 255, 255, 0.86);
        font-size: 17px;
        font-weight: 800;
        letter-spacing: 0.03em;
        text-transform: uppercase;
      }

      .promo-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        align-items: center;
      }

      .promo-note {
        margin-top: 22px;
        margin-bottom: 0;
        color: rgba(255, 255, 255, 0.72);
        font-size: 14px;
      }

      .promo-visual {
        overflow: hidden;
        min-height: 420px;
        padding: 0;
      }

      .promo-visual img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        opacity: 1;
      }

      .promo-panel.goodwe-promo,
      .goodwe-promo .promo-panel {
        background:
          radial-gradient(circle at 78% 18%, rgba(89, 220, 216, 0.3), transparent 26%),
          radial-gradient(circle at 18% 88%, rgba(255, 199, 70, 0.2), transparent 28%),
          linear-gradient(125deg, #063c5c 0%, #075d7b 52%, #1a8d92 100%);
      }

      .promo-panel.goodwe-promo::before,
      .goodwe-promo .promo-panel::before {
        background: linear-gradient(90deg, rgba(2, 27, 45, 0.7), rgba(2, 27, 45, 0.12) 68%);
      }

      .goodwe-promo .promo-kicker,
      .goodwe-promo .promo-capacity,
      .goodwe-promo .promo-price strong {
        color: #ffd45d;
      }

      .goodwe-promo .promo-actions .btn-primary {
        color: #062d46;
        background: #8ff1e7;
      }

      .goodwe-promo .promo-actions .btn-outline {
        border-color: rgba(255, 255, 255, 0.7);
      }

      .goodwe-promo .promo-brand-logo {
        position: absolute;
        top: 22px;
        right: 22px;
        z-index: 2;
        width: 122px;
        height: auto;
        padding: 11px 14px;
        object-fit: contain;
        background: rgba(255, 255, 255, 0.94);
        border-radius: 12px;
        box-shadow: 0 10px 28px rgba(2, 27, 45, 0.24);
      }

      .goodwe-promo .promo-visual > img:first-child {
        object-fit: contain;
        background: linear-gradient(180deg, #e9f6f4 0%, #ffffff 72%);
      }

      section {
        padding: 86px 0;
      }

      .breadcrumb {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
        margin-bottom: 18px;
        color: rgba(8, 20, 33, 0.72);
        font-size: 14px;
        font-weight: 850;
      }

      .breadcrumb a {
        color: var(--ink);
      }

      .breadcrumb span::before {
        content: "/";
        margin-right: 10px;
        color: rgba(8, 20, 33, 0.44);
      }

      .service-hero {
        position: relative;
        overflow: hidden;
        color: var(--ink);
        background:
          radial-gradient(circle at 14% 18%, rgba(255, 191, 60, 0.22), transparent 28rem),
          radial-gradient(circle at 86% 14%, rgba(46, 166, 160, 0.14), transparent 24rem),
          linear-gradient(180deg, #fffaf0 0%, var(--cream) 100%);
      }

      .service-hero.ev-hero {
        background:
          radial-gradient(circle at 16% 20%, rgba(255, 191, 60, 0.24), transparent 28rem),
          radial-gradient(circle at 88% 18%, rgba(46, 166, 160, 0.16), transparent 24rem),
          linear-gradient(180deg, #fffaf0 0%, var(--cream) 100%);
      }

      .service-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 250, 240, 0));
        pointer-events: none;
      }

      .service-hero-grid {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.72fr);
        gap: 56px;
        align-items: center;
        padding: clamp(76px, 9vw, 124px) 0 98px;
      }

      .service-hero h1 {
        max-width: 840px;
        color: var(--ink);
        text-wrap: balance;
      }

      .service-hero .eyebrow {
        color: var(--ink);
        background: rgba(255, 255, 255, 0.34);
        border-color: rgba(8, 20, 33, 0.1);
      }

      .service-hero .hero-lede {
        color: rgba(8, 20, 33, 0.74);
      }

      .service-hero .hero-checks li {
        color: var(--ink);
        background: rgba(255, 255, 255, 0.42);
        border-color: rgba(8, 20, 33, 0.08);
      }

      .service-hero .btn-outline {
        color: var(--ink);
        background: rgba(255, 255, 255, 0.28);
        border-color: rgba(8, 20, 33, 0.18);
      }

      .service-hero .hero-note {
        color: rgba(8, 20, 33, 0.68);
      }

      .hero,
      .hero h1,
      .hero .breadcrumb,
      .hero .breadcrumb a,
      .hero .eyebrow,
      .hero .hero-lede,
      .hero .hero-checks li,
      .hero .hero-note,
      .hero .btn-outline,
      .service-hero,
      .service-hero .breadcrumb,
      .service-hero .breadcrumb a,
      .service-hero .eyebrow,
      .service-hero .hero-lede,
      .service-hero .hero-checks li,
      .service-hero .hero-note,
      .service-hero .btn-outline {
        color: #000 !important;
      }

      .about-page .hero {
        color: var(--ink);
        background:
          radial-gradient(circle at 14% 18%, rgba(255, 191, 60, 0.22), transparent 28rem),
          radial-gradient(circle at 86% 14%, rgba(46, 166, 160, 0.14), transparent 24rem),
          linear-gradient(180deg, #fffaf0 0%, var(--cream) 100%);
      }

      .about-page .hero::before,
      .about-page .hero::after {
        display: none;
      }

      .about-page .hero h1,
      .about-page .hero .eyebrow,
      .about-page .hero .hero-checks li {
        color: var(--ink);
      }

      .about-page .hero .eyebrow,
      .about-page .hero .hero-checks li {
        background: rgba(255, 255, 255, 0.42);
        border-color: rgba(8, 20, 33, 0.08);
      }

      .about-page .hero .hero-lede,
      .about-page .hero .hero-note {
        color: rgba(8, 20, 33, 0.72);
      }

      .about-page .hero .btn-outline {
        color: var(--ink);
        background: rgba(255, 255, 255, 0.28);
        border-color: rgba(8, 20, 33, 0.18);
      }

      .service-hero-card {
        overflow: hidden;
        align-self: stretch;
        min-height: 520px;
        background: rgba(255, 250, 240, 0.94);
        border: 1px solid rgba(255, 255, 255, 0.54);
        border-radius: 34px;
        box-shadow: 0 34px 80px rgba(0, 0, 0, 0.32);
      }

      .service-hero-card img {
        width: 100%;
        height: 330px;
        object-fit: cover;
      }

      .service-hero-card-body {
        padding: 28px;
        color: var(--ink);
      }

      .service-hero-card-body strong {
        display: block;
        margin-bottom: 10px;
        font-size: 28px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .service-hero-card-body p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .service-page .trust-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .service-intro {
        background: var(--cream);
      }

      .service-inclusions {
        background: var(--paper);
      }

      .rebate-hero-card {
        min-height: 0;
        background:
          radial-gradient(circle at 92% 12%, rgba(255, 191, 60, 0.28), transparent 14rem),
          linear-gradient(145deg, #0c2237, #123f5c 64%, #1c7774);
      }

      .rebate-hero-card .service-hero-card-body {
        padding: 36px;
        color: white;
      }

      .rebate-hero-card .section-kicker,
      .rebate-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.76);
      }

      .rebate-hero-card .service-hero-card-body strong {
        font-size: clamp(30px, 3.2vw, 44px);
      }

      .rebate-check-list {
        display: grid;
        gap: 12px;
        margin: 28px 0 0;
        padding: 0;
        list-style: none;
      }

      .rebate-check-list li {
        display: flex;
        gap: 10px;
        align-items: start;
        color: white;
        font-weight: 750;
      }

      .rebate-check-list li::before {
        content: "";
        flex: 0 0 auto;
        width: 10px;
        height: 10px;
        margin-top: 9px;
        background: var(--amber);
        border-radius: 50%;
      }

      .rebate-status {
        background: var(--paper);
      }

      .rebate-notice {
        display: grid;
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: 24px;
        align-items: stretch;
        padding: 28px;
        background: white;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        box-shadow: 0 14px 40px rgba(8, 20, 33, 0.08);
      }

      .rebate-notice-alert {
        padding: 28px;
        background: #fff0c9;
        border: 1px solid rgba(223, 77, 42, 0.22);
        border-radius: 22px;
      }

      .rebate-notice-alert strong {
        display: block;
        margin-bottom: 10px;
        font-size: 24px;
        line-height: 1.16;
      }

      .rebate-notice p:last-child,
      .rebate-notice-alert p:last-child {
        margin-bottom: 0;
      }

      .rebate-notice > div:last-child {
        align-self: center;
      }

      .rebate-notice > div:last-child p {
        color: #445166;
      }

      .rebate-incentives {
        background: var(--cream);
      }

      .feature-grid.rebate-info-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .rebate-savings {
        background: white;
      }

      .rebate-savings-panel {
        padding: clamp(26px, 4vw, 46px);
        color: white;
        background:
          radial-gradient(circle at 92% 10%, rgba(255, 191, 60, 0.26), transparent 16rem),
          linear-gradient(145deg, #081421, #123452 58%, #1c7774);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
      }

      .rebate-example-heading {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
        gap: 26px;
        align-items: baseline;
        margin-bottom: 30px;
      }

      .rebate-example-heading span {
        color: var(--amber);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.13em;
        text-transform: uppercase;
      }

      .rebate-example-heading h3 {
        margin: 0;
        font-size: clamp(26px, 3.2vw, 42px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .savings-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(172px, 1fr));
        gap: 14px;
        margin: 0;
      }

      .savings-grid > div {
        min-height: 178px;
        padding: 22px;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 20px;
      }

      .savings-grid dt {
        margin-bottom: 16px;
        color: rgba(255, 255, 255, 0.72);
        font-size: 13px;
        font-weight: 850;
      }

      .savings-grid dd {
        margin: 0 0 8px;
        color: var(--amber);
        font-size: clamp(26px, 3vw, 38px);
        font-weight: 950;
        line-height: 1;
        letter-spacing: -0.045em;
      }

      .savings-grid p,
      .rebate-disclaimer {
        margin-bottom: 0;
        color: rgba(255, 255, 255, 0.7);
        font-size: 14px;
      }

      .rebate-disclaimer {
        max-width: 940px;
        margin-top: 22px;
      }

      .rebate-eligibility {
        background: var(--paper);
      }

      .feature-grid.rebate-eligibility-grid {
        grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
      }

      .rebate-options {
        background: var(--cream);
      }

      .rebate-options-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .battery-option {
        min-height: 290px;
        padding: 30px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 14px 34px rgba(8, 20, 33, 0.08);
      }

      .battery-option-featured {
        color: white;
        background: linear-gradient(145deg, var(--navy), var(--teal-dark));
        border-color: transparent;
      }

      .battery-option span {
        display: inline-block;
        margin-bottom: 26px;
        color: var(--teal-dark);
        font-size: clamp(38px, 4vw, 54px);
        font-weight: 950;
        line-height: 1;
        letter-spacing: -0.06em;
      }

      .battery-option-featured span {
        color: var(--amber);
      }

      .battery-option h3 {
        margin-bottom: 12px;
        font-size: 27px;
        line-height: 1.1;
        letter-spacing: -0.03em;
      }

      .battery-option p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .battery-option-featured p {
        color: rgba(255, 255, 255, 0.74);
      }

      .rebate-faq {
        padding-bottom: 144px;
      }

      .battery-install-hero-card {
        min-height: 0;
        background:
          radial-gradient(circle at 86% 14%, rgba(255, 191, 60, 0.28), transparent 14rem),
          linear-gradient(145deg, #0c2237, #123f5c 60%, #1c7774);
      }

      .battery-install-hero-card .service-hero-card-body {
        padding: 36px;
        color: white;
      }

      .battery-install-hero-card .section-kicker,
      .battery-install-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.76);
      }

      .battery-install-hero-card .service-hero-card-body strong {
        font-size: clamp(30px, 3.2vw, 44px);
      }

      .battery-quote-list {
        display: grid;
        gap: 12px;
        margin: 28px 0 0;
        padding: 0;
        list-style: none;
      }

      .battery-quote-list li {
        display: flex;
        gap: 10px;
        align-items: start;
        color: white;
        font-weight: 750;
      }

      .battery-quote-list li::before {
        content: "";
        flex: 0 0 auto;
        width: 10px;
        height: 10px;
        margin-top: 9px;
        background: var(--amber);
        border-radius: 50%;
      }

      .battery-fit {
        background: var(--paper);
      }

      .battery-install-scope {
        background: var(--cream);
      }

      .feature-grid.battery-install-scope-grid {
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
      }

      .battery-capacity {
        background: white;
      }

      .battery-capacity-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .battery-cost {
        background: var(--paper);
      }

      .battery-cost-panel {
        display: grid;
        grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
        gap: 34px;
        align-items: center;
        padding: clamp(28px, 4vw, 46px);
        background: white;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        box-shadow: 0 14px 40px rgba(8, 20, 33, 0.08);
      }

      .battery-cost-panel h3,
      .battery-existing-grid h3 {
        margin-bottom: 16px;
        font-size: clamp(27px, 3vw, 39px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .battery-cost-panel p,
      .battery-existing-grid p {
        color: #445166;
      }

      .battery-cost-panel p:last-child,
      .battery-existing-grid p:last-child {
        margin-bottom: 0;
      }

      .battery-cost-factors {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .battery-cost-factors li {
        min-height: 116px;
        padding: 20px;
        color: var(--ink);
        background: var(--cream);
        border-radius: 18px;
        font-weight: 850;
      }

      .battery-existing {
        background: var(--cream);
      }

      .battery-existing-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
      }

      .battery-method-label {
        display: inline-flex;
        margin-bottom: 26px;
        padding: 9px 13px;
        color: var(--teal-dark);
        background: rgba(46, 166, 160, 0.12);
        border-radius: 999px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      .difference-grid.battery-backup-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .battery-coverage {
        background: var(--paper);
      }

      .coverage-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
      }

      .coverage-grid span {
        padding: 20px;
        color: var(--ink);
        background: white;
        border: 1px solid var(--line);
        border-radius: 18px;
        font-weight: 850;
        text-align: center;
      }

      .battery-install-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 760px) {
        .rebate-notice,
        .rebate-example-heading,
        .rebate-options-grid,
        .battery-capacity-grid,
        .battery-cost-panel,
        .battery-existing-grid,
        .difference-grid.battery-backup-grid,
        .coverage-grid {
          grid-template-columns: 1fr;
        }

        .feature-grid.rebate-info-grid,
        .feature-grid.battery-install-scope-grid {
          grid-template-columns: 1fr;
        }

        .battery-cost-factors {
          grid-template-columns: 1fr;
        }
      }

      .split-grid {
        display: grid;
        grid-template-columns: 0.82fr 1.18fr;
        gap: 42px;
        align-items: start;
      }

      .compact-copy p:last-child {
        margin-bottom: 0;
      }

      .feature-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .feature-card {
        padding: 28px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.07);
        transition:
          transform 180ms ease,
          box-shadow 180ms ease;
      }

      .feature-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 22px 46px rgba(8, 20, 33, 0.12);
      }

      .feature-card span {
        display: grid;
        place-items: center;
        width: 48px;
        height: 48px;
        margin-bottom: 24px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 16px;
        font-size: 13px;
        font-weight: 950;
      }

      .feature-card h3 {
        margin-bottom: 10px;
        font-size: 23px;
        line-height: 1.14;
        letter-spacing: -0.025em;
      }

      .feature-card p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .ev-brands {
        background:
          radial-gradient(circle at 90% 20%, rgba(46, 166, 160, 0.16), transparent 26rem),
          var(--cream);
      }

      .ev-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .ev-brand-card {
        position: relative;
        overflow: hidden;
      }

      .ev-brand-card::after {
        content: "";
        position: absolute;
        inset: 0 0 auto;
        height: 5px;
        background: linear-gradient(90deg, var(--amber), var(--teal));
      }

      .ev-brand-card h3 {
        font-size: 30px;
      }

      .section-head {
        display: flex;
        justify-content: space-between;
        gap: 32px;
        align-items: end;
        margin-bottom: 34px;
      }

      .section-kicker {
        margin-bottom: 10px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.13em;
        text-transform: uppercase;
      }

      h2 {
        max-width: 780px;
        margin-bottom: 0;
        font-size: clamp(34px, 5vw, 58px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .section-text {
        max-width: 510px;
        margin-bottom: 0;
        color: var(--muted);
        font-size: 17px;
      }

      .intro-grid {
        display: grid;
        grid-template-columns: 0.82fr 1.18fr;
        gap: 42px;
        align-items: stretch;
      }

      .founder-card {
        position: relative;
        overflow: hidden;
        min-height: 520px;
        padding: 28px;
        color: white;
        background:
          radial-gradient(circle at 18% 14%, rgba(255, 191, 60, 0.28), transparent 26%),
          linear-gradient(145deg, #0a1725, #133959 56%, #1d7874);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
      }

      .founder-card::after {
        content: "";
        position: absolute;
        right: -34px;
        bottom: -58px;
        width: 320px;
        height: 410px;
        background:
          linear-gradient(#eab07b 0 16%, transparent 17%),
          linear-gradient(125deg, #ffc64c 0 28%, #153d63 29% 100%);
        border-radius: 90px 90px 36px 36px;
        box-shadow: -38px 18px 0 rgba(255, 255, 255, 0.11);
      }

      .founder-card .badge {
        position: relative;
        z-index: 1;
        display: inline-flex;
        margin-bottom: 250px;
        padding: 10px 14px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 999px;
        font-weight: 950;
      }

      .founder-card h3,
      .founder-card p {
        position: relative;
        z-index: 1;
      }

      .founder-card h3 {
        margin-bottom: 10px;
        font-size: 34px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .founder-card p {
        max-width: 320px;
        margin-bottom: 0;
        color: rgba(255, 255, 255, 0.76);
      }

      .copy-panel {
        padding: 38px;
        background: white;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        box-shadow: 0 14px 40px rgba(8, 20, 33, 0.08);
      }

      .copy-panel h2 {
        margin-bottom: 22px;
      }

      .copy-panel p {
        color: #445166;
        font-size: 17px;
      }

      .signature {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 18px;
        margin-top: 28px;
        padding-top: 24px;
        border-top: 1px solid var(--line);
      }

      .signature strong {
        display: block;
        font-size: 18px;
      }

      .signature span {
        color: var(--muted);
      }

      .services {
        background: var(--paper);
      }

      .service-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
      }

      .service-card {
        overflow: hidden;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 14px 35px rgba(8, 20, 33, 0.08);
        transition:
          transform 180ms ease,
          box-shadow 180ms ease;
      }

      .service-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 24px 48px rgba(8, 20, 33, 0.14);
      }

      .service-art {
        min-height: 170px;
        background:
          linear-gradient(180deg, rgba(8, 20, 33, 0.08), rgba(8, 20, 33, 0.2)),
          url("../images/official-images/solar-panel.jpg") center / cover no-repeat;
      }

      .service-card:nth-child(2) .service-art {
        background:
          linear-gradient(180deg, rgba(8, 20, 33, 0.04), rgba(8, 20, 33, 0.22)),
          url("../images/official-images/battery.webp") center / cover no-repeat;
      }

      .service-card:nth-child(3) .service-art {
        background:
          linear-gradient(180deg, rgba(8, 20, 33, 0.04), rgba(8, 20, 33, 0.22)),
          url("../images/official-images/home-system.webp") center / cover no-repeat;
      }

      .service-card:nth-child(4) .service-art {
        background:
          linear-gradient(180deg, rgba(8, 20, 33, 0.04), rgba(8, 20, 33, 0.24)),
          url("../images/official-images/ev.jpg") center / cover no-repeat;
      }

      .service-card:nth-child(5) .service-art {
        background:
          linear-gradient(180deg, rgba(8, 20, 33, 0.04), rgba(8, 20, 33, 0.22)),
          url("../images/official-images/consultation.webp") center / cover no-repeat;
      }

      .service-body {
        padding: 24px;
      }

      .service-body h3 {
        margin-bottom: 10px;
        font-size: 24px;
        line-height: 1.18;
        letter-spacing: -0.025em;
      }

      .service-body p {
        margin-bottom: 20px;
        color: var(--muted);
      }

      .text-link {
        color: var(--teal-dark);
        font-weight: 950;
      }

      .brand-showcase {
        padding: 0 0 86px;
        background: var(--paper);
      }

      .brand-showcase-panel {
        overflow: hidden;
        padding: 34px 0;
        background: white;
        border: 1px solid var(--line);
        border-radius: 28px;
        box-shadow: 0 14px 35px rgba(8, 20, 33, 0.08);
      }

      .brand-showcase-head {
        display: flex;
        justify-content: space-between;
        gap: 24px;
        align-items: end;
        margin-bottom: 26px;
        padding: 0 30px;
      }

      .brand-showcase-head h2 {
        font-size: clamp(30px, 4vw, 46px);
      }

      .brand-showcase-head p {
        max-width: 440px;
        margin-bottom: 0;
        color: var(--muted);
      }

      .brand-source {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        margin-top: 16px;
        padding: 10px 14px;
        color: var(--muted);
        background: var(--cream);
        border: 1px solid var(--line);
        border-radius: 999px;
        font-size: 13px;
        font-weight: 850;
      }

      .brand-source img {
        width: 88px;
        height: auto;
      }

      .brand-row {
        display: grid;
        gap: 10px;
        margin-top: 18px;
      }

      .brand-row-label {
        padding: 0 30px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.13em;
        text-transform: uppercase;
      }

      .brand-marquee {
        position: relative;
        overflow: hidden;
      }

      .brand-marquee::before,
      .brand-marquee::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        z-index: 2;
        width: 90px;
        pointer-events: none;
      }

      .brand-marquee::before {
        left: 0;
        background: linear-gradient(90deg, white, rgba(255, 255, 255, 0));
      }

      .brand-marquee::after {
        right: 0;
        background: linear-gradient(270deg, white, rgba(255, 255, 255, 0));
      }

      .brand-track {
        display: flex;
        width: max-content;
        gap: 14px;
        padding: 4px 0;
        animation: brand-scroll 42s linear infinite;
      }

      .brand-marquee:hover .brand-track {
        animation-play-state: paused;
      }

      .brand-pill {
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        width: 190px;
        height: 96px;
        padding: 18px 24px;
        color: var(--ink);
        background: white;
        border: 1px solid var(--line);
        border-radius: 22px;
        text-align: center;
        box-shadow: 0 10px 24px rgba(8, 20, 33, 0.06);
      }

      .brand-pill img {
        width: 100%;
        max-height: 54px;
        object-fit: contain;
      }

      @keyframes brand-scroll {
        from {
          transform: translateX(0);
        }

        to {
          transform: translateX(calc(-50% - 7px));
        }
      }

      @media (prefers-reduced-motion: reduce) {
        html {
          scroll-behavior: auto;
        }

        *,
        *::before,
        *::after {
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }

        .brand-track {
          animation: none;
          flex-wrap: wrap;
          justify-content: center;
          padding: 0 20px;
        }
      }

      .difference {
        color: white;
        background:
          radial-gradient(circle at 14% 20%, rgba(255, 191, 60, 0.18), transparent 28%),
          linear-gradient(145deg, #081421, #123452 62%, #103f42);
      }

      .difference .section-kicker,
      .difference .section-text {
        color: rgba(255, 255, 255, 0.72);
      }

      .difference-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .difference-card {
        padding: 28px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.14);
        border-radius: 24px;
      }

      .difference-card span {
        display: grid;
        place-items: center;
        width: 46px;
        height: 46px;
        margin-bottom: 24px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 16px;
        font-weight: 950;
      }

      .difference-card h3 {
        margin-bottom: 10px;
        font-size: 24px;
        letter-spacing: -0.025em;
      }

      .difference-card p {
        margin-bottom: 0;
        color: rgba(255, 255, 255, 0.72);
      }

      .process-grid {
        display: grid;
        grid-template-columns: 0.86fr 1.14fr;
        gap: 30px;
        align-items: start;
      }

      .process-callout {
        position: sticky;
        top: 110px;
        padding: 34px;
        color: white;
        background: var(--teal-dark);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
      }

      .process-callout strong,
      .process-callout .process-title {
        display: block;
        margin-bottom: 14px;
        font-size: 42px;
        line-height: 1.04;
        letter-spacing: -0.035em;
      }

      .process-callout .section-kicker {
        color: white;
      }

      .steps {
        display: grid;
        gap: 14px;
      }

      .step {
        display: grid;
        grid-template-columns: 64px 1fr;
        gap: 18px;
        padding: 24px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 22px;
      }

      .step-number {
        display: grid;
        place-items: center;
        width: 54px;
        height: 54px;
        color: white;
        background: var(--ink);
        border-radius: 18px;
        font-weight: 950;
      }

      .step h3 {
        margin-bottom: 6px;
        font-size: 22px;
        letter-spacing: -0.025em;
      }

      .step p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .standards {
        background: var(--paper);
      }

      .standards-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
      }

      .standard-box {
        padding: 26px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
      }

      .standard-box h3 {
        margin-bottom: 8px;
        font-size: 22px;
        letter-spacing: -0.025em;
      }

      .standard-box p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .about-gallery {
        background: var(--paper);
      }

      .gallery-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .gallery-card {
        overflow: hidden;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.07);
      }

      .gallery-card img {
        width: 100%;
        height: 210px;
        object-fit: cover;
      }

      .gallery-card div {
        padding: 22px;
      }

      .gallery-card h3 {
        margin-bottom: 8px;
        font-size: 22px;
        line-height: 1.14;
        letter-spacing: -0.025em;
      }

      .gallery-card p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .testimonials-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .quote {
        padding: 26px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 10px 28px rgba(8, 20, 33, 0.07);
      }

      .quote .stars {
        margin-bottom: 18px;
      }

      .quote p {
        color: #3d4a5c;
      }

      .quote footer {
        color: var(--ink);
        font-weight: 950;
      }

      .areas {
        color: white;
        background: var(--ink);
      }

      .areas .section-kicker,
      .areas .section-text {
        color: rgba(255, 255, 255, 0.72);
      }

      .area-grid {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 12px;
        margin-top: 28px;
      }

      .area-grid a {
        padding: 14px 16px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.14);
        border-radius: 16px;
        font-weight: 850;
      }

      .area-grid a:hover {
        background: rgba(46, 166, 160, 0.28);
      }

      .faq-grid {
        display: grid;
        grid-template-columns: 0.78fr 1.22fr;
        gap: 34px;
      }

      .faq-card {
        padding: 30px;
        color: white;
        background: linear-gradient(145deg, var(--navy), var(--teal-dark));
        border-radius: var(--radius);
      }

      .faq-card h2 {
        margin-bottom: 18px;
      }

      .faq-card p {
        color: rgba(255, 255, 255, 0.76);
      }

      .faq-list {
        display: grid;
        gap: 12px;
      }

      details {
        background: white;
        border: 1px solid var(--line);
        border-radius: 18px;
      }

      summary {
        cursor: pointer;
        padding: 20px 22px;
        font-weight: 950;
        list-style: none;
      }

      summary::-webkit-details-marker {
        display: none;
      }

      details p {
        margin: 0;
        padding: 0 22px 22px;
        color: var(--muted);
      }

      .final-cta {
        padding: 0;
      }

      .cta-panel {
        transform: translateY(58px);
        display: grid;
        grid-template-columns: 1.2fr auto;
        gap: 24px;
        align-items: center;
        padding: 36px;
        color: var(--ink);
        background: var(--amber);
        border: 3px solid var(--ink);
        border-radius: 30px;
        box-shadow: 10px 10px 0 var(--teal-dark);
      }

      .cta-panel h2 {
        max-width: 680px;
        margin-bottom: 12px;
        font-size: clamp(32px, 5vw, 54px);
      }

      .cta-panel p {
        margin-bottom: 0;
        color: rgba(8, 20, 33, 0.72);
        font-weight: 750;
      }

      .site-footer {
        padding: 118px 0 34px;
        color: rgba(255, 255, 255, 0.78);
        background: var(--ink);
      }

      .footer-grid {
        display: grid;
        grid-template-columns: 1.1fr repeat(3, 1fr);
        gap: 28px;
        padding-bottom: 36px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
      }

      .site-footer h3 {
        margin-bottom: 14px;
        color: white;
        font-size: 16px;
      }

      .site-footer ul {
        display: grid;
        gap: 8px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .lead-form-section {
        scroll-margin-top: 24px;
        padding: 8px 0 40px;
      }

      .lead-form-card {
        display: grid;
        grid-template-columns: 0.82fr 1.18fr;
        gap: 32px;
        padding: 34px;
        color: var(--ink);
        background: var(--paper);
        border-radius: 24px;
      }

      .lead-form-card h2 {
        margin-bottom: 12px;
        font-size: clamp(30px, 4vw, 46px);
      }

      .lead-form-intro p {
        color: var(--muted);
      }

      .lead-form-intro .section-kicker {
        color: var(--teal-dark);
      }

      .lead-form-contact a {
        color: var(--teal-dark);
        font-weight: 850;
      }

      .lead-form-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        margin-bottom: 18px;
      }

      .lead-form label {
        display: grid;
        gap: 7px;
        color: var(--ink);
        font-size: 14px;
        font-weight: 800;
      }

      .lead-form input:not([type="checkbox"]),
      .lead-form select,
      .lead-form textarea {
        width: 100%;
        padding: 12px 14px;
        color: var(--ink);
        background: white;
        border: 1px solid var(--line);
        border-radius: 10px;
      }

      .lead-form textarea {
        resize: vertical;
      }

      .lead-form-full {
        grid-column: 1 / -1;
      }

      .lead-form-consent {
        grid-template-columns: auto 1fr;
        align-items: start;
        font-size: 13px !important;
        font-weight: 600 !important;
      }

      .lead-form-consent input {
        margin-top: 4px;
      }

      .lead-form-consent a {
        color: var(--teal-dark);
        text-decoration: underline;
      }

      .lead-form-honeypot {
        position: absolute;
        left: -9999px;
      }

      .lead-form-status {
        margin: 0 0 16px;
        padding: 12px 14px;
        border-radius: 10px;
        font-weight: 700;
      }

      .lead-form-success {
        color: #075c41;
        background: #d8f3e5;
      }

      .lead-form-error {
        color: #8b1e16;
        background: #fde1dc;
      }

      .case-studies {
        background: var(--paper);
      }

      .case-study-grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
      }

      .case-study-card {
        display: grid;
        grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
        overflow: hidden;
        background: white;
        border: 1px solid var(--line);
        border-radius: 20px;
        box-shadow: 0 14px 34px rgba(8, 20, 33, 0.08);
      }

      .case-study-card img {
        width: 100%;
        height: 100%;
        min-height: 330px;
        object-fit: cover;
      }

      .case-study-card-no-image {
        grid-template-columns: 1fr;
      }

      .case-study-copy {
        padding: 34px;
      }

      .case-study-copy h3 {
        margin-bottom: 14px;
        font-size: clamp(25px, 3vw, 36px);
        line-height: 1.1;
      }

      .case-study-copy p {
        max-width: 680px;
        color: var(--muted);
      }

      .home-case-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .home-case-card {
        overflow: hidden;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.07);
      }

      .home-case-card img {
        width: 100%;
        height: 230px;
        object-fit: cover;
      }

      .home-case-card > div {
        padding: 24px;
      }

      .home-case-card h3 {
        margin-bottom: 10px;
        font-size: 25px;
        line-height: 1.14;
        letter-spacing: -0.025em;
      }

      .home-case-card p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .home-case-card .home-case-type {
        margin-bottom: 10px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .home-case-card-no-image > div {
        min-height: 230px;
      }

      .home-offers-intro {
        max-width: 760px;
        margin: -12px 0 28px;
        color: var(--muted);
      }

      .home-offers-intro a {
        color: var(--teal-dark);
        font-weight: 900;
        text-decoration: underline;
      }

      .footer-brand {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 16px;
        color: white;
        font-size: 22px;
        font-weight: 950;
        letter-spacing: -0.03em;
      }

      .social-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
      }

      .social-links a {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        color: white;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 50%;
      }

      .social-links a:hover {
        background: rgba(46, 166, 160, 0.28);
      }

      .social-links svg {
        width: 20px;
        height: 20px;
        fill: currentColor;
      }

      .social-xhs {
        font-size: 10px;
        font-weight: 900;
        letter-spacing: -0.04em;
      }

      .copyright {
        display: flex;
        justify-content: space-between;
        gap: 18px;
        padding-top: 22px;
        font-size: 14px;
      }

      .phone-modal-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1000;
        display: none;
        place-items: center;
        padding: 24px;
        background: rgba(8, 20, 33, 0.66);
        backdrop-filter: blur(8px);
      }

      .phone-modal-backdrop.is-open {
        display: grid;
      }

      .phone-modal {
        position: relative;
        width: min(100%, 430px);
        padding: 30px;
        color: var(--ink);
        background: white;
        border: 2px solid var(--ink);
        border-radius: 28px;
        box-shadow: 10px 10px 0 var(--teal-dark);
      }

      .phone-modal-close {
        position: absolute;
        top: 14px;
        right: 14px;
        display: grid;
        place-items: center;
        width: 36px;
        height: 36px;
        color: white;
        background: var(--ink);
        border: 0;
        border-radius: 50%;
        cursor: pointer;
        font-weight: 950;
      }

      .phone-modal h2 {
        margin-bottom: 10px;
        font-size: clamp(32px, 6vw, 44px);
      }

      .phone-modal p {
        margin-bottom: 22px;
        color: var(--muted);
      }

      .phone-modal .btn {
        width: 100%;
      }

      body.phone-modal-open {
        overflow: hidden;
      }

      .mobile-call {
        display: none;
      }

      @media (max-width: 1160px) {
        .nav,
        .header-actions .phone-link {
          display: none;
        }

        .menu-toggle {
          display: inline-flex;
        }

        body.menu-open .nav {
          position: absolute;
          left: 20px;
          right: 20px;
          top: calc(100% + 10px);
          display: grid;
          gap: 0;
          padding: 14px;
          background: white;
          border: 1px solid var(--line);
          border-radius: 20px;
          box-shadow: var(--shadow);
          max-height: calc(100dvh - 138px);
          overflow-y: auto;
          overscroll-behavior: contain;
          -webkit-overflow-scrolling: touch;
        }

        body.menu-open .nav a {
          min-height: 48px;
          padding: 13px 10px;
        }

        body.menu-open .nav-trigger {
          justify-content: space-between;
          width: 100%;
          min-height: 48px;
          padding: 13px 10px;
        }

        body.menu-open .nav-item {
          display: grid;
        }

        body.menu-open .dropdown-menu {
          position: static;
          display: none;
          min-width: 0;
          padding: 0 0 8px 16px;
          background: var(--cream);
          border: 0;
          border-radius: 14px;
          box-shadow: none;
          opacity: 1;
          pointer-events: auto;
          transform: none;
        }

        body.menu-open .nav-item-dropdown.is-open .dropdown-menu {
          display: grid;
        }

        body.menu-open .nav-item-dropdown.is-open .nav-trigger {
          color: var(--teal-dark);
          background: var(--cream);
          border-radius: 12px;
        }

        body.menu-open {
          overflow: hidden;
        }

        body.menu-open .mobile-call {
          display: none;
        }

        body.menu-open .dropdown-menu a {
          padding: 10px 12px;
          font-size: 17px;
        }

        .hero-grid,
        .service-hero-grid,
        .split-grid,
        .intro-grid,
        .process-grid,
        .faq-grid {
          grid-template-columns: 1fr;
        }

        .service-hero-card {
          min-height: 0;
        }

        .hero-visual {
          min-height: 520px;
        }

        .promo-panel {
          grid-template-columns: 1fr;
        }

        .promo-carousel-head {
          display: block;
        }

        .promo-controls {
          margin-top: 16px;
        }

        .promo-visual {
          min-height: 330px;
        }

        .job-card {
          left: 0;
          right: 0;
          margin-inline: auto;
        }

        .trust-grid,
        .service-grid,
        .feature-grid,
        .gallery-grid,
        .difference-grid,
        .testimonials-grid,
        .home-case-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .process-callout {
          position: static;
        }

        .area-grid {
          grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .footer-grid {
          grid-template-columns: 1fr 1fr;
        }

        .lead-form-card {
          grid-template-columns: 1fr;
        }

        .case-study-card {
          grid-template-columns: 0.8fr 1.2fr;
        }
      }

      @media (max-width: 720px) {
        .container {
          width: min(100% - 28px, var(--max));
        }

        .topbar .container {
          align-items: flex-start;
          flex-direction: column;
          gap: 4px;
        }

        .brand span:last-child {
          display: none;
        }

        .header-actions .btn {
          display: none;
        }

        .header-inner {
          min-height: 92px;
          padding: 14px 0;
        }

        .brand-logo {
          width: 170px;
          max-height: 72px;
        }

        .menu-toggle {
          min-height: 48px;
          min-width: 74px;
          justify-content: center;
        }

        .hero-grid {
          padding: 62px 0 46px;
        }

        .brand-promo {
          padding-top: 42px;
        }

        .homepage-promo {
          padding: 24px 0 48px;
        }

        .promo-panel {
          min-height: 0;
          border-radius: 24px;
        }

        .promo-copy {
          padding: 30px;
        }

        .promo-capacity {
          font-size: 68px;
        }

        .promo-copy h2,
        .promo-copy h3 {
          font-size: 32px;
        }

        .promo-subtitle {
          font-size: 22px;
        }

        .promo-price strong {
          font-size: 52px;
        }

        .promo-qualifier {
          font-size: 14px;
        }

        .promo-actions .btn {
          width: 100%;
        }

        .promo-visual {
          display: none;
        }

        .hero-checks,
        .trust-grid,
        .service-grid,
        .feature-grid,
        .gallery-grid,
        .difference-grid,
        .standards-grid,
        .testimonials-grid,
        .home-case-grid,
        .area-grid,
        .footer-grid {
          grid-template-columns: 1fr;
        }

        .lead-form-card,
        .lead-form-grid {
          grid-template-columns: 1fr;
        }

        .case-study-card {
          grid-template-columns: 1fr;
        }

        .case-study-card img {
          min-height: 260px;
        }

        .case-study-copy {
          padding: 24px;
        }

        .lead-form-card {
          padding: 24px;
        }

        .service-hero-grid {
          padding: 58px 0 76px;
        }

        .service-hero-card img {
          height: 240px;
        }

        .service-hero-card-body,
        .feature-card {
          padding: 24px;
        }

        .hero-cta .btn {
          width: 100%;
        }

        .hero-visual {
          min-height: 470px;
        }

        .job-card {
          min-height: 450px;
          padding: 16px;
          border-radius: 26px;
        }

        .photo-panel {
          min-height: 280px;
        }

        .rating-card,
        .emergency-card {
          position: relative;
          left: auto;
          right: auto;
          bottom: auto;
          width: auto;
          margin-top: 12px;
        }

        .mini-list {
          display: none;
        }

        section {
          padding: 64px 0;
        }

        .section-head {
          display: block;
        }

        .section-text {
          margin-top: 16px;
        }

        .brand-showcase {
          padding: 0 0 64px;
        }

        .brand-showcase-head {
          display: block;
          padding: 0 22px;
        }

        .brand-showcase-head p {
          margin-top: 14px;
        }

        .brand-row-label {
          padding: 0 22px;
        }

        .brand-marquee::before,
        .brand-marquee::after {
          width: 42px;
        }

        .brand-pill {
          width: 150px;
          height: 78px;
          padding: 14px 18px;
        }

        .brand-pill img {
          max-height: 44px;
        }

        .copy-panel,
        .process-callout,
        .faq-card,
        .cta-panel {
          padding: 26px;
        }

        .founder-card {
          min-height: 470px;
        }

        .step {
          grid-template-columns: 1fr;
        }

        .cta-panel {
          grid-template-columns: 1fr;
          transform: translateY(42px);
          box-shadow: 6px 6px 0 var(--teal-dark);
        }

        #solar-installations,
        #battery-installations,
        #ev-charger-installations {
          scroll-margin-top: 124px;
        }

        .copyright {
          flex-direction: column;
        }

        .mobile-call {
          position: fixed;
          right: 14px;
          bottom: 14px;
          z-index: 30;
          display: inline-flex;
          color: var(--ink);
          background: var(--amber);
          border: 2px solid var(--ink);
          box-shadow: 4px 4px 0 var(--teal-dark);
        }

        .mobile-call.mobile-whatsapp {
          color: white;
          background: #25d366;
          border-color: #075e54;
          box-shadow: 4px 4px 0 #075e54;
        }
      }

      .alphaess-hero-card {
        min-height: 0;
      }

      .alphaess-hero-card img {
        height: 250px;
        padding: 26px;
        object-fit: contain;
        background: linear-gradient(145deg, #f6f1e7, #ffffff);
      }

      .alphaess-hero-list {
        display: grid;
        gap: 10px;
        margin: 22px 0 0;
        padding: 0;
        list-style: none;
      }

      .alphaess-hero-list li {
        display: flex;
        gap: 10px;
        align-items: flex-start;
        color: #445166;
        font-size: 14px;
        font-weight: 750;
      }

      .alphaess-hero-list li::before {
        content: "";
        flex: 0 0 auto;
        width: 8px;
        height: 8px;
        margin-top: 8px;
        background: var(--teal);
        border-radius: 50%;
      }

      .alphaess-models {
        background: white;
      }

      .alphaess-model-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .alphaess-model-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 26px;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .alphaess-model-card-featured {
        background: linear-gradient(145deg, #eefaf8, #fffaf0);
        border-color: rgba(28, 119, 116, 0.28);
      }

      .alphaess-model-card-head {
        padding-bottom: 18px;
        border-bottom: 1px solid var(--line);
      }

      .alphaess-model-card-head p {
        margin-bottom: 7px;
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .alphaess-model-card h3 {
        margin-bottom: 0;
        font-size: 28px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .alphaess-spec-list {
        display: grid;
        gap: 12px;
        margin: 22px 0;
      }

      .alphaess-spec-list div {
        display: grid;
        grid-template-columns: minmax(100px, 0.42fr) minmax(0, 0.58fr);
        gap: 12px;
        align-items: start;
      }

      .alphaess-spec-list dt {
        color: var(--muted);
        font-size: 13px;
        font-weight: 800;
      }

      .alphaess-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 14px;
        font-weight: 750;
        line-height: 1.45;
      }

      .alphaess-resource-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 14px;
        margin-top: auto;
      }

      .alphaess-resource-link {
        color: var(--teal-dark);
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .alphaess-model-note {
        max-width: 940px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .feature-grid.alphaess-fit-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
      }

      .difference-grid.alphaess-backup-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .alphaess-comparison {
        background: var(--paper);
      }

      .alphaess-comparison-scroll {
        overflow-x: auto;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 14px 34px rgba(8, 20, 33, 0.08);
      }

      .alphaess-comparison-table {
        width: 100%;
        min-width: 820px;
        border-collapse: collapse;
      }

      .alphaess-comparison-table th,
      .alphaess-comparison-table td {
        padding: 20px 22px;
        border-bottom: 1px solid var(--line);
        text-align: left;
        vertical-align: top;
      }

      .alphaess-comparison-table thead th {
        color: white;
        background: var(--ink);
        font-size: 13px;
        letter-spacing: 0.04em;
        text-transform: uppercase;
      }

      .alphaess-comparison-table tbody th {
        color: var(--ink);
        font-size: 17px;
      }

      .alphaess-comparison-table td {
        color: #445166;
      }

      .alphaess-comparison-table tr:last-child th,
      .alphaess-comparison-table tr:last-child td {
        border-bottom: 0;
      }

      .alphaess-comparison-table a {
        color: var(--teal-dark);
        font-weight: 900;
        text-decoration: underline;
        text-underline-offset: 3px;
      }

      .alphaess-case-study {
        background: white;
      }

      .alphaess-case-facts {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
        margin: 24px 0 18px;
      }

      .alphaess-case-facts div {
        padding: 16px;
        background: var(--cream);
        border-radius: 16px;
      }

      .alphaess-case-facts dt {
        margin-bottom: 6px;
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.05em;
        text-transform: uppercase;
      }

      .alphaess-case-facts dd {
        margin: 0;
        color: var(--ink);
        font-size: 13px;
        font-weight: 750;
        line-height: 1.45;
      }

      .case-study-copy .alphaess-case-note {
        margin-bottom: 0;
        color: #445166;
        font-size: 14px;
        font-weight: 700;
      }

      .alphaess-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1040px) {
        .alphaess-model-grid,
        .feature-grid.alphaess-fit-grid,
        .difference-grid.alphaess-backup-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .alphaess-case-facts {
          grid-template-columns: 1fr;
        }
      }

      @media (max-width: 720px) {
        .alphaess-model-grid,
        .feature-grid.alphaess-fit-grid,
        .difference-grid.alphaess-backup-grid {
          grid-template-columns: 1fr;
        }

        .alphaess-hero-card img {
          height: 210px;
        }

        .alphaess-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }

        .alphaess-model-card {
          padding: 24px;
        }
      }

      .foxess-hero-card {
        min-height: 0;
        background:
          radial-gradient(circle at 88% 16%, rgba(255, 191, 60, 0.24), transparent 10rem),
          linear-gradient(145deg, #0c2237, #123f5c 68%, #1c7774);
      }

      .foxess-hero-card .service-hero-card-body {
        padding: 32px;
        color: white;
      }

      .foxess-hero-card .section-kicker,
      .foxess-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.76);
      }

      .foxess-hero-card .service-hero-card-body strong {
        font-size: clamp(30px, 3vw, 42px);
      }

      .foxess-hero-card .foxess-logo {
        width: 150px;
        height: auto;
        margin-bottom: 26px;
        padding: 12px;
        object-fit: contain;
        background: white;
        border-radius: 12px;
      }

      .foxess-ecosystem-map {
        position: relative;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 24px 0;
      }

      .foxess-map-node {
        display: grid;
        place-items: center;
        min-height: 56px;
        padding: 10px;
        color: var(--ink);
        background: white;
        border-radius: 14px;
        font-size: 13px;
        font-weight: 900;
        text-align: center;
      }

      .foxess-map-inverter {
        color: white;
        background: var(--teal-dark);
      }

      .foxess-map-cloud {
        grid-column: 1 / -1;
        color: var(--ink);
        background: var(--amber);
      }

      .foxess-systems {
        background: white;
      }

      .foxess-system-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .foxess-system-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 28px;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .foxess-system-card-featured {
        background: linear-gradient(145deg, #effaf9, #fffaf0);
        border-color: rgba(28, 119, 116, 0.26);
      }

      .foxess-system-card-head {
        padding-bottom: 18px;
        border-bottom: 1px solid var(--line);
      }

      .foxess-system-card-head p {
        margin-bottom: 7px;
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .foxess-system-card h3 {
        margin-bottom: 0;
        font-size: 28px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .foxess-spec-list {
        display: grid;
        gap: 12px;
        margin: 22px 0;
      }

      .foxess-spec-list div {
        display: grid;
        grid-template-columns: minmax(98px, 0.4fr) minmax(0, 0.6fr);
        gap: 12px;
      }

      .foxess-spec-list dt {
        color: var(--muted);
        font-size: 13px;
        font-weight: 800;
      }

      .foxess-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 14px;
        font-weight: 750;
        line-height: 1.45;
      }

      .foxess-resource-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 14px;
        margin-top: auto;
      }

      .foxess-resource-links a {
        color: var(--teal-dark);
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .foxess-quote-checklist {
        display: grid;
        gap: 13px;
        margin: 24px 0;
        padding: 0;
        list-style: none;
      }

      .foxess-quote-checklist li {
        display: flex;
        gap: 10px;
        color: #445166;
        font-size: 14px;
        font-weight: 750;
      }

      .foxess-quote-checklist li::before {
        content: "";
        flex: 0 0 auto;
        width: 8px;
        height: 8px;
        margin-top: 8px;
        background: var(--teal);
        border-radius: 50%;
      }

      .foxess-ecosystem {
        background: var(--cream);
      }

      .foxess-ecosystem-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .foxess-ecosystem-card {
        padding: 26px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 10px 26px rgba(8, 20, 33, 0.06);
      }

      .foxess-ecosystem-card span {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        margin-bottom: 22px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 14px;
        font-size: 13px;
        font-weight: 950;
      }

      .foxess-ecosystem-card h3 {
        margin-bottom: 10px;
        font-size: 23px;
        line-height: 1.12;
        letter-spacing: -0.025em;
      }

      .foxess-ecosystem-card p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .difference-grid.foxess-backup-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .foxcloud-monitoring {
        background: white;
      }

      .foxcloud-grid {
        display: grid;
        grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
        gap: 28px;
        align-items: stretch;
      }

      .foxcloud-callout {
        padding: 34px;
        color: white;
        background: linear-gradient(145deg, var(--navy), var(--teal-dark));
        border-radius: var(--radius);
      }

      .foxcloud-callout h2 {
        margin-bottom: 14px;
        font-size: clamp(32px, 4vw, 48px);
        line-height: 1.04;
      }

      .foxcloud-callout .section-kicker,
      .foxcloud-callout p {
        color: rgba(255, 255, 255, 0.78);
      }

      .foxcloud-callout .btn {
        margin-top: 8px;
      }

      .foxcloud-data-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
      }

      .foxcloud-data-list article {
        padding: 24px;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 20px;
      }

      .foxcloud-data-list span {
        display: block;
        margin-bottom: 12px;
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .foxcloud-data-list h3 {
        margin-bottom: 8px;
        font-size: 24px;
      }

      .foxcloud-data-list p {
        margin-bottom: 0;
        color: var(--muted);
      }

      .foxcloud-note {
        max-width: 930px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .foxcloud-note a {
        color: var(--teal-dark);
        font-weight: 850;
        text-decoration: underline;
        text-underline-offset: 3px;
      }

      .foxess-case-study {
        background: var(--paper);
      }

      .case-study-copy .foxess-case-note {
        margin-bottom: 0;
        color: #445166;
        font-weight: 750;
      }

      .foxess-comparison {
        background: white;
      }

      .foxess-comparison-scroll {
        overflow-x: auto;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 24px;
      }

      .foxess-comparison-table {
        width: 100%;
        min-width: 700px;
        border-collapse: collapse;
      }

      .foxess-comparison-table th,
      .foxess-comparison-table td {
        padding: 20px 22px;
        border-bottom: 1px solid var(--line);
        text-align: left;
        vertical-align: top;
      }

      .foxess-comparison-table thead th {
        color: white;
        background: var(--ink);
        font-size: 13px;
        letter-spacing: 0.04em;
        text-transform: uppercase;
      }

      .foxess-comparison-table tbody th {
        color: var(--ink);
        font-size: 17px;
      }

      .foxess-comparison-table td {
        color: #445166;
      }

      .foxess-comparison-table tr:last-child th,
      .foxess-comparison-table tr:last-child td {
        border-bottom: 0;
      }

      .foxess-comparison-table a {
        color: var(--teal-dark);
        font-weight: 900;
        text-decoration: underline;
        text-underline-offset: 3px;
      }

      .foxess-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1040px) {
        .foxess-system-grid,
        .foxess-ecosystem-grid,
        .difference-grid.foxess-backup-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .foxcloud-grid {
          grid-template-columns: 1fr;
        }
      }

      @media (max-width: 720px) {
        .foxess-system-grid,
        .foxess-ecosystem-grid,
        .difference-grid.foxess-backup-grid,
        .foxcloud-data-list {
          grid-template-columns: 1fr;
        }

        .foxess-system-card,
        .foxess-ecosystem-card,
        .foxcloud-callout {
          padding: 24px;
        }

        .foxess-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }
      }

      .feature-grid.ev-inclusion-grid,
      .feature-grid.ev-product-grid {
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      }

      .ev-price .battery-cost-factors li:last-child {
        grid-column: 1 / -1;
      }

      .ev-brand-card {
        display: flex;
        flex-direction: column;
      }

      .ev-product-link {
        margin-top: 18px;
        color: var(--teal-dark);
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .ev-speed {
        background: white;
      }

      .ev-speed-scroll {
        overflow-x: auto;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 14px 34px rgba(8, 20, 33, 0.08);
      }

      .ev-speed-table {
        width: 100%;
        min-width: 860px;
        border-collapse: collapse;
      }

      .ev-speed-table th,
      .ev-speed-table td {
        padding: 20px 22px;
        border-bottom: 1px solid var(--line);
        text-align: left;
        vertical-align: top;
      }

      .ev-speed-table thead th {
        color: white;
        background: var(--ink);
        font-size: 13px;
        letter-spacing: 0.04em;
        text-transform: uppercase;
      }

      .ev-speed-table tbody th {
        color: var(--ink);
        font-size: 19px;
      }

      .ev-speed-table td {
        color: #445166;
      }

      .ev-speed-table tr:last-child th,
      .ev-speed-table tr:last-child td {
        border-bottom: 0;
      }

      .ev-speed-note {
        max-width: 900px;
        margin: 22px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .lead-form-file-note {
        color: var(--muted);
        font-size: 12px;
        font-weight: 600;
        line-height: 1.4;
      }

      .google-review blockquote {
        margin: 0;
      }

      .quote .google-review-rating {
        letter-spacing: 0.04em;
      }

      .google-review-author {
        display: flex;
        gap: 10px;
        align-items: center;
        margin-top: 22px;
      }

      .google-review-author img {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        object-fit: cover;
      }

      .google-review-author span {
        display: grid;
        gap: 2px;
        color: var(--ink);
        font-weight: 900;
      }

      .google-review-author a {
        color: inherit;
      }

      .google-review-author small {
        color: var(--muted);
        font-size: 12px;
        font-weight: 600;
      }

      .google-review footer {
        margin-top: 18px;
      }

      .google-review-fallback {
        grid-column: 1 / -1;
        max-width: 560px;
      }

      .google-review-fallback-title {
        margin-bottom: 18px;
        color: var(--teal-dark);
        font-weight: 900;
      }

      .google-reviews-notice,
      .google-maps-attribution {
        margin: 18px 0 0;
        color: #5e5e5e;
      }

      .google-reviews-notice {
        font-size: 13px;
      }

      .google-maps-attribution {
        font-family: Roboto, sans-serif;
        font-size: 13px;
        font-style: normal;
        font-weight: 400;
        letter-spacing: normal;
        white-space: nowrap;
      }

      @media (max-width: 760px) {
        .ev-price .battery-cost-factors li:last-child {
          grid-column: auto;
        }

        .google-review-fallback {
          grid-column: auto;
        }
      }

      .service-hero.goodwe-hero {
        background:
          radial-gradient(circle at 78% 0%, rgba(46, 166, 160, 0.27), transparent 24rem),
          radial-gradient(circle at 12% 15%, rgba(255, 191, 60, 0.22), transparent 28rem),
          linear-gradient(180deg, #f7fbfb 0%, var(--cream) 100%);
      }

      .goodwe-hero-card {
        min-height: 0;
        background: white;
      }

      .goodwe-hero-card > img {
        height: 290px;
      }

      .goodwe-hero-card .service-hero-card-body {
        min-height: 228px;
        background: linear-gradient(145deg, #eaf7f5, #fffdf7);
      }

      .goodwe-logo {
        width: 138px;
        height: 42px;
        margin-bottom: 18px;
        object-fit: contain;
        object-position: left center;
      }

      .goodwe-options {
        background: white;
      }

      .goodwe-options-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .goodwe-option-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 27px;
        background: var(--paper);
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .goodwe-option-card > span {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        margin-bottom: 21px;
        color: white;
        background: var(--teal-dark);
        border-radius: 14px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.04em;
      }

      .goodwe-option-card h3 {
        margin-bottom: 0;
        font-size: 27px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .goodwe-option-card-primary {
        color: white;
        background:
          radial-gradient(circle at 88% 10%, rgba(255, 191, 60, 0.28), transparent 10rem),
          linear-gradient(145deg, var(--navy), #155b67);
        border-color: transparent;
      }

      .goodwe-option-card-primary > span {
        color: var(--ink);
        background: var(--amber);
      }

      .goodwe-spec-list {
        display: grid;
        gap: 12px;
        margin: 24px 0;
      }

      .goodwe-spec-list div {
        display: grid;
        grid-template-columns: minmax(106px, 0.42fr) minmax(0, 0.58fr);
        gap: 12px;
        align-items: start;
      }

      .goodwe-spec-list dt {
        color: var(--muted);
        font-size: 12px;
        font-weight: 900;
        line-height: 1.4;
      }

      .goodwe-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 14px;
        font-weight: 800;
        line-height: 1.45;
      }

      .goodwe-option-card-primary .goodwe-spec-list dt {
        color: rgba(255, 255, 255, 0.66);
      }

      .goodwe-option-card-primary .goodwe-spec-list dd,
      .goodwe-option-card-primary > p {
        color: white;
      }

      .goodwe-option-card > p {
        margin: auto 0 0;
        color: #445166;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.55;
      }

      .goodwe-option-card .text-link,
      .goodwe-resource-links a,
      .goodwe-ecosystem-note a,
      .goodwe-monitor-note a {
        color: var(--teal-dark);
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .goodwe-option-card .text-link {
        margin-top: auto;
        padding-top: 20px;
      }

      .goodwe-resource-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 20px;
        margin-top: 24px;
        padding: 18px 22px;
        background: #f0f8f7;
        border-left: 4px solid var(--teal);
        border-radius: 0 16px 16px 0;
      }

      .goodwe-price {
        background: var(--cream);
      }

      .goodwe-price .battery-cost-panel {
        border-color: rgba(28, 119, 116, 0.22);
      }

      .goodwe-price .battery-cost-factors li {
        min-height: 102px;
        background: #edf8f6;
      }

      .goodwe-ecosystem {
        color: white;
        background:
          radial-gradient(circle at 90% 5%, rgba(46, 166, 160, 0.36), transparent 20rem),
          linear-gradient(145deg, #071e30, #0e374b 58%, #125d61);
      }

      .goodwe-ecosystem .section-kicker,
      .goodwe-ecosystem .section-head h2,
      .goodwe-ecosystem .section-text {
        color: white;
      }

      .goodwe-ecosystem .section-text {
        opacity: 0.78;
      }

      .goodwe-flow {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 12px;
        margin-top: 36px;
      }

      .goodwe-flow article {
        position: relative;
        min-height: 220px;
        padding: 23px 20px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.96);
        border-radius: 20px;
      }

      .goodwe-flow article::after {
        content: "+";
        position: absolute;
        z-index: 1;
        top: calc(50% - 14px);
        right: -19px;
        display: grid;
        place-items: center;
        width: 28px;
        height: 28px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 50%;
        font-size: 21px;
        font-weight: 800;
      }

      .goodwe-flow article:last-child::after {
        display: none;
      }

      .goodwe-flow span {
        display: block;
        margin-bottom: 38px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .goodwe-flow h3 {
        margin-bottom: 10px;
        font-size: 22px;
        line-height: 1.08;
        letter-spacing: -0.025em;
      }

      .goodwe-flow p {
        margin-bottom: 0;
        color: #445166;
        font-size: 14px;
        line-height: 1.5;
      }

      .goodwe-ecosystem-note,
      .goodwe-monitor-note {
        margin: 24px auto 0;
        font-size: 14px;
        text-align: center;
      }

      .goodwe-ecosystem-note {
        color: rgba(255, 255, 255, 0.74);
      }

      .goodwe-ecosystem-note a {
        color: white;
      }

      .goodwe-monitoring {
        background: white;
      }

      .feature-grid.goodwe-monitor-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .goodwe-monitor-grid .feature-card > span {
        color: var(--teal-dark);
        background: #e5f5f2;
      }

      .goodwe-monitor-note {
        color: var(--muted);
      }

      .goodwe-backup {
        background: var(--paper);
      }

      .difference-grid.goodwe-backup-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .goodwe-case-study {
        background: white;
      }

      .goodwe-case-study .case-study-card img {
        min-height: 400px;
      }

      .goodwe-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1100px) {
        .goodwe-options-grid,
        .goodwe-flow,
        .feature-grid.goodwe-monitor-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .goodwe-flow article::after {
          display: none;
        }
      }

      @media (max-width: 720px) {
        .goodwe-options-grid,
        .goodwe-flow,
        .feature-grid.goodwe-monitor-grid,
        .difference-grid.goodwe-backup-grid {
          grid-template-columns: 1fr;
        }

        .goodwe-hero-card > img {
          height: 240px;
        }

        .goodwe-option-card {
          padding: 24px;
        }

        .goodwe-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }

        .goodwe-flow article {
          min-height: 0;
        }

        .goodwe-flow span {
          margin-bottom: 22px;
        }
      }

      .service-hero.sigenergy-hero {
        background:
          radial-gradient(circle at 82% 12%, rgba(244, 139, 49, 0.28), transparent 20rem),
          radial-gradient(circle at 14% 10%, rgba(91, 78, 170, 0.17), transparent 26rem),
          linear-gradient(180deg, #fbfafb 0%, #f4f0eb 100%);
      }

      .sigenergy-hero-card {
        min-height: 0;
        color: white;
        background:
          radial-gradient(circle at 86% 10%, rgba(245, 157, 71, 0.4), transparent 11rem),
          linear-gradient(145deg, #272550, #393570 62%, #61456d);
      }

      .sigenergy-hero-card .service-hero-card-body {
        min-height: 100%;
        padding: 34px;
        color: white;
      }

      .sigenergy-hero-card .section-kicker,
      .sigenergy-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.78);
      }

      .sigenergy-hero-card .service-hero-card-body strong {
        font-size: clamp(30px, 3vw, 42px);
      }

      .sigenergy-system-map {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin: 28px 0;
      }

      .sigenergy-system-map span {
        display: grid;
        place-items: center;
        min-height: 58px;
        padding: 10px;
        color: #272550;
        background: rgba(255, 255, 255, 0.96);
        border-radius: 14px;
        font-size: 13px;
        font-weight: 900;
        text-align: center;
      }

      .sigenergy-system-map .sigenergy-map-core {
        color: white;
        background: #f18b37;
      }

      .sigenergy-system-map .sigenergy-map-app {
        grid-column: 1 / -1;
        color: white;
        background: rgba(255, 255, 255, 0.16);
        border: 1px solid rgba(255, 255, 255, 0.22);
      }

      .sigenergy-systems {
        background: white;
      }

      .sigenergy-system-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .sigenergy-system-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 28px;
        background: #f9f8fc;
        border: 1px solid rgba(39, 37, 80, 0.12);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .sigenergy-system-card > span {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        margin-bottom: 22px;
        color: white;
        background: #524a9b;
        border-radius: 14px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.04em;
      }

      .sigenergy-system-card h3 {
        margin-bottom: 0;
        font-size: 27px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .sigenergy-system-card-primary {
        color: white;
        background:
          radial-gradient(circle at 88% 8%, rgba(245, 157, 71, 0.38), transparent 10rem),
          linear-gradient(145deg, #282550, #493d6a);
        border-color: transparent;
      }

      .sigenergy-system-card-primary > span {
        color: #282550;
        background: #ffd086;
      }

      .sigenergy-spec-list {
        display: grid;
        gap: 12px;
        margin: 24px 0;
      }

      .sigenergy-spec-list div {
        display: grid;
        grid-template-columns: minmax(106px, 0.41fr) minmax(0, 0.59fr);
        gap: 12px;
        align-items: start;
      }

      .sigenergy-spec-list dt {
        color: #6a6982;
        font-size: 12px;
        font-weight: 900;
        line-height: 1.4;
      }

      .sigenergy-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 14px;
        font-weight: 800;
        line-height: 1.45;
      }

      .sigenergy-system-card-primary .sigenergy-spec-list dt {
        color: rgba(255, 255, 255, 0.66);
      }

      .sigenergy-system-card-primary .sigenergy-spec-list dd,
      .sigenergy-system-card-primary > p {
        color: white;
      }

      .sigenergy-system-card > p {
        margin: auto 0 0;
        color: #45445e;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.55;
      }

      .sigenergy-system-card .text-link,
      .sigenergy-resource-links a,
      .sigenergy-backup-note a,
      .sigenergy-app-note a {
        color: #46408f;
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .sigenergy-system-card .text-link {
        margin-top: auto;
        padding-top: 20px;
      }

      .sigenergy-resource-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 14px;
        margin-top: auto;
        padding-top: 20px;
      }

      .sigenergy-ecosystem {
        color: white;
        background:
          radial-gradient(circle at 88% 8%, rgba(245, 139, 55, 0.33), transparent 20rem),
          linear-gradient(145deg, #26234d, #33326b 60%, #5b4163);
      }

      .sigenergy-ecosystem .section-kicker,
      .sigenergy-ecosystem .section-head h2,
      .sigenergy-ecosystem .section-text {
        color: white;
      }

      .sigenergy-ecosystem .section-text {
        opacity: 0.78;
      }

      .sigenergy-ecosystem-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .sigenergy-ecosystem-grid article {
        min-height: 100%;
        padding: 26px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 22px;
      }

      .sigenergy-ecosystem-grid span {
        display: block;
        margin-bottom: 30px;
        color: #564da1;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .sigenergy-ecosystem-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .sigenergy-ecosystem-grid p {
        margin-bottom: 0;
        color: #474660;
        font-size: 14px;
        line-height: 1.55;
      }

      .sigenergy-app-note {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 18px;
        align-items: center;
        margin-top: 24px;
        padding: 20px 22px;
        color: white;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 18px;
        font-size: 14px;
        line-height: 1.5;
      }

      .sigenergy-app-note strong {
        color: #ffd086;
      }

      .sigenergy-app-note a {
        color: white;
        white-space: nowrap;
      }

      .sigenergy-backup {
        background: var(--paper);
      }

      .difference-grid.sigenergy-backup-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .sigenergy-backup-note {
        max-width: 900px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .sigenergy-price {
        background: #f3f0ed;
      }

      .sigenergy-price .battery-cost-panel {
        border-color: rgba(82, 74, 155, 0.22);
      }

      .sigenergy-price .battery-cost-factors li {
        min-height: 102px;
        background: #efedf8;
      }

      .sigenergy-case-study {
        background: white;
      }

      .sigenergy-case-card {
        display: block;
        max-width: 760px;
        margin: 0 auto;
        background:
          radial-gradient(circle at 90% 10%, rgba(245, 157, 71, 0.17), transparent 12rem),
          #f9f8fc;
        border: 1px dashed rgba(82, 74, 155, 0.38);
      }

      .sigenergy-case-card .case-study-copy {
        padding: clamp(28px, 5vw, 48px);
      }

      .sigenergy-case-status {
        display: inline-flex;
        margin-bottom: 22px;
        padding: 8px 12px;
        color: #46408f;
        background: #e9e5f8;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      .sigenergy-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1080px) {
        .sigenergy-system-grid,
        .sigenergy-ecosystem-grid,
        .difference-grid.sigenergy-backup-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .sigenergy-app-note {
          grid-template-columns: 1fr;
        }

        .sigenergy-app-note a {
          white-space: normal;
        }
      }

      @media (max-width: 720px) {
        .sigenergy-system-grid,
        .sigenergy-ecosystem-grid,
        .difference-grid.sigenergy-backup-grid {
          grid-template-columns: 1fr;
        }

        .sigenergy-hero-card .service-hero-card-body,
        .sigenergy-system-card,
        .sigenergy-ecosystem-grid article {
          padding: 24px;
        }

        .sigenergy-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }
      }

      .service-hero.sofar-hero {
        background:
          radial-gradient(circle at 84% 12%, rgba(238, 122, 50, 0.28), transparent 21rem),
          radial-gradient(circle at 14% 8%, rgba(30, 118, 154, 0.16), transparent 27rem),
          linear-gradient(180deg, #fbfaf7 0%, #f4efe6 100%);
      }

      .sofar-hero-card {
        min-height: 0;
        color: white;
        background:
          radial-gradient(circle at 88% 10%, rgba(238, 122, 50, 0.4), transparent 11rem),
          linear-gradient(145deg, #0c314c, #135b74 62%, #226c6f);
      }

      .sofar-hero-card .service-hero-card-body {
        min-height: 100%;
        padding: 34px;
        color: white;
      }

      .sofar-hero-card .section-kicker,
      .sofar-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.78);
      }

      .sofar-hero-card .service-hero-card-body strong {
        font-size: clamp(30px, 3vw, 42px);
      }

      .sofar-package-map {
        display: grid;
        gap: 10px;
        margin: 28px 0;
      }

      .sofar-package-map span {
        display: grid;
        grid-template-columns: 66px 1fr;
        gap: 10px;
        align-items: center;
        min-height: 58px;
        padding: 11px 14px;
        color: #0c314c;
        background: rgba(255, 255, 255, 0.96);
        border-radius: 14px;
        font-size: 13px;
        font-weight: 900;
      }

      .sofar-package-map b {
        color: #d65620;
        font-size: 17px;
        letter-spacing: -0.04em;
      }

      .sofar-package {
        background: white;
      }

      .sofar-package-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .sofar-package-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 28px;
        background: #faf8f3;
        border: 1px solid rgba(12, 49, 76, 0.12);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .sofar-package-card > span {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        margin-bottom: 22px;
        color: white;
        background: #16718a;
        border-radius: 14px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.04em;
      }

      .sofar-package-card h3 {
        margin-bottom: 0;
        font-size: 27px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .sofar-package-card-primary {
        color: white;
        background:
          radial-gradient(circle at 86% 8%, rgba(238, 122, 50, 0.36), transparent 10rem),
          linear-gradient(145deg, #0b314d, #165d70);
        border-color: transparent;
      }

      .sofar-package-card-primary > span {
        color: #0b314d;
        background: #ffc165;
      }

      .sofar-spec-list {
        display: grid;
        gap: 12px;
        margin: 24px 0;
      }

      .sofar-spec-list div {
        display: grid;
        grid-template-columns: minmax(106px, 0.42fr) minmax(0, 0.58fr);
        gap: 12px;
        align-items: start;
      }

      .sofar-spec-list dt {
        color: #617486;
        font-size: 12px;
        font-weight: 900;
        line-height: 1.4;
      }

      .sofar-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 14px;
        font-weight: 800;
        line-height: 1.45;
      }

      .sofar-package-card-primary .sofar-spec-list dt {
        color: rgba(255, 255, 255, 0.66);
      }

      .sofar-package-card-primary .sofar-spec-list dd,
      .sofar-package-card-primary > p {
        color: white;
      }

      .sofar-package-card > p {
        margin: auto 0 0;
        color: #455766;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.55;
      }

      .sofar-resource-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 14px;
        margin-top: auto;
        padding-top: 20px;
      }

      .sofar-resource-links a,
      .sofar-cloud-note a {
        color: #13647d;
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .sofar-document-note {
        max-width: 940px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .sofar-document-note a {
        color: #13647d;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .sofar-fit {
        background: #f4efe6;
      }

      .sofar-energy-note {
        display: grid;
        grid-template-columns: minmax(200px, 0.38fr) minmax(0, 1fr);
        gap: 24px;
        align-items: center;
        margin-bottom: 22px;
        padding: 24px 28px;
        background: white;
        border-left: 5px solid #df6227;
        border-radius: 0 20px 20px 0;
        box-shadow: 0 10px 28px rgba(8, 20, 33, 0.06);
      }

      .sofar-energy-note strong {
        color: #0d4764;
        font-size: 24px;
        line-height: 1.1;
        letter-spacing: -0.035em;
      }

      .sofar-energy-note p {
        margin: 0;
        color: #455766;
      }

      .feature-grid.sofar-fit-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .sofar-fit-grid .feature-card > span {
        color: #c85020;
        background: #fce8dd;
      }

      .sofar-compatibility {
        background: white;
      }

      .sofar-backup {
        background: var(--paper);
      }

      .difference-grid.sofar-backup-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .sofar-cloud {
        color: white;
        background:
          radial-gradient(circle at 88% 4%, rgba(238, 122, 50, 0.34), transparent 20rem),
          linear-gradient(145deg, #0b314d, #115a72 62%, #1b7774);
      }

      .sofar-cloud .section-kicker,
      .sofar-cloud .section-head h2,
      .sofar-cloud .section-text {
        color: white;
      }

      .sofar-cloud .section-text {
        opacity: 0.78;
      }

      .sofar-cloud-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .sofar-cloud-grid article {
        min-height: 100%;
        padding: 26px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 22px;
      }

      .sofar-cloud-grid span {
        display: block;
        margin-bottom: 30px;
        color: #c85020;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .sofar-cloud-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .sofar-cloud-grid p {
        margin-bottom: 0;
        color: #455766;
        font-size: 14px;
        line-height: 1.55;
      }

      .sofar-cloud-note {
        max-width: 900px;
        margin: 24px auto 0;
        color: rgba(255, 255, 255, 0.76);
        font-size: 14px;
        text-align: center;
      }

      .sofar-cloud-note a {
        color: white;
      }

      .sofar-price {
        background: #f2efeb;
      }

      .sofar-price .battery-cost-panel {
        border-color: rgba(19, 100, 125, 0.24);
      }

      .sofar-price .battery-cost-factors li {
        min-height: 102px;
        background: #eaf4f4;
      }

      .sofar-case-study {
        background: white;
      }

      .sofar-case-card {
        display: block;
        max-width: 760px;
        margin: 0 auto;
        background:
          radial-gradient(circle at 90% 10%, rgba(238, 122, 50, 0.17), transparent 12rem),
          #faf8f3;
        border: 1px dashed rgba(19, 100, 125, 0.4);
      }

      .sofar-case-card .case-study-copy {
        padding: clamp(28px, 5vw, 48px);
      }

      .sofar-case-status {
        display: inline-flex;
        margin-bottom: 22px;
        padding: 8px 12px;
        color: #a9451d;
        background: #fbe5d9;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      .sofar-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1080px) {
        .sofar-package-grid,
        .feature-grid.sofar-fit-grid,
        .difference-grid.sofar-backup-grid,
        .sofar-cloud-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }

      @media (max-width: 720px) {
        .sofar-package-grid,
        .feature-grid.sofar-fit-grid,
        .difference-grid.sofar-backup-grid,
        .sofar-cloud-grid,
        .sofar-energy-note {
          grid-template-columns: 1fr;
        }

        .sofar-hero-card .service-hero-card-body,
        .sofar-package-card,
        .sofar-cloud-grid article,
        .sofar-energy-note {
          padding: 24px;
        }

        .sofar-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }
      }

      .service-hero.jinko-hero {
        background:
          radial-gradient(circle at 84% 10%, rgba(41, 143, 214, 0.27), transparent 22rem),
          radial-gradient(circle at 14% 10%, rgba(255, 191, 60, 0.16), transparent 27rem),
          linear-gradient(180deg, #f7fbff 0%, #f3f0e9 100%);
      }

      .jinko-hero-card {
        min-height: 0;
        color: white;
        background:
          radial-gradient(circle at 88% 10%, rgba(63, 168, 235, 0.37), transparent 11rem),
          linear-gradient(145deg, #073b69, #075c93 63%, #0d727f);
      }

      .jinko-hero-card .service-hero-card-body {
        min-height: 100%;
        padding: 34px;
        color: white;
      }

      .jinko-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.78);
      }

      .jinko-hero-card .service-hero-card-body strong {
        display: block;
        margin-bottom: 24px;
        font-size: clamp(29px, 3vw, 40px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .jinko-logo {
        width: 142px;
        height: 46px;
        margin-bottom: 20px;
        padding: 8px 12px;
        object-fit: contain;
        object-position: left center;
        background: white;
        border-radius: 10px;
      }

      .jinko-hero-specs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-bottom: 24px;
      }

      .jinko-hero-specs span {
        display: grid;
        gap: 4px;
        min-height: 67px;
        padding: 11px;
        color: white;
        background: rgba(255, 255, 255, 0.11);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 13px;
        font-size: 12px;
        font-weight: 800;
      }

      .jinko-hero-specs b {
        color: #a9dcff;
        font-size: 16px;
        line-height: 1;
      }

      .jinko-options {
        background: white;
      }

      .jinko-option-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 16px;
      }

      .jinko-option-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 25px;
        background: #f7fafc;
        border: 1px solid rgba(7, 59, 105, 0.12);
        border-radius: 23px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .jinko-option-card > span {
        display: grid;
        place-items: center;
        width: 43px;
        height: 43px;
        margin-bottom: 20px;
        color: white;
        background: #07629c;
        border-radius: 13px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.03em;
      }

      .jinko-option-card h3 {
        margin-bottom: 0;
        font-size: 25px;
        line-height: 1.09;
        letter-spacing: -0.035em;
      }

      .jinko-option-card-primary {
        color: white;
        background:
          radial-gradient(circle at 87% 8%, rgba(255, 191, 60, 0.34), transparent 10rem),
          linear-gradient(145deg, #073b69, #075d86);
        border-color: transparent;
      }

      .jinko-option-card-primary > span {
        color: #073b69;
        background: #ffca5c;
      }

      .jinko-spec-list {
        display: grid;
        gap: 11px;
        margin: 23px 0;
      }

      .jinko-spec-list div {
        display: grid;
        grid-template-columns: minmax(98px, 0.41fr) minmax(0, 0.59fr);
        gap: 10px;
        align-items: start;
      }

      .jinko-spec-list dt {
        color: #607586;
        font-size: 12px;
        font-weight: 900;
        line-height: 1.4;
      }

      .jinko-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 13px;
        font-weight: 800;
        line-height: 1.45;
      }

      .jinko-option-card-primary .jinko-spec-list dt {
        color: rgba(255, 255, 255, 0.67);
      }

      .jinko-option-card-primary .jinko-spec-list dd,
      .jinko-option-card-primary > p {
        color: white;
      }

      .jinko-option-card > p {
        margin: auto 0 0;
        color: #445867;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.55;
      }

      .jinko-option-card .text-link,
      .jinko-document-note a,
      .jinko-warranty-note a {
        color: #075f96;
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .jinko-option-card .text-link {
        margin-top: auto;
        padding-top: 20px;
      }

      .jinko-document-note {
        max-width: 940px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .jinko-fit {
        background: #f4efe7;
      }

      .jinko-fit-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .jinko-fit-grid article {
        min-height: 100%;
        padding: 26px;
        background: white;
        border: 1px solid rgba(7, 59, 105, 0.1);
        border-radius: 22px;
        box-shadow: 0 10px 26px rgba(8, 20, 33, 0.05);
      }

      .jinko-fit-grid span {
        display: block;
        margin-bottom: 30px;
        color: #07629c;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .jinko-fit-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .jinko-fit-grid p {
        margin-bottom: 0;
        color: #435866;
        font-size: 14px;
        line-height: 1.55;
      }

      .jinko-sizing {
        background: white;
      }

      .jinko-sizing-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
      }

      .jinko-sizing-grid article {
        padding: 24px;
        background: #eef7fc;
        border-radius: 20px;
      }

      .jinko-sizing-grid strong {
        display: block;
        margin-bottom: 10px;
        color: #075f96;
        font-size: 29px;
        line-height: 1;
        letter-spacing: -0.04em;
      }

      .jinko-sizing-grid span {
        display: block;
        margin-bottom: 13px;
        color: var(--ink);
        font-size: 14px;
        font-weight: 900;
      }

      .jinko-sizing-grid p {
        margin-bottom: 0;
        color: #435866;
        font-size: 13px;
        line-height: 1.5;
      }

      .jinko-generation-note {
        display: grid;
        grid-template-columns: minmax(220px, 0.35fr) minmax(0, 1fr);
        gap: 24px;
        align-items: center;
        margin-top: 22px;
        padding: 24px 28px;
        background: #fbf6e9;
        border-left: 5px solid #f0aa24;
        border-radius: 0 20px 20px 0;
      }

      .jinko-generation-note strong {
        color: #07517e;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.03em;
      }

      .jinko-generation-note p {
        margin: 0;
        color: #435866;
      }

      .jinko-warranty {
        background: #f3f7f9;
      }

      .jinko-warranty-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .jinko-warranty-grid article {
        padding: 26px;
        background: white;
        border: 1px solid rgba(7, 59, 105, 0.1);
        border-radius: 22px;
      }

      .jinko-warranty-grid span {
        display: block;
        margin-bottom: 26px;
        color: #07629c;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .jinko-warranty-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .jinko-warranty-grid p {
        margin-bottom: 0;
        color: #435866;
        font-size: 14px;
        line-height: 1.55;
      }

      .jinko-warranty-note {
        margin: 24px 0 0;
        text-align: center;
      }

      .jinko-future {
        color: white;
        background:
          radial-gradient(circle at 87% 8%, rgba(41, 143, 214, 0.38), transparent 20rem),
          linear-gradient(145deg, #073b69, #075a88 64%, #0d777b);
      }

      .jinko-future .section-kicker,
      .jinko-future .section-head h2,
      .jinko-future .section-text {
        color: white;
      }

      .jinko-future .section-text {
        opacity: 0.78;
      }

      .jinko-future-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .jinko-future-grid article {
        min-height: 100%;
        padding: 27px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 22px;
      }

      .jinko-future-grid span {
        display: block;
        margin-bottom: 28px;
        color: #07629c;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .jinko-future-grid h3 {
        margin-bottom: 11px;
        font-size: 24px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .jinko-future-grid p {
        margin-bottom: 0;
        color: #435866;
        font-size: 14px;
        line-height: 1.55;
      }

      .jinko-case-study {
        background: white;
      }

      .jinko-case-card {
        display: block;
        max-width: 760px;
        margin: 0 auto;
        background:
          radial-gradient(circle at 90% 10%, rgba(41, 143, 214, 0.14), transparent 12rem),
          #f7fafc;
        border: 1px dashed rgba(7, 95, 150, 0.42);
      }

      .jinko-case-card .case-study-copy {
        padding: clamp(28px, 5vw, 48px);
      }

      .jinko-case-status {
        display: inline-flex;
        margin-bottom: 22px;
        padding: 8px 12px;
        color: #075788;
        background: #dff0fb;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      .jinko-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1160px) {
        .jinko-option-grid,
        .jinko-fit-grid,
        .jinko-sizing-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }

      @media (max-width: 760px) {
        .jinko-option-grid,
        .jinko-fit-grid,
        .jinko-sizing-grid,
        .jinko-warranty-grid,
        .jinko-future-grid,
        .jinko-generation-note {
          grid-template-columns: 1fr;
        }

        .jinko-hero-card .service-hero-card-body,
        .jinko-option-card,
        .jinko-fit-grid article,
        .jinko-sizing-grid article,
        .jinko-warranty-grid article,
        .jinko-future-grid article,
        .jinko-generation-note {
          padding: 24px;
        }

        .jinko-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }
      }

      .service-hero.longi-hero {
        background:
          radial-gradient(circle at 84% 10%, rgba(72, 169, 124, 0.27), transparent 22rem),
          radial-gradient(circle at 14% 10%, rgba(255, 191, 60, 0.15), transparent 27rem),
          linear-gradient(180deg, #f7fcf9 0%, #f3f0e8 100%);
      }

      .longi-hero-card {
        min-height: 0;
        color: white;
        background:
          radial-gradient(circle at 88% 10%, rgba(115, 199, 145, 0.36), transparent 11rem),
          linear-gradient(145deg, #123f46, #146256 63%, #297554);
      }

      .longi-hero-card .service-hero-card-body {
        min-height: 100%;
        padding: 34px;
        color: white;
      }

      .longi-hero-card .service-hero-card-body p {
        color: rgba(255, 255, 255, 0.78);
      }

      .longi-mark {
        margin: 0 0 20px;
        color: white !important;
        font-size: 26px;
        font-weight: 950;
        letter-spacing: -0.055em;
        line-height: 1;
      }

      .longi-mark span {
        margin-left: 7px;
        padding-left: 9px;
        color: #b8efc4;
        border-left: 2px solid rgba(255, 255, 255, 0.44);
        font-size: 17px;
        letter-spacing: -0.03em;
      }

      .longi-hero-card .service-hero-card-body strong {
        display: block;
        margin-bottom: 24px;
        font-size: clamp(29px, 3vw, 40px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .longi-hero-specs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-bottom: 24px;
      }

      .longi-hero-specs span {
        display: grid;
        gap: 4px;
        min-height: 67px;
        padding: 11px;
        color: white;
        background: rgba(255, 255, 255, 0.11);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 13px;
        font-size: 12px;
        font-weight: 800;
      }

      .longi-hero-specs b {
        color: #b8efc4;
        font-size: 16px;
        line-height: 1;
      }

      .longi-options {
        background: white;
      }

      .longi-option-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 16px;
      }

      .longi-supply-note {
        display: grid;
        grid-template-columns: minmax(220px, 0.3fr) minmax(0, 1fr);
        gap: 24px;
        align-items: center;
        max-width: 1000px;
        margin: 0 auto 22px;
        padding: 20px 25px;
        background: #edf7f0;
        border-left: 5px solid #187157;
        border-radius: 0 18px 18px 0;
      }

      .longi-supply-note strong {
        color: #17634d;
        font-size: 19px;
        line-height: 1.14;
        letter-spacing: -0.025em;
      }

      .longi-supply-note p {
        margin: 0;
        color: #425a51;
        font-size: 14px;
        line-height: 1.55;
      }

      .longi-option-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 25px;
        background: #f7fbf8;
        border: 1px solid rgba(18, 63, 70, 0.12);
        border-radius: 23px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .longi-option-card > span {
        display: grid;
        place-items: center;
        width: 43px;
        height: 43px;
        margin-bottom: 20px;
        color: white;
        background: #187157;
        border-radius: 13px;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.03em;
      }

      .longi-option-card h3 {
        margin-bottom: 0;
        font-size: 25px;
        line-height: 1.09;
        letter-spacing: -0.035em;
      }

      .longi-spec-list {
        display: grid;
        gap: 11px;
        margin: 23px 0;
      }

      .longi-spec-list div {
        display: grid;
        grid-template-columns: minmax(98px, 0.41fr) minmax(0, 0.59fr);
        gap: 10px;
        align-items: start;
      }

      .longi-spec-list dt {
        color: #60786f;
        font-size: 12px;
        font-weight: 900;
        line-height: 1.4;
      }

      .longi-spec-list dd {
        margin: 0;
        color: var(--ink);
        font-size: 13px;
        font-weight: 800;
        line-height: 1.45;
      }

      .longi-option-card > p {
        margin: auto 0 0;
        color: #425a51;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.55;
      }

      .longi-option-card .text-link,
      .longi-document-note a,
      .longi-warranty-note a {
        color: #17634d;
        font-size: 14px;
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .longi-option-card .text-link {
        margin-top: auto;
        padding-top: 20px;
      }

      .longi-document-note {
        max-width: 940px;
        margin: 24px auto 0;
        color: var(--muted);
        font-size: 14px;
        text-align: center;
      }

      .longi-fit {
        background: #f3f0e8;
      }

      .longi-fit-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
      }

      .longi-fit-grid article {
        min-height: 100%;
        padding: 26px;
        background: white;
        border: 1px solid rgba(18, 63, 70, 0.1);
        border-radius: 22px;
        box-shadow: 0 10px 26px rgba(8, 20, 33, 0.05);
      }

      .longi-fit-grid span {
        display: block;
        margin-bottom: 30px;
        color: #187157;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .longi-fit-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .longi-fit-grid p {
        margin-bottom: 0;
        color: #425a51;
        font-size: 14px;
        line-height: 1.55;
      }

      .longi-technology {
        color: white;
        background:
          radial-gradient(circle at 87% 8%, rgba(116, 198, 141, 0.34), transparent 20rem),
          linear-gradient(145deg, #123f46, #176553 64%, #32764d);
      }

      .longi-technology .section-kicker,
      .longi-technology .section-head h2,
      .longi-technology .section-text {
        color: white;
      }

      .longi-technology .section-text {
        opacity: 0.78;
      }

      .longi-technology-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .longi-technology-grid article {
        min-height: 100%;
        padding: 27px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 22px;
      }

      .longi-technology-grid span {
        display: block;
        margin-bottom: 28px;
        color: #187157;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .longi-technology-grid h3 {
        margin-bottom: 11px;
        font-size: 24px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .longi-technology-grid p {
        margin-bottom: 0;
        color: #425a51;
        font-size: 14px;
        line-height: 1.55;
      }

      .longi-sizing {
        background: white;
      }

      .longi-sizing-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px;
      }

      .longi-sizing-grid article {
        padding: 26px;
        background: #edf7f0;
        border-radius: 20px;
      }

      .longi-sizing-grid strong {
        display: block;
        margin-bottom: 10px;
        color: #17634d;
        font-size: 31px;
        line-height: 1;
        letter-spacing: -0.04em;
      }

      .longi-sizing-grid span {
        display: block;
        margin-bottom: 13px;
        color: var(--ink);
        font-size: 14px;
        font-weight: 900;
      }

      .longi-sizing-grid p {
        margin-bottom: 0;
        color: #425a51;
        font-size: 13px;
        line-height: 1.5;
      }

      .longi-generation-note {
        display: grid;
        grid-template-columns: minmax(220px, 0.35fr) minmax(0, 1fr);
        gap: 24px;
        align-items: center;
        margin-top: 22px;
        padding: 24px 28px;
        background: #f8f5e9;
        border-left: 5px solid #d7a825;
        border-radius: 0 20px 20px 0;
      }

      .longi-generation-note strong {
        color: #17634d;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.03em;
      }

      .longi-generation-note p {
        margin: 0;
        color: #425a51;
      }

      .longi-warranty {
        background: #f3f7f4;
      }

      .longi-warranty-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .longi-warranty-grid article {
        padding: 26px;
        background: white;
        border: 1px solid rgba(18, 63, 70, 0.1);
        border-radius: 22px;
      }

      .longi-warranty-grid span {
        display: block;
        margin-bottom: 26px;
        color: #187157;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .longi-warranty-grid h3 {
        margin-bottom: 11px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .longi-warranty-grid p {
        margin-bottom: 0;
        color: #425a51;
        font-size: 14px;
        line-height: 1.55;
      }

      .longi-warranty-note {
        margin: 24px 0 0;
        color: var(--muted);
        text-align: center;
      }

      .longi-future {
        color: white;
        background:
          radial-gradient(circle at 87% 8%, rgba(115, 199, 145, 0.35), transparent 20rem),
          linear-gradient(145deg, #123f46, #176553 64%, #32764d);
      }

      .longi-future .section-kicker,
      .longi-future .section-head h2,
      .longi-future .section-text {
        color: white;
      }

      .longi-future .section-text {
        opacity: 0.78;
      }

      .longi-future-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .longi-future-grid article {
        min-height: 100%;
        padding: 27px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 22px;
      }

      .longi-future-grid span {
        display: block;
        margin-bottom: 28px;
        color: #187157;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .longi-future-grid h3 {
        margin-bottom: 11px;
        font-size: 24px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .longi-future-grid p {
        margin-bottom: 0;
        color: #425a51;
        font-size: 14px;
        line-height: 1.55;
      }

      .longi-case-study {
        background: white;
      }

      .longi-case-card {
        display: block;
        max-width: 760px;
        margin: 0 auto;
        background:
          radial-gradient(circle at 90% 10%, rgba(72, 169, 124, 0.14), transparent 12rem),
          #f7fbf8;
        border: 1px dashed rgba(23, 99, 77, 0.42);
      }

      .longi-case-card .case-study-copy {
        padding: clamp(28px, 5vw, 48px);
      }

      .longi-case-status {
        display: inline-flex;
        margin-bottom: 22px;
        padding: 8px 12px;
        color: #17634d;
        background: #dff2e4;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }

      .longi-faq {
        padding-bottom: 144px;
      }

      @media (max-width: 1160px) {
        .longi-option-grid,
        .longi-fit-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }

      @media (max-width: 760px) {
        .longi-option-grid,
        .longi-fit-grid,
        .longi-technology-grid,
        .longi-sizing-grid,
        .longi-warranty-grid,
        .longi-future-grid,
        .longi-generation-note,
        .longi-supply-note {
          grid-template-columns: 1fr;
        }

        .longi-hero-card .service-hero-card-body,
        .longi-option-card,
        .longi-fit-grid article,
        .longi-technology-grid article,
        .longi-sizing-grid article,
        .longi-warranty-grid article,
        .longi-future-grid article,
        .longi-generation-note {
          padding: 24px;
        }

        .longi-spec-list div {
          grid-template-columns: 1fr;
          gap: 3px;
        }
      }

      .hub-hero {
        background:
          radial-gradient(circle at 84% 8%, rgba(46, 166, 160, 0.24), transparent 22rem),
          radial-gradient(circle at 12% 12%, rgba(255, 191, 60, 0.18), transparent 24rem),
          #f5f1e8;
      }

      .hub-hero-card {
        min-height: 0;
        color: white;
        background:
          radial-gradient(circle at 90% 8%, rgba(255, 191, 60, 0.34), transparent 11rem),
          linear-gradient(145deg, #0c2237, #1c7774);
      }

      .hub-hero-card .service-hero-card-body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 100%;
        padding: clamp(28px, 4vw, 44px);
      }

      .hub-hero-card .service-hero-card-body strong {
        display: block;
        margin: 14px 0 18px;
        color: white;
        font-size: clamp(29px, 3vw, 43px);
        line-height: 1.05;
        letter-spacing: -0.045em;
      }

      .hub-hero-card .service-hero-card-body p {
        margin: 0;
        color: rgba(255, 255, 255, 0.78);
      }

      .hub-card-label {
        display: inline-flex;
        align-self: flex-start;
        padding: 7px 10px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 999px;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }

      .hub-brand-section,
      .hub-guide-section,
      .hub-project-section {
        background: white;
      }

      .hub-brand-grid,
      .hub-guide-grid,
      .hub-project-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .hub-brand-card,
      .hub-guide-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: 26px;
        color: var(--ink);
        background: #f5f8f5;
        border: 1px solid rgba(8, 20, 33, 0.11);
        border-radius: 22px;
        box-shadow: 0 12px 28px rgba(8, 20, 33, 0.05);
        transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
      }

      .hub-brand-card:hover,
      .hub-guide-card:hover {
        border-color: rgba(28, 119, 116, 0.5);
        box-shadow: 0 18px 36px rgba(8, 20, 33, 0.1);
        transform: translateY(-4px);
      }

      .hub-brand-card > span,
      .hub-guide-card > span {
        display: grid;
        place-items: center;
        width: 46px;
        height: 46px;
        margin-bottom: 26px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 14px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.05em;
      }

      .hub-guide-card > span {
        width: auto;
        height: auto;
        align-self: flex-start;
        padding: 7px 10px;
        color: var(--teal-dark);
        background: #dff5f2;
        border-radius: 999px;
        text-transform: uppercase;
      }

      .hub-brand-card h3,
      .hub-guide-card h3 {
        margin-bottom: 10px;
        font-size: 25px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .hub-brand-card p,
      .hub-guide-card p {
        margin-bottom: 22px;
        color: #506174;
        font-size: 14px;
        line-height: 1.55;
      }

      .hub-brand-card b,
      .hub-guide-card b {
        margin-top: auto;
        color: var(--teal-dark);
        font-size: 14px;
      }

      .hub-brand-card b::after,
      .hub-guide-card b::after {
        content: " ->";
      }

      .hub-process {
        color: white;
        background:
          radial-gradient(circle at 88% 10%, rgba(46, 166, 160, 0.3), transparent 24rem),
          var(--navy);
      }

      .hub-process .section-kicker,
      .hub-process .section-head h2,
      .hub-process .section-text {
        color: white;
      }

      .hub-process .section-text {
        opacity: 0.76;
      }

      .hub-process-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 16px;
      }

      .hub-process-grid article {
        min-height: 100%;
        padding: 25px;
        color: var(--ink);
        background: rgba(255, 255, 255, 0.97);
        border-radius: 20px;
      }

      .hub-process-grid span {
        display: block;
        margin-bottom: 28px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .hub-process-grid h3 {
        margin-bottom: 10px;
        font-size: 23px;
        line-height: 1.1;
        letter-spacing: -0.025em;
      }

      .hub-process-grid p {
        margin: 0;
        color: #506174;
        font-size: 14px;
        line-height: 1.55;
      }

      .hub-project-card {
        overflow: hidden;
        min-height: 100%;
        background: #f5f8f5;
        border: 1px solid rgba(8, 20, 33, 0.11);
        border-radius: 22px;
        box-shadow: 0 12px 28px rgba(8, 20, 33, 0.05);
      }

      .hub-project-card img {
        width: 100%;
        height: 225px;
        object-fit: cover;
      }

      .hub-project-card > div {
        padding: 25px;
      }

      .hub-project-card h3 {
        margin-bottom: 10px;
        font-size: 25px;
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .hub-project-card > div > p {
        color: #506174;
        font-size: 14px;
        line-height: 1.55;
      }

      .hub-project-card dl {
        display: grid;
        gap: 10px;
        margin: 22px 0 0;
        padding-top: 20px;
        border-top: 1px solid rgba(8, 20, 33, 0.11);
      }

      .hub-project-card dl div {
        display: grid;
        grid-template-columns: minmax(84px, 0.33fr) minmax(0, 0.67fr);
        gap: 10px;
      }

      .hub-project-card dt {
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        line-height: 1.4;
      }

      .hub-project-card dd {
        margin: 0;
        color: var(--ink);
        font-size: 13px;
        font-weight: 750;
        line-height: 1.45;
      }

      .hub-project-standard {
        background: #f5f1e8;
      }

      @media (max-width: 1040px) {
        .hub-brand-grid,
        .hub-guide-grid,
        .hub-project-grid,
        .hub-process-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }

      @media (max-width: 720px) {
        .hub-brand-grid,
        .hub-guide-grid,
        .hub-project-grid,
        .hub-process-grid {
          grid-template-columns: 1fr;
        }

        .hub-brand-card,
        .hub-guide-card,
        .hub-process-grid article,
        .hub-project-card > div {
          padding: 23px;
        }
      }

      .dropdown-menu-brands {
        min-width: 290px;
        gap: 8px;
        padding: 12px;
      }

      .dropdown-brand-group {
        display: grid;
        gap: 3px;
        padding: 8px 0;
      }

      .dropdown-brand-group + .dropdown-brand-group {
        border-top: 1px solid rgba(8, 20, 33, 0.1);
      }

      .dropdown-menu .dropdown-brand-group-title {
        padding: 9px 10px;
        color: var(--ink);
        font-size: 14px;
        font-weight: 950;
        letter-spacing: -0.02em;
        text-transform: none;
      }

      .dropdown-menu .dropdown-brand-group-title::before {
        content: "";
        display: inline-block;
        width: 7px;
        height: 7px;
        margin-right: 9px;
        background: var(--amber);
        border-radius: 50%;
      }

      .dropdown-brand-links {
        display: grid;
        gap: 1px;
        padding-left: 18px;
      }

      .dropdown-menu .dropdown-brand-links a {
        padding: 7px 10px;
        color: #506174;
        font-size: 13px;
        font-weight: 800;
        letter-spacing: -0.01em;
        line-height: 1.25;
        text-transform: none;
      }

      .dropdown-menu .dropdown-brand-links a::before {
        content: "";
        display: inline-block;
        width: 4px;
        height: 4px;
        margin: 0 9px 2px 0;
        background: currentColor;
        border-radius: 50%;
      }

      .dropdown-menu-list {
        min-width: 320px;
        padding: 10px;
      }

      .dropdown-menu.dropdown-menu-list a {
        padding: 9px 11px;
        color: #506174;
        font-size: 13px;
        font-weight: 800;
        letter-spacing: -0.01em;
        line-height: 1.3;
        text-transform: none;
      }

      .dropdown-menu.dropdown-menu-list a::before {
        content: "";
        display: inline-block;
        width: 4px;
        height: 4px;
        margin: 0 9px 2px 0;
        background: var(--teal-dark);
        border-radius: 50%;
      }

      @media (max-width: 1160px) {
        body.menu-open .dropdown-menu-brands {
          gap: 4px;
          padding: 8px 12px 10px 16px;
        }

        body.menu-open .dropdown-menu .dropdown-brand-group-title {
          padding: 10px 12px;
          font-size: 15px;
        }

        body.menu-open .dropdown-menu .dropdown-brand-links a {
          padding: 8px 12px;
          font-size: 14px;
        }

        body.menu-open .dropdown-menu.dropdown-menu-list a {
          padding: 9px 12px;
          font-size: 14px;
        }
      }

      .guide-upgrade-paths {
        background:
          radial-gradient(circle at 90% 8%, rgba(46, 166, 160, 0.16), transparent 24rem),
          var(--paper);
      }

      .guide-comparison-wrap {
        overflow-x: auto;
        background: white;
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: 0 14px 36px rgba(8, 20, 33, 0.08);
      }

      .guide-comparison-table {
        width: 100%;
        min-width: 780px;
        border-collapse: collapse;
        text-align: left;
      }

      .guide-comparison-table caption {
        padding: 22px 26px 12px;
        color: var(--teal-dark);
        font-size: 13px;
        font-weight: 950;
        letter-spacing: 0.1em;
        text-align: left;
        text-transform: uppercase;
      }

      .guide-comparison-table th,
      .guide-comparison-table td {
        padding: 20px 22px;
        vertical-align: top;
        border-top: 1px solid var(--line);
      }

      .guide-comparison-table thead th {
        color: white;
        background: var(--navy);
        border-top: 0;
        font-size: 13px;
        letter-spacing: 0.03em;
        text-transform: uppercase;
      }

      .guide-comparison-table tbody th {
        width: 20%;
        color: var(--ink);
        background: #f5f8f5;
        font-size: 17px;
        line-height: 1.3;
      }

      .guide-comparison-table td {
        width: 26.66%;
        color: #506174;
        font-size: 15px;
        line-height: 1.58;
      }

      .guide-inline-copy {
        max-width: 800px;
        margin: 22px 0 0;
        color: #506174;
      }

      .guide-inline-copy a,
      .guide-next-steps a {
        color: var(--teal-dark);
        font-weight: 850;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .guide-path-notes {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        margin-top: 22px;
      }

      .guide-path-notes article {
        padding: 26px;
        background: rgba(255, 255, 255, 0.75);
        border: 1px solid var(--line);
        border-radius: 20px;
      }

      .guide-path-notes h3 {
        margin-bottom: 10px;
        font-size: 22px;
        line-height: 1.15;
        letter-spacing: -0.025em;
      }

      .guide-path-notes p {
        margin: 0;
        color: #506174;
        font-size: 15px;
      }

      .guide-upgrade-decisions {
        background: var(--cream);
      }

      .guide-decision-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
      }

      .guide-decision-grid article {
        padding: clamp(28px, 4vw, 42px);
        color: white;
        background:
          radial-gradient(circle at 92% 8%, rgba(255, 191, 60, 0.2), transparent 13rem),
          linear-gradient(145deg, var(--navy), var(--navy-2));
        border-radius: 24px;
      }

      .guide-decision-grid h3 {
        margin-bottom: 14px;
        font-size: clamp(25px, 2.4vw, 34px);
        line-height: 1.1;
        letter-spacing: -0.035em;
      }

      .guide-decision-grid p {
        margin: 0;
        color: rgba(255, 255, 255, 0.8);
      }

      .guide-quote-prep {
        background: white;
      }

      .guide-check-list {
        display: grid;
        gap: 13px;
        margin: 24px 0 0;
        padding: 0;
        list-style: none;
      }

      .guide-check-list li {
        display: grid;
        grid-template-columns: 12px minmax(0, 1fr);
        gap: 11px;
        align-items: start;
        color: #506174;
      }

      .guide-check-list li::before {
        content: "";
        width: 10px;
        height: 10px;
        margin-top: 8px;
        background: var(--amber);
        border-radius: 50%;
      }

      .guide-case-standard {
        background: #f5f1e8;
      }

      .guide-case-note {
        display: grid;
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: clamp(28px, 5vw, 64px);
        padding: clamp(28px, 5vw, 52px);
        background: white;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        box-shadow: 0 14px 36px rgba(8, 20, 33, 0.08);
      }

      .guide-case-note h2 {
        margin-bottom: 16px;
      }

      .guide-case-note p:last-child {
        margin-bottom: 0;
        color: #506174;
      }

      .guide-case-note dl {
        display: grid;
        gap: 12px;
        margin: 0;
      }

      .guide-case-note dl div {
        display: grid;
        grid-template-columns: minmax(120px, 0.38fr) minmax(0, 0.62fr);
        gap: 14px;
        padding: 13px 0;
        border-bottom: 1px solid var(--line);
      }

      .guide-case-note dl div:first-child {
        border-top: 1px solid var(--line);
      }

      .guide-case-note dt {
        color: var(--teal-dark);
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.05em;
        text-transform: uppercase;
      }

      .guide-case-note dd {
        margin: 0;
        color: #506174;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.5;
      }

      .guide-next-steps {
        padding-bottom: 120px;
        background: var(--paper);
      }

      .guide-next-steps-panel {
        display: grid;
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: 32px;
        align-items: end;
        padding: clamp(28px, 5vw, 50px);
        background: #e0f2ef;
        border-radius: var(--radius);
      }

      .guide-next-steps-panel p {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 18px;
        margin: 0;
      }

      .ev-charging-basics {
        background:
          radial-gradient(circle at 92% 10%, rgba(255, 191, 60, 0.18), transparent 23rem),
          var(--paper);
      }

      .ev-ac-dc-grid,
      .ev-planning-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
      }

      .ev-ac-dc-grid article {
        padding: clamp(28px, 4vw, 42px);
        color: white;
        background:
          radial-gradient(circle at 90% 8%, rgba(255, 191, 60, 0.2), transparent 12rem),
          linear-gradient(145deg, var(--navy), var(--navy-2));
        border-radius: 24px;
      }

      .ev-ac-dc-grid article:last-child {
        color: var(--ink);
        background: #e0f2ef;
      }

      .ev-ac-dc-grid span {
        display: inline-flex;
        padding: 7px 10px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 999px;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: 0.08em;
      }

      .ev-ac-dc-grid h3 {
        margin: 22px 0 12px;
        font-size: clamp(26px, 2.6vw, 36px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .ev-ac-dc-grid p {
        margin: 0;
        color: rgba(255, 255, 255, 0.8);
      }

      .ev-ac-dc-grid article:last-child p {
        color: #385568;
      }

      .ev-charge-time {
        display: grid;
        grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
        gap: 30px;
        align-items: center;
        margin-top: 22px;
        padding: clamp(28px, 5vw, 50px);
        background: white;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        box-shadow: 0 14px 36px rgba(8, 20, 33, 0.08);
      }

      .ev-charge-time h2 {
        margin-bottom: 14px;
      }

      .ev-charge-time p:last-child {
        margin-bottom: 0;
        color: #506174;
      }

      .ev-charge-formula {
        padding: clamp(24px, 4vw, 36px);
        background: #f5f8f5;
        border-radius: 22px;
      }

      .ev-charge-formula strong {
        display: block;
        margin-bottom: 14px;
        color: var(--navy);
        font-size: clamp(23px, 2.5vw, 32px);
        line-height: 1.18;
        letter-spacing: -0.035em;
      }

      .ev-charge-formula strong span {
        display: inline-block;
        margin: 0 5px;
        color: var(--teal-dark);
      }

      .ev-charge-planning {
        background: var(--cream);
      }

      .ev-planning-grid article {
        padding: 28px;
        background: white;
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .ev-planning-grid h3 {
        margin-bottom: 12px;
        font-size: 25px;
        line-height: 1.12;
        letter-spacing: -0.03em;
      }

      .ev-planning-grid p {
        margin: 0;
        color: #506174;
      }

      .ev-service-link {
        margin: 26px 0 0;
        color: #506174;
        font-weight: 700;
      }

      .ev-service-link a {
        color: var(--teal-dark);
        font-weight: 900;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .guide-battery-price-build {
        background:
          radial-gradient(circle at 90% 8%, rgba(46, 166, 160, 0.16), transparent 24rem),
          var(--paper);
      }

      .guide-battery-price-formula {
        padding: clamp(28px, 5vw, 50px);
        color: white;
        background:
          radial-gradient(circle at 92% 8%, rgba(255, 191, 60, 0.22), transparent 14rem),
          linear-gradient(145deg, var(--navy), var(--navy-2));
        border-radius: var(--radius);
        box-shadow: var(--shadow);
      }

      .guide-battery-price-formula strong {
        display: block;
        max-width: 980px;
        margin-bottom: 16px;
        font-size: clamp(25px, 3.2vw, 42px);
        line-height: 1.14;
        letter-spacing: -0.04em;
      }

      .guide-battery-price-formula strong span {
        display: inline-block;
        margin: 0 5px;
        color: var(--amber);
      }

      .guide-battery-price-formula p {
        max-width: 780px;
        margin: 0;
        color: rgba(255, 255, 255, 0.8);
      }

      .guide-battery-terms {
        background: white;
      }

      .guide-battery-terms-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .guide-battery-terms-grid article {
        min-height: 100%;
        padding: 28px;
        background: #f5f8f5;
        border: 1px solid rgba(8, 20, 33, 0.1);
        border-radius: 22px;
      }

      .guide-battery-terms-grid span {
        display: inline-flex;
        align-items: center;
        min-height: 34px;
        padding: 5px 10px;
        color: var(--ink);
        background: var(--amber);
        border-radius: 999px;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: 0.06em;
      }

      .guide-battery-terms-grid h3 {
        margin: 22px 0 10px;
        font-size: 25px;
        line-height: 1.1;
        letter-spacing: -0.03em;
      }

      .guide-battery-terms-grid p {
        margin: 0;
        color: #506174;
      }

      .guide-battery-backup {
        background: var(--cream);
      }

      .guide-battery-incentives {
        background: #e0f2ef;
      }

      .guide-policy-date {
        margin-top: 18px;
        padding-top: 18px;
        border-top: 1px solid rgba(8, 20, 33, 0.14);
      }

      .guide-policy-date a {
        color: var(--teal-dark);
        font-weight: 850;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
      }

      .guide-battery-compare {
        background: var(--paper);
      }

      .guide-battery-compare-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
      }

      .guide-battery-compare-grid article,
      .guide-battery-public-price {
        padding: clamp(28px, 4vw, 42px);
        background: white;
        border: 1px solid var(--line);
        border-radius: 24px;
        box-shadow: 0 12px 30px rgba(8, 20, 33, 0.06);
      }

      .guide-battery-compare-grid h3,
      .guide-battery-public-price h3 {
        margin-bottom: 18px;
        font-size: clamp(25px, 2.5vw, 32px);
        line-height: 1.1;
        letter-spacing: -0.035em;
      }

      .guide-battery-compare-grid ul,
      .guide-battery-public-price ul {
        display: grid;
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .guide-battery-compare-grid li,
      .guide-battery-public-price li {
        display: grid;
        grid-template-columns: 11px minmax(0, 1fr);
        gap: 10px;
        align-items: start;
        color: #506174;
      }

      .guide-battery-compare-grid li::before,
      .guide-battery-public-price li::before {
        content: "";
        width: 9px;
        height: 9px;
        margin-top: 8px;
        background: var(--teal);
        border-radius: 50%;
      }

      .guide-battery-public-price {
        margin-top: 20px;
        color: white;
        background:
          radial-gradient(circle at 92% 8%, rgba(255, 191, 60, 0.2), transparent 14rem),
          linear-gradient(145deg, var(--navy), var(--navy-2));
      }

      .guide-battery-public-price p,
      .guide-battery-public-price li {
        color: rgba(255, 255, 255, 0.82);
      }

      .guide-battery-public-price li::before {
        background: var(--amber);
      }

      @media (max-width: 760px) {
        .guide-decision-grid,
        .guide-path-notes,
        .guide-case-note,
        .guide-next-steps-panel,
        .ev-ac-dc-grid,
        .ev-planning-grid,
        .ev-charge-time,
        .guide-battery-compare-grid {
          grid-template-columns: 1fr;
        }

        .guide-battery-terms-grid {
          grid-template-columns: 1fr;
        }

        .guide-comparison-table th,
        .guide-comparison-table td {
          padding: 16px;
        }

        .guide-case-note dl div {
          grid-template-columns: 1fr;
          gap: 4px;
        }
      }
