:root{--bg:#f5f7f4;--ink:#112017;--muted:#66756c;--lime:#b8f34a;--green:#123f2a;--line:#dfe7df;--card:#fff;--soft:#eef4eb;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}.topbar{height:76px;display:flex;align-items:center;gap:34px;padding:0 max(28px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{font-size:22px;font-weight:900}.brand span{color:#68a500}.topbar nav{display:flex;gap:24px;font-size:14px;margin-right:auto}.mini-cta{background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:13px;font-weight:700}.hero{max-width:1180px;margin:0 auto;min-height:650px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;padding:70px 24px}.eyebrow{display:inline-flex;gap:8px;letter-spacing:.12em;font-size:12px;font-weight:900;color:var(--lime);text-transform:uppercase}.eyebrow.dark{color:#5b8b14}.hero h1{font-size:clamp(48px,6vw,78px);line-height:.98;letter-spacing:-.055em;margin:18px 0 24px;max-width:760px}.hero h1 em{font-style:normal;color:#5d9c16}.hero p{font-size:19px;line-height:1.6;color:var(--muted);max-width:650px}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:32px}.hero-actions span{font-size:13px;color:var(--muted)}.btn{border:0;border-radius:14px;padding:14px 20px;font-weight:800;cursor:pointer;font-size:14px}.btn.primary{background:var(--ink);color:#fff}.btn.primary:hover{transform:translateY(-1px)}.btn.ghost{background:var(--soft);color:var(--ink)}.trust{display:flex;gap:28px;margin-top:48px}.trust div{display:flex;flex-direction:column}.trust small{color:var(--muted);margin-top:4px}.orb{height:470px;border-radius:50%;position:relative;background:radial-gradient(circle at 50% 50%,#d9ff91 0,#b8f34a 30%,#1b4b32 31%,#102419 64%,transparent 65%);display:grid;place-items:center}.sun{font-size:92px;filter:grayscale(1) brightness(10)}.orbit{position:absolute;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 12px 30px #0002}.o1{top:52px;right:42px}.o2{bottom:76px;left:34px}.o3{top:128px;left:18px}.orb-card{position:absolute;right:-10px;bottom:28px;background:white;padding:18px 22px;border-radius:18px;box-shadow:0 16px 45px #0002;display:flex;flex-direction:column}.orb-card strong{font-size:28px}.planner-wrap{max-width:1180px;margin:30px auto 100px;padding:0 24px}.planner-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.planner-head h2{font-size:36px;margin:8px 0 0}.planner-head>div:last-child{font-size:13px;color:var(--muted);font-weight:700}.steps{height:5px;background:#dfe7df;border-radius:999px;margin-bottom:18px;overflow:hidden}.steps:before{content:"";display:block;height:100%;background:#84c323;width:var(--progress,16.66%);transition:.3s}.planner-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 20px 60px #18321f10;padding:34px}.step{display:none;min-height:420px}.step.active{display:block}.step h3{font-size:28px;margin:0 0 10px}.muted{color:var(--muted)}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:750;color:#46544b}input,select{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:13px;background:#fbfcfb;font:inherit;color:var(--ink);outline:none}input:focus,select:focus{border-color:#7dbb24;box-shadow:0 0 0 3px #b8f34a33}.location-row{display:flex;gap:10px;margin:26px 0 10px}.location-row input{font-size:16px}.location-results{display:grid;gap:8px;margin:0 0 20px}.location-results button{text-align:left;background:var(--soft);border:0;padding:12px;border-radius:12px;cursor:pointer}.grid2,.grid3{display:grid;gap:16px}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}.compact{max-width:620px}.people{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:30px 0}.person-btn{padding:22px 10px;border:1px solid var(--line);background:#fff;border-radius:18px;font-weight:900;font-size:16px;cursor:pointer}.person-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.range-label{margin-top:26px}.range-label span{margin-left:auto;color:#5b8b14}.range-label input{padding:0}.category{margin-top:24px}.category h4{margin:0 0 10px}.appliance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.appliance{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff;cursor:pointer;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.appliance.active{background:#eff9df;border-color:#95cd3f}.appliance .icon{font-size:24px}.appliance b{font-size:13px}.appliance small{display:block;color:var(--muted);margin-top:3px}.checkline{margin-top:24px;flex-direction:row;align-items:center}.checkline input{width:auto}.panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.panel{border:1px solid var(--line);border-radius:18px;padding:18px;cursor:pointer;background:#fff}.panel.active{background:#eff9df;border-color:#95cd3f}.panel strong{font-size:22px;display:block}.panel small{color:var(--muted)}.planner-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:18px}.result-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.result-kpis article{background:var(--ink);color:#fff;padding:20px;border-radius:18px}.result-kpis small,.result-kpis span{display:block;color:#b8c7bd}.result-kpis strong{font-size:34px;display:inline-block;margin:7px 4px 0 0}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}.result-box{background:var(--soft);padding:22px;border-radius:18px}.result-box h4{margin-top:0}.metric{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #d7e2d4}.disclaimer{display:block;color:var(--muted);line-height:1.5;margin-top:18px}.loading{padding:14px;background:#fff8d6;border-radius:12px;margin-top:16px}.consumption-modes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}.mode-card{min-height:120px;text-align:left;border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px;cursor:pointer;color:var(--ink);display:flex;flex-direction:column;gap:7px;font:inherit}.mode-card>span{font-size:27px}.mode-card b{font-size:15px}.mode-card small{color:var(--muted);line-height:1.4}.mode-card.active{background:#eff9df;border-color:#95cd3f;box-shadow:0 0 0 2px #b8f34a22}.known-consumption-box{margin-top:22px;padding:22px;border-radius:18px;background:var(--soft)}.consumption-preview{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid #d7e2d4}.consumption-preview small{color:var(--muted)}.consumption-preview strong{font-size:20px}.unit-hint{font-size:12px;color:var(--muted);line-height:1.5;margin:16px 0 0}.compact-note{font-size:13px}.hidden{display:none!important}.how{max-width:1180px;margin:0 auto 100px;padding:0 24px}.how h2,.projects h2{font-size:44px;letter-spacing:-.04em}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.how-grid article{background:#fff;border:1px solid var(--line);padding:22px;border-radius:18px}.how-grid article>b{color:#79af2a;font-size:13px}.how-grid p{color:var(--muted);line-height:1.5}.projects{background:var(--ink);color:#fff;padding:75px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}.projects p{color:#b8c7bd;line-height:1.6}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.project-grid a{background:#1b3022;border:1px solid #2b4534;padding:20px;border-radius:18px;display:flex;flex-direction:column;gap:8px}.project-grid a:hover{background:#213a29}.project-grid span{font-size:26px}.project-grid small{color:#a8b7ad}footer{max-width:1180px;margin:auto;padding:30px 24px;display:flex;justify-content:space-between;color:var(--muted);font-size:13px}@media(max-width:850px){.topbar nav{display:none}.mini-cta{display:none}.hero{grid-template-columns:1fr;padding-top:50px}.orb{height:360px;max-width:480px}.trust{flex-wrap:wrap}.grid3,.result-grid,.projects{grid-template-columns:1fr}.appliance-grid,.how-grid{grid-template-columns:1fr 1fr}.panel-grid{grid-template-columns:1fr 1fr}.result-kpis{grid-template-columns:1fr 1fr}.people{grid-template-columns:repeat(3,1fr)}.project-grid{grid-template-columns:1fr}.projects{padding:60px 24px}}@media(max-width:560px){.consumption-modes{grid-template-columns:1fr}.consumption-preview{align-items:flex-start;flex-direction:column;gap:5px}.hero h1{font-size:46px}.planner-card{padding:22px}.location-row{flex-direction:column}.grid2,.panel-grid,.appliance-grid,.result-kpis{grid-template-columns:1fr}.hero-actions{align-items:flex-start;flex-direction:column}.planner-head h2{font-size:29px}.how h2,.projects h2{font-size:36px}.people{grid-template-columns:1fr 1fr}}

.lang-switch{display:flex;gap:4px;border:1px solid var(--line);border-radius:999px;padding:3px;background:#f8faf8}.lang-switch button{border:0;background:transparent;color:var(--muted);font-weight:800;font-size:12px;padding:7px 9px;border-radius:999px;cursor:pointer}.lang-switch button.active{background:var(--ink);color:#fff}@media(max-width:850px){.lang-switch{margin-left:auto}}

.economics{margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fbfdf9}.economics-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.economics-head h4{font-size:25px;margin:8px 0 0}.price-input{min-width:190px}.price-input>div{display:flex;align-items:center;gap:8px}.price-input input{width:105px}.price-input div span{font-size:13px;color:var(--muted);font-weight:700}.economics-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.economics-kpis article{background:#fff;border:1px solid var(--line);padding:16px;border-radius:16px}.economics-kpis small{display:block;color:var(--muted);margin-bottom:7px}.economics-kpis strong{font-size:24px}.payback-callout{display:flex;align-items:center;gap:14px;margin:16px 0 22px;padding:18px;background:var(--ink);color:#fff;border-radius:16px}.payback-callout>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--ink);font-weight:900}.payback-callout p{margin:0;line-height:1.55}.monthly-savings{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.monthly-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:16px}.monthly-head h4{margin:0 0 5px}.monthly-head p{margin:0;color:var(--muted);font-size:13px}.annual-coverage{text-align:right;white-space:nowrap}.annual-coverage small{display:block;color:var(--muted)}.annual-coverage strong{font-size:24px}.monthly-bars{display:grid;gap:9px}.month-row{display:grid;grid-template-columns:34px 1fr 48px 74px;gap:10px;align-items:center;font-size:12px}.month-track{height:10px;border-radius:999px;overflow:hidden}.month-bar-svg{display:block;width:100%;height:10px}.month-bar-bg{fill:#e7eee5}.month-bar-fill{fill:#78ad2b}.month-row b{text-align:right}.month-row small{text-align:right;color:var(--muted)}.assumptions{margin-top:15px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.assumptions summary{cursor:pointer;font-weight:800;color:var(--ink)}.assumptions p{line-height:1.6}.assumptions small{display:block;line-height:1.6}@media(max-width:850px){.economics-kpis{grid-template-columns:1fr 1fr}.economics-head,.monthly-head{align-items:flex-start;flex-direction:column}.annual-coverage{text-align:left}}@media(max-width:560px){.economics{padding:18px}.economics-kpis{grid-template-columns:1fr}.month-row{grid-template-columns:30px 1fr 42px}.month-row small{grid-column:2/4;text-align:right;margin-top:-5px}}


@page{size:A4 portrait;margin:14mm 14mm 16mm}
@media print{
  html,body{background:#fff!important;color:#16251b!important;font-size:10pt;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .topbar,.hero,.how,.projects,footer,.planner-head,.steps,.planner-nav,#printBtn{display:none!important}
  .planner-wrap{margin:0!important;padding:0!important;max-width:none!important}
  .planner-card{border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;background:#fff!important}
  .step{display:none!important;min-height:0!important}
  .result-step{display:block!important}
  .result-header{margin:0 0 5mm!important}
  .result-header h3{font-size:22pt!important;margin:2mm 0 1mm!important}
  .result-header .eyebrow{font-size:8pt!important}
  .result-kpis{grid-template-columns:repeat(4,1fr)!important;gap:3mm!important;margin:4mm 0!important;break-inside:avoid;page-break-inside:avoid}
  .result-kpis article{padding:4mm!important;border-radius:3mm!important;background:#16251b!important;color:#fff!important;min-height:24mm;box-sizing:border-box}
  .result-kpis strong{font-size:21pt!important;margin-top:1mm!important}
  .result-grid{grid-template-columns:1fr 1fr!important;gap:4mm!important;margin:0!important;break-inside:avoid;page-break-inside:avoid}
  .result-box{padding:5mm!important;border-radius:3mm!important;background:#f1f6ef!important;break-inside:avoid;page-break-inside:avoid}
  .result-box h4{margin:0 0 2mm!important;font-size:12pt!important}
  .metric{padding:2mm 0!important}
  .disclaimer{margin-top:3mm!important;font-size:8pt!important}
  .economics{page-break-before:always;break-before:page;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important}
  .economics-head{align-items:flex-end!important;margin:0 0 4mm!important;break-inside:avoid;page-break-inside:avoid}
  .economics-head h4{font-size:18pt!important;margin:2mm 0 0!important}
  .price-input{min-width:40mm!important}
  .price-input input{padding:2mm 3mm!important;border-radius:2mm!important}
  .economics-kpis{grid-template-columns:repeat(4,1fr)!important;gap:3mm!important;break-inside:avoid;page-break-inside:avoid}
  .economics-kpis article{padding:4mm!important;border-radius:3mm!important;min-height:20mm;box-sizing:border-box}
  .economics-kpis strong{font-size:17pt!important}
  .payback-callout{margin:4mm 0!important;padding:4mm!important;border-radius:3mm!important;background:#16251b!important;color:#fff!important;break-inside:avoid;page-break-inside:avoid}
  .payback-callout>span{width:9mm!important;height:9mm!important;min-width:9mm!important;background:#fff!important;color:#16251b!important}
  .monthly-savings{margin-top:4mm!important;padding:4mm!important;border-radius:3mm!important;break-inside:avoid;page-break-inside:avoid}
  .monthly-head{margin-bottom:3mm!important;align-items:flex-start!important;flex-direction:row!important}
  .monthly-head h4{font-size:13pt!important}
  .annual-coverage{text-align:right!important}
  .monthly-bars{gap:1.6mm!important}
  .month-row{grid-template-columns:12mm 1fr 16mm 22mm!important;gap:2.5mm!important;font-size:8.5pt!important;line-height:1.2;break-inside:avoid;page-break-inside:avoid}
  .month-track,.month-bar-svg{height:2.8mm!important}
  .month-bar-bg{fill:#e7eee5!important}.month-bar-fill{fill:#78ad2b!important}
  .assumptions{display:block!important;margin-top:4mm!important;padding-top:3mm!important;font-size:7.5pt!important;break-inside:avoid;page-break-inside:avoid}
  .assumptions summary{display:block!important;list-style:none!important;margin-bottom:1mm!important}
  .assumptions summary::-webkit-details-marker{display:none!important}
  .assumptions p{margin:1mm 0!important}.assumptions small{line-height:1.4!important}
}

/* =========================================================
   MONDIG THEME — V1.5
   Visual alignment with mondig.it: clean white surfaces,
   blue network/technology accents and restrained gradients.
   ========================================================= */
:root{
  --mondig-blue:#3266ad;
  --mondig-blue-deep:#244e87;
  --mondig-sky:#4199cf;
  --mondig-pale:#edf5fb;
  --mondig-pale-2:#f6f9fc;
  --mondig-ink:#202a36;
  --mondig-muted:#68778a;
  --mondig-line:#dbe5ef;
  --solar-accent:#f5b942;
  --bg:var(--mondig-pale-2);
  --ink:var(--mondig-ink);
  --muted:var(--mondig-muted);
  --lime:var(--mondig-sky);
  --green:var(--mondig-blue-deep);
  --line:var(--mondig-line);
  --soft:var(--mondig-pale);
  --card:#fff;
  --radius:18px;
}
body{background:#fff;color:var(--mondig-ink)}
.topbar{
  height:82px;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--mondig-line);
  box-shadow:0 6px 24px rgba(35,78,135,.06);
}
.mondig-brand{display:flex;align-items:center;gap:11px;min-width:max-content}
.mondig-mark{width:42px;height:42px;display:block;object-fit:contain}
.mondig-wordmark{display:flex;flex-direction:column;line-height:1}
.mondig-wordmark strong{font-size:23px;letter-spacing:.025em;color:var(--mondig-blue-deep);font-weight:800}
.mondig-wordmark small{margin-top:5px;color:var(--mondig-muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.topbar nav a{color:#435266;font-weight:600;transition:color .2s ease}
.topbar nav a:hover{color:var(--mondig-blue)}
.mini-cta,.btn.primary{background:linear-gradient(135deg,var(--mondig-blue-deep),var(--mondig-sky));color:#fff;box-shadow:0 7px 18px rgba(50,102,173,.18)}
.btn.primary:hover,.mini-cta:hover{filter:brightness(1.04);transform:translateY(-1px)}
.btn.ghost{background:#f1f5f9;color:var(--mondig-blue-deep)}
.lang-switch{background:#f6f9fc;border-color:var(--mondig-line)}
.lang-switch button.active{background:var(--mondig-blue-deep);color:#fff}

.hero{
  max-width:none;
  padding-left:max(24px,calc((100vw - 1180px)/2));
  padding-right:max(24px,calc((100vw - 1180px)/2));
  background:linear-gradient(145deg,#ffffff 0%,#f7fbfe 56%,#edf6fc 100%);
  position:relative;
  overflow:hidden;
}
.hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(65,153,207,.13);border-radius:50%;right:-190px;top:-230px;box-shadow:0 0 0 55px rgba(65,153,207,.035),0 0 0 120px rgba(50,102,173,.025);pointer-events:none}
.eyebrow{color:var(--mondig-blue);letter-spacing:.13em}
.eyebrow.dark{color:var(--mondig-blue)}
.hero h1{color:#1f2936;font-weight:760}
.hero h1 em{color:var(--mondig-blue);background:linear-gradient(100deg,var(--mondig-blue-deep),var(--mondig-sky));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:#627184}
.trust{border-top:1px solid var(--mondig-line);padding-top:24px}
.trust b{color:var(--mondig-blue-deep)}

.orb{
  border-radius:34px;
  overflow:hidden;
  background:linear-gradient(145deg,#1f4e84,#3f95c9);
  box-shadow:0 30px 65px rgba(35,78,135,.2);
}
.orb:before,.orb:after{content:"";position:absolute;border:2px solid rgba(255,255,255,.30);border-radius:50%;width:390px;height:390px}
.orb:before{transform:rotate(28deg) scaleX(.56)}
.orb:after{transform:rotate(-32deg) scaleY(.56)}
.sun{font-size:88px;filter:none;color:#fff;position:relative;z-index:2;text-shadow:0 8px 30px rgba(0,0,0,.12)}
.orbit{border:1px solid rgba(50,102,173,.14);box-shadow:0 12px 28px rgba(18,53,93,.18)}
.orb-card{border:1px solid rgba(255,255,255,.7);box-shadow:0 16px 45px rgba(20,55,95,.22)}
.orb-card strong{color:var(--mondig-blue-deep)}

.planner-wrap{margin-top:70px}
.planner-head h2,.how h2,.projects h2{color:#263243}
.steps{background:#e7eef5}
.steps:before{background:linear-gradient(90deg,var(--mondig-blue-deep),var(--mondig-sky))}
.planner-card{border-color:var(--mondig-line);box-shadow:0 22px 60px rgba(44,80,120,.09);border-radius:20px}
.step h3{color:#253246}
input,select{background:#fff;border-color:#d5e1ec}
input:focus,select:focus{border-color:var(--mondig-sky);box-shadow:0 0 0 3px rgba(65,153,207,.15)}
.location-results button{background:#f0f6fb}
.person-btn.active{background:linear-gradient(135deg,var(--mondig-blue-deep),var(--mondig-blue));border-color:transparent}
.mode-card.active,.appliance.active,.panel.active{background:#eef7fc;border-color:#75b5db;box-shadow:0 0 0 2px rgba(65,153,207,.08)}
.known-consumption-box,.result-box{background:#f3f7fb}
.range-label span{color:var(--mondig-blue)}

.result-kpis article{background:linear-gradient(145deg,#244e87,#326daf);box-shadow:0 10px 24px rgba(36,78,135,.13)}
.result-kpis small,.result-kpis span{color:#dceafb}
.metric{border-bottom-color:#dbe5ef}
.economics{background:linear-gradient(145deg,#fbfdff,#f2f7fb);border-color:#d8e4ee}
.economics-kpis article{border-color:#d8e4ee;background:#fff}
.payback-callout{background:linear-gradient(135deg,#244e87,#4199cf);color:#fff;border:0}
.monthly-savings{background:#fff;border-color:#dce6ef}
.month-svg-track{fill:#e5edf4}
.month-svg-bar{fill:var(--mondig-blue)}
.annual-coverage strong{color:var(--mondig-blue-deep)}
.assumptions{border-color:#dce6ef;background:#fff}

.how{padding-top:25px}
.how-grid article{border-color:#dbe5ef;border-radius:14px;box-shadow:0 9px 28px rgba(42,75,110,.05)}
.how-grid article>b{color:var(--mondig-blue)}
.how-grid article:hover{border-color:#9fc7df;transform:translateY(-2px);transition:.2s ease}

.projects{background:linear-gradient(135deg,#1d3f6e 0%,#285f97 60%,#3483b9 100%)}
.projects h2{color:#fff}
.projects p{color:#dce8f4}
.projects .eyebrow{color:#b9e1f6}
.project-grid a{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px)}
.project-grid a:hover{background:rgba(255,255,255,.15)}
.project-grid small{color:#d4e2ef}
footer{border-top:1px solid var(--mondig-line);color:#718092}
footer b{color:var(--mondig-blue-deep)}
.mondig-tool-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--mondig-blue-deep);font-size:13px;font-weight:700}
.mondig-tool-badge:before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--mondig-blue),var(--mondig-sky))}

@media(max-width:850px){.mondig-wordmark small{display:none}.mondig-mark{width:36px;height:36px}.topbar{height:70px}.hero{padding-top:48px}.hero:before{display:none}}

@media print{
  :root{--mondig-blue:#3266ad;--mondig-blue-deep:#244e87;--mondig-sky:#4199cf}
  .result-kpis article{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#244e87!important}
  .payback-callout{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#3266ad!important}
  .month-svg-bar{fill:#3266ad!important}
  .result-header:before{content:"mondig · Home Energy Planner";display:block;margin-bottom:8mm;color:#244e87;font-size:10pt;font-weight:700;letter-spacing:.04em}
}

/* V1.6 location search + solar preview */
.location-results{position:relative;z-index:10;display:grid;gap:8px;margin-top:10px}
.location-results button{width:100%;text-align:left;border:1px solid var(--line,#dbe4f0);background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;display:grid;gap:3px}
.location-results button:hover,.location-results button:focus-visible{border-color:var(--blue,#1e5cff);outline:none}
.location-results button small{color:var(--muted,#65758b);font-weight:400}
.location-selected{padding:10px 12px;border-radius:12px;background:#eef5ff;color:#174ea6;font-weight:700}
.solar-preview{margin-top:18px;padding:18px;border:1px solid #dce8f7;border-radius:18px;background:linear-gradient(135deg,#f7fbff,#ffffff)}
.solar-preview>div:first-child{display:grid;gap:4px}
.solar-preview>div:first-child small{font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#35659f}
.solar-preview>div:first-child strong{font-size:1rem}
.solar-preview-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.solar-preview-values>div{padding:14px;border-radius:14px;background:#fff;border:1px solid #e6edf6;display:grid;gap:6px}
.solar-preview-values span{font-size:.82rem;color:#68768a}
.solar-preview-values b{font-size:1.25rem;color:#143e73}
.solar-explain{margin:12px 0 0;font-size:.82rem;color:#6b7788;line-height:1.45}
@media(max-width:640px){.solar-preview-values{grid-template-columns:1fr}}


/* V1.7 VisitorAPI automatic location */
.visitor-location-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 20px;margin:18px 0 20px;border:1px solid #d7e4ef;border-radius:16px;background:linear-gradient(145deg,#f8fbfe,#eef6fb)}
.visitor-location-card.selected{border-color:#7db8dc;box-shadow:0 0 0 2px rgba(65,153,207,.08)}
.visitor-location-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid #cfe0ec;color:var(--mondig-blue);font-size:25px;font-weight:700}
.visitor-location-copy{display:flex;flex-direction:column;min-width:0;gap:3px}
.visitor-location-copy small{font-size:10px;letter-spacing:.12em;color:var(--mondig-blue);font-weight:800}
.visitor-location-copy strong{font-size:16px;color:#253246;overflow-wrap:anywhere}
.visitor-location-copy span{font-size:12px;color:var(--mondig-muted);overflow-wrap:anywhere}
.visitor-use-btn{white-space:nowrap;padding:11px 15px}
.location-divider{display:flex;align-items:center;gap:12px;margin:14px 0;color:var(--mondig-muted);font-size:12px}
.location-divider:before,.location-divider:after{content:"";height:1px;background:var(--mondig-line);flex:1}
@media(max-width:700px){.visitor-location-card{grid-template-columns:auto 1fr}.visitor-use-btn{grid-column:1/-1;width:100%}}
@media print{.visitor-location-card,.location-divider{display:none!important}}

/* V1.8 appliance category accordion */
.category-dropdown{margin-top:12px;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}
.category-dropdown summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:18px 20px;cursor:pointer;font-weight:850}
.category-dropdown summary::-webkit-details-marker{display:none}
.category-dropdown[open] summary{border-bottom:1px solid var(--line);background:var(--soft)}
.category-title{font-size:16px;min-width:0}
.category-progress{font-size:12px;color:var(--muted);font-weight:700;white-space:nowrap}
.category-chevron{font-size:20px;transition:transform .2s ease}
.category-dropdown[open] .category-chevron{transform:rotate(180deg)}
.category-body{padding:16px}
.category-dropdown .appliance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:850px){.category-dropdown .appliance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.category-dropdown summary{grid-template-columns:minmax(0,1fr) auto;padding:16px}.category-progress{grid-column:1/2}.category-chevron{grid-row:1/3;grid-column:2}.category-dropdown .appliance-grid{grid-template-columns:1fr}}

/* =========================================================
   MONDIG NATURE THEME - V1.9
   Mondig-inspired clarity with a nature/solar identity.
   Primary brand colour: #5d9c16
   ========================================================= */
:root{
  --nature-green:#5d9c16;
  --nature-green-dark:#315b12;
  --nature-green-deep:#203d16;
  --nature-green-mid:#76ad32;
  --nature-green-soft:#eaf4df;
  --nature-green-pale:#f5f9f0;
  --nature-cream:#fbfcf8;
  --nature-ink:#213022;
  --nature-muted:#677466;
  --nature-line:#dbe6d3;
  --nature-sun:#e9bd45;
  --mondig-blue:var(--nature-green);
  --mondig-blue-deep:var(--nature-green-dark);
  --mondig-sky:var(--nature-green-mid);
  --mondig-pale:var(--nature-green-soft);
  --mondig-pale-2:var(--nature-green-pale);
  --mondig-ink:var(--nature-ink);
  --mondig-muted:var(--nature-muted);
  --mondig-line:var(--nature-line);
  --solar-accent:var(--nature-sun);
  --bg:var(--nature-green-pale);
  --ink:var(--nature-ink);
  --muted:var(--nature-muted);
  --lime:var(--nature-green-mid);
  --green:var(--nature-green-dark);
  --line:var(--nature-line);
  --soft:var(--nature-green-soft);
  --card:#fff;
}
body{background:var(--nature-cream);color:var(--nature-ink)}
.topbar{background:rgba(255,255,255,.97);border-bottom-color:var(--nature-line);box-shadow:0 6px 24px rgba(49,91,18,.055)}
.mondig-mark{filter:hue-rotate(68deg) saturate(.95) brightness(.82)}
.mondig-wordmark strong{color:var(--nature-green-dark)}
.mondig-wordmark small{color:var(--nature-muted)}
.topbar nav a{color:#4f614d}
.topbar nav a:hover{color:var(--nature-green)}
.mini-cta,.btn.primary{background:linear-gradient(135deg,var(--nature-green-dark),var(--nature-green));box-shadow:0 8px 20px rgba(93,156,22,.18)}
.btn.ghost{background:#f0f5ec;color:var(--nature-green-dark)}
.lang-switch{background:#f7faf4;border-color:var(--nature-line)}
.lang-switch button.active{background:var(--nature-green-dark)}
.hero{background:linear-gradient(145deg,#fff 0%,#fbfcf8 50%,#eef6e6 100%)}
.hero:before{border-color:rgba(93,156,22,.13);box-shadow:0 0 0 55px rgba(93,156,22,.035),0 0 0 120px rgba(49,91,18,.025)}
.eyebrow,.eyebrow.dark{color:var(--nature-green)}
.hero h1{color:#223024}
.hero h1 em{background:linear-gradient(100deg,var(--nature-green-dark),var(--nature-green-mid));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:#657164}
.trust{border-top-color:var(--nature-line)}
.trust b{color:var(--nature-green-dark)}
.orb{background:linear-gradient(145deg,#203d16 0%,#5d9c16 58%,#8bbb45 100%);box-shadow:0 30px 65px rgba(50,87,25,.2)}
.orb:before,.orb:after{border-color:rgba(255,255,255,.26)}
.sun{color:#fff8d9;text-shadow:0 8px 30px rgba(31,57,19,.25)}
.orbit{border-color:rgba(93,156,22,.14);box-shadow:0 12px 28px rgba(31,57,19,.18)}
.orb-card{box-shadow:0 16px 45px rgba(31,57,19,.2)}
.orb-card strong{color:var(--nature-green-dark)}
.planner-head h2,.how h2{color:#263526}
.projects h2{color:#fff}
.steps{background:#e6eee0}
.steps:before{background:linear-gradient(90deg,var(--nature-green-dark),var(--nature-green-mid))}
.planner-card{border-color:var(--nature-line);box-shadow:0 22px 60px rgba(49,91,18,.075);background:#fff}
.step h3{color:#263526}
input,select{background:#fff;border-color:#d8e3d1}
input:focus,select:focus{border-color:var(--nature-green);box-shadow:0 0 0 3px rgba(93,156,22,.14)}
.location-results button{background:#f5f9f1}
.location-results button:hover,.location-results button:focus-visible{border-color:var(--nature-green)}
.location-selected{background:#eef6e7;color:var(--nature-green-dark)}
.person-btn.active{background:linear-gradient(135deg,var(--nature-green-dark),var(--nature-green));border-color:transparent}
.mode-card.active,.appliance.active,.panel.active{background:#eef7e6;border-color:#91bd62;box-shadow:0 0 0 2px rgba(93,156,22,.08)}
.known-consumption-box,.result-box{background:#f4f8f0}
.range-label span{color:var(--nature-green)}
.category-dropdown{border-color:var(--nature-line)}
.category-dropdown[open] summary{background:#f0f6eb;border-bottom-color:var(--nature-line)}
.category-dropdown summary:hover{background:#f7faf4}
.result-kpis article{background:linear-gradient(145deg,#315b12,#5d9c16);box-shadow:0 10px 24px rgba(49,91,18,.13)}
.result-kpis small,.result-kpis span{color:#e3efd8}
.metric{border-bottom-color:#dbe6d3}
.economics{background:linear-gradient(145deg,#fcfdf9,#f2f7ed);border-color:#dbe6d3}
.economics-kpis article{border-color:#dbe6d3}
.payback-callout{background:linear-gradient(135deg,#315b12,#5d9c16)}
.monthly-savings{border-color:#dbe6d3}
.month-bar-bg,.month-svg-track{fill:#e5eddf}
.month-bar-fill,.month-svg-bar{fill:var(--nature-green)}
.annual-coverage strong{color:var(--nature-green-dark)}
.assumptions{border-color:#dbe6d3}
.how-grid article{border-color:#dbe6d3;box-shadow:0 9px 28px rgba(49,91,18,.045)}
.how-grid article>b{color:var(--nature-green)}
.how-grid article:hover{border-color:#a8ca84}
.projects{background:linear-gradient(135deg,#203d16 0%,#315b12 55%,#5d9c16 100%)}
.projects p{color:#dce9d3}
.projects .eyebrow{color:#cce5b5}
.project-grid a{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18)}
.project-grid small{color:#dce9d3}
footer{border-top-color:var(--nature-line);color:#6f7d6c}
footer b{color:var(--nature-green-dark)}
.mondig-tool-badge{color:var(--nature-green-dark)}
.mondig-tool-badge:before{background:linear-gradient(90deg,var(--nature-green),var(--nature-green-mid))}
.solar-preview{border-color:#d9e8cd;background:linear-gradient(135deg,#f5f9f0,#fff)}
.solar-preview>div:first-child small{color:var(--nature-green)}
.solar-preview-values>div{border-color:#e0ead8}
.solar-preview-values span{color:#6d796b}
.solar-preview-values b{color:var(--nature-green-dark)}
.solar-explain{color:#6c7869}
.visitor-location-card{border-color:#d9e5d0;background:linear-gradient(145deg,#fbfdf9,#eef6e7)}
.visitor-location-card.selected{border-color:#98bd72;box-shadow:0 0 0 2px rgba(93,156,22,.08)}
.visitor-location-icon{border-color:#d4e4c7;color:var(--nature-green)}
.visitor-location-copy small{color:var(--nature-green)}
.visitor-location-copy strong{color:#293929}
.visitor-location-copy span{color:var(--nature-muted)}
.location-divider{color:var(--nature-muted)}
.location-divider:before,.location-divider:after{background:var(--nature-line)}
@media print{
  :root{--nature-green:#5d9c16;--nature-green-dark:#315b12;--nature-green-mid:#76ad32}
  .result-kpis article{background:#315b12!important}
  .payback-callout{background:#5d9c16!important}
  .month-bar-fill,.month-svg-bar{fill:#5d9c16!important}
  .result-header:before{color:#315b12!important}
}

/* V1.9.1 legal footer */
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer-brand{display:flex;flex-direction:column;gap:4px}
.footer-legal{display:flex;gap:18px;flex-wrap:wrap}
.footer-legal a{color:inherit;text-decoration:none;font-weight:600;border-bottom:1px solid transparent;padding:4px 0}
.footer-legal a:hover,.footer-legal a:focus-visible{color:#5d9c16;border-bottom-color:#5d9c16}
@media (max-width:640px){.site-footer{align-items:flex-start;flex-direction:column}.footer-legal{gap:14px}}
\n\n/* =========================================================\n   V1.9.4 responsive appliance navigation + robust print UX\n   ========================================================= */\n:root{--hep-sticky-offset:94px}\n.category-dropdown{overflow:visible;scroll-margin-top:var(--hep-sticky-offset)}\n.category-dropdown[open]>summary{\n  position:sticky;\n  top:82px;\n  z-index:12;\n  box-shadow:0 7px 18px rgba(32,61,22,.08);\n}\n.category-dropdown>summary{scroll-margin-top:var(--hep-sticky-offset)}\n.category-body{background:#fff;border-radius:0 0 18px 18px}\n.appliance{min-width:0;touch-action:manipulation}\n.appliance>div{min-width:0}\n.appliance b,.appliance small{overflow-wrap:anywhere}\n.print-status{margin:10px 0 0;color:var(--muted);font-size:13px;font-weight:650}\n#printBtn[aria-busy=\"true\"]{opacity:.72;cursor:wait}\n\n/* Tablet: keep the selected category heading visible below the compact header. */\n@media (min-width:641px) and (max-width:1024px){\n  :root{--hep-sticky-offset:84px}\n  .planner-wrap{padding-left:20px;padding-right:20px}\n  .planner-card{padding:28px}\n  .category-dropdown[open]>summary{top:70px}\n  .category-dropdown .appliance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}\n  .category-dropdown summary{padding:16px 18px}\n  .appliance{padding:15px}\n}\n\n/* Phone: one clear column, larger touch targets, sticky category title. */\n@media (max-width:640px){\n  :root{--hep-sticky-offset:78px}\n  .planner-wrap{padding-left:12px;padding-right:12px;margin-top:38px}\n  .planner-card{padding:20px 14px;border-radius:18px}\n  .step{min-height:0}\n  .step h3{font-size:23px;line-height:1.15}\n  .category-dropdown{border-radius:15px;margin-top:10px}\n  .category-dropdown[open]>summary{top:70px}\n  .category-dropdown summary{padding:14px 14px;gap:8px;min-height:58px}\n  .category-title{font-size:15px;line-height:1.25}\n  .category-progress{font-size:11px;white-space:normal}\n  .category-body{padding:10px}\n  .category-dropdown .appliance-grid{grid-template-columns:1fr;gap:8px}\n  .appliance{padding:13px;min-height:64px;border-radius:13px}\n  .planner-nav{gap:8px;flex-wrap:wrap}\n  .planner-nav .btn{min-height:44px}\n  #printBtn{width:100%;min-height:48px}\n  .print-status{text-align:center}\n}\n\n/* Desktop: three-column appliance overview, sticky heading below 82px header. */\n@media (min-width:1025px){\n  .category-dropdown[open]>summary{top:82px}\n  .category-dropdown .appliance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}\n}\n\n@media print{\n  .category-dropdown>summary{position:static!important;box-shadow:none!important}\n  .print-status{display:none!important}\n  body.print-preparing{overflow:visible!important}\n}\n

/* V1.10 configurable appliances */
.appliance-card{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.appliance-card .appliance{border:0;border-radius:0}.appliance-card.active{border-color:#91bd62;background:#f7fbf3}.appliance-config{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;border-top:1px solid var(--nature-line,#d9e6ce);background:#f7fbf3}.appliance-control{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--muted)}.appliance-control input,.appliance-control select{padding:9px 10px;border-radius:10px;background:#fff}.config-hint{grid-column:1/-1;color:var(--muted);line-height:1.4}.custom-device-wrap{padding:14px 0 2px}.custom-device-toggle{border:1px dashed #91bd62;background:#f7fbf3;color:#315b12;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer}.custom-device-form{margin-top:10px;padding:14px;border:1px solid var(--nature-line,#d9e6ce);border-radius:14px;background:#f7fbf3}.custom-device-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.custom-device-grid label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--muted)}.custom-device-actions{display:flex;gap:8px;margin:12px 0 8px}@media(max-width:850px){.appliance-config{grid-template-columns:1fr 1fr}.custom-device-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.appliance-config,.custom-device-grid{grid-template-columns:1fr}.custom-device-actions{flex-direction:column}}

/* V1.10.2 – automatically detected location feedback */
.detected-location-notice{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid rgba(93,156,22,.28);
  border-radius:10px;
  background:rgba(93,156,22,.08);
  color:#315b12;
  font-size:.9rem;
  line-height:1.4;
}
@media (max-width:640px){
  .detected-location-notice{font-size:.86rem;padding:9px 10px}
}

/* V1.10.3 – reliable VisitorAPI detection */
.visitor-location-card[role="button"]{
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.visitor-location-card[role="button"]:hover{
  border-color:rgba(93,156,22,.55);
}
.visitor-location-card[role="button"]:focus-visible{
  outline:3px solid rgba(93,156,22,.28);
  outline-offset:3px;
}
.visitor-location-card.error{
  border-color:rgba(170,90,35,.32);
  background:rgba(170,90,35,.045);
}

/* V1.10.5 – make failed automatic location detection unmistakable */
.detected-location-notice.location-fallback-warning{
  color:#b42318;
  border-color:rgba(180,35,24,.38);
  background:rgba(180,35,24,.07);
  font-weight:600;
}
.visitor-location-card.error .visitor-location-copy strong,
.visitor-location-card.error .visitor-location-copy span{
  color:#b42318;
}

/* V1.10.7 – interactive solar-module count on result step */
.panel-play-card .panel-play-row{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  margin:4px 0 8px;
}
.panel-count-input{
  width:92px;
  min-width:0;
  padding:7px 10px;
  border:1px solid rgba(49,91,18,.28);
  border-radius:10px;
  background:#fff;
  color:#203d16;
  font:inherit;
  font-size:1.65rem;
  font-weight:800;
  line-height:1.1;
  text-align:center;
}
.panel-count-input:focus{
  outline:3px solid rgba(93,156,22,.18);
  border-color:#5d9c16;
}
.panel-recalc-btn{
  min-height:38px;
  padding:8px 12px;
  border:0;
  border-radius:10px;
  background:#315b12;
  color:#fff;
  font:inherit;
  font-size:.84rem;
  font-weight:700;
  cursor:pointer;
}
.panel-recalc-btn:hover{background:#203d16}
.panel-recalc-btn:disabled{opacity:.6;cursor:wait}
.panel-play-hint{
  display:block;
  margin-top:7px;
  font-size:.72rem;
  line-height:1.3;
  opacity:.82;
}
.panel-play-hint.warning{
  color:#b42318;
  opacity:1;
  font-weight:700;
}
@media (max-width:640px){
  .panel-count-input{width:82px;font-size:1.4rem}
  .panel-recalc-btn{width:100%}
}
@media print{
  .panel-recalc-btn,.panel-play-hint{display:none!important}
  .panel-count-input{
    border:0!important;
    background:transparent!important;
    padding:0!important;
    width:auto!important;
    appearance:textfield;
  }
}


/* =========================================================
   V1.11.0 — calcola.solar brand + photographic hero
   ========================================================= */
.calcola-brand{display:flex;align-items:center;min-width:max-content;line-height:0}
.calcola-logo{display:block;width:245px;height:auto;max-height:58px}
.topbar{gap:30px}
.hero{grid-template-columns:1.02fr .98fr;gap:56px;min-height:610px}
.hero-visual{
  position:relative;
  border-radius:30px;
  overflow:hidden;
  min-width:0;
  box-shadow:0 26px 60px rgba(49,91,18,.16);
  background:#eef6e7;
  aspect-ratio:645/425;
}
.hero-visual>img{display:block;width:100%;height:100%;object-fit:cover}
.hero-example-card{
  position:absolute;
  right:18px;
  bottom:17px;
  width:168px;
  min-height:104px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:16px 18px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(31,57,19,.18);
  color:#203d16;
}
.hero-example-card small{color:#66756c;font-size:12px;margin-bottom:2px}
.hero-example-card strong{font-size:26px;line-height:1.05;color:#315b12}
.hero-example-card span{font-size:13px;font-weight:700;margin-top:5px;color:#44523f}
@media(max-width:980px){
  .calcola-logo{width:220px}
  .hero{grid-template-columns:1fr;gap:34px}
  .hero-visual{width:min(100%,650px);margin:0 auto}
}
@media(max-width:640px){
  .topbar{height:72px;padding-left:14px;padding-right:14px;gap:12px}
  .calcola-logo{width:178px;max-height:48px}
  .hero{padding-top:38px;gap:26px}
  .hero-visual{border-radius:22px}
  .hero-example-card{right:10px;bottom:10px;width:140px;min-height:88px;padding:12px 14px;border-radius:14px}
  .hero-example-card strong{font-size:21px}
}
@media(max-width:390px){
  .calcola-logo{width:154px}
}
@media print{
  .calcola-brand,.hero-visual{display:none!important}
}


/* V1.11.8: show automatic-location errors directly in the upper status card */
.visitor-card.location-error,
.visitor-location.location-error,
#visitorLocationCard.location-error,
#visitorCard.location-error {
  border-color: #ef9a93 !important;
  background: #fff1f0 !important;
}
.visitor-card.location-error strong,
.visitor-card.location-error b,
.visitor-card.location-error p,
.visitor-card.location-error small,
.visitor-location.location-error strong,
.visitor-location.location-error b,
.visitor-location.location-error p,
.visitor-location.location-error small,
#visitorLocationCard.location-error strong,
#visitorLocationCard.location-error b,
#visitorLocationCard.location-error p,
#visitorLocationCard.location-error small,
#visitorCard.location-error strong,
#visitorCard.location-error b,
#visitorCard.location-error p,
#visitorCard.location-error small {
  color: #b42318 !important;
}


/* V1.11.9 – clear automatic location states */
#visitorLocationCard.location-searching,
.visitor-location-card.location-searching {
  border-color: rgba(93,156,22,.28) !important;
  background: rgba(93,156,22,.06) !important;
}
#visitorLocationCard.location-searching strong,
#visitorLocationCard.location-searching span,
.visitor-location-card.location-searching strong,
.visitor-location-card.location-searching span {
  color: inherit;
}

#visitorLocationCard.location-success,
.visitor-location-card.location-success {
  border-color: rgba(93,156,22,.42) !important;
  background: rgba(93,156,22,.09) !important;
}
#visitorLocationCard.location-success strong,
.visitor-location-card.location-success strong {
  color: #315b12 !important;
}

#visitorLocationCard.location-error,
.visitor-location-card.location-error {
  border-color: #ef9a93 !important;
  background: #fff1f0 !important;
}
#visitorLocationCard.location-error small,
#visitorLocationCard.location-error strong,
#visitorLocationCard.location-error span,
.visitor-location-card.location-error small,
.visitor-location-card.location-error strong,
.visitor-location-card.location-error span {
  color: #b42318 !important;
}

/* V1.12.1 – visible appliance selection control */
.appliance-card{position:relative}
.appliance-select-indicator{
  position:absolute;
  top:14px;
  right:14px;
  width:28px;
  height:28px;
  padding:0;
  border:2px solid #5d9c16;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  z-index:4;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.appliance-select-indicator:hover{transform:scale(1.05)}
.appliance-select-indicator span{
  width:12px;
  height:12px;
  border-radius:50%;
  background:transparent;
}
.appliance-select-indicator.is-selected{
  background:#5d9c16;
  border-color:#5d9c16;
}
.appliance-select-indicator.is-selected span{
  background:#fff;
  width:8px;
  height:8px;
}
.appliance-select-indicator:focus-visible{
  outline:3px solid rgba(93,156,22,.25);
  outline-offset:2px;
}
@media(max-width:640px){
  .appliance-select-indicator{top:10px;right:10px;width:26px;height:26px}
}

/* V1.14.0 dynamic calculator steps */
#stepDots{display:flex;gap:8px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.step-nav-dot{appearance:none;border:0;background:transparent;padding:4px 6px;min-width:72px;color:#71806c;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;font:inherit}
.step-nav-dot span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:2px solid #cfdac6;background:#fff;font-weight:800;font-size:.82rem}
.step-nav-dot small{font-size:.68rem;line-height:1.15;text-align:center}
.step-nav-dot.active{color:#315b12}.step-nav-dot.active span{background:#5d9c16;color:#fff;border-color:#5d9c16}
.step-nav-dot.done span{border-color:#5d9c16;color:#5d9c16}
.step-nav-dot:focus-visible{outline:3px solid rgba(93,156,22,.22);outline-offset:2px;border-radius:8px}
@media(max-width:640px){#stepDots{gap:2px;justify-content:flex-start}.step-nav-dot{min-width:54px;padding:3px}.step-nav-dot small{display:none}.step-nav-dot span{width:28px;height:28px}}

/* V1.14.1 – five-step flow */
.embedded-device-step{
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid #e2eadb;
}
.embedded-device-step.hidden{display:none}

/* Beginner-friendly panel selection */
.panel{
  position:relative;
  padding-top:18px;
}
.panel-simple-badge{
  display:inline-block;
  padding:4px 8px;
  margin-bottom:8px;
  border-radius:999px;
  background:#edf5e5;
  color:#315b12;
  font-size:.72rem;
  font-weight:800;
}
.panel.active .panel-simple-badge{
  background:#5d9c16;
  color:#fff;
}
.panel-simple-desc{
  margin:7px 0 9px;
  color:#667161;
  font-size:.84rem;
  line-height:1.35;
}

/* V1.14.2 – aggregated beginner-friendly panel categories */
.panel-category{
  min-height:178px;
}
.panel-category strong{
  display:block;
  margin:7px 0 10px;
}
.panel-category-specs{
  display:grid;
  gap:5px;
  margin:0 0 10px;
  color:#556050;
  font-size:.82rem;
  line-height:1.35;
}
.panel-category-specs b{
  color:#315b12;
}
.panel-category-note{
  display:block;
  margin-top:5px;
  opacity:.68;
  font-size:.68rem;
}
