/* Public PEXTH: warm paper, navy and champagne. Loaded after the PDF layout. */
:root {
  --bg: #f7f6f2; --surface: #fff; --surface-2: #f1f2ee; --surface-3: #e8edea;
  --text: #162f39; --text-2: #526770; --text-3: #697b80;
  --border: #dde3dd; --border-strong: #becbc4;
  --premium-gold: #ddc899; --premium-navy: #081c26;
  --r-lg: 16px; --r-xl: 22px;
  --shadow-2: 0 14px 36px -24px #102b3930;
  --shadow-3: 0 24px 64px -36px #0c243a4a;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #07171f; --surface: #0d242e; --surface-2: #122e38; --surface-3: #1c3942;
    --text: #e9eee9; --text-2: #b6c6c8; --text-3: #99adb0;
    --border: #253e46; --border-strong: #415a61;
  }
}
:root[data-theme="dark"] {
  --bg: #07171f; --surface: #0d242e; --surface-2: #122e38; --surface-3: #1c3942;
  --text: #e9eee9; --text-2: #b6c6c8; --text-3: #99adb0;
  --border: #253e46; --border-strong: #415a61;
}
main { --gutter: clamp(20px,3.4vw,48px); --container: 1320px; }
.section { padding-block: clamp(64px,7vw,104px); }
.section-sm { padding-block: 48px; }
.section-head { margin-bottom: 44px; }
.section-head h2 { font-size: clamp(1.65rem,2.5vw,2.3rem); font-weight: 500; line-height: 1.4; text-wrap: balance; }
.section-head h2::after { height: 1px; width: 44px; background: #ac9365; margin-top: 22px; }
.section-head p { max-width: 660px; margin-inline: auto; line-height: 1.85; color: var(--text-2); }
.eyebrow { color: var(--text-3); font-size: .68rem; letter-spacing: .15em; font-weight: 600; }
main .btn { border-radius: 7px; min-height: 44px; font-weight: 500; }
main .btn-sm { min-height: 36px; }
main .btn-accent,.home-hero .sp-submit {
  background: linear-gradient(115deg,#eee1c5,#d7c091); border-color: #eadbb7; color: #252d2a;
  box-shadow: inset 0 1px 0 #fff6,0 3px 14px -8px #d5bc87;
}
main .btn-accent:hover,.home-hero .sp-submit:hover { background: linear-gradient(115deg,#f6eddc,#e5d1a8); border-color: #f0e2c1; color: #17241f; }

/* Full-width energy background, shaded behind the copy and search. */
.home-hero {
  padding: 68px 0 40px;
  background-color: #081c26;
  background-image: linear-gradient(90deg,#081c26eb 0%,#081c26cc 34%,#081c2659 64%,#081c261a 100%),linear-gradient(0deg,#081c26e6,transparent 55%),url('/assets/img/pexth-solar-city.webp');
  background-position: center,center,center 52%;
  background-size: cover;
  background-repeat: no-repeat;
}
.home-hero::before { display: none; }
.home-hero > .container { display: grid; grid-template-columns: minmax(0,1fr); gap: 36px; align-items: center; }
.home-hero .hero-copy { max-width: 680px; padding-block: 16px; }
.home-hero .hero-eyebrow { color: #ddc899; font-size: .76rem; line-height: 1.7; margin-bottom: 26px; }
.energy-dot { background: #ddc899; box-shadow: 0 0 0 4px #ddc89912; }
.home-hero h1 { font-size: clamp(2.45rem,3.6vw,3.45rem); line-height: 1.35; font-weight: 500; letter-spacing: -.035em; margin-bottom: 24px; color: #f4f1e8; }
.home-hero .lead { max-width: 480px; color: #b8c8cc; font-size: .98rem; line-height: 1.95; margin-bottom: 30px; }
.hero-paths { gap: 14px; grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 600px; }
.hero-path {
  padding: 18px 20px; min-height: 86px; border: 1px solid #ddc89999; border-radius: 9px;
  background: #0b2633; color: #f4f0e6; gap: 12px; flex-wrap: nowrap; cursor: pointer;
  box-shadow: inset 0 1px 0 #ffffff0a,0 8px 20px -14px #0009;
  transition: background .16s,border-color .16s,box-shadow .16s,transform .16s;
}
.hero-path:hover { background: #163b49; color: #f4f0e6; border-color: #eee1c5; box-shadow: 0 10px 24px -12px #0009; transform: translateY(-2px); }
.hero-path:active { transform: translateY(0); }
.hero-path:focus-visible { outline: 3px solid #f2dfb4; outline-offset: 4px; }
.hero-path > span:first-child,.hero-path > span:last-child { color: #ddc899; }
.hero-path > span:nth-child(2) { flex-basis: auto; order: 0; }
.hero-path > span:last-child { display: grid; place-items: center; width: 28px; height: 28px; flex: none; border: 1px solid #ddc89955; border-radius: 50%; font-size: 1rem; }
.hero-path strong { color: inherit; font-size: .96rem; font-weight: 600; }
.hero-path small { color: #bfd0d4; font-size: .72rem; line-height: 1.7; }
.home-hero .home-finder { grid-column: 1/-1; margin-top: 10px; padding: 24px 26px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); box-shadow: 0 20px 50px -26px #0007; }
.home-finder .finder-label { color: var(--text); font-size: .82rem; font-weight: 500; margin-bottom: 14px; }
.home-hero .search-panel { border: 0; background: transparent; box-shadow: none; padding: 0; gap: 10px; grid-template-columns: 1.6fr 1fr 1fr auto; }
.home-hero .search-panel .input,.home-hero .search-panel .select {
  background-color: var(--surface-2); color: var(--text); border-color: var(--border); border-radius: 6px;
  min-height: 50px; font-size: .86rem; color-scheme: inherit;
}
.home-hero .search-panel .input::placeholder { color: var(--text-3); }
.home-hero .search-panel .sp-field + .sp-field { border: 0; }
.home-hero .sp-submit { min-width: 130px; margin: 0; min-height: 50px; }
.home-hero .suggest-list { background: var(--surface); }
.journey-band { background: var(--bg); color: var(--text); border-bottom-color: var(--border); }
.journey-band .journey li { padding: 28px 20px; border-color: var(--border); align-items: center; }
.journey-band .journey li:first-child { border-left: 0; }
.journey-band .journey li:last-child { border-right: 0; }
.journey-icon { color: #9e8556; }
.journey li strong { color: var(--text); font-weight: 500; font-size: .69rem; letter-spacing: .17em; }
.journey li > span:last-child { color: var(--text-3); font-size: .72rem; line-height: 1.7; }

/* Live partner listings, with finer borders and stronger image hierarchy. */
.home-gold { padding-block: 72px 44px; }
.home-gold .section-head { gap: 12px 24px; margin-bottom: 28px; }
.home-gold .section-head h2 { font-size: 1.85rem; font-weight: 500; }
.home-gold .section-head h2::before { display: none; }
.home-gold .section-head .eyebrow { color: #9c8153; font-size: .68rem; }
.home-gold .section-head p { margin: 0; font-size: .9rem; }
.home-gold .gold-grid > .gold-banner { min-height: 410px; border-color: #bca57377; border-radius: 18px; box-shadow: none; }
.gold-banner .overlay { padding: 44px; background: linear-gradient(90deg,#071923f5,#071923b3 52%,#07192326); }
.gold-banner h3 { font-size: clamp(1.7rem,3vw,2.45rem); font-weight: 500; line-height: 1.4; }
.gold-banner .gb-about { color: #c0ced0; max-width: 510px; line-height: 1.85; }
.gold-banner .gb-logo { border-radius: 10px; }
.gold-banner .gb-cta { margin-top: 8px; }
.home-silver { padding-block: 40px 56px; background: transparent; border: 0; }
.home-silver h2 { font-size: 1.55rem; font-weight: 500; }
.home-silver .carousel-head { margin-bottom: 30px; }
.co-card { border: 1px solid var(--border); border-radius: 15px; background: var(--surface); box-shadow: 0 6px 28px -22px #0c243a55; }
.co-card.tier-gold-card { border-color: #b6a17299; }
.co-card.tier-silver-card { border-color: var(--border-strong); }
.co-card.tier-bronze-card { border-color: #b3917788; }
.co-card:hover { box-shadow: 0 18px 40px -24px #0c243a60; }
.co-card .cover { aspect-ratio: 16/9; }
.co-card .body,.home-silver .co-card .body { padding: 23px; gap: 10px; }
.co-card h3 { font-weight: 500; }
.carousel-btn { border-radius: 50%; min-height: 38px; }
.page-home .cat-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.cat-tile { padding: 28px; border-radius: 12px; background: var(--surface); box-shadow: none; gap: 12px; }
.cat-tile .ico { border: 0; background: none; color: #a58a57; width: 30px; height: 30px; margin-bottom: 8px; }
.cat-tile strong { font-weight: 500; font-size: .92rem; line-height: 1.6; }
.cat-tile .subtle { color: var(--text-3); }
.cat-tile:hover { border-color: #baa77c; transform: translateY(-3px); }
.home-how { background: var(--surface); }
.home-how .step { padding-top: 74px; }
.home-how .step::before { content: "0" counter(step); color: #aa9162; background: none; box-shadow: none; border-radius: 0; font-size: 2.25rem; font-weight: 400; width: auto; height: auto; }
.home-how .step:not(:last-child)::after { top: 24px; left: 68px; background: var(--border); }
.home-how .step h3 { font-weight: 500; line-height: 1.6; }
.home-how .step p { line-height: 1.85; }
.home-why { background: linear-gradient(90deg,#071923ed,#07192388),url('/assets/img/pexth-solar-city.webp') center / cover; padding-block: 100px; }
.home-why .section-head { max-width: 650px; margin-bottom: 40px; }
.home-why .eyebrow { color: #ddc899; }
.home-why .grid { max-width: 760px; gap: 0; }
.home-why .feature { border-radius: 0; padding: 30px 30px 30px 0; border: 0; border-top: 1px solid #ddc89938; background: none; backdrop-filter: none; }
.home-why .feature:nth-child(even) { padding-left: 28px; }
.home-why .feature .ico { color: #ddc899; }
.home-why .feature h3 { font-weight: 500; }
.home-why .feature p { color: #b5c6cc; line-height: 1.85; }
.stats-section { background: var(--surface); padding-block: 52px; }
.stats-band .stat-value { color: var(--text); font-size: clamp(2rem,3vw,2.75rem); font-weight: 400; }
.stats-band .stat-label { font-size: .84rem; color: var(--text-3); }
.seg-card { padding: 28px; border-radius: 12px; border-color: var(--border); }
.seg-card .ico { background: transparent; color: #a58a57; border-radius: 0; }
.seg-card strong { font-weight: 500; line-height: 1.6; }
.seg-card .muted { line-height: 1.85; }
.seg-more { margin-top: 20px; }
.calc-teaser { border: 1px solid var(--border); border-left: 1px solid var(--border); background: var(--surface); border-radius: 18px; }
.calc-teaser-body { padding: 44px; }
.calc-teaser-ico { color: #a58a57; background: transparent; border: 1px solid #bca57350; border-radius: 50%; }
.calc-teaser-text h2 { font-weight: 500; font-size: 1.8rem; }
.home-cta { background: #081c26; padding-block: 80px; }
.home-cta .cta-stack { grid-template-columns: 1fr 1fr; gap: 0; }
.home-cta .cta-band { background: none; border: 0; border-radius: 0; padding: 20px 48px 20px 0; gap: 30px; }
.home-cta .cta-band + .cta-band { border-left: 1px solid #ddc89930; padding-left: 48px; padding-right: 0; }
.home-cta .cta-band h2 { font-size: 2rem; line-height: 1.5; color: #f0ece2; }
.home-cta .cta-band p { line-height: 1.85; }
.home-cta .btn-light { background: transparent; border-color: #ddc89970; color: #e7d6b5; }
.home-cta .btn-light:hover { background: #ddc8990d; border-color: #ddc899; }

/* The same paper and typography on the public tools, pricing and directory. */
.page-hero { padding-block: 62px 66px; background-image: linear-gradient(90deg,#081c26f5,#081c26b3 55%,#081c2633),url('/assets/img/pexth-solar-city.webp'); }
.page-hero h1 { font-weight: 500; line-height: 1.4; }
.page-hero p { line-height: 1.9; }
.page-hero .breadcrumb { color: #c5b591; margin-bottom: 24px; }
.page-hero .breadcrumb a { color: #e0d2b5; }
.page-packages .page-hero { background-image: linear-gradient(90deg,#081c26eb,#081c2633),url('/assets/img/pexth-energy-horizon.webp'); }
.dir-filters,.wc-form-card,.wc-calc-form { border-radius: 16px; box-shadow: var(--shadow-2); }
.wc-price-card { padding: 32px; border-radius: 16px; box-shadow: none; border-top-width: 2px; }
.wc-price-card.is-popular { box-shadow: var(--shadow-2); }
.wc-price-head h3 { font-weight: 500; font-size: 1.65rem; }
.wc-price-amount { font-size: 2.65rem; font-weight: 500; }
.wc-price-card .wc-checklist { line-height: 1.85; }
.wc-compare-wrap { border-radius: 14px; border-color: var(--border); }
.wc-compare thead { background: #081c26; }
.wc-compare tbody td,.wc-compare tbody th { padding-block: 22px; }
.wc-calc-hero { padding: 32px; border-radius: 16px; }
.wc-calc-kw { font-weight: 500; }
.wc-calc-stat,.wc-calc-metric { box-shadow: none; border-color: var(--border); }
.footer { background: #061720; border-top: 1px solid #ddc89925; padding-top: 72px; }
.footer-lead,.footer-contact { color: #a8b9bd; line-height: 1.9; }
.footer h4 { color: #dfd3bb; font-weight: 500; }
.footer a { color: #c1cbca; }
.footer a:hover { color: #ddc899; }
.footer .tagline span { color: #bba679; }

@media (max-width: 1000px) {
  .home-hero > .container { gap: 32px; }
  .home-hero h1 { font-size: 2.6rem; white-space: normal; }
  .home-hero .home-finder { padding: 22px; }
  .home-hero .search-panel { grid-template-columns: 1.3fr 1fr 1fr auto; }
  .home-hero .sp-submit { min-width: 95px; }
  .page-home .cat-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .home-hero {
    padding-block: 40px 28px;
    background-image: linear-gradient(90deg,#081c26d9,#081c2699),linear-gradient(0deg,#081c26eb,transparent 70%),url('/assets/img/pexth-solar-city.webp');
    background-position: center,center,65% top;
  }
  .home-hero > .container { grid-template-columns: 1fr; gap: 28px; }
  .home-hero .hero-copy { padding: 0; }
  .home-hero h1 { font-size: clamp(2.25rem,6vw,3.1rem); }
  .home-hero .hero-eyebrow { margin-bottom: 20px; }
  .home-hero .lead { max-width: 570px; }
  .hero-paths { grid-template-columns: 1fr 1fr; max-width: none; }
  .home-hero .home-finder { margin-top: 0; }
  .home-hero .search-panel { grid-template-columns: 1fr 1fr; }
  .home-hero .search-panel .sp-field:first-child,.home-hero .sp-submit { grid-column: 1/-1; }
  .journey-band .journey li { border-bottom-color: var(--border); }
  .journey-band .journey li:nth-child(2) { border-right: 0; }
  .home-gold { padding-block: 52px 26px; }
  .home-gold .gold-grid > .gold-banner { min-height: 370px; }
  .gold-banner .overlay { padding: 28px; }
  .page-home .cat-grid { grid-template-columns: 1fr 1fr; }
  .cat-tile { padding: 24px; }
  .home-cta .cta-stack { grid-template-columns: 1fr; gap: 30px; }
  .home-cta .cta-band { padding: 0 0 30px; }
  .home-cta .cta-band + .cta-band { border-left: 0; border-top: 1px solid #ddc89930; padding: 30px 0 0; }
  .page-hero { padding-block: 42px; }
  .wc-price-card { padding: 26px; }
  .footer { padding-top: 52px; }
}
@media (max-width: 480px) {
  .home-hero h1 { font-size: 2.25rem; line-height: 1.4; }
  .home-hero .lead { font-size: .9rem; }
  .hero-paths { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .hero-path { flex-wrap: nowrap; gap: 12px; padding: 16px 18px; min-height: 80px; }
  .hero-path > span:first-child { display: block; width: 25px; }
  .hero-path > span:nth-child(2) { flex-basis: auto; order: 0; }
  .hero-path strong { font-size: .96rem; }
  .hero-path small { font-size: .72rem; }
  .home-hero .home-finder { padding: 20px 16px; }
  .home-hero .search-panel { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .journey-band .journey li { padding: 20px 10px; }
  .journey li > span:last-child { font-size: .68rem; }
  .home-gold .section-head h2 { font-size: 1.6rem; }
  .home-gold .section-head .carousel-nav { margin-left: 0; }
  .home-silver h2 { font-size: 1.35rem; }
  .cat-tile { padding: 22px 18px; }
  .cat-tile strong { font-size: .87rem; }
  .home-why { padding-block: 64px; }
  .home-why .grid { grid-template-columns: 1fr; }
  .home-why .feature,.home-why .feature:nth-child(even) { padding: 26px 0; }
  .home-cta .cta-band h2 { font-size: 1.7rem; }
  .calc-teaser-body { padding: 26px; }
  .calc-teaser-ico { width: 56px; height: 56px; }
  .calc-teaser-text { flex-basis: 100%; }
  .calc-teaser-text h2 { font-size: 1.5rem; }
  .wc-calc-hero { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  main .btn,.hero-path,.co-card,.cat-tile,.seg-card { transition: none; }
}
