/* Optical Glass 5.8 — one shared material and typographic system. */
:root{--ink:#102b24;--muted:#4f615b;--forest:#174c36;--glass-fill:linear-gradient(125deg,#ffffffbd 0%,#ffffff66 48%,#edf0e1a8 100%);--glass-shadow:inset 0 0 0 1px #ffffffde,inset 0 0 0 3px #e1e9df82,inset -2px -3px 6px #fff9,0 8px 20px #344e3612;--glass-line:#c8d4cb;--font:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
body{background:radial-gradient(ellipse at 0% 55%,#ccddcc55,transparent 48%),radial-gradient(ellipse at 90% 90%,#dbe6d466,transparent 55%),#f7f8f2;color:var(--ink);font-family:var(--font)}
h1,h2,h3,h4,.brand,.business-profiles b,.mode-card strong{font-family:var(--font);font-weight:650;letter-spacing:-.045em;color:#102821}button,input,select,textarea{font-family:var(--font)}
header{height:84px;min-height:84px;background:#fcfcf4b8;backdrop-filter:blur(20px) saturate(115%);border-bottom:1px solid #fff;box-shadow:0 1px 0 #cdd6cb55}.brand{font-size:25px;letter-spacing:-1px;gap:10px}.brandmark,.brandmark svg{width:34px;height:40px}.brand small{font-size:10px;letter-spacing:3px;color:#244d3c}.atelier-nav{background:#ffffff8a;border-radius:18px;box-shadow:inset 0 1px 1px white,0 4px 15px #455a3d0a;border:1px solid #fff}.atelier-nav button{font-size:14px;min-height:42px;padding:9px 18px}.atelier-nav button[aria-pressed=true]{background:linear-gradient(130deg,#d7e5d9,#edf0df);color:#153c2d}.topactions button{font-size:13px}
main{max-width:1536px;padding:24px 4.5% 32px}#steps{max-width:none;gap:24px;padding:8px 0 25px;margin:0 0 10px;min-height:82px}.step{gap:9px;flex-direction:row;align-items:flex-start}.step i{width:36px;height:36px;border:1px solid #aebdb2;background:linear-gradient(140deg,#ffffffbd,#ccd8cb66);box-shadow:inset 0 0 0 2px #fff9;color:#42544d;font-size:15px}.step.active i{background:linear-gradient(135deg,#4c8968,#1b5139);border-color:#4c7e62;box-shadow:inset 0 0 0 2px #ffffffbd,0 0 0 3px #dce9d7,0 4px 12px #466c3e20;color:white}.step>span{padding-top:8px;font-size:14px;color:#58675f}.step.active>span{color:#174b34}.step:not(:last-child)::after{left:45px;right:0;top:0;background:linear-gradient(90deg,#9dad9f,#dbe2d6);opacity:.6}.step small{display:none}
.formlayout{position:relative;isolation:isolate;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:36px;align-items:start}#form{max-width:none;padding-top:0;position:relative;z-index:2}#stepcontent .stepintro h2{font-size:clamp(32px,3.5vw,52px);line-height:1.13;margin:4px 0 12px;font-weight:700;max-width:none}#stepcontent .stepintro>p:not(.eyebrow){font-size:17px;line-height:1.5;color:#51645a}.business-block{padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;margin:30px 0}.business-block>h3{font-size:24px;margin:0 0 22px}.business-block.atelier-building{padding:0}.question-label,.field>label,.selectfield>label,.p-field>label{font:600 17px/1.45 var(--font);color:#132e23;margin:0 0 13px}.question-number{width:32px;height:32px;min-width:32px;font:500 17px var(--font);color:#1a382b;border:1px solid #fff;background:linear-gradient(130deg,#c4d3c7,#f2f5e9);box-shadow:inset 0 1px 1px white,0 2px 5px #4765440a}.question-label{gap:15px}.typechoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0 0 25px}.choice{position:relative;background:var(--glass-fill);border:1px solid var(--glass-line);border-radius:16px;box-shadow:var(--glass-shadow);backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%);padding:19px 20px;color:#17362a;min-height:84px;transition:box-shadow .2s,transform .2s,border-color .2s}.choice:hover{transform:translateY(-2px);border-color:#7fa58b;box-shadow:var(--glass-shadow),0 12px 22px #365b4015}.choice.selected{background:linear-gradient(120deg,#cde7dbad,#f0f3dfb3);border:1px solid #3b8f69;box-shadow:inset 0 0 0 2px #fff,inset 0 0 12px #e0f5e4b0,0 7px 17px #2e644022;color:#123728}.choice .icon{width:30px;height:30px;flex-shrink:0;color:#284f40}.choice .choice-check{display:none}.typechoices .choice{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-height:164px;text-align:left}.choice>span:not(.optical-check){font-size:16px;font-weight:600;color:inherit}.choice .optical-description{display:block;font-size:14px;line-height:1.4;color:#4a6255;font-weight:400;margin:0;max-width:100%}.optical-check{position:absolute;right:14px;top:13px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:14px;color:white;background:#20583e;opacity:0;transform:scale(.8);transition:opacity .18s,transform .18s}.choice.selected .optical-check{opacity:1;transform:scale(1)}.heating-choices{gap:12px}.heating-choices .choice{padding:18px 33px 18px 15px;display:flex;align-items:center;gap:12px;min-height:78px}.heating-choices .optical-check{width:18px;height:18px;top:10px;right:9px;font-size:12px}
.fieldgrid,.p-fields{gap:28px 22px}.inputwrap,.p-input{display:flex;align-items:stretch;background:var(--glass-fill);border:1px solid #b7cec4;border-radius:16px;box-shadow:var(--glass-shadow);backdrop-filter:blur(12px);overflow:hidden;min-height:58px}.inputwrap input,.p-input input,.field input{font-size:24px;font-weight:400;color:#13352a;padding:12px 18px;border:0;background:transparent;box-shadow:none;width:100%;min-width:0;height:auto;border-radius:0}.inputwrap>span,.p-input>span{display:flex;align-items:center;justify-content:center;min-width:65px;padding:10px 15px;margin:7px 0;border-left:1px solid #a9b8ad;background:transparent;color:#304c3c;font-size:14px}.inputwrap:focus-within,.p-input:focus-within{outline:2px solid #468763;outline-offset:3px}.inputwrap input:focus,.p-input input:focus{outline:none}.selectfield select,.p-field select{width:100%;background:linear-gradient(120deg,#ffffffd9,#edf2e5c9);border:1px solid #b7cabb;border-radius:14px;min-height:54px;padding:12px 15px;color:#173c2b;font-size:16px;box-shadow:var(--glass-shadow)}.field-help,.other-heating,.data-explanation{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin:8px 0 0;color:#354f3d}.field-help summary,.other-heating summary{font-size:14px;min-height:36px;padding:8px 0;line-height:1.4;color:#355542}.field-help[open]{padding-bottom:12px;border-bottom:1px solid #cddacc}.field-help>small,.field-help p{font-size:14px;color:#4a6051}.building-meta{gap:15px}.invoice-details{padding:8px 14px;background:#ffffff8a;border:1px solid #d8e0d0;border-radius:14px}.invoice-details summary{font-size:14px}.atelier-origin{font-size:14px}.atelier-building .fieldgrid>.field>.inputwrap{max-width:530px}.atelier-building .fieldgrid>.field>.field-help,.atelier-building .fieldgrid>.selectfield>.field-help{margin-left:0}
.formlayout>.side{position:relative;z-index:0;min-width:0;margin:0;padding:0;background:none;border:0;box-shadow:none;overflow:visible}.sidevisual{margin:0}.campus-stage{margin:0 0 20px;gap:8px;overflow:visible}.campus-stage img{width:135%;max-width:none;height:700px;aspect-ratio:auto;object-fit:cover;object-position:65% 50%;margin:-60px -30% -50px -5%;opacity:.95;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 27%,#000 87%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 27%,#000 87%,transparent)}.side .campus-stage img{mask-image:radial-gradient(ellipse at 62% 46%,#000 38%,#000c 56%,transparent 76%);-webkit-mask-image:radial-gradient(ellipse at 62% 46%,#000 38%,#000c 56%,transparent 76%)}.campus-stage .campus-pin{background:#ffffffba;border:1px solid #fff;box-shadow:inset 0 0 0 1px #d0dece,0 3px 9px #284b2e0d;font-size:12px}.campus-stage .campus-pin.active{background:linear-gradient(130deg,#427c59,#16462f);color:white;box-shadow:inset 0 0 0 1px #ffffffa8}.side h3{font-family:var(--font);font-size:23px}.side p{font-size:14px;line-height:1.6}.sidehint{background:#edf3e6b8;border:1px solid #dde6d5;border-radius:14px;padding:16px}.live-context{font-size:14px}.side-topline{font-size:11px;letter-spacing:1.5px}
.primary,.hero-start,.formfooter #back,.p-footer>button{position:relative;min-height:52px;padding:13px 27px;border-radius:26px;border:1px solid #a5b9a8;box-shadow:inset 0 0 0 2px #ffffffb3,0 6px 16px #25483015;font:500 16px var(--font);transition:transform .2s,box-shadow .2s}.primary,.hero-start{color:#fff;background:linear-gradient(125deg,#407b58,#153f2e);box-shadow:inset 0 0 0 2px #ffffffa8,inset 0 -4px 8px #0a362b44,0 6px 18px #1c523227}.primary:hover,.hero-start:hover{background:linear-gradient(125deg,#4c8964,#1b5139);transform:translateY(-2px)}.formfooter #back,.p-footer>button:not(.primary){color:#204732;background:linear-gradient(125deg,#ffffffbc,#e8efdf91)}.formfooter,.p-footer{margin-top:24px;border-top:1px solid #d1dfcd;padding:20px 0;align-items:center}.formfooter{position:relative}.formfooter::before{content:'';position:absolute;pointer-events:none;z-index:-1;left:-7vw;right:-45vw;top:8px;height:130px;border-top:1px solid #ffffffdd;border-radius:50% 20% 0 0;background:linear-gradient(165deg,#d9e8d64d,#ffffff33);box-shadow:inset 0 2px 3px #fff8;transform:rotate(-2deg)}
.business-setup>h2{font-size:clamp(36px,4.3vw,62px);font-weight:700}.business-profiles b{font-size:clamp(23px,2.4vw,34px);letter-spacing:-.035em;font-weight:650}.business-profiles button,.business-profiles button.selected,.scope-card,.mode-card,.mode-card.personal-card{background:var(--glass-fill);box-shadow:var(--glass-shadow);border-radius:18px;border:1px solid #cad7c8}.business-profiles button.selected{border-color:#3b8f69;background:linear-gradient(130deg,#e0efe3bd,#fffef6b0);box-shadow:var(--glass-shadow),0 8px 22px #32644418}.business-profiles small{font-size:15px}.scope-card h3{font:600 19px/1.3 var(--font);letter-spacing:-.02em}#business-selection legend{font:650 clamp(27px,3vw,40px)/1.2 var(--font);letter-spacing:-.04em}.sector-control{background:#e9f0e3a6;box-shadow:inset 0 1px 1px #fff}.mode-card strong{font-size:34px}.hero h1{font-weight:700;font-size:clamp(42px,4.6vw,68px);letter-spacing:-.05em}.hero .ecosystem img{width:100%;height:100%;object-fit:cover;object-position:right;mask-image:radial-gradient(ellipse at 60% 50%,#000 25%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 60% 50%,#000 25%,transparent 72%)}
.p-wizard,.p-layout,#p-form{background:transparent;box-shadow:none}.p-layout{gap:36px}.p-layout h2{font:700 clamp(32px,3.5vw,48px)/1.13 var(--font);letter-spacing:-.045em}.p-aside{background:linear-gradient(135deg,#eef5e4bf,#ffffff91);border:1px solid #fff;border-radius:20px;box-shadow:var(--glass-shadow)}.p-aside h3{font:600 25px/1.25 var(--font);color:#21462f}.p-field small,.p-field .micro-lesson{font-size:14px;color:#4f6355}.p-steps button{color:#42604c;font-size:14px}.p-steps button[aria-current=step]{color:#17472f}.p-guess,.unknown{font-size:13px;color:#365d43}.p-callout,.p-review>div,.scenario,.p-action,.totalcard,.p-total,.atelier-lab,.atelier-result-first{border:1px solid #d1ddcb;border-radius:16px;box-shadow:inset 0 1px 1px #fff;background:linear-gradient(125deg,#ffffffcc,#eef4e5bd);color:#1b412d}.scenario.selected,.p-action[aria-pressed=true]{background:#dfeddc;border-color:#398454;color:#173e29}.totalcard h3,.p-total h3{color:#163e29}.totalcard p,.p-total p{color:#49624f}
@media(min-width:1300px){.optical-company .formlayout{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr)}}
@media(max-width:1050px){#steps{gap:12px}.step{flex-direction:column;gap:4px}.step>span{font-size:12px}.step:not(:last-child)::after{top:18px}.formlayout{grid-template-columns:minmax(0,1fr) 280px;gap:24px}.typechoices .choice{padding:16px 13px;min-height:175px}.choice>span:not(.optical-check){font-size:15px}.choice .optical-description{font-size:13px}.campus-stage img{height:550px}.heating-choices .choice{gap:6px;padding:16px 22px 16px 10px}.heating-choices .choice>span:not(.optical-check){font-size:13px}.p-layout{gap:24px}}
@media(max-width:760px){header{height:auto;min-height:84px}.brand{font-size:23px}.formlayout,.p-layout{grid-template-columns:1fr}.formlayout>.side{padding:0 16px;overflow:hidden}#stepcontent .stepintro h2{font-size:35px}.typechoices{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.typechoices .choice{min-height:154px}.heating-choices{grid-template-columns:1fr;gap:10px}.heating-choices .choice{min-height:66px;padding:15px 35px 15px 18px}.heating-choices .choice>span:not(.optical-check){font-size:16px}.campus-stage img{width:100%;max-width:100%;height:380px;margin:0;object-position:center}.formfooter::before{left:-6vw;right:-6vw;height:90px}.p-layout h2{font-size:34px}.formfooter,.p-footer{flex-wrap:wrap}.primary{min-width:130px}.inputwrap input,.p-input input{font-size:23px}.business-profiles b{font-size:27px}.business-profiles small{font-size:15px}}
@media(prefers-reduced-motion:reduce){.choice,.primary,.optical-check{transition:none}.choice:hover,.primary:hover{transform:none}}
@media print{.formfooter::before,.sidevisual{display:none}.choice,.business-block,.p-field{backdrop-filter:none;box-shadow:none;background:white}body{background:white}}
