/* A single architectural object, with controls outside the 3D view. */
.living-site{background:#09131b;color:#edf4f8;padding:54px 0 42px;--living-line:#3e5462}
.living-site svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.living-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:30px}
.living-heading .eyebrow{font:10px/1.7 var(--font-mono);margin-bottom:24px}
.living-heading h2{font-size:clamp(36px,3.8vw,68px);line-height:1.08}
.living-heading h2 span{color:#c0d8e6}
.living-heading>div{min-width:0}
.living-hint{flex:0 0 360px;padding:20px 22px;background:linear-gradient(120deg,#1b2c38,#101e28);border:1px solid #415563;border-left:3px solid #ec9b6c;border-radius:6px;box-shadow:0 12px 32px #0002}
.living-hint-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px}
.living-hint-icon{display:grid;place-items:center;flex:0 0 36px;height:36px;border:1px solid #ec9b6c55;border-radius:6px;background:#ec9b6c12;color:#f0a879}
.living-hint h3{font:500 15px/1.4 var(--font-body);margin:0;color:#f0f5f8}
.living-hint ol{list-style:none;padding:0;margin:0;display:grid;gap:15px}
.living-hint li{display:flex;align-items:baseline;gap:12px}
.living-hint-step{flex:0 0 24px;font:11px/1.5 var(--font-mono);color:#f0a879}
.living-hint strong{display:block;font-size:13px;line-height:1.5;font-weight:600;color:#e0edf5}
.living-hint p{font-size:12px;line-height:1.6;color:#acbfcd;margin:4px 0 0}
.living-scene-choice{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}

.living-scene-choice>span{font-size:11px;color:#c4d5df;margin-left:auto}
.living-scene-choice>span:empty{display:none}
.living-stage{height:clamp(580px,45vw,790px);position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 72%,#172630,#08131c 64%,#050c13);border:1px solid #3e546277;overflow:hidden}
.living-stage-top,.living-stage-bottom{position:absolute;left:28px;right:28px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}
.living-stage-top{top:24px;font:10px/1.7 var(--font-mono);letter-spacing:.07em;color:#adc2cf}
.living-stage-top small{display:block;font:12px/1.8 var(--font-body);letter-spacing:0;color:#91a9b9;margin-top:4px}
.living-stage-top b{font-weight:400}
.living-stage-top button{pointer-events:auto;gap:9px;flex-shrink:0}
.living-stage-bottom{bottom:20px;font:9px/1.7 var(--font-mono);letter-spacing:.07em;color:#8ba6b8}
.living-stage-bottom>span:last-child{font-family:var(--font-body);font-size:11px;letter-spacing:0}
.living-canvas,.living-poster,.living-pins{position:absolute;inset:0;width:100%;height:100%}
.living-canvas{touch-action:pan-y pinch-zoom}
.living-canvas canvas{display:block;width:100%;height:100%;outline:none;cursor:grab;touch-action:pan-y pinch-zoom}
.living-canvas canvas:active{cursor:grabbing}
.living-poster{pointer-events:none}
.living-poster img{width:100%;height:100%;object-fit:contain}
.living-pins{pointer-events:none}
.living-pin{position:absolute;left:0;top:0;transform:translate(-50%,-50%);pointer-events:auto;min-width:44px;min-height:44px;border:1px solid #98b6c9;border-radius:50%;display:grid;place-items:center;background:#102330e8;color:#e4f2fa;font:12px/1 var(--font-mono);box-shadow:0 4px 16px #0006}
.living-pin[data-lit=true]{border-color:#76ecae;box-shadow:0 0 0 4px #5cdb9c18,0 4px 16px #0006}
.living-pin[data-selected=true]{border-color:#ed986a;color:#fff;box-shadow:0 0 0 5px #ed986a22}
.living-pin strong{display:none;position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#0a1923e8;border:1px solid #617c8e;padding:7px 10px;font:11px/1.4 var(--font-body);white-space:nowrap;pointer-events:none}
.living-pin[data-selected=true] strong{display:block}
.living-start{position:absolute;left:50%;bottom:50px;transform:translateX(-50%);z-index:4;display:flex;align-items:center;flex-direction:column;gap:10px;max-width:calc(100% - 40px);text-align:center}
.living-start button{justify-content:center;gap:18px;white-space:nowrap}
.living-start p{font-size:11px;color:#b3cad8;padding:4px 10px;background:#08141bb3}
.living-site[data-living-ready=true] .living-start{display:none}
.living-console{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;padding-top:22px}
.living-zone-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.living-zone-list button{gap:17px;min-height:78px}
.living-zone-list small{display:block;font-size:11px;color:#8da6b7;margin-top:2px}
.living-zone-list b{font-weight:400}
.living-zone-index{font:15px/1 var(--font-mono);color:#92aebf}
.living-zone-list i{width:7px;height:7px;background:#627786;border-radius:50%;margin-left:auto;flex-shrink:0}
.living-zone-list button[aria-pressed=true] i{background:#76ecae;box-shadow:0 0 12px #76ecae66}
.living-zone-list button[aria-pressed=true] small{color:#a0ddc0}
.living-main-power{display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:220px;gap:7px}
.living-main-power button{gap:10px}
.living-main-power p{font-size:10px;color:#99b1c2}
.living-aim{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(150px,1fr) minmax(150px,1fr) auto;gap:24px;align-items:center;min-width:0;border:1px solid var(--living-line);margin:26px 0 0;padding:17px 20px 20px;background:#0b1923}
.living-aim legend{padding:0 9px;font-size:12px;letter-spacing:.03em;color:#c7dce9}
.living-aim .range-heading,.living-mast-choice>label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#b9cedc;margin-bottom:7px}
.living-mast-choice{min-width:0;--field-surface:#122530;--field-ink:#e4f0f7;--field-border:#688493}
.living-mast-choice p{font-size:10px;line-height:1.6;color:#8eabbc;margin-top:8px;max-width:300px}
.living-aim-axis{min-width:0;--range-accent:#c3deeb}
.living-aim-axis output{font:12px/1.5 var(--font-mono);color:#e8f3fa;min-width:45px;text-align:right}
.living-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px 50px;border-top:1px solid var(--living-line);margin-top:24px;padding-top:20px;min-height:111px;align-items:start}
.living-zone-copy>span{display:block;font:10px/1.6 var(--font-mono);letter-spacing:.05em;color:#9fb7c8;margin-bottom:7px}
.living-zone-copy p{font-size:14px;line-height:1.7;color:#c0d1dd;max-width:620px}
.living-story{margin-top:10px}
.living-product-host{grid-column:2;grid-row:1/3;min-width:0}
.living-product{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:22px;border:1px solid #3e5667;background:radial-gradient(ellipse at 25% 50%,#1b303e,#0e1e29 75%);padding:18px}
.living-product-image{display:block;min-width:0;min-height:130px;padding:0;cursor:zoom-in}
.living-product-image img{width:100%;height:150px;object-fit:contain}
.living-product-kicker{font:9px/1.6 var(--font-mono);letter-spacing:.03em;color:#9fb8c9;margin-bottom:8px}
.living-product h3{font-size:25px;font-weight:400;line-height:1.25;letter-spacing:-.035em}
.living-product-spec{font-size:13px;color:#bdd3e1;margin-top:7px}
.living-product a{margin-top:9px}
.living-product small{display:block;font-size:10px;color:#93aaba;line-height:1.6;margin-top:12px}
.living-view-tools{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto var(--control-icon-size);gap:0 28px;align-items:center;--range-accent:#b6d9ed}
.living-view-tools .range-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#a8becd}
.living-view-tools .range-control{grid-column:1}
.living-view-tools output{font:12px/1.5 var(--font-mono);color:#e4f0f7}
.living-zoom{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:12px}
.living-zoom>span{min-width:36px;text-align:center;font:11px/1 var(--font-mono);color:#a5bfd0}
.living-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--living-line);padding-top:21px;margin-top:20px}
.living-footer p{text-align:right;font-size:11px;line-height:1.7;color:#91aabb}
@media(max-width:1100px){.living-aim{grid-template-columns:1fr 1fr;gap:16px 24px}.living-mast-choice{grid-column:1/-1}.living-mast-choice p{max-width:none}.living-aim>button{grid-column:1/-1;justify-self:start}.living-console{grid-template-columns:1fr;gap:16px}.living-main-power{flex-direction:row;justify-content:space-between}.living-detail{gap:25px;grid-template-columns:1fr 1fr}.living-product{grid-template-columns:120px minmax(0,1fr);gap:13px;padding:15px}.living-product h3{font-size:21px}.living-product-image img{height:135px}.living-zone-list button{gap:12px}.living-heading{gap:35px}.living-stage{height:590px}}
@media(max-width:760px){
 .living-aim{grid-template-columns:1fr 1fr;gap:14px;padding:14px;margin-top:21px}.living-mast-choice,.living-aim>button{grid-column:1/-1}.living-aim>button{justify-self:stretch}.living-aim .range-heading,.living-mast-choice>label{font-size:10px;gap:6px}.living-aim-axis output{font-size:11px;min-width:32px}.living-pin[data-selected=false]{display:none}
 .living-site{padding:34px 0 28px}.living-heading{align-items:stretch;flex-direction:column;gap:20px;margin-bottom:23px}.living-heading .eyebrow{font-size:9px;margin-bottom:15px}.living-heading h2{font-size:clamp(33px,7.4vw,48px)}.living-hint{flex-basis:auto;padding:17px 18px}.living-hint-heading{margin-bottom:14px}.living-hint ol{gap:12px}
 .living-stage{height:420px;margin-inline:-10px}.living-stage-top,.living-stage-bottom{left:14px;right:14px}.living-stage-top{top:15px;font-size:8px;letter-spacing:.02em;align-items:flex-start}.living-stage-top small{font-size:10px}.living-stage-bottom{font-size:8px;bottom:12px}.living-stage-bottom>span:last-child{font-size:9px;max-width:135px;text-align:right}.living-start{bottom:40px}.living-start button{gap:13px}.living-start p{font-size:10px}.living-pin{min-width:44px;min-height:44px;font-size:10px}.living-pin strong{font-size:10px;padding:5px 7px}
 .living-console{padding-top:14px;gap:14px}.living-zone-list{gap:6px}.living-zone-list button{gap:9px;min-height:88px;position:relative;align-items:flex-start;flex-direction:column}.living-zone-index{font-size:11px}.living-zone-list small{font-size:9px}.living-zone-list i{position:absolute;top:14px;right:10px;width:5px;height:5px}.living-main-power{gap:12px;flex-wrap:wrap}.living-main-power p{font-size:9px;max-width:110px;text-align:right}
 .living-detail{grid-template-columns:1fr;gap:20px;padding-top:18px;margin-top:20px}.living-zone-copy p{font-size:12px;min-height:61px}.living-zone-copy>span{font-size:9px}.living-product-host{grid-column:1;grid-row:2}.living-product{grid-template-columns:130px minmax(0,1fr);gap:14px;padding:14px}.living-product-image img{height:130px}.living-product-kicker{font-size:8px}.living-product h3{font-size:21px}.living-product-spec{font-size:12px}.living-product small{font-size:9px}.living-view-tools{grid-column:1;grid-row:3;grid-template-columns:minmax(0,1fr) auto;gap:0 18px}.living-zoom{gap:7px}.living-zoom>span{font-size:10px;min-width:30px}.living-footer{flex-direction:column;align-items:stretch;gap:14px;margin-top:20px;padding-top:16px}.living-footer p{text-align:left;font-size:10px}
 .living-scene-choice{gap:8px;margin-bottom:14px}.living-scene-choice>span{margin-left:0;flex-basis:100%;font-size:10px}
}
@media(max-width:360px){.living-aim{grid-template-columns:1fr}.living-stage{height:390px}.living-stage-top small{max-width:150px}.living-heading h2{font-size:32px}.living-zone-list button{min-height:92px}.living-zoom{gap:5px}.living-product{grid-template-columns:105px minmax(0,1fr);gap:12px;padding:12px}.living-product h3{font-size:19px}.living-product a svg{width:18px}}
