/* A useful architectural miniature, scoped to the interpreter guide. */
.mg-section{padding:95px 0 75px;background:#f8f7f3;color:#17344c;overflow:clip;scroll-margin-top:90px}
.mg-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:42px}.mg-heading h2{font:500 clamp(45px,4.7vw,68px)/1.04 var(--sans);letter-spacing:-.06em;color:#17344c}.mg-heading h2 em{font-style:normal;color:#075c92}.mg-heading>p{font-size:17px;line-height:1.75;color:#4c6577;max-width:34ch;margin-bottom:5px}
.mg-scenarios{display:flex;gap:8px;border-bottom:1px solid #cbd5d9;padding-bottom:19px;margin-bottom:0}.mg-scenarios>button{display:flex;align-items:center;gap:16px;padding:13px 24px;min-height:51px;font:500 15px var(--sans);border:1px solid #b6c7cc;border-radius:30px;background:transparent;color:#34586e;cursor:pointer}.mg-scenarios>button span{font-size:11px;opacity:.85}.mg-scenarios>button[aria-pressed=true]{color:#fff;background:#104d70;border-color:#104d70}.mg-scenarios>button:hover:not([aria-pressed=true]){background:#e8eef0}
.mg-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:35px;align-items:center}.mg-visual{min-width:0;margin:0}.mg-stage{height:540px;position:relative;touch-action:pan-y;isolation:isolate;cursor:grab}.mg-stage:active{cursor:grabbing}.mg-stage canvas{display:block;width:100%;height:100%;opacity:0;touch-action:pan-y}.mg-section[data-ready=true] canvas{opacity:1}
.mg-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;color:#496677;pointer-events:none}.mg-fallback>p{font-size:35px;letter-spacing:-.045em;font-weight:500;color:#1d516e}.mg-fallback>span{font-size:15px;line-height:1.8}.mg-fallback img{width:100%;height:100%;object-fit:contain}.mg-section[data-ready=true] .mg-fallback{visibility:hidden}
.mg-labels{position:absolute;inset:0;pointer-events:none;visibility:hidden}.mg-section[data-ready=true] .mg-labels{visibility:visible}.mg-labels>span{position:absolute;left:0;top:0;transform:translate(-50%,-100%);font-size:11px;font-weight:600;color:#214962;background:#fffffff2;border:1px solid #c3d0d6;border-radius:20px;white-space:nowrap;padding:5px 9px;box-shadow:0 4px 15px #1937480a}.mg-labels>[data-person-label=interpreter]{background:#075c92;border-color:#075c92;color:#fff}
.mg-stage-note{position:absolute;left:0;bottom:14px;font-size:11px;letter-spacing:.035em;color:#536b7a;pointer-events:none}
.mg-camera{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding-block:5px 0}.mg-camera>button{display:flex;align-items:center;gap:7px;min-height:44px;padding:9px 14px;border:1px solid #b5c8d2;background:#fff;border-radius:24px;color:#315972;font:500 13px var(--sans);cursor:pointer}.mg-camera>button[aria-pressed=true]{background:#dcecf4;border-color:#6594b0;color:#164b6b}.mg-camera>button:hover{background:#e7eff3}
.mg-legend{display:flex;justify-content:center;gap:22px;margin-top:18px;color:#496477;font-size:12px;line-height:1.6}.mg-legend>span{display:flex;align-items:center;gap:8px}.mg-legend i{display:inline-block;width:9px;height:9px;border-radius:50%}.mg-dot-worker{background:#254254}.mg-dot-citizen{background:#a66d46}.mg-dot-interpreter{background:#087bba}
.mg-copy{padding-top:15px;min-height:415px}.mg-copy .mg-step{font-size:11px;letter-spacing:.1em;color:#4c6d81;font-weight:600;margin-bottom:22px}.mg-copy h3{font:500 36px/1.1 var(--sans);letter-spacing:-.05em;color:#153b54;margin-bottom:22px}.mg-description{font-size:16px;line-height:1.8;color:#426174}.mg-copy ul{list-style:none;padding:0;margin:25px 0 0;display:grid;gap:15px}.mg-copy li{font-size:14px;line-height:1.65;color:#416073;padding-left:19px;position:relative}.mg-copy li::before{content:'+';position:absolute;left:0;top:0;color:#1b648c;font-weight:600}.mg-line-key{border-top:1px solid #c9d5dc;padding-top:18px;font-size:12px;line-height:1.75;color:#506c7d;margin-top:24px}
.mg-status{font-size:13px;color:#486a7d;margin-top:18px}.mg-status:empty{display:none}.mg-foot{border-top:1px solid #c9d5dc;padding-top:30px;margin-top:35px;display:flex;justify-content:space-between;align-items:center;gap:40px}.mg-foot>p{max-width:65ch;color:#456376;font-size:14px;line-height:1.75}.mg-foot>a{flex-shrink:0}
.mg-sources{margin-top:27px;color:#476779}.mg-sources>summary{display:inline-block;min-height:44px;padding:10px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.mg-sources>summary::before{content:'+ ';font-size:16px}.mg-sources[open]>summary::before{content:'− '}.mg-sources>div{padding:10px 0 0;max-width:85ch;font-size:14px;line-height:1.8}.mg-sources p{margin-bottom:13px}.mg-sources ul{padding-left:18px;display:grid;gap:10px}.mg-sources a{color:#075b8f;text-decoration:underline;text-underline-offset:3px}
.mg-section [hidden]{display:none!important}.mg-section :is(a,button,summary):focus-visible{outline:3px solid #075b9c;outline-offset:5px}
@media(max-width:1100px){.mg-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px}.mg-stage{height:490px}.mg-copy h3{font-size:32px}.mg-camera>button{font-size:12px;padding-inline:11px}}
@media(max-width:840px){.mg-section{padding-block:65px}.mg-heading{flex-direction:column;align-items:start;gap:23px}.mg-heading>p{max-width:42ch}.mg-layout{grid-template-columns:1fr;gap:30px}.mg-stage{height:520px}.mg-copy{min-height:0;display:grid;grid-template-columns:1fr 1.1fr;gap:0 35px}.mg-copy .mg-step,.mg-copy h3{grid-column:1}.mg-copy .mg-description{grid-column:1}.mg-copy ul{grid-column:2;grid-row:1/4;margin:0;align-content:start}.mg-copy .mg-line-key{grid-column:1/-1}.mg-foot{align-items:start;flex-direction:column;gap:14px}}
@media(max-width:580px){.mg-heading{margin-bottom:28px}.mg-heading h2{font-size:47px}.mg-heading>p{font-size:16px}.mg-scenarios{gap:6px;flex-wrap:wrap;padding-bottom:20px}.mg-scenarios>button{font-size:13px;padding:10px 14px;min-height:46px;gap:10px}.mg-scenarios>button span{font-size:10px}.mg-stage{height:365px;margin-inline:-12px}.mg-stage-note{left:12px;font-size:10px}.mg-labels>span{font-size:10px;padding:4px 7px}.mg-camera{gap:7px}.mg-camera>button{font-size:12px;padding-inline:12px}.mg-legend{gap:14px;font-size:11px}.mg-copy{display:block;padding-top:2px}.mg-copy .mg-step{margin-bottom:13px}.mg-copy h3{font-size:35px;margin-bottom:16px}.mg-description{font-size:15px}.mg-copy ul{margin-top:20px;gap:13px}.mg-foot{margin-top:25px;padding-top:24px}.mg-foot>p{font-size:13px}.mg-heading h2 br{display:none}}
@media(prefers-reduced-motion:reduce){.mg-section *{scroll-behavior:auto}}
