.cmg-a1-matcher-landing,
.cmg-a1-matcher-landing * { box-sizing:border-box; }
.cmg-a1-matcher-landing {
  --ink:#102820;
  --muted:#5b6e66;
  --green:#0b6b4f;
  --green-dark:#13352b;
  --mint:#eaf4ef;
  --lime:#dff36b;
  --line:#d8e0db;
  --cream:#f3f6f3;
  --white:#fff;
  color:var(--ink);
  font-family:"DM Sans",system-ui,sans-serif;
}
.cmg-a1-matcher-landing .entry-header,
.cmg-a1-matcher-landing .entry-title,
.cmg-a1-matcher-landing .wp-block-post-title { display:none!important; }
.cmg-a1-matcher-landing .site-content,
.cmg-a1-matcher-landing .ast-container,
.cmg-a1-matcher-landing .content-area,
.cmg-a1-matcher-landing .site-main,
.cmg-a1-matcher-landing article,
.cmg-a1-matcher-landing .entry-content,
.cmg-a1-matcher-landing main.wp-block-group,
.cmg-a1-matcher-landing .wp-block-post-content { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.cmg-a1-matcher-landing .wp-block-group.alignfull { width:100%!important; max-width:none!important; margin-left:0!important; margin-right:0!important; }
.cmg-a1-matcher-landing [hidden] { display:none!important; }
.cmg-a1-matcher-landing .screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

.cmg-solar-top { position:relative; z-index:5; background:rgba(255,255,255,.98); border-bottom:1px solid #e1e7e3; }
.cmg-solar-top__in { width:min(1120px,calc(100% - 40px)); min-height:66px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.cmg-solar-brand { color:#10231d; text-decoration:none; letter-spacing:.025em; line-height:1; }
.cmg-solar-brand strong { display:block; font:800 15px/1.2 "Manrope",sans-serif; }
.cmg-solar-brand span { display:block; margin-top:5px; color:var(--green); font:700 9px/1.1 "DM Sans",sans-serif; letter-spacing:.21em; }
.cmg-solar-top__trust { color:#40584e; font:700 13px/1.2 "DM Sans",sans-serif; }
.cmg-solar-top__trust i { display:inline-grid; place-items:center; width:18px; height:18px; margin-right:7px; border:1px solid #9bc8b6; border-radius:50%; color:var(--green); font-style:normal; font-size:11px; }

.cmg-solar { min-height:calc(100vh - 66px); padding:34px 20px 66px; background:radial-gradient(circle at 4% 5%,rgba(223,243,107,.17),transparent 27rem),radial-gradient(circle at 94% 22%,rgba(43,145,106,.11),transparent 30rem),var(--cream); }
.cmg-solar-shell { width:min(1120px,100%); margin:0 auto; }
.cmg-solar-layout { display:grid; grid-template-columns:minmax(0,735px) minmax(280px,355px); align-items:start; gap:28px; }
.cmg-solar-card { overflow:hidden; border:1px solid rgba(20,62,47,.18); border-radius:24px; background:rgba(255,255,255,.98); box-shadow:0 24px 70px rgba(27,62,48,.11); }

.cmg-solar-progress { padding:21px 32px 17px; border-bottom:1px solid #e4ebe6; }
.cmg-solar-progress__row { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:13px; }
.cmg-solar-kicker { display:flex; align-items:center; gap:8px; color:#41675a; font:800 12px/1.2 "Manrope",sans-serif; letter-spacing:.09em; }
.cmg-solar-kicker span { display:grid; place-items:center; width:25px; height:25px; border-radius:50%; background:var(--lime); color:#29440e; font-size:13px; }
.cmg-solar-progress__label { color:#63756d; font:800 12px/1.2 "Manrope",sans-serif; white-space:nowrap; }
.cmg-solar-progress__track { display:block; overflow:hidden; height:5px; border-radius:999px; background:#e6ede8; }
.cmg-solar-progress__track span { display:block; width:25%; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--green),#4da67e); transition:width .24s ease; }
.cmg-solar-preview { margin:12px 32px -5px; padding:8px 11px; border:1px solid #d8c978; border-radius:9px; background:#fff9dc; color:#6b5b1e; font-size:11px; line-height:1.35; }

.cmg-solar-form { padding:30px 32px 25px; }
.cmg-solar-question-top { min-height:23px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:10px; scroll-margin-top:76px; }
.cmg-solar-step-eyebrow { color:var(--green); font:800 13px/1.2 "Manrope",sans-serif; }
.cmg-solar-back,.cmg-solar-edit,.cmg-solar-restart { appearance:none; border:0; background:transparent; color:#49645a; font:700 13px/1.2 "Manrope",sans-serif; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.cmg-solar-back { padding:4px 0; }
.cmg-solar-step { margin:0; padding:0; border:0; }
.cmg-solar-step legend { width:100%; margin:0; padding:0; color:var(--ink); font:800 clamp(29px,4.2vw,43px)/1.06 "Manrope",sans-serif; letter-spacing:-.038em; text-wrap:balance; }
.cmg-solar-hint { margin:12px 0 20px; color:var(--muted); font-size:15px; line-height:1.5; }
.cmg-solar-options { display:grid; grid-template-columns:1fr; gap:10px; }
.cmg-solar-option { position:relative; display:grid; grid-template-columns:42px 1fr 22px; align-items:center; gap:14px; min-height:76px; margin:0; padding:13px 16px; border:1.5px solid #d9e0dc; border-radius:15px; background:#fff; color:var(--ink); cursor:pointer; transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease; }
.cmg-solar-option:hover { transform:translateY(-1px); border-color:#8ab7a5; box-shadow:0 8px 22px rgba(25,75,56,.075); }
.cmg-solar-option:has(input:checked) { border-color:var(--green); background:#f0faf5; box-shadow:0 0 0 2px rgba(11,107,79,.1); }
.cmg-solar[data-advancing="1"] .cmg-solar-option:has(input:checked) { transform:scale(.995); }
.cmg-solar-option input { position:absolute; width:1px; height:1px; opacity:0; }
.cmg-solar-option:has(input:focus-visible) { outline:3px solid #79b9f5; outline-offset:2px; }
.cmg-solar-option__icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:#edf4f0; color:var(--green); font:800 18px/1 "Manrope",sans-serif; }
.cmg-solar-option:has(input:checked) .cmg-solar-option__icon { background:var(--green-dark); color:#fff; }
.cmg-solar-option strong { display:block; color:#173028; font:800 16px/1.25 "Manrope",sans-serif; }
.cmg-solar-option small { display:block; margin-top:4px; color:#66786f; font-size:13px; line-height:1.35; }
.cmg-solar-option i { position:relative; width:21px; height:21px; border:1.5px solid #aebdb6; border-radius:50%; }
.cmg-solar-option:has(input:checked) i { border-color:var(--green); background:var(--green); }
.cmg-solar-option:has(input:checked) i:after { content:"✓"; position:absolute; inset:0; display:grid; place-items:center; color:#fff; font:800 12px/1 sans-serif; }
.cmg-solar-auto-note { margin:14px 0 0; color:#597068; font-size:12px; line-height:1.4; }
.cmg-solar-auto-note span { color:var(--green); font-weight:800; }
.cmg-solar-microtrust { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:15px; padding-top:15px; border-top:1px solid #e5ebe7; color:#526b61; font:700 11px/1.3 "DM Sans",sans-serif; }
.cmg-solar-error { margin:13px 0 0; color:#9e2f2f; font-size:13px; }

.cmg-solar-aside { position:sticky; top:18px; display:grid; gap:14px; }
.cmg-solar-scene,.cmg-solar-context,.cmg-solar-clarity { overflow:hidden; border-radius:20px; }
.cmg-solar-scene { position:relative; min-height:205px; background:linear-gradient(150deg,#dcefe5 0%,#eef3d2 56%,#c9ddd2 100%); }
.cmg-solar-scene:after { content:""; position:absolute; left:-10%; right:-10%; bottom:-74px; height:150px; border-radius:50%; background:#769f80; opacity:.25; }
.cmg-solar-scene__sun { position:absolute; top:26px; right:32px; width:45px; height:45px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 13px rgba(223,243,107,.18); }
.cmg-solar-scene__home { position:absolute; left:53px; bottom:40px; width:176px; height:84px; border-radius:4px 4px 2px 2px; background:#f9fbf8; box-shadow:0 14px 24px rgba(25,73,55,.12); }
.cmg-solar-scene__home:before { content:""; position:absolute; left:-18px; top:-50px; width:155px; height:92px; background:#294d40; clip-path:polygon(50% 0,100% 56%,88% 56%,88% 100%,12% 100%,12% 56%,0 56%); }
.cmg-solar-scene__home i { position:absolute; z-index:2; right:25px; bottom:0; width:38px; height:55px; background:#c9ddd4; }
.cmg-solar-scene__roof { position:absolute; z-index:3; left:79px; bottom:113px; display:flex; gap:2px; transform:skewY(-18deg) rotate(-1deg); }
.cmg-solar-scene__roof span { width:35px; height:26px; border:1px solid #6ba38d; background:linear-gradient(135deg,#17493b,#2e775e); }
.cmg-solar-scene p { position:absolute; z-index:4; left:20px; right:20px; bottom:14px; margin:0; color:#15352a; font:800 14px/1.3 "Manrope",sans-serif; text-align:right; }
.cmg-solar-context { padding:25px; background:#143329; color:#fff; }
.cmg-solar-context > span,.cmg-solar-clarity > span,.cmg-solar-partner > span { color:#9ed9bf; font:800 11px/1.2 "Manrope",sans-serif; letter-spacing:.16em; }
.cmg-solar-context h2 { margin:17px 0 10px; color:#fff; font:800 23px/1.15 "Manrope",sans-serif; letter-spacing:-.025em; }
.cmg-solar-context p { margin:0; color:#c9d8d1; font-size:14px; line-height:1.58; }
.cmg-solar-clarity { padding:23px; border:1px solid #d4ded8; background:rgba(255,255,255,.78); }
.cmg-solar-clarity > span { color:#4a665b; }
.cmg-solar-clarity p { margin:14px 0; color:#5c7067; font-size:13px; line-height:1.58; }
.cmg-solar-clarity nav { display:flex; gap:17px; }
.cmg-solar-clarity a { color:#285d4a; font:700 12px/1.2 "DM Sans",sans-serif; text-underline-offset:3px; }

.cmg-solar-result { padding:32px 34px 27px; scroll-margin-top:20px; }
.cmg-solar-result__eyebrow { margin-bottom:10px; color:var(--green); font:800 11px/1.2 "Manrope",sans-serif; letter-spacing:.15em; }
.cmg-solar-result h2 { margin:0; color:var(--ink); font:800 clamp(30px,4.5vw,42px)/1.07 "Manrope",sans-serif; letter-spacing:-.037em; text-wrap:balance; }
.cmg-solar-result > p { margin:13px 0 0; color:#566b62; font-size:15px; line-height:1.55; }
.cmg-solar-result__reasons { display:grid; gap:8px; margin:20px 0; padding:0; list-style:none; }
.cmg-solar-result__reasons li { position:relative; padding:10px 12px 10px 39px; border:1px solid #dce6df; border-radius:11px; background:#f7faf8; color:#405b50; font-size:13px; line-height:1.35; }
.cmg-solar-result__reasons li:before { content:"✓"; position:absolute; left:13px; top:9px; display:grid; place-items:center; width:17px; height:17px; border-radius:50%; background:#dcefe6; color:var(--green); font:800 11px/1 sans-serif; }
.cmg-solar-partner { margin:18px 0 13px; padding:18px 19px; border-left:4px solid var(--lime); border-radius:4px 13px 13px 4px; background:#16382d; color:#fff; }
.cmg-solar-partner > span { color:#cfe99e; }
.cmg-solar-partner h3 { margin:8px 0 7px; color:#fff; font:800 17px/1.25 "Manrope",sans-serif; }
.cmg-solar-partner p { margin:0; color:#d0ddd7; font-size:12px; line-height:1.5; }
.cmg-solar-shop { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:58px; padding:16px 19px; border-radius:13px; background:var(--lime); color:#1b330a; font:800 15px/1.25 "Manrope",sans-serif; text-align:center; text-decoration:none; box-shadow:0 10px 25px rgba(72,90,13,.14); transition:transform .15s ease,filter .15s ease; }
.cmg-solar-shop:hover { transform:translateY(-1px); filter:saturate(1.08) brightness(.98); color:#14240a; }
.cmg-solar-shop[aria-busy="true"] { opacity:.78; pointer-events:none; }
.cmg-solar-shop[aria-disabled="true"] { background:#dfe4e0; color:#748078; box-shadow:none; cursor:not-allowed; pointer-events:none; }
.cmg-solar-shop-note { margin-top:9px!important; color:#65766f!important; font-size:11px!important; line-height:1.45!important; text-align:center; }
.cmg-solar-result-details { margin:18px 0 0; border-top:1px solid #e0e7e2; border-bottom:1px solid #e0e7e2; }
.cmg-solar-result-details summary { padding:15px 3px; color:#304f43; font:800 13px/1.35 "Manrope",sans-serif; cursor:pointer; }
.cmg-solar-result__grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:3px 0 13px; }
.cmg-solar-result__grid > div { padding:16px; border-radius:12px; background:#f3f7f4; }
.cmg-solar-result__grid h3 { margin:0 0 9px; color:var(--ink); font:800 13px/1.25 "Manrope",sans-serif; }
.cmg-solar-result__grid ul { margin:0; padding:0; list-style:none; color:#53685f; font-size:12px; line-height:1.45; }
.cmg-solar-result__grid li { position:relative; margin:7px 0; padding-left:16px; }
.cmg-solar-result__grid li:before { content:"✓"; position:absolute; left:0; color:var(--green); font-weight:800; }
.cmg-solar-plan { margin:0 0 15px; padding:17px; border:1px solid #dce4df; border-radius:12px; background:#fff; }
.cmg-solar-plan h3 { margin:0 0 11px; color:var(--ink); font:800 14px/1.25 "Manrope",sans-serif; }
.cmg-solar-plan dl { display:grid; gap:9px; margin:0; }
.cmg-solar-plan dl > div { display:grid; grid-template-columns:112px 1fr; gap:12px; padding-top:9px; border-top:1px solid #e5ebe7; }
.cmg-solar-plan dl > div:first-child { padding-top:0; border-top:0; }
.cmg-solar-plan dt { color:#315347; font:800 10px/1.4 "Manrope",sans-serif; text-transform:uppercase; letter-spacing:.05em; }
.cmg-solar-plan dd { margin:0; color:#586b63; font-size:12px; line-height:1.45; }
.cmg-solar-result-actions { display:flex; justify-content:center; gap:22px; margin-top:16px; }
.cmg-solar-edit,.cmg-solar-restart { padding:7px 3px; }

.cmg-solar-foot { padding:31px 20px; background:#102a21; color:#fff; }
.cmg-solar-foot__in { width:min(1040px,100%); margin:0 auto; display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:20px; }
.cmg-solar-foot strong { font:800 15px/1.2 "Manrope",sans-serif; }
.cmg-solar-foot p { margin:6px 0 0; color:#b9cbc2; font-size:12px; }
.cmg-solar-foot nav { display:flex; flex-wrap:wrap; gap:10px 22px; }
.cmg-solar-foot a { color:#e7f0ec; font-size:12px; }
.cmg-solar-foot__fine { flex:1 0 100%; padding-top:15px; border-top:1px solid rgba(255,255,255,.12); line-height:1.5; }

@media (max-width:900px) {
  .cmg-solar-layout { grid-template-columns:1fr; }
  .cmg-solar-aside { position:static; grid-template-columns:1fr 1fr; }
  .cmg-solar-scene { display:none; }
}

@media (max-width:680px) {
  .cmg-solar-top__in { width:min(100% - 28px,1120px); min-height:62px; }
  .cmg-solar-top__trust { display:none; }
  .cmg-solar { min-height:calc(100vh - 62px); padding:16px 12px 44px; }
  .cmg-solar-layout { gap:14px; }
  .cmg-solar-card { border-radius:20px; }
  .cmg-solar-progress { padding:17px 18px 14px; }
  .cmg-solar-progress__row { margin-bottom:10px; }
  .cmg-solar-kicker { font-size:10px; }
  .cmg-solar-kicker span { width:22px; height:22px; }
  .cmg-solar-progress__label { font-size:11px; }
  .cmg-solar-preview { margin:9px 18px -2px; padding:7px 9px; }
  .cmg-solar-form { padding:22px 18px 20px; }
  .cmg-solar-question-top { margin-bottom:8px; }
  .cmg-solar-step-eyebrow { font-size:12px; }
  .cmg-solar-step legend { font-size:31px; line-height:1.05; }
  .cmg-solar-hint { margin:10px 0 17px; font-size:14px; }
  .cmg-solar-options { gap:9px; }
  .cmg-solar-option { min-height:80px; grid-template-columns:39px 1fr 21px; gap:12px; padding:12px 13px; }
  .cmg-solar-option__icon { width:39px; height:39px; }
  .cmg-solar-option strong { font-size:15px; }
  .cmg-solar-option small { font-size:12px; }
  .cmg-solar-auto-note { margin-top:12px; }
  .cmg-solar-microtrust { gap:7px 14px; margin-top:12px; padding-top:12px; }
  .cmg-solar-aside { grid-template-columns:1fr; }
  .cmg-solar-context,.cmg-solar-clarity { border-radius:16px; padding:20px; }
  .cmg-solar-context h2 { margin-top:12px; font-size:21px; }
  .cmg-solar-result { padding:26px 18px 22px; }
  .cmg-solar-result h2 { font-size:30px; }
  .cmg-solar-result__reasons { margin:16px 0; }
  .cmg-solar-partner { margin-top:15px; padding:16px; }
  .cmg-solar-shop { min-height:57px; font-size:14px; }
  .cmg-solar-result__grid { grid-template-columns:1fr; gap:9px; }
  .cmg-solar-plan dl > div { grid-template-columns:1fr; gap:3px; }
}

@media (max-width:359px) {
  .cmg-solar { padding-left:8px; padding-right:8px; }
  .cmg-solar-form { padding-left:14px; padding-right:14px; }
  .cmg-solar-step legend { font-size:28px; }
  .cmg-solar-option { grid-template-columns:35px 1fr 19px; gap:10px; padding:11px; }
  .cmg-solar-option__icon { width:35px; height:35px; }
  .cmg-solar-microtrust { font-size:10px; }
}

@media (prefers-reduced-motion:reduce) {
  .cmg-a1-matcher-landing * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
