:root{--bg:#030c1c;--panel:#06132c;--panel2:#081b36;--muted:#93aaca;--text:#f2f6ff;--stroke:#263c5f;--cyan:#35dff1;--blue:#3492ff;--red:#bb2933;--green:#46dfa2;--shadow:0 34px 90px #0006;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;font-family:inherit;color:var(--text);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:disabled{opacity:.6;cursor:wait}a{color:inherit;text-decoration:none}[hidden]{display:none!important}svg{width:22px;height:22px;flex:none}.muted{color:var(--muted)}.tiny{font-size:12px}.landing-body{min-height:100vh;min-height:100dvh;background:radial-gradient(ellipse at 0% 100%,#0b2453 0%,transparent 42%),radial-gradient(ellipse at 85% 0%,#121137 0%,transparent 35%),var(--bg);position:relative;overflow-x:hidden}#fiber-canvas{position:fixed;inset:0;z-index:0;pointer-events:none}.page-vignette{position:fixed;z-index:0;pointer-events:none;inset:0;background:radial-gradient(ellipse at 48% 50%,rgba(4,10,27,.1),transparent 40%),linear-gradient(90deg,transparent 0%,rgba(2,8,22,.06) 60%,rgba(2,8,22,.16));}.main-shell{position:relative;z-index:1;width:min(100% - 34px,620px);margin:0 auto;padding:clamp(30px,8vh,82px) 0 35px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 1px 19px;min-height:72px}.brand-mark{width:205px;max-width:55%;display:block;line-height:0}.brand-mark img{width:100%;height:auto;display:block;max-height:90px;object-fit:contain;object-position:left center}.header-actions{display:flex;gap:9px;align-items:center}.icon-button,.language-button{height:43px;border:1px solid var(--stroke);background:rgba(5,18,41,.92);color:var(--text);border-radius:25px;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}.icon-button{width:43px}.icon-button svg{width:20px;height:20px}.icon-button:hover,.language-button:hover{background:#152544;border-color:#4486ad}.lang-wrap{position:relative}.language-button{font-size:13px;font-weight:750;padding:0 16px;gap:7px}.language-button span{font-size:17px;color:var(--muted)}.language-menu{position:absolute;top:calc(100% + 9px);inset-inline-end:0;min-width:148px;z-index:11;background:#0d1b35;border:1px solid #314669;border-radius:13px;overflow:hidden;box-shadow:0 15px 35px #0009}.language-menu button{display:block;width:100%;background:none;border:0;color:#f0f5ff;padding:12px 16px;text-align:start}.language-menu button:hover{background:#1c3858}.glass-card{background:linear-gradient(153deg,rgba(7,21,49,.98),rgba(8,25,52,.965) 65%,rgba(10,16,42,.99));border:1px solid #245179;border-radius:31px;box-shadow:var(--shadow),inset 0 1px rgba(66,223,245,.12);position:relative;overflow:hidden;min-height:510px}.glass-card:before{content:"";position:absolute;inset:-1px auto auto -1px;width:150px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}#wizard-content{position:relative;min-height:510px;display:flex;flex-direction:column;padding:33px}.step-enter{animation:stepEnter .28s ease-out}@keyframes stepEnter{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.intro-content{text-align:center;display:flex;flex-direction:column;flex:1;align-items:stretch;justify-content:center;padding:0 1px}.eyebrow{display:inline-flex;align-items:center;justify-content:center;align-self:center;gap:9px;padding:9px 17px;border:1px solid #1e776e;background:rgba(28,198,139,.10);color:#4ce1ab;border-radius:100px;font-size:14px;font-weight:800;letter-spacing:.025em}.eyebrow svg{width:15px;height:15px}.intro-content h1{font-size:clamp(28px,3.7vw,35px);letter-spacing:-.045em;line-height:1.18;margin:21px 0 12px;font-weight:850}.gradient-text{background:linear-gradient(95deg,#69edf4,#92bdfd,#db99ed);color:transparent;background-clip:text;-webkit-background-clip:text}.intro-sub{font-weight:660;font-size:16px;margin:0 0 27px;line-height:1.55}.benefit-list{display:grid;gap:11px;margin:0 0 26px;text-align:start}.benefit-list>div{display:flex;gap:16px;align-items:center;padding:15px 17px;border-radius:15px;background:rgba(2,11,31,.56);border:1px solid #213958;font-size:15px;font-weight:650}.benefit-list svg{color:var(--cyan);width:21px;height:21px}.primary-btn{background:linear-gradient(100deg,#4be3ee 0%,#27b9f8 40%,#398aff 100%);border:0;border-radius:16px;min-height:61px;padding:14px 22px;color:#061528;font-weight:850;font-size:17px;box-shadow:0 13px 27px rgba(35,183,231,.24);display:inline-flex;align-items:center;justify-content:center;gap:16px;transition:transform .17s ease,box-shadow .17s ease}.primary-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 15px 38px rgba(35,183,231,.38)}.primary-btn svg{width:23px;height:23px}.start-btn{width:100%}.contact-footer{min-height:26px;margin-top:17px;text-align:center;color:#9aafce;font-size:14px}.contact-footer a{display:inline-flex;gap:5px;align-items:center;vertical-align:middle;color:#d8e8f7}.contact-footer a svg{color:#1fce80}.progress-track{display:flex;width:100%;align-items:center;justify-content:space-between;gap:0;margin:1px 0 23px;direction:ltr}.progress-part{display:flex;align-items:center;flex:1;min-width:0}.progress-part:last-child{flex:0}.progress-dot{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:40px;height:40px;border:2px solid #264162;color:#8396bd;background:#06132c;transition:all .2s}.progress-dot svg{width:20px;height:20px}.progress-dot.active{border-color:var(--cyan);color:white;background:#10345b;box-shadow:0 0 22px #07dcff3c}.progress-dot.completed{border-color:#36d4e8;background:#35bffa;color:#051224}.progress-line{height:3px;flex:1;min-width:10px;background:#243e61;border-radius:5px;margin:0 8px}.progress-line.filled{background:linear-gradient(90deg,#259aff,#43e7eb)}.step-heading .step-icon{display:flex;width:65px;height:65px;align-items:center;justify-content:center;border:1px solid #2c8ba9;border-radius:20px;background:linear-gradient(135deg,#134b72,#1b2454);box-shadow:0 9px 36px #0a7bad23}.step-icon svg{height:31px;width:31px}.step-heading h1{font-size:clamp(26px,3.7vw,33px);letter-spacing:-.035em;line-height:1.21;font-weight:850;margin:19px 0 26px}.step-body{flex:1}.field-label{display:block;margin:19px 0 9px;font-size:16px;font-weight:730}.field-input{display:block;width:100%;padding:16px 18px;min-height:57px;color:var(--text);border:1px solid #2a4365;border-radius:16px;background:#020e26;outline:0;transition:border-color .2s,box-shadow .2s;font-size:16px}.field-input::placeholder{color:#7891b8}.field-input:focus{outline:none;border-color:#22e3fa;box-shadow:0 0 0 3px rgba(24,223,246,.18)}.field-hint{font-size:13px;color:var(--muted);margin:8px 2px 0}.step-footer{display:flex;gap:12px;margin-top:30px}.wizard-next{flex:1}.back-button{display:flex;align-items:center;justify-content:center;width:62px;min-height:61px;flex:none;border:1px solid #294165;background:#031027;border-radius:17px;color:#e9f5ff}.back-button svg{transform:rotate(180deg)}.step-desc{color:#abc0db;font-size:16px;margin:-12px 0 23px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.choice-button{display:flex;flex-direction:column;gap:13px;align-items:center;justify-content:center;min-height:155px;background:rgba(3,14,36,.6);border:1.5px solid #294265;border-radius:19px;color:#f0f6ff;font-size:18px;transition:all .2s}.choice-button:hover,.choice-button.selected{border-color:#29e1e9;background:rgba(20,68,99,.35);box-shadow:inset 0 0 20px #1ed9ee10}.choice-symbol{display:flex;align-items:center;justify-content:center;width:61px;height:61px;border:2px solid currentColor;border-radius:50%}.choice-symbol svg{width:31px;height:31px;stroke-width:2.5}.choice-symbol.yes{color:#40dd9e}.choice-symbol.no{color:#f48bac}.info-callout{display:grid;gap:4px;margin-top:21px;background:linear-gradient(100deg,#123953,#0a2647);border:1px solid #1883a3;border-radius:15px;padding:16px 19px;color:#bfd2ea;font-size:14px}.info-callout strong{color:var(--cyan);font-size:17px}.prefix-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:10px}.prefix-btn{padding:12px 0;background:#04122c;border:1px solid #314766;border-radius:12px;color:#e1efff;font-weight:800;font-size:17px}.prefix-btn.selected,.prefix-btn:hover{border-color:var(--cyan);box-shadow:0 0 0 2px #25d8ed33;background:#0d3351}.location-button{display:flex;gap:16px;align-items:center;text-align:start;width:100%;padding:18px;border-radius:19px;background:linear-gradient(115deg,rgba(32,133,91,.3),rgba(10,58,79,.75));border:1.6px solid #18b66e;color:#55e4a0}.location-button>span:last-child{display:flex;flex-direction:column;gap:5px}.location-button strong{font-size:17px}.location-button small{font-size:13px;color:#afd4c5}.locate-icon{border-radius:50%;background:#1cca72;color:white;width:54px;height:54px;display:flex;align-items:center;justify-content:center;flex:none}.locate-icon svg{width:27px;height:27px}.form-divider{text-align:center;display:flex;align-items:center;gap:14px;color:#849fc2;font-size:13px;font-weight:700;margin:23px 0}.form-divider:before,.form-divider:after{content:"";height:1px;background:#2a4162;flex:1}.geo-message{font-size:13px;color:#59e0a9;margin-top:9px}.gps-saved{display:flex;align-items:center;color:#57e8a5}.gps-saved svg{width:16px;height:16px}.review-body .review-row{display:flex;align-items:center;gap:13px;padding:14px 15px;margin:0 0 11px;background:#03122d;border:1px solid #2b4263;border-radius:15px;min-height:66px}.review-row>svg{color:var(--cyan);width:23px;height:23px}.review-data{display:grid;gap:4px;min-width:0;flex:1;overflow-wrap:anywhere}.review-data strong{font-size:16px}.review-data span{font-size:13px;color:#aabfda}.edit-button{border:0;color:#48e0ed;background:#11334e;border-radius:11px;font-size:13px;font-weight:800;padding:11px}.note-box{resize:vertical;min-height:91px}.consent-text{font-size:12px;color:#a7bdd9;line-height:1.6;margin:23px 0 0}.form-error{background:#45202c;border:1px solid #e46679;color:#ffd8e0;border-radius:12px;padding:12px 14px;margin-top:14px;font-size:13px}.success-content{text-align:center;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:21px;padding:22px 0}.success-icon{width:90px;height:90px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(45,207,138,.17);border:2px solid #47e1a2;box-shadow:0 0 50px #42d59c24;color:#4ce5a8}.success-icon svg{width:48px;height:48px}.success-content h1{font-size:34px;margin:0}.success-content p{max-width:410px;line-height:1.7;font-size:16px;color:#b6cae2;margin:0 0 14px}.light-theme{--text:#142440;--muted:#516780;--stroke:#bdd4e5;--panel:#f5f9ff;--panel2:#fff;--shadow:0 24px 72px #162b4629;background:#eaf5ff}.light-theme .glass-card{background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(229,245,255,.97));border-color:#8abad0}.light-theme .benefit-list>div,.light-theme .field-input,.light-theme .choice-button,.light-theme .review-row,.light-theme .back-button,.light-theme .prefix-btn{background:#f8fbff;color:#142440;border-color:#bdd4e5}.light-theme .icon-button,.light-theme .language-button{background:#eef7ff;color:#142440}.light-theme .step-heading h1,.light-theme .intro-sub,.light-theme .review-data strong{color:#142440}.light-theme .step-desc,.light-theme .field-hint,.light-theme .contact-footer,.light-theme .consent-text{color:#486480}.light-theme .info-callout{background:#e1f7fa}.light-theme .location-button{background:#dcfff0}.light-theme .eyebrow{background:#e2faed;color:#168b61}.light-theme .progress-dot{background:#f4f9ff}.light-theme .progress-dot.active{background:#e2f8ff;color:#0c3856}.light-theme .progress-dot.completed{background:#35bffa}.light-theme .page-vignette{background:#ffffffab}.light-theme .intro-content .gradient-text{background-image:linear-gradient(90deg,#058a9b,#286edf,#8038b3)}
/* Admin */
.admin-body{min-height:100vh;background:#061021 url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="160" height="160"%3E%3Cpath d="M0 160L160 0" stroke="%23152945" stroke-width="1"/%3E%3C/svg%3E');color:#ecf3ff}.install-shell{width:min(100% - 32px,650px);margin:40px auto}.admin-brand{width:195px;height:auto;max-height:90px;object-fit:contain;object-position:left center;margin-bottom:20px}.admin-panel{background:#0c1a31;border:1px solid #2b415f;border-radius:22px;padding:clamp(20px,4vw,33px);box-shadow:0 25px 65px #0005}.admin-panel h1{font-size:26px;line-height:1.3;margin:0 0 12px}.admin-panel h3{margin:12px 0 2px;font-size:16px}.admin-panel p{line-height:1.6}.admin-body .form-stack{display:grid;gap:15px}.admin-body label{display:grid;gap:7px;font-size:13px;color:#b9cee8;font-weight:700}.admin-body input,.admin-body select,.admin-body textarea{width:100%;background:#071329;color:#f5f8ff;border:1px solid #344863;min-height:45px;border-radius:10px;padding:10px 13px;outline:0}.admin-body input:focus,.admin-body select:focus{border-color:#3fdbeb}.admin-body button{border-radius:10px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-top{border-bottom:1px solid #203857;background:#081529}.admin-top-inner{max-width:1220px;margin:auto;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-top .admin-brand{margin:0;width:155px;max-height:65px}.admin-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-links a,.admin-links button,.back-link{padding:9px 12px;background:#142744;border:1px solid #314765;border-radius:10px;color:#d8ebff;font-size:13px}.admin-main{max-width:1220px;margin:28px auto;padding:0 20px}.admin-title{font-size:29px;margin:0 0 8px}.admin-tabs{display:flex;gap:9px;margin:22px 0;flex-wrap:wrap}.admin-tabs a{padding:12px 17px;border:1px solid #2a4766;border-radius:10px;background:#0c1c34;font-size:14px;color:#a9c2e2}.admin-tabs a.current{color:#081a30;background:#46d5e9;font-weight:800}.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:22px 0}.stat{padding:18px 20px;background:#0c1a30;border:1px solid #263d5e;border-radius:16px}.stat strong{font-size:29px;display:block}.stat span{font-size:13px;color:#9cb6d7}.search-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin:16px 0}.search-filters label{min-width:170px;flex:1}.btn-admin{display:inline-flex;justify-content:center;align-items:center;background:#174c66;border:1px solid #317f95;border-radius:10px;color:#e7faff;padding:12px 15px;font-weight:750;font-size:13px;min-height:43px}.btn-admin:hover{background:#216782}.btn-admin.danger-btn{border-color:#9a4852;background:#52232e}.table-wrap{overflow-x:auto}.leads-table{width:100%;border-collapse:collapse;font-size:13px;min-width:850px}.leads-table th,.leads-table td{padding:14px 12px;border-bottom:1px solid #263d58;text-align:left;vertical-align:middle}.leads-table th{font-size:12px;color:#a4bad7}.leads-table td{color:#e5f0ff}.leads-table tr:hover td{background:#132640}.pill{padding:6px 9px;display:inline-block;border-radius:100px;background:#233b5a;color:#d4edff;font-size:11px;text-transform:uppercase;font-weight:800}.pill.new{background:#173c55;color:#66e8f5}.pill.contacted{background:#514024;color:#ffdc88}.pill.qualified{background:#164735;color:#71efb3}.pill.closed{background:#353746;color:#bbc4d6}.pill.failed{background:#572d38;color:#ff97b2}.pagination{display:flex;gap:8px;justify-content:center;margin:25px 0}.pagination a{padding:9px 13px;border:1px solid #355070;border-radius:9px;background:#142941}.alert{padding:14px 17px;border-radius:12px;margin:16px 0;font-size:14px}.alert.success{background:#173d34;color:#8af5c8;border:1px solid #316b58}.alert.danger{background:#45222f;color:#ffd4da;border:1px solid #8c4657}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.settings-grid .admin-panel{height:fit-content}.field-checkbox{display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important}.field-checkbox input{width:18px;height:18px;min-height:0}.admin-body textarea{resize:vertical}.lead-summary{display:grid;grid-template-columns:150px 1fr;gap:13px;padding:12px 0;border-bottom:1px solid #233955;overflow-wrap:anywhere}.lead-summary dt{color:#8fabcb}.lead-summary dd{margin:0;color:#e8f3ff}.back-link{display:inline-flex;margin:0 0 17px}.empty-state{padding:40px;text-align:center;color:#a7bbd4}.inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inline-form select{width:auto}.status-actions{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.admin-footer{font-size:12px;color:#8199b8;text-align:center;padding:30px 15px}
[dir=rtl] .brand-mark img{object-position:right center}[dir=rtl] .step-footer .back-button svg{transform:rotate(0)}[dir=rtl] .primary-btn svg{transform:rotate(180deg)}[dir=rtl] .review-row,[dir=rtl] .location-button,[dir=rtl] .benefit-list>div{text-align:right}[dir=rtl] .field-input[dir=ltr]{text-align:left}[dir=rtl] .site-header{direction:rtl}[dir=rtl] .progress-track{direction:ltr}
@media(min-height:880px){.main-shell{padding-top:clamp(50px,10vh,105px)}}
@media(max-width:640px){.main-shell{width:min(100% - 26px,540px);padding-top:18px;padding-bottom:22px}.site-header{min-height:60px;margin-bottom:13px}.brand-mark{width:158px}.icon-button,.language-button{height:39px}.icon-button{width:39px}.language-button{padding:0 12px}.glass-card{border-radius:24px;min-height:unset}#wizard-content{padding:24px 20px;min-height:510px}.intro-content h1{font-size:29px}.intro-sub{font-size:14px}.benefit-list>div{font-size:14px;padding:13px 14px}.step-heading h1{font-size:27px;margin:17px 0 23px}.step-heading .step-icon{width:57px;height:57px}.progress-track{margin-bottom:22px}.progress-dot{width:34px;height:34px}.progress-dot svg{width:17px;height:17px}.progress-line{margin:0 5px}.step-footer{margin-top:28px}.choice-button{min-height:124px}.choice-symbol{width:51px;height:51px}.primary-btn{min-height:57px;font-size:16px}.back-button{width:58px;min-height:57px}.settings-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr)}.two-cols{grid-template-columns:1fr}.lead-summary{grid-template-columns:110px 1fr}}
@media(max-width:380px){.main-shell{width:calc(100% - 18px)}#wizard-content{padding:20px 16px}.header-actions{gap:5px}.brand-mark{width:138px}.step-heading h1{font-size:24px}.intro-content h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* Energy Bridge brand refresh · 2026-10-21 · v2 */
:root {
  --bg: #08090c;
  --panel: #111217;
  --panel2: #1b171a;
  --muted: #b0a8b1;
  --text: #fcf8f8;
  --stroke: #3b2c33;
  --brand: #b4282d; /* sampled from the customer's original logo */
  --brand-light: #f06b67;
  --brand-glow: rgba(209, 48, 56, .32);
  --cyan: #e35459; /* backward-compatible app accent variable */
  --blue: #d1323b;
  --shadow: 0 34px 90px rgba(0, 0, 0, .49);
  color-scheme: dark;
}
html { background: var(--bg); }
body { min-width: 0; }
button:focus-visible, a:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible {outline-color:#ff777a;}
.landing-body {
  background:
    radial-gradient(ellipse at 0% 95%,rgba(117,20,36,.32),transparent 49%),
    radial-gradient(ellipse at 93% 4%,rgba(123,24,38,.22),transparent 46%),
    linear-gradient(160deg,#07090d 0%,#100b11 65%,#08080d 100%);
}
.page-vignette {
  background: radial-gradient(ellipse at 50% 50%,rgba(7,8,11,.04),transparent 43%),
              linear-gradient(90deg,transparent,rgba(7,7,10,.14));
}
.main-shell {width:min(calc(100% - 40px),620px);}
.site-header { min-width:0; }
.brand-mark {flex:0 1 205px; min-width:0;}
.brand-mark img {max-width:100%; height:auto;}
.brand-mark .logo-on-light {display:none;}
.header-actions {flex:none;}
.icon-button,.language-button {
  background:rgba(20,16,21,.92);
  border-color:#47313a;
}
.icon-button:hover,.language-button:hover {
  background:#332024;
  border-color:#b94b53;
}
.language-menu {background:#21171c; border-color:#59404a;}
.language-menu button:hover,.language-menu button:focus-visible {background:#42242b;}
.glass-card {
  background:linear-gradient(145deg,rgba(24,20,26,.975),rgba(15,16,22,.99) 70%,rgba(27,13,21,.99));
  border-color:#72323b;
  overflow:clip; /* avoid focus-induced horizontal scrolling inside the rounded card */
  box-shadow:var(--shadow),inset 0 1px rgba(247,121,126,.11),0 0 54px rgba(149,27,35,.09);
}
.glass-card:before {background:linear-gradient(90deg,#e65059,rgba(231,75,81,0));}
.eyebrow {
  border-color:#83353f;
  background:rgba(180,40,45,.16);
  color:#ff979a;
}
.gradient-text {
  background-image:linear-gradient(100deg,#fff5f3 0%,#f7aaa8 43%,#e34e57 100%);
}
.benefit-list>div {background:rgba(10,10,16,.62); border-color:#49323c;}
.benefit-list svg,.review-row>svg {color:#f16d72;}
.primary-btn {
  color:#fff;
  background:linear-gradient(102deg,#a9232b 0%,#cf333e 51%,#ed555b 100%);
  box-shadow:0 13px 32px rgba(180,40,45,.3);
  text-shadow:0 1px rgba(70,7,13,.15);
}
.primary-btn:not(:disabled):hover {
  background:linear-gradient(102deg,#bc2a34,#e2484e 55%,#f56b70);
  box-shadow:0 15px 38px rgba(180,40,45,.44);
}
.contact-footer {color:#b9a7af;}
.contact-footer a {color:#f1e5e7;}
.progress-dot {border-color:#533741;color:#ad97a3;background:#130f15;}
.progress-dot.active {
  border-color:#f45761;
  color:#fff;
  background:#77222d;
  box-shadow:0 0 23px rgba(245,65,79,.33);
}
.progress-dot.completed {border-color:#e74b54;background:#c7353e;color:#fff;}
.progress-line {background:#462e39;}
.progress-line.filled {background:linear-gradient(90deg,#a9232c,#ef6770);}
.step-heading .step-icon {
  border-color:#8f3d49;
  background:linear-gradient(135deg,#71232e,#311e2d);
  box-shadow:0 9px 36px rgba(188,37,47,.23);
}
.field-input {background:#0d0e13;border-color:#513841;min-width:0;}
.field-input::placeholder {color:#9f8794;opacity:1;}
.field-input:focus {border-color:#ed5b63;box-shadow:0 0 0 3px rgba(210,46,55,.22);}
.field-label {color:#f2e9ec;}
.field-hint,.step-desc {color:#bdacb6;}
.back-button {background:#110e15;border-color:#513741;}
.back-button:hover {background:#23171e;border-color:#bd4851;}
.choice-button {background:#100e15;border-color:#513742;}
.choice-button:hover,.choice-button.selected {
  border-color:#ed555f;
  background:rgba(124,34,47,.28);
  box-shadow:inset 0 0 20px rgba(222,61,71,.06);
}
.choice-symbol.yes {color:#50dda1;}
.choice-symbol.no {color:#fe91a7;}
.info-callout {background:linear-gradient(100deg,#381e28,#291924);border-color:#9a3b49;color:#eee0e5;}
.info-callout strong {color:#ff8e92;}
.prefix-btn {background:#110d15;border-color:#573842;}
.prefix-btn:hover,.prefix-btn.selected {background:#461e2b;border-color:#ef6870;box-shadow:0 0 0 2px #e75a6538;}
.location-button {background:linear-gradient(120deg,rgba(26,92,61,.25),rgba(17,39,34,.74));}
.form-divider {color:#b59eab;}
.form-divider:before,.form-divider:after {background:#49333d;}
.review-body .review-row {background:#111017;border-color:#503640;}
.edit-button {color:#ff9298;background:#46232d;}
.edit-button:hover {background:#652b38;}
.consent-text {color:#b9a7b2;}
.success-icon {background:rgba(57,206,144,.12);}
/* Light theme remains recognizably Energy Bridge red rather than NOVA blue. */
.light-theme {
  --text:#271f25;--muted:#69585f;--stroke:#dfc5cb;
  --panel:#fffafa;--panel2:#fff;--shadow:0 24px 72px #682e391f;
  color-scheme:light;
  background:linear-gradient(155deg,#fffafa 0%,#f7e6e9 100%);
}
.light-theme .brand-mark .logo-on-dark {display:none;}
.light-theme .brand-mark .logo-on-light {display:block;}
.light-theme .glass-card {background:linear-gradient(158deg,#fffdfd,#fff2f2);border-color:#dfa6ab;}
.light-theme .benefit-list>div,.light-theme .field-input,.light-theme .choice-button,
.light-theme .review-row,.light-theme .back-button,.light-theme .prefix-btn {
  background:#fff; color:#282025; border-color:#dec1c7;
}
.light-theme .icon-button,.light-theme .language-button {
  background:#fff8f8;color:#291e24;border-color:#dcb6c0;
}
.light-theme .language-menu {background:#fffafb;border-color:#dbb5bf;}
.light-theme .language-menu button {color:#2e2329;}
.light-theme .language-menu button:hover {background:#fbe6e8;}
.light-theme .step-heading h1,.light-theme .intro-sub,.light-theme .review-data strong,.light-theme .field-label {color:#231b21;}
.light-theme .step-desc,.light-theme .field-hint,.light-theme .contact-footer,.light-theme .consent-text {color:#65515c;}
.light-theme .info-callout {background:#fce2e5;border-color:#d78b95;color:#593540;}
.light-theme .info-callout strong {color:#ae2632;}
.light-theme .location-button {background:#e5faed;}
.light-theme .eyebrow {background:#ffeded;color:#aa2630;border-color:#e5abb0;}
.light-theme .progress-dot {background:#fff6f7;color:#9b6875;border-color:#d9b0ba;}
.light-theme .progress-dot.active {background:#fbe4e6;color:#a12430;border-color:#c8313d;}
.light-theme .progress-dot.completed {background:#c7333e;color:#fff;}
.light-theme .page-vignette {background:rgba(255,250,250,.76);}
.light-theme .gradient-text {background-image:linear-gradient(100deg,#9d1b28,#d1434d,#b4282d);}
.light-theme .contact-footer a {color:#852c39;}
.light-theme .review-data span {color:#765760;}
.light-theme .edit-button {background:#f6d9dc;color:#9f2330;}
.light-theme #fiber-canvas {opacity:.27;}
.light-theme .field-input::placeholder {color:#9c7d89;}
.light-theme .choice-button.selected {background:#fbe7e9;border-color:#b4282d;}
/* Admin, installer and settings reuse the same brand identity. */
.admin-body {
  background:#0b0a0e url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="160" height="160"%3E%3Cpath d="M0 160L160 0" stroke="%23321c25" stroke-width="1"/%3E%3C/svg%3E');
}
.admin-panel {background:#181419;border-color:#513640;}
.admin-top {background:#171116;border-bottom-color:#4a3038;}
.admin-body input,.admin-body select,.admin-body textarea {background:#100d12;border-color:#61434d;}
.admin-body input:focus,.admin-body select:focus,.admin-body textarea:focus {border-color:#ec6a71;box-shadow:0 0 0 3px rgba(212,61,68,.16);}
.admin-links a,.admin-links button,.back-link {background:#302028;border-color:#60414c;}
.admin-tabs a {background:#22171e;border-color:#5b3a45;color:#dfbfc7;}
.admin-tabs a.current {background:#b4282d;border-color:#dc4b54;color:#fff;}
.stat {background:#21171e;border-color:#533740;}
.btn-admin {background:#63232d;border-color:#a3424c;color:#fff0f1;}
.btn-admin:hover {background:#8c2b37;}
.btn-admin.danger-btn {background:#632332;border-color:#b6535d;}
.leads-table th,.leads-table td {border-bottom-color:#44313a;}
.leads-table tr:hover td {background:#36212a;}
.pill.new {background:#52232f;color:#ff9fa6;}
.pagination a {background:#2b1b23;border-color:#593843;}
.lead-summary {border-bottom-color:#4e343e;}
/* Sizing and stacking: avoid mobile horizontal overflow, keyboard zoom and clipped controls. */
.main-shell,.glass-card,#wizard-content,.step-body,.step-heading,.intro-content {min-width:0;}
.intro-content h1,.step-heading h1,.success-content h1 {overflow-wrap:break-word;}
.review-data {overflow-wrap:anywhere;}
.field-input,.admin-body input,.admin-body textarea,.admin-body select {max-width:100%;}
.location-button>span:last-child {min-width:0;}
.contact-footer {overflow-wrap:anywhere;}
@media (max-width: 767px) {
  .main-shell {width:min(calc(100% - 28px),560px);padding-top:19px;padding-bottom:max(24px,env(safe-area-inset-bottom));}
  .site-header {gap:10px;min-height:65px;margin-bottom:14px;}
  .brand-mark {width:156px;flex:0 1 156px;max-width:calc(100% - 129px);}
  .glass-card {border-radius:24px;min-height:0;}
  #wizard-content {padding:clamp(19px,5vw,30px);min-height: min(550px, calc(100dvh - 152px));}
  .intro-content h1 {font-size:clamp(25px,6.6vw,32px);}
  .step-heading h1 {font-size:clamp(24px,6.25vw,30px);}
  .benefit-list>div {min-width:0;line-height:1.38;}
  .benefit-list svg {flex-shrink:0;}
  .step-footer {margin-top:clamp(26px,7vh,48px);}
  .primary-btn,.back-button {min-height:54px;}
  .admin-main {padding:0 14px;max-width:100%;}
  .admin-panel {padding:18px;}
  .admin-top-inner {padding:12px 14px;}
  .admin-links {width:100%;gap:8px;}
  .admin-links a,.admin-links button {min-height:42px;display:inline-flex;align-items:center;}
  .admin-title {font-size:clamp(22px,6vw,28px);}
  .stats-row {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .stat {padding:14px;min-width:0;}
  .stat strong {font-size:clamp(20px,5.5vw,28px);overflow-wrap:anywhere;}
  .settings-grid,.two-cols {grid-template-columns:minmax(0,1fr);}
  .admin-tabs {gap:6px;}
  .admin-tabs a {padding:11px 12px;}
  .search-filters {align-items:stretch;}
  .search-filters label {min-width:100%;}
  .search-filters>.btn-admin {width:100%;}
  .table-wrap {overflow:visible;}
  .leads-table {display:block;min-width:0;width:100%;}
  .leads-table thead {display:none;}
  .leads-table tbody {display:grid;gap:12px;}
  .leads-table tbody tr {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;background:#231820;border:1px solid #5a3a45;border-radius:14px;padding:14px;min-width:0;}
  .leads-table td {display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:0;border:0;overflow-wrap:anywhere;}
  .leads-table td::before {content:attr(data-label);font-size:11px;font-weight:700;letter-spacing:.02em;color:#c5a8b2;margin-bottom:3px;}
  .leads-table td:nth-child(3),.leads-table td:nth-child(6),.leads-table td:last-child {grid-column:1/-1;}
  .leads-table td:last-child a {width:100%;}
  .leads-table td.empty-state {grid-column:1/-1;text-align:center;display:block;}
  .leads-table td.empty-state:before {display:none;}
  .pagination {flex-wrap:wrap;}
  .lead-summary {grid-template-columns:minmax(100px,34%) minmax(0,1fr);}
}
@media (max-width: 420px) {
  .main-shell {width:calc(100% - 20px);padding-top:12px;}
  .site-header {gap:6px;min-height:56px;margin-bottom:11px;}
  .brand-mark {flex-basis:136px;width:136px;max-width:calc(100% - 113px);}
  .header-actions {gap:5px;}
  .icon-button,.language-button {height:37px;}
  .icon-button {width:37px;}
  .language-button {font-size:12px;padding-inline:10px;}
  .glass-card {border-radius:20px;}
  #wizard-content {padding:20px 16px;min-height:min(520px,calc(100dvh - 128px));}
  .progress-track {margin-bottom:18px;}
  .progress-dot {height:31px;width:31px;flex-shrink:0;}
  .progress-line {margin-inline:4px;min-width:3px;}
  .step-heading .step-icon {width:53px;height:53px;}
  .step-heading h1 {font-size:clamp(22px,6.2vw,27px);margin:16px 0 21px;}
  .intro-content h1 {font-size:clamp(24px,6.7vw,28px);margin-top:17px;}
  .eyebrow {font-size:12px;padding:8px 12px;}
  .benefit-list {gap:8px;margin-bottom:22px;}
  .benefit-list>div {font-size:13px;padding:12px;gap:10px;}
  .field-label {font-size:15px;}
  .field-input {font-size:16px;min-height:54px;padding:13px 14px;border-radius:12px;}
  .choice-grid {gap:9px;}
  .choice-button {min-height:114px;gap:9px;font-size:16px;}
  .choice-symbol {width:49px;height:49px;}
  .choice-symbol svg {width:27px;height:27px;}
  .location-button {padding:13px;gap:11px;}
  .location-button strong {font-size:15px;}
  .location-button small {font-size:12px;line-height:1.3;}
  .locate-icon {width:43px;height:43px;}
  .prefix-grid {gap:6px;}
  .prefix-btn {font-size:15px;padding:11px 0;}
  .review-body .review-row {gap:9px;padding:12px 10px;}
  .review-data strong {font-size:14px;}
  .review-row>svg {width:19px;height:19px;}
  .edit-button {padding:9px;font-size:12px;}
  .contact-footer {margin-top:13px;font-size:12px;}
  .step-footer {gap:9px;}
  .back-button {width:49px;}
  .primary-btn {padding-inline:12px;font-size:15px;gap:9px;}
  .success-content h1 {font-size:27px;}
  .admin-top .admin-brand {width:138px;}
  .admin-main {padding:0 10px;}
  .admin-panel {padding:14px;border-radius:15px;}
  .install-shell {width:calc(100% - 20px);margin:22px auto;}
}
@media (max-width: 340px) {
  #wizard-content {padding:17px 12px;}
  .brand-mark {flex-basis:117px;width:117px;}
  .language-button {padding-inline:8px;}
  .benefit-list>div {font-size:12px;}
  .step-heading h1 {font-size:22px;}
  .progress-line {margin-inline:3px;}
}
@media (prefers-reduced-motion:reduce) {
  #fiber-canvas {opacity:.32;}
}

.review-data strong[dir="ltr"] {direction:ltr;unicode-bidi:isolate;}
[dir="rtl"] .review-data strong[dir="ltr"] {text-align:right;}
/* Neutral notification statuses, keeping state semantics distinct from the brand red. */
.pill {background:#403039;color:#f5e5e8;}
