@import url('https://fonts.googleapis.com/css2?family=Darker+Grotesque:wght@500;600;700;800;900&display=swap');
:root{--ink:#263a58;--purple:#8a5fff;--green:#2ffa92;--snow:#ecf0f3}*{box-sizing:border-box}body{margin:0;background:var(--snow);color:var(--ink);font-family:Arial,sans-serif;font-size:16px}.app{min-height:100svh;max-width:1440px;margin:auto;display:flex;flex-direction:column;padding:28px 44px}header{display:flex;align-items:center;gap:26px}.brand{font-size:34px;font-weight:900;letter-spacing:-2px;display:flex;align-items:center;gap:18px}.brand span{font-size:14px;letter-spacing:0;font-weight:500;border-left:1px solid #bbc4d0;padding-left:18px}.event{margin-left:auto;font-size:13px;letter-spacing:1.5px;font-weight:700}.event span{color:#7a8596}button{cursor:pointer;font:inherit;touch-action:manipulation;border:none}button:focus-visible,input:focus-visible{outline:3px solid var(--purple);outline-offset:4px}.reset{background:transparent;color:#65738a;text-decoration:underline;font-size:14px;padding:12px}nav{display:flex;gap:8px;margin:28px 0 30px}nav span{height:4px;flex:1;border-radius:4px;background:#d6dce4}nav span.active{background:var(--purple)}main{flex:1;display:flex;align-items:center;min-height:520px}.layout{width:100%;display:grid;grid-template-columns:0.92fr 1.08fr;gap:54px;align-items:center}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:700;color:var(--purple);margin-bottom:14px}h1,h2,.number{font-family:'Darker Grotesque',Arial,sans-serif}h1{font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-1px;margin:0 0 22px;font-weight:800}h1 em{color:var(--purple);font-style:normal}p{line-height:1.55;color:#68778b;margin:0 0 24px}.card{background:white;border-radius:24px;padding:30px;box-shadow:0 12px 48px #263a5809}.dark{background:var(--ink);color:white;position:relative;overflow:hidden}.dark p{color:#bac7d9}.dark .eyebrow{color:var(--green)}.number{font-size:76px;line-height:1.05;font-weight:800;letter-spacing:-1px}.number span{font-size:26px;color:#bac7d9}.primary,.secondary{border-radius:12px;min-height:54px;padding:15px 24px;font-weight:700;width:100%;display:flex;align-items:center;justify-content:center;text-decoration:none}.primary{background:var(--purple);color:white}.dark .primary{background:var(--green);color:var(--ink)}.secondary{background:#f0edf9;color:var(--ink);margin-top:12px}.fine{font-size:13px;line-height:1.5;color:#7d8ba0;margin-top:16px}.dark .fine{color:#bac7d9}label{display:block;font-size:14px;font-weight:700;margin-bottom:10px}.inputrow{display:flex;align-items:center;background:var(--snow);border-radius:12px;padding:2px 18px;margin-bottom:22px}.inputrow span{color:#7d8ba0}input[type=number]{border:0;background:transparent;width:100%;font-size:28px;font-weight:700;padding:14px 10px;color:var(--ink)}input[type=range]{width:100%;accent-color:var(--purple);height:28px;margin:2px 0}.scale{display:flex;justify-content:space-between;color:#77869a;font-size:13px;margin-bottom:22px}.labelrow{display:flex;justify-content:space-between;align-items:center}.labelrow b{font-size:14px;color:var(--purple)}.chips{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px}.chip{border:1px solid #dde2ea;border-radius:10px;min-height:44px;background:white;color:var(--ink);font-size:14px}.chip.selected{background:#eee7ff;border-color:var(--purple);color:#7144db;font-weight:700}.live{font-size:14px;border-top:1px solid #edf0f4;padding:16px 0;display:flex;justify-content:space-between}.live strong{color:var(--purple)}.range{display:flex;justify-content:space-between;border-top:1px solid #ffffff24;padding-top:18px;margin-top:22px;font-size:14px}.checks{margin:22px 0;padding:0;list-style:none}.checks li{padding:14px 0;border-bottom:1px solid #dbe1e8;line-height:1.4}.checks li:before{content:'✓';color:var(--purple);font-weight:700;margin-right:10px}input[type=text],input[type=email]{width:100%;border:1px solid #dbe1e8;border-radius:10px;padding:14px 16px;font:inherit;color:var(--ink);margin-bottom:16px;min-height:48px}.checklabel{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5;margin:8px 0 22px}input[type=checkbox]{width:20px;height:20px;accent-color:var(--purple);flex-shrink:0}.success{height:58px;width:58px;border-radius:50%;display:grid;place-items:center;background:var(--green);font-size:28px;margin-bottom:22px}.summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.summary dt{font-size:13px;color:#7a8799;margin-bottom:6px}.summary dd{margin:0;font-weight:700}.back{background:none;color:#68778b;padding:12px 0;margin-top:10px}.times{display:flex;gap:8px;margin:14px 0}.times .chip{flex:1}.notice{background:#f0edf9;padding:12px 16px;border-radius:10px;font-size:14px;line-height:1.5;margin-bottom:18px}footer{display:flex;justify-content:space-between;color:#7a8799;font-size:12px;padding-top:26px}.demo{letter-spacing:1px}dialog{border:0;border-radius:22px;padding:36px;max-width:660px;width:90vw;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#16233c99}.close{float:right;font-size:28px;background:none;color:var(--ink)}dialog h2{font-size:40px;line-height:1;margin:18px 0}dialog .number{font-size:60px;color:var(--purple)}@media(max-width:850px){.app{padding:22px}.layout{gap:26px}h1{font-size:42px}.card{padding:22px}.number{font-size:62px}.event{font-size:11px}.brand span{display:none}main{min-height:440px}}@media(max-width:620px){.layout{grid-template-columns:1fr}main{align-items:flex-start}.layout{gap:20px}nav{margin:20px 0}.app{padding:18px}h1{font-size:42px}.event{display:none}header .reset{margin-left:auto}footer span:first-child{display:none}.number{font-size:64px}.layout>section:first-child p{margin-bottom:12px}}@media print{body>.app{display:none}dialog{position:static;display:block;width:100%;max-width:none;max-height:none;padding:20px}dialog .close,dialog>button{display:none}dialog::backdrop{display:none}}

/* DQC event identity */
:root{--red:#FF7092;--blue:#8A5FFF}body{background:var(--ink);color:var(--snow)}.app{background:radial-gradient(ellipse at 5% 90%,#8a5fff22,transparent 45%),radial-gradient(ellipse at 90% 100%,#2ffa920a,transparent 45%)}.brand{letter-spacing:0;gap:22px}.brand img{width:245px;height:auto;display:block}.brand span{color:var(--snow);border-color:#ecf0f333}.event{color:var(--snow)}.event span{color:var(--green)}.reset{color:#d3deeb}nav span{background:#ecf0f322}.eyebrow{color:var(--blue)}h1{font-size:clamp(44px,4.8vw,66px)}h1 .percent{font-size:1.35em;font-weight:900}.green{color:var(--green)}p{color:#c1cede}.card{color:var(--ink)}.card p{color:#68778b}.dark{border:1px solid #ecf0f322;background:#263a58;box-shadow:0 15px 60px #0002;color:var(--snow)}.dark p{color:#c1cede}.card input[type=text]:invalid:not(:placeholder-shown),.card input[type=email]:invalid:not(:placeholder-shown){border-color:var(--red)}.trust{border-top:1px solid #ecf0f322;padding-top:20px;margin-top:24px;display:flex;flex-direction:column;gap:12px}.trust span{font-size:13px;color:#c1cede}.trust strong{font-family:'Darker Grotesque',Arial,sans-serif;font-size:26px;letter-spacing:1px}.checks li{border-color:#ecf0f322}.checks li:before{color:var(--green)}.checkheading{margin-top:20px;font-size:16px;font-weight:700}.checkheading+.checks{margin-top:4px}.back{color:#c1cede}.card .back{color:#68778b}.namefields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent{font-size:14px;margin-bottom:16px}.consent a{color:#6635c6;text-decoration:underline}.checklabel input{margin-top:2px}footer{color:#c1cede}dialog .brand img{width:245px}dialog .checks li{border-color:#dbe1e8}dialog .checks li:before{color:var(--purple)}dialog p{color:#68778b}dialog .eyebrow{color:#6537bd}dialog .brand{margin-right:20px}.references{font-size:14px}.app main{min-height:520px}#screen:has(#lastname) h1{font-size:54px}#screen:has(#lastname) .card{padding:24px}#screen:has(#lastname) input[type=text],#screen:has(#lastname) input[type=email]{padding:10px 14px;margin-bottom:12px;min-height:44px}#screen:has(#lastname) .live{padding-top:0}#screen:has(#lastname) .checklabel{margin-bottom:14px}@media(max-width:850px){.brand img{width:210px}h1{font-size:44px}.trust{margin-top:18px}#screen:has(#lastname) h1{font-size:44px}}@media(max-width:620px){.brand img{width:185px}.namefields{grid-template-columns:1fr 1fr}}

.event img{width:135px;height:auto;display:block}.reference-logos{display:flex;gap:12px;align-items:stretch;max-width:410px}.reference-logos>div{background:var(--snow);border-radius:10px;min-width:0;flex:1;height:65px;display:flex;align-items:center;justify-content:center;padding:14px}.reference-logos img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.reference-logos>div:first-child{flex:0 0 78px;padding:7px}dialog .reference-logos{margin:12px 0 22px}dialog .references p{font-size:14px;margin-bottom:10px}@media(max-width:850px){.event img{width:115px}.brand img{width:200px}.brand span{font-size:13px;padding-left:12px}.reference-logos{gap:8px}.reference-logos>div{height:60px;padding:12px}.reference-logos>div:first-child{flex-basis:72px;padding:6px}}@media(max-width:620px){.event{display:block;margin-left:auto}.event img{width:90px}.brand img{width:155px}header{flex-wrap:wrap;gap:12px}header .reset{margin-left:0;padding:6px}}

header>.reset{margin-left:auto}.event{margin-left:0}@media(max-width:620px){header>.reset{margin-left:auto}.event{margin-left:0}}
/* References sit directly on the page, without tiles or borders. */
.reference-logos{gap:28px;align-items:center;max-width:410px}
.reference-logos>div,.reference-logos>div:first-child{background:transparent;border:0;border-radius:0;padding:0;flex:1;height:44px}
.reference-logos>div:first-child{flex:0 0 55px;height:48px}
.reference-logos img{width:100%;max-height:44px}
.app .reference-logos img[src$=".svg"]{filter:brightness(0) invert(1)}
@media(max-width:850px){.reference-logos{gap:20px}.reference-logos>div,.reference-logos>div:first-child{padding:0;background:transparent;height:40px}.reference-logos>div:first-child{flex:0 0 48px}}
/* Preserve EnBW's original colors and give STULZ a readable native ratio. */
.app .reference-logos img[src="enbw.svg"]{filter:none}
.reference-logos{max-width:450px}
.reference-logos>div:first-child{flex:0 0 88px;height:88px}
.reference-logos img[src="stulz.jpg"]{width:88px;height:88px;max-height:88px;object-fit:contain}
@media(max-width:850px){.reference-logos>div:first-child{flex-basis:80px;height:80px}.reference-logos img[src="stulz.jpg"]{width:80px;height:80px;max-height:80px}}

/* Light mode */
:root{--ink:#111111}body{background:var(--snow);color:#111}.app{background:transparent}.brand span,.event{color:#111}.brand span{border-color:#1113}.event img{filter:brightness(0)}.reset,header>.reset{color:#555}nav span{background:#1112}.eyebrow{color:#111}h1,h1 em,h1 .green,h2,h3{color:#111}p{color:#525252}.card{color:#111;background:#fff;box-shadow:0 12px 48px #263a5809}.dark{background:#fff;color:#111;border:1px solid #d9dfe6}.dark p,.dark .fine,.dark .eyebrow,.number span{color:#555}.dark .number{color:#111}.dark .range{border-color:#1112}.dark .primary{background:var(--purple);color:white}.trust{border-color:#1112}.trust span{color:#555}.checks li{border-color:#1112}.checks li:before{color:#111}.back,.card .back{color:#555}footer{color:#555}.scale{color:#555}.labelrow b,.live strong{color:#111}.fine{color:#555}.app .reference-logos img[src$=".svg"],.app .reference-logos img[src="enbw.svg"]{filter:none}dialog{color:#111}dialog .number{color:#111}dialog .eyebrow{color:#111}.secondary{color:#111}.consent a{color:#111}input[type=number],input[type=text],input[type=email]{color:#111}.reference-logos>div,.reference-logos>div:first-child{background:transparent}
.optional{font-weight:400;font-size:13px;color:#666;margin-left:8px}#qualification .chips{margin-bottom:16px}#qualification .techchips{grid-template-columns:repeat(5,1fr)}#qualification .chip{padding:9px 8px;min-height:44px}#screen:has(#qualification) .card{padding:24px}#screen:has(#qualification) .inputrow{margin-bottom:14px}#screen:has(#qualification) .scale{margin-bottom:14px}@media(max-width:620px){#qualification .techchips{grid-template-columns:repeat(3,1fr)}}
/* Clear, compact input states for the one-minute flow. */
nav{display:block;margin:18px 0 22px}.progressbars{display:flex;gap:8px}.stepmeta{font-size:14px;color:#555;margin-bottom:10px}.app{padding-top:22px}.layout{align-items:start;gap:40px}.layout>section:first-child{padding-top:16px}main,.app main{align-items:flex-start;min-height:0}#screen:has(#qualification) .card{padding:22px}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:14px;font-weight:700;padding:0;margin-bottom:8px}.chip.choice{display:flex;align-items:center;justify-content:flex-start;gap:9px;margin:0;cursor:pointer;line-height:1.25;text-align:left}.chip.choice input{width:18px;height:18px;flex-shrink:0;accent-color:var(--purple);margin:0}.chip.choice.selected{border:2px solid var(--purple);padding:8px 7px;background:#eee7ff;color:#111}.fieldhint{font-size:13px;line-height:1.4;color:#555;margin:-3px 0 8px}.scale{gap:20px;line-height:1.35}.scale span{max-width:49%}.scale span:last-child{text-align:right}#screen:has(#qualification) .scale{margin-bottom:10px}.sliderhint{margin:0 0 14px}input[type=range].unset{accent-color:#bbc1ca;opacity:.65}.primary:disabled{background:#d8dce2;color:#68717c;cursor:not-allowed}.conversion{font-size:14px;font-weight:700;color:#111;text-align:center;margin-top:10px}.payoff{text-align:center;margin:4px 0 0}.privacyhint{font-size:12px;margin-top:8px}#inputerror{font-size:13px;margin-top:8px}input::placeholder{color:#9199a5;opacity:1}#qualification .chips{margin-bottom:12px}@media(min-width:851px){#screen:has(#qualification) h1{font-size:56px}}@media(max-width:850px){.layout{gap:24px}.scale{font-size:12px}#screen:has(#qualification) .card{padding:18px}}@media(max-width:620px){.layout>section:first-child{padding-top:0}.optional{display:block;margin:4px 0 0}}
/* Neutral untouched ranges, with explicit native thumbs in Safari. */
input[type=range]{appearance:none;-webkit-appearance:none;background:transparent;height:30px;opacity:1}input[type=range]::-webkit-slider-runnable-track{height:6px;background:#b6a0ef;border-radius:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:var(--purple);border:2px solid #fff;box-shadow:0 0 0 1px #8a5fff}input[type=range]::-moz-range-track{height:6px;background:#b6a0ef;border-radius:4px}input[type=range]::-moz-range-progress{height:6px;background:#b6a0ef}input[type=range]::-moz-range-thumb{height:20px;width:20px;border-radius:50%;background:var(--purple);border:2px solid white}input[type=range].unset{opacity:1}input[type=range].unset::-webkit-slider-runnable-track{background:#e1e4e9}input[type=range].unset::-webkit-slider-thumb{background:#c9ced6;box-shadow:none}input[type=range].unset::-moz-range-track,input[type=range].unset::-moz-range-progress{background:#e1e4e9}input[type=range].unset::-moz-range-thumb{background:#c9ced6}
.leftsummary{padding:20px 0;border-top:1px solid #d8dde5;margin-top:24px}.leftsummary h3{margin:0}.inputsummary{margin:18px 0;gap:16px}.inputsummary .wide{grid-column:1/-1}.summary dd{line-height:1.35}.method{font-size:13px;margin:14px 0;color:#555}.method summary,.consentdetails summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.method p{font-size:13px;margin:10px 0 0}.checkreason{font-size:13px;margin:8px 0 12px}.back{display:inline-block;font-weight:600;text-decoration:underline;text-underline-offset:4px;padding:14px 0}.snapshotpreview{margin-top:24px;padding:22px;border:1px solid #d7dce4;border-radius:16px;background:#f7f8fa}.snapshotpreview .number{font-size:54px}.snapshotpreview .checks{margin:14px 0 0;font-size:14px}.snapshotpreview .checks li{padding:10px 0}.snapshotpreview .checks li:last-child{border:0}#screen:has(#lastname) .live{padding:14px 16px;margin-bottom:16px;border:1px solid #e1e5ea;border-radius:10px;background:#f7f8fa}input[type=text]::placeholder,input[type=email]::placeholder{color:#a8afb9}.fieldtag{font-size:12px;white-space:nowrap;color:#677286}.checklabel small,.optins small{display:block;font-size:12px;color:#677286;line-height:1.5;margin-top:4px}.consentdetails{font-size:13px;color:#555;margin:-4px 0 16px;padding-left:30px}.consentdetails p{margin:8px 0;font-size:13px}.optionalgroup{border-top:1px solid #e1e5ea;padding-top:14px;margin-top:12px}.optins{font-size:14px;padding:14px 16px;background:#f3f4f7;border-radius:12px;margin-bottom:18px}.optins>div+div{margin-top:12px}.recipient{font-size:14px;color:#555;line-height:1.5;margin-top:16px}dialog{padding:32px;max-height:90svh}dialog>.primary{margin-top:26px;margin-bottom:8px;flex-shrink:0}.reportcta{margin:18px 0 0}.references{margin:22px 0}.references .reference-logos{display:flex;align-items:center;gap:24px;min-height:88px;max-width:480px;width:100%}.references .reference-logos>div{display:flex;flex:1;align-items:center;justify-content:center;min-width:0;height:60px}.references .reference-logos>div:first-child{flex:0 0 88px;height:88px}.references .reference-logos img{display:block;max-width:100%;width:100%;height:auto;max-height:60px;filter:none}.references .reference-logos img[src="stulz.jpg"]{width:88px;height:88px;max-height:88px}.idlewarning{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#263a58;color:white;padding:14px 20px;border-radius:12px;z-index:99999;font-size:14px;max-width:90vw;width:max-content;box-shadow:0 8px 30px #0003}.idlewarning button{background:#8a5fff;color:white;border-radius:8px;padding:8px 12px;margin-left:12px}.idlewarning[hidden]{display:none}@media print{dialog{overflow:visible;max-height:none}.reportcta,.idlewarning{display:none}.method{display:none}.references{break-inside:avoid}}@media(max-width:850px){.snapshotpreview{padding:18px}.snapshotpreview .number{font-size:46px}.leftsummary{margin-top:18px}}
/* Keep the journey concise and airy. */
.optionalgroup{margin:12px 0 18px;padding-top:12px;font-size:14px}.optionalgroup summary{cursor:pointer;color:#555}.optionalgroup[open] summary{margin-bottom:14px}.optionalgroup .checklabel{margin-top:12px}.card .range{border-color:#e1e5ea}.card>p{margin:12px 0 16px}.card .number{font-size:70px}.privacyhint{margin-top:8px}#inputerror:empty{display:none}.method .summary{font-size:14px}dialog .recipient{margin-bottom:22px}dialog .number{margin-top:18px}dialog .references{margin:18px 0}dialog .references .reference-logos{min-height:70px}dialog .references .reference-logos>div:first-child{height:70px;flex-basis:70px}dialog .references .reference-logos img[src="stulz.jpg"]{width:70px;height:70px;max-height:70px}.leftsummary,.snapshotpreview{display:none}@media(max-width:850px){.card .number{font-size:60px}}

/* Independent Yes / No choices for each revenue source. */
.sources{margin-bottom:16px}.source-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 0}.source-name{font-size:14px;font-weight:600;line-height:1.35}.source-answers{display:flex;gap:8px;flex-shrink:0}.source-answers .chip.choice{justify-content:center;min-width:76px;padding:10px}.source-answers .chip.choice.selected{padding:9px}.reference-logos img[src="wago.webp"]{filter:none;width:125px;height:auto;max-height:44px}@media(max-width:620px){.source-row{gap:10px}.source-name{font-size:13px}.source-answers{gap:6px}.source-answers .chip.choice{min-width:62px;padding:9px 7px}.source-answers .chip.choice.selected{padding:8px 6px}}

/* Minimal monochrome revenue sources. */
#qualification .sources{margin:16px 0 20px;max-width:470px}#qualification .sources>legend{font-size:14px;font-weight:700;letter-spacing:0;text-transform:none;color:#111;margin-bottom:4px}.source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:start;gap:14px;padding:8px 0;background:transparent;border-radius:0;border-bottom:1px solid #e6e6e6}.source-row+.source-row{margin-top:0}.source-name{font-size:14px;font-weight:400;line-height:1.35}.source-answers{gap:6px;padding:0;border:0;border-radius:0;background:transparent}.source-answers .chip.choice{min-width:64px;min-height:40px;border:1px solid #ddd;border-radius:6px;padding:8px;gap:6px;font-size:13px;background:white;color:#111}.source-answers .chip.choice.selected{border:1px solid var(--purple);padding:8px;background:#eee7ff;color:#111}.source-answers .chip.choice.selected input{accent-color:var(--purple)}.source-answers .chip.choice input{width:16px;height:16px;accent-color:#111}.source-answers input:focus-visible{outline-color:#111}@media(max-width:620px){.source-row{gap:8px;padding:8px 0}.source-answers .chip.choice{min-width:56px;padding:7px 5px}.source-answers .chip.choice.selected{padding:7px 5px}.source-name{font-size:13px}}

/* Readable, subdued disclosure for the snapshot request. */
#screen .snapshot-consent{font-size:12px;line-height:1.5;color:#666;margin:12px 0 0;font-weight:400}#screen .snapshot-consent a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* Full event lockup, rendered black on the light header. */
.event img{width:300px;max-width:100%;height:auto;filter:brightness(0)}@media(max-width:850px){.event img{width:240px}}

/* Integer-only revenue entry without number steppers. */
.inputrow #rev{border:0;background:transparent;min-width:0;width:100%;font-size:28px;font-weight:700;padding:14px 10px;color:#111;margin:0;border-radius:0;min-height:0}

.card .senderror,.card .sourceerror{color:#c62828;font-size:14px;margin:10px 0 0}.senderror:empty{display:none}
