/* ── Group Safety Toggle ────────────────────────────────────────── */
.gs-wrap{box-sizing:border-box;background:#fff;padding:64px 0;font-family:'Alegreya Sans',Arial,sans-serif;color:#1F2A37;container-type:inline-size;container-name:gs}
.gs-wrap *{box-sizing:border-box;min-width:0}
.gs-inner{max-width:1280px;margin:0 auto;padding:0 40px}
.gs-eyebrow{display:block;font-family:'Montserrat',Arial,sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#E8A91E;margin:0 0 12px}
.gs-heading{font-family:'Playfair Display',Georgia,serif;font-weight:800;color:#2B3D52;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.18;margin:0 0 16px}
.gs-heading em{font-style:italic;color:#E8A91E}
.gs-lead{font-size:1.04rem;line-height:1.7;color:#42505e;max-width:900px;margin:0 0 28px}
.gs-toggle{display:inline-flex;background:#EDFAFD;border:1px solid #D9E6EC;border-radius:40px;padding:5px;margin-bottom:28px;gap:4px;flex-wrap:wrap}
.gs-tab,.gs-tab:hover,.gs-tab:focus,.gs-tab:active{-webkit-appearance:none;appearance:none;font-family:'Montserrat',Arial,sans-serif;font-weight:700;font-size:.78rem;border:0;background:none;color:#5a6b78;padding:10px 22px;border-radius:30px;cursor:pointer;transition:background .2s,color .2s;box-shadow:none}
.gs-tab.is-on{background:#FFC43D;color:#2B3D52}
.gs-tab:focus-visible{outline:3px solid #E8A91E;outline-offset:2px}
.gs-stage{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:36px;align-items:start}
.gs-room{background:#EDFAFD;border:1px solid #D9E6EC;border-radius:16px;padding:24px;min-width:0}
.gs-room-label{display:block;font-family:'Montserrat',Arial,sans-serif;font-weight:700;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#7d93a6;margin-bottom:14px}
.gs-room-svg svg{width:100%;height:auto;display:block;overflow:visible}
.gs-walls{fill:#fff;stroke:#cddbe4;stroke-width:2;transition:stroke .4s}
.gs-exit{fill:#FFC43D;transition:fill .4s,opacity .4s}
.gs-seat{fill:#cddbe4;transition:fill .4s}
.gs-seat-clin{fill:#3A506B;transition:fill .4s}
.gs-lines line{stroke:#e0b94a;stroke-width:1.4;stroke-dasharray:3 4;opacity:.55;transition:opacity .4s,stroke .4s}
.gs-room-cap{font-size:.9rem;line-height:1.55;color:#5a6b78;margin:16px 0 0}
.gs-guards{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}
.gs-guard{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid #D9E6EC;border-radius:14px;padding:18px;min-width:0;transition:border-color .3s,opacity .3s}
.gs-gi{flex-shrink:0;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#FFF8E6;color:#E8A91E}
.gs-gtx{min-width:0}
.gs-gtitle{display:block;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1rem;color:#2B3D52;line-height:1.3;margin:0 0 5px;overflow-wrap:anywhere}
.gs-gbody{display:block;font-size:.9rem;line-height:1.5;color:#42505e;overflow-wrap:anywhere}
.gs-stage[data-mode="standard"] .gs-walls{stroke:#dcc4bc}
.gs-stage[data-mode="standard"] .gs-exit{fill:#d8b6ac;opacity:.5}
.gs-stage[data-mode="standard"] .gs-seat{fill:#e2c1b8}
.gs-stage[data-mode="standard"] .gs-seat-clin{fill:#c0573f}
.gs-stage[data-mode="standard"] .gs-lines line{opacity:.12}
.gs-stage[data-mode="standard"] .gs-guard{opacity:.32;border-color:#eee}
.gs-foot{margin-top:26px;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:1.18rem;color:#2B3D52;max-width:760px}
@container gs (max-width:820px){
  .gs-stage{grid-template-columns:1fr;gap:24px}
  .gs-room{max-width:420px}
  .gs-guards{grid-template-columns:1fr}
  .gs-toggle{display:flex;width:100%}.gs-tab{flex:1}
}
@supports not (container-type:inline-size){
  @media(max-width:880px){.gs-stage{grid-template-columns:1fr;gap:24px}.gs-room{max-width:420px}.gs-guards{grid-template-columns:1fr}.gs-toggle{display:flex;width:100%}.gs-tab{flex:1}}
}
@media(max-width:880px){.gs-inner{padding:0 28px}.gs-wrap{padding:52px 0}}
@media(max-width:560px){.gs-inner{padding:0 18px}.gs-wrap{padding:44px 0}}
@media(prefers-reduced-motion:reduce){.gs-walls,.gs-exit,.gs-seat,.gs-seat-clin,.gs-lines line,.gs-guard{transition:none}}
