/* ===========================================================
   Minnesota Vikings — Stadium Guide  (/stadium/)
   All classes are prefixed sg-. Body class: .page-stadiumguide
   =========================================================== */

.page-stadiumguide{
  --sg-paper:#F4F0E8;
  --sg-paper-2:#FFFDF8;
  --sg-purple:#4F2683;
  --sg-plum:#26143D;
  --sg-gold:#FFC62F;
  --sg-gold-deep:#E8A800;
  --sg-blue:#2B72B9;        /* fills and rules only */
  --sg-blue-ink:#1D5288;    /* text weight of the transit blue */
  --sg-grey:#C7C4BF;        /* fills and rules only */
  --sg-ink:#202024;
  --sg-ink-2:#55534E;
  --sg-line:#202024;

  /* type roles */
  --sg-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --sg-serif:Georgia,"Times New Roman",serif;

  background:var(--sg-paper);
  color:var(--sg-ink);
}

/* ---- BANNER PHOTO SWAP -------------------------------------------------
   The architectural SVG below is the default. To use a real photograph,
   change EXACTLY this one line to:
       --sg-banner-photo:url("/assets/img/stadium-banner.webp");
   The photo layer then paints opaquely over the SVG treatment.
   (Update the <title> inside .sg-banner-art to describe the photo.)
   --------------------------------------------------------------------- */
.page-stadiumguide .sg-banner{--sg-banner-photo:none}

.page-stadiumguide :focus-visible{outline:3px solid var(--sg-ink);outline-offset:3px;border-radius:0}
.page-stadiumguide .ticker :focus-visible,
.page-stadiumguide .site-head :focus-visible,
.page-stadiumguide .site-foot :focus-visible,
.page-stadiumguide .sg-sec-dir :focus-visible,
.page-stadiumguide .sg-dock :focus-visible{outline-color:var(--sg-gold)}

.sg-doc{display:block;position:relative}

/* ---------- shared type ---------- */
.sg-doc h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(21px,2.5vw,33px);line-height:1.08;letter-spacing:.012em;color:var(--sg-ink);
}
.sg-doc h3{
  font-family:var(--display);font-weight:600;text-transform:uppercase;
  font-size:clamp(15px,1.4vw,19px);line-height:1.16;letter-spacing:.05em;color:var(--sg-ink);
}
.sg-doc h4{
  font-family:var(--display);font-weight:600;text-transform:uppercase;
  font-size:14px;line-height:1.2;letter-spacing:.09em;color:var(--sg-ink);
}
.sg-doc p{font-family:var(--body);font-size:16px;line-height:1.62;color:var(--sg-ink)}
.sg-doc a{color:var(--sg-purple);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sg-doc a:hover{text-decoration-thickness:2px}

.sg-list{font-family:var(--body);font-size:16px;line-height:1.6;margin:10px 0 0;padding:0;list-style:none}
.sg-list li{position:relative;padding-left:22px;margin-top:7px;color:var(--sg-ink)}
.sg-list li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;background:var(--sg-ink)}
.sg-list-yes li::before{background:var(--sg-purple);height:3px}
.sg-list-no li{padding-left:24px}
.sg-list-no li::before{content:"\2715";position:absolute;left:0;top:0;width:auto;height:auto;
  background:none;font-family:var(--body);font-weight:700;font-size:15px;line-height:1.6;color:var(--sg-ink)}
.sg-list-check li::before{width:12px;height:6px;top:.42em;background:none;
  border-left:2.5px solid var(--sg-purple);border-bottom:2.5px solid var(--sg-purple);transform:rotate(-45deg)}

.sg-note{font-size:14.5px !important;color:var(--sg-ink-2) !important;margin-top:12px}
.sg-note a{color:var(--sg-purple)}
.sg-intro{font-size:17.5px !important;line-height:1.6;max-width:74ch;margin-top:12px}
.sg-warn{margin-top:10px;font-size:14.5px !important;color:var(--sg-ink-2) !important;
  border-left:4px solid var(--sg-gold);padding-left:12px}
.sg-callout{margin-top:16px;border:1.5px solid var(--sg-line);border-left-width:8px;
  border-left-color:var(--sg-gold);padding:12px 14px;background:var(--sg-paper-2);font-size:16px}

.sg-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:44px;padding:11px 20px;border:1.5px solid var(--sg-line);
  background:var(--sg-gold);color:#231800 !important;text-decoration:none !important;
  font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.09em;text-transform:uppercase;
}
.sg-btn:hover{background:var(--sg-gold-deep)}
.sg-btn-ghost{background:var(--sg-paper-2);color:var(--sg-ink) !important}
.sg-btn-ghost:hover{background:#fff}
.sg-ar{width:16px;height:16px;flex:none;display:block}

/* ---------- breadcrumb ---------- */
.sg-crumbs{border-bottom:1.5px solid var(--sg-line);background:var(--sg-paper)}
.sg-crumbs > .wrap{padding-top:4px;padding-bottom:4px}
.sg-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;
  font-family:var(--display);font-weight:600;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase}
.sg-crumbs li{min-width:0;color:var(--sg-ink-2)}
.sg-crumbs li + li::before{content:"/";margin-right:8px;color:var(--sg-grey)}
.sg-crumbs a{color:var(--sg-purple);text-decoration:none;
  display:inline-flex;align-items:center;min-height:44px}
.sg-crumbs a:hover{text-decoration:underline}

/* ===========================================================
   1. OPENING SCREEN
   =========================================================== */
.sg-open{position:relative;background:var(--sg-paper)}

.sg-banner{position:relative;width:100%;height:clamp(150px,29vw,420px);overflow:hidden;
  border-bottom:2px solid var(--sg-line);background:var(--sg-plum)}
.sg-banner-art{position:absolute;inset:0;width:100%;height:100%;display:block}
.sg-banner-photo{position:absolute;inset:0;
  background-image:var(--sg-banner-photo);background-size:cover;background-position:50% 45%;
  background-repeat:no-repeat}

.sg-open-in{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);
  gap:clamp(24px,3vw,52px);align-items:center;padding-top:clamp(28px,4vw,54px);padding-bottom:clamp(20px,3vw,34px)}
.sg-open-in > *{min-width:0}

.sg-dial{position:relative;width:100%;max-width:640px;aspect-ratio:1/1;margin:0 auto}
.sg-dial-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.sg-dial-face{fill:#fff;stroke:var(--sg-line);stroke-width:2}
.sg-dial-rule{fill:none;stroke:var(--sg-grey);stroke-width:1.5}
.sg-dial-ticks{stroke:var(--sg-line);stroke-width:3.4;fill:none}
.sg-dial-min{stroke:var(--sg-grey);stroke-width:2;fill:none}
.sg-hand{transform-box:view-box;transform-origin:200px 200px;
  transform:rotate(var(--sg-a,0deg));transition:transform 560ms cubic-bezier(.2,.75,.2,1)}
.sg-hand-arm{stroke:var(--sg-purple);stroke-width:5;stroke-linecap:square;fill:none}
.sg-hand-tail{stroke:var(--sg-gold-deep);stroke-width:5;stroke-linecap:square;fill:none}
.sg-hand-tip{fill:var(--sg-purple);stroke:var(--sg-line);stroke-width:1.5}

.sg-dial-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:62%;text-align:center;min-width:0;
  background:#fff;border:1.5px solid var(--sg-line);padding:18px 16px}
.sg-dial-core h1{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(17px,2.25vw,30px);line-height:1.04;letter-spacing:.012em;color:var(--sg-ink);
}
.sg-dial-addr{margin-top:10px !important;font-family:var(--body);font-size:12.5px !important;
  line-height:1.5 !important;letter-spacing:.07em;text-transform:uppercase;color:var(--sg-ink-2) !important}

.sg-pts{position:absolute;inset:0;margin:0;padding:0;list-style:none}
.sg-pt{position:absolute;transform:translate(-50%,-50%)}
.sg-pt a{display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:104px;min-height:44px;padding:6px 8px;text-align:center;
  background:var(--sg-paper);border:1.5px solid var(--sg-line);text-decoration:none !important;
  transition:background 180ms,color 180ms}
.sg-pt b{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.07em;
  text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--sg-ink)}
.sg-pt span{font-family:var(--body);font-weight:500;font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--sg-ink-2);line-height:1.25;margin-top:2px}
.sg-pt a:hover{background:var(--sg-gold)}
.sg-pt a[aria-current="true"]{background:var(--sg-purple);border-color:var(--sg-plum)}
.sg-pt a[aria-current="true"] b{color:#fff}
.sg-pt a[aria-current="true"] span{color:#fff}
.sg-pt-1{left:50%;top:6%}
.sg-pt-2{left:88.1%;top:28%}
.sg-pt-3{left:88.1%;top:72%}
.sg-pt-4{left:50%;top:94%}
.sg-pt-5{left:11.9%;top:72%}
.sg-pt-6{left:11.9%;top:28%}

.sg-lede{min-width:0}
.sg-kicker{font-family:var(--display) !important;font-weight:600;font-size:11.5px !important;
  letter-spacing:.16em;text-transform:uppercase;color:var(--sg-ink-2) !important;
  border-bottom:1.5px solid var(--sg-line);padding-bottom:8px;margin-bottom:14px}
.sg-lede-1{font-size:19px !important;line-height:1.42 !important;font-weight:600;margin-bottom:12px !important}
.sg-lede p + p{margin-top:11px}
.sg-lede-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px !important}

.sg-facts-wrap{padding-top:0;padding-bottom:clamp(28px,4vw,52px)}
.sg-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2)}
.sg-facts > div{min-width:0;padding:12px 14px;border-right:1.5px solid var(--sg-line)}
.sg-facts > div:last-child{border-right:0}
.sg-facts dt{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--sg-ink-2)}
.sg-facts dd{margin:5px 0 0;font-family:var(--body);font-size:15px;line-height:1.4;color:var(--sg-ink)}
.sg-facts a{color:var(--sg-purple);display:inline-flex;align-items:center;min-height:44px}

/* ---------- section frame ---------- */
.sg-sec{border-top:1.5px solid var(--sg-line);background:var(--sg-paper)}
.sg-sec > .wrap{padding-top:clamp(34px,4.4vw,68px);padding-bottom:clamp(34px,4.4vw,68px)}
.sg-stamp{margin-bottom:14px !important}
.sg-stamp span{display:inline-block;font-family:var(--display);font-weight:700;font-size:11.5px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--sg-ink);
  border:1.5px solid var(--sg-line);border-left-width:8px;border-left-color:var(--sg-gold);
  padding:7px 14px;background:var(--sg-paper-2)}

/* ===========================================================
   2. PARKING RECEIPT
   =========================================================== */
.sg-receipt{max-width:780px;margin:0 auto;background:var(--sg-paper-2);
  border:1.5px solid var(--sg-line);box-shadow:7px 7px 0 rgba(32,32,36,.13);
  font-family:var(--sg-mono);transform-origin:top center;
  transition:transform 620ms cubic-bezier(.2,.75,.2,1),opacity 500ms linear}
.sg-js .sg-receipt.sg-folded{transform:perspective(1100px) rotateX(-78deg);opacity:0}
.sg-receipt p,.sg-receipt li,.sg-receipt h3{font-family:var(--sg-mono)}
.sg-r-head{padding:22px 26px 16px;text-align:center}
.sg-r-head h2{font-family:var(--display);font-size:clamp(19px,2.1vw,28px) !important}
.sg-r-addr{margin-top:12px !important;font-size:12.5px !important;line-height:1.7 !important;
  letter-spacing:.09em;color:var(--sg-ink-2) !important}
.sg-r-rule{height:0;border-top:1.5px dashed var(--sg-line);margin:0 18px}
.sg-r-body{padding:18px 26px}
.sg-r-body h3{margin-bottom:8px}
.sg-r-body p + p{margin-top:9px}
.sg-r-line{display:grid;grid-template-columns:minmax(0,168px) minmax(0,1fr);gap:16px;
  padding:9px 0;border-bottom:1px dotted var(--sg-grey)}
.sg-r-line:last-child{border-bottom:0}
.sg-r-k{min-width:0;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--sg-ink-2);padding-top:3px}
.sg-r-v{min-width:0;font-size:14.5px;line-height:1.6;color:var(--sg-ink)}
.sg-r-items{padding:18px 26px}
.sg-r-lines{list-style:none;margin:12px 0 0;padding:0}
.sg-r-lines li{display:flex;align-items:baseline;gap:8px;padding:7px 0;font-size:14.5px;min-width:0}
.sg-r-item{white-space:nowrap}
.sg-r-dots{flex:1 1 auto;min-width:12px;border-bottom:1.5px dotted var(--sg-grey);transform:translateY(-3px)}
.sg-r-qty{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--sg-ink-2);white-space:nowrap}
.sg-r-foot{padding:18px 26px 26px}
.sg-r-total{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;
  font-size:13px !important;letter-spacing:.1em;text-transform:uppercase;font-weight:700;
  border-top:3px double var(--sg-line);border-bottom:3px double var(--sg-line);padding:12px 0}
.sg-r-note{margin-top:14px !important;font-size:13.5px !important;line-height:1.65 !important;
  color:var(--sg-ink-2) !important}
.sg-r-tear{height:16px;
  background:
    radial-gradient(circle at 8px 0, transparent 0 7px, var(--sg-paper-2) 7.5px) repeat-x;
  background-size:16px 16px;
  border-top:1.5px dashed var(--sg-line);margin-top:-1px}

/* ===========================================================
   3. TRANSIT TICKETS
   =========================================================== */
.sg-tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}
.sg-tickets > *{min-width:0}
.sg-tk{display:flex;min-width:0;border:1.5px solid var(--sg-line);background:var(--sg-paper-2);
  box-shadow:5px 5px 0 rgba(32,32,36,.1)}
.sg-tk-stub{flex:0 0 40px;min-width:0;display:flex;align-items:center;justify-content:center;
  border-right:1.5px dashed var(--sg-line);background:var(--sg-grey)}
.sg-tk-stub span{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.28em;
  text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);color:var(--sg-ink)}
.sg-tk-blue .sg-tk-stub{background:var(--sg-blue)}
.sg-tk-blue .sg-tk-stub span{color:#fff}
.sg-tk-green .sg-tk-stub{background:#1F6B4A}
.sg-tk-green .sg-tk-stub span{color:#fff}
.sg-tk-bus .sg-tk-stub{background:var(--sg-plum)}
.sg-tk-bus .sg-tk-stub span{color:#fff}
.sg-tk-main{flex:1 1 auto;min-width:0;padding:18px 20px;font-family:var(--sg-mono)}
.sg-tk-main p{font-family:var(--sg-mono);font-size:14px !important;line-height:1.6 !important}
.sg-tk-main p + p{margin-top:9px}
.sg-tk-route{font-family:var(--display) !important;font-weight:700;font-size:12px !important;
  letter-spacing:.2em;text-transform:uppercase;color:var(--sg-ink-2) !important;margin-bottom:6px !important}
.sg-tk-blue .sg-tk-route{color:var(--sg-blue-ink) !important}
.sg-tk-green .sg-tk-route{color:#175236 !important}
.sg-tk h3{margin-bottom:10px;font-size:17px}
.sg-tk-meta{margin-top:12px !important;border-top:1.5px solid var(--sg-line);padding-top:10px;
  font-size:13px !important;color:var(--sg-ink) !important}
.sg-tk-meta span{display:block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--sg-ink-2)}
.sg-tk-lines{display:flex;flex-direction:column;gap:5px;margin-top:14px}
.sg-tk-lines i{display:block;height:2px;background:var(--sg-grey);width:100%}
.sg-tk-lines i:nth-child(n+4){display:none}
.sg-tk-lines i:nth-child(2){width:74%}
.sg-tk-lines i:nth-child(3){width:46%}

.sg-rev{margin-top:14px;border-top:1.5px dashed var(--sg-line);padding-top:10px}
.sg-rev > summary{display:flex;align-items:center;justify-content:space-between;gap:10px;
  min-height:44px;padding:8px 10px;cursor:pointer;list-style:none;
  border:1.5px solid var(--sg-line);background:var(--sg-paper)}
.sg-rev > summary::-webkit-details-marker{display:none}
.sg-rev-lab{font-family:var(--display);font-weight:600;font-size:11.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--sg-ink)}
.sg-rev-hint{font-family:var(--body);font-size:12px;color:var(--sg-ink-2);text-align:right;min-width:0}
.sg-rev[open] > summary{background:var(--sg-gold)}
.sg-rev[open] .sg-rev-hint{color:#231800}
.sg-rev-in{padding-top:12px}
.sg-rev-in h4{margin-bottom:8px}
.sg-rev-in .sg-list li{font-family:var(--sg-mono);font-size:13.5px}

/* ===========================================================
   4. PLAZA MAP
   =========================================================== */
.sg-plaza{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);
  gap:clamp(20px,2.6vw,40px);margin-top:26px;align-items:start}
.sg-plaza > *{min-width:0}
.sg-plaza-map{min-width:0}
.sg-plaza-svg{display:block;width:100%;height:auto;max-width:660px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2)}
.sg-map-vt{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.14em;
  fill:#fff;text-anchor:middle}
.sg-pinmark path{fill:var(--sg-ink)}
.sg-pinmark circle{fill:var(--sg-purple);stroke:var(--sg-ink);stroke-width:2}
.sg-pinmark text{font-family:var(--display);font-weight:700;font-size:16px;fill:#fff;text-anchor:middle}
.sg-pinmark.is-on circle{fill:var(--sg-gold)}
.sg-pinmark.is-on text{fill:#231800}
.sg-pinhit{fill:transparent;stroke:none}
.sg-pinlink{cursor:pointer}
.sg-pinlink:hover .sg-pinmark circle{fill:var(--sg-gold)}
.sg-pinlink:hover .sg-pinmark text{fill:#231800}
.sg-pinlink:focus-visible{outline:3px solid var(--sg-ink);outline-offset:2px}

.sg-plaza-pins{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding:0;list-style:none}
.sg-plaza-pins li{min-width:0}
.sg-pin{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2);text-decoration:none !important;
  font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.07em;
  text-transform:uppercase;color:var(--sg-ink) !important}
.sg-pin b{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;
  background:var(--sg-purple);color:#fff;font-size:12px}
.sg-pin:hover{background:var(--sg-gold)}
.sg-pin[aria-current="true"]{background:var(--sg-purple);color:#fff !important;border-color:var(--sg-plum)}
.sg-pin[aria-current="true"] b{background:var(--sg-gold);color:#231800}
.sg-plaza-help{margin-top:12px !important;font-size:13.5px !important;color:var(--sg-ink-2) !important;max-width:52ch}

.sg-plaza-info{min-width:0;border-left:3px solid var(--sg-gold);padding-left:clamp(14px,1.6vw,22px)}
.sg-pl{min-width:0}
.sg-pl + .sg-pl{margin-top:22px;padding-top:22px;border-top:1.5px solid var(--sg-line)}
.sg-pl:focus{outline:3px solid var(--sg-ink);outline-offset:4px}
.sg-pl-n{font-family:var(--display) !important;font-weight:700;font-size:11.5px !important;
  letter-spacing:.2em;color:var(--sg-ink-2) !important;margin-bottom:4px !important}
.sg-pl h3{margin-bottom:8px}
.sg-pl p + p{margin-top:9px}
/* single-panel mode is a JavaScript enhancement only */
.sg-js .sg-plaza-info .sg-pl[hidden]{display:none}
.sg-js .sg-plaza-info .sg-pl + .sg-pl{margin-top:0;padding-top:0;border-top:0}

/* ===========================================================
   5. BAG FRAME + PHONE SEQUENCE
   =========================================================== */
.sg-bagrow{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);
  gap:clamp(22px,3vw,46px);margin-top:26px;align-items:start}
.sg-bagrow > *{min-width:0}

.sg-phone{min-width:0;border:1.5px solid var(--sg-line);background:var(--sg-plum);padding:20px}
.sg-phone h3{color:#fff}
.sg-phone p{color:rgba(255,255,255,.86)}
.sg-phone a{color:var(--sg-gold)}
.sg-screens{list-style:none;margin:16px 0 0;padding:0;counter-reset:none}
.sg-screens li{display:flex;gap:12px;align-items:flex-start;min-width:0;
  border:1.5px solid rgba(255,255,255,.5);background:#1B0E2C;padding:12px 14px}
.sg-screens li + li{margin-top:10px;position:relative}
.sg-screens li + li::before{content:"";position:absolute;left:26px;top:-11px;width:2px;height:10px;
  background:var(--sg-gold)}
.sg-scr-n{flex:0 0 28px;min-width:0;display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;background:var(--sg-gold);color:#231800;
  font-family:var(--display);font-weight:700;font-size:14px}
.sg-scr-t{min-width:0;font-family:var(--body);font-size:14.5px;line-height:1.5;color:#fff}
.sg-phone .sg-note{color:rgba(255,255,255,.8) !important}

.sg-bag{min-width:0}
.sg-bag h4{margin-top:20px}
.sg-bagfig{margin:18px 0 0}
.sg-bagsvg{display:block;width:100%;height:auto;max-width:620px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2)}
.sg-bagfig figcaption{margin-top:8px;font-family:var(--body);font-size:13.5px;line-height:1.5;
  color:var(--sg-ink-2);max-width:62ch}
.sg-bag-grid path{stroke:var(--sg-grey);stroke-width:1.5;fill:none}
.sg-bag-out1{fill:rgba(43,114,185,.09);stroke:var(--sg-line);stroke-width:2.5}
.sg-bag-out2{fill:rgba(43,114,185,.09);stroke:var(--sg-line);stroke-width:2.5}
.sg-bag-depth path{fill:rgba(199,196,191,.45);stroke:var(--sg-line);stroke-width:2}
.sg-bag-chip rect{fill:#fff;stroke:var(--sg-purple);stroke-width:1.6}
.sg-bag-chip text{font-family:var(--body);font-weight:500;font-size:13px;fill:var(--sg-ink);text-anchor:middle}
.sg-bag-dim path{stroke:var(--sg-ink);stroke-width:1.6;fill:none}
.sg-bag-dim text{font-family:var(--sg-mono);font-size:14px;fill:var(--sg-ink);text-anchor:middle}
.sg-bag-dimv{text-anchor:middle}
.sg-bag-dim text.sg-bag-dimstart{text-anchor:start}
.sg-bag-stop > path{stroke:var(--sg-ink);stroke-width:2.5;stroke-dasharray:7 5;fill:none}
.sg-bag-stoplab{font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.1em;
  fill:var(--sg-ink);text-anchor:middle;text-transform:uppercase}
.sg-bag-no rect{fill:rgba(199,196,191,.5);stroke:var(--sg-ink);stroke-width:1.6}
.sg-bag-no path{stroke:var(--sg-ink);stroke-width:2;fill:none}

/* ===========================================================
   6. FIVE DOORS
   =========================================================== */
.sg-doors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:26px;
  align-items:stretch}
.sg-doors > *{min-width:0}
.sg-door{display:flex;flex-direction:column;min-width:0;border:2px solid var(--sg-line);
  background:var(--sg-paper-2);
  box-shadow:inset 0 0 0 6px var(--sg-paper-2),inset 0 0 0 7.5px var(--sg-grey)}
.sg-door > summary{display:block;min-height:112px;padding:16px 14px;cursor:pointer;list-style:none;
  position:relative;transition:background 220ms ease}
.sg-door > summary::-webkit-details-marker{display:none}
.sg-door-n{display:flex;align-items:center;justify-content:center;width:34px;height:34px;
  background:var(--sg-purple);color:#fff;font-family:var(--display);font-weight:700;font-size:17px}
.sg-door-t{display:block;margin-top:12px;font-family:var(--display);font-weight:600;
  font-size:15px;line-height:1.15;letter-spacing:.04em;text-transform:uppercase;color:var(--sg-ink)}
.sg-door-h{display:block;position:absolute;right:14px;top:50%;width:9px;height:9px;
  margin-top:-4px;background:var(--sg-gold);border:1.5px solid var(--sg-line);border-radius:50%}
.sg-door > summary:hover{background:#fff}
.sg-door[open] > summary{background:var(--sg-gold);border-bottom:2px solid var(--sg-line)}
.sg-door::after{content:"";display:block;flex:1 1 auto;min-height:26px;
  margin:0 14px 14px;border:1.5px solid var(--sg-grey)}
.sg-door-in{padding:14px}
.sg-door-in p{font-size:14.5px !important;line-height:1.6 !important}
.sg-door-last{border-color:var(--sg-purple);border-width:3px}
.sg-door.sg-next > summary{background:var(--sg-paper)}
.sg-door.sg-next .sg-door-h{background:var(--sg-purple)}
.sg-door.sg-next{border-color:var(--sg-purple)}

.sg-plan{margin-top:30px;border:1.5px solid var(--sg-line);background:var(--sg-paper-2);padding:20px 22px}
.sg-plan h3{margin-bottom:6px}

/* ===========================================================
   7. BOWL CROSS-SECTION
   =========================================================== */
.sg-bowl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);
  gap:clamp(20px,2.6vw,40px);margin-top:24px;align-items:start}
.sg-bowl > *{min-width:0}
.sg-bowl-svg{display:block;width:100%;height:auto;border:1.5px solid var(--sg-line);
  background:var(--sg-paper-2)}
.sg-bowl-field{fill:var(--sg-grey);stroke:var(--sg-line);stroke-width:2}
.sg-bowl-fieldlab{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.2em;
  fill:var(--sg-ink);text-anchor:middle}
.sg-bowl-roof path{stroke:var(--sg-line);stroke-width:2.5;fill:none}
.sg-ring{stroke:var(--sg-line);stroke-width:2;transition:fill 200ms ease}
.sg-ring-1{fill:#A98BCE}
.sg-ring-2{fill:#BCA3DC}
.sg-ring-3{fill:#CDB9E6}
.sg-ring-4{fill:#DED2EE}
.sg-ring-5{fill:#EFE8F7}
.sg-bowl-rings a{cursor:pointer}
.sg-bowl-rings a:hover .sg-ring{fill:#FFE29B}
.sg-bowl-rings a:focus-visible{outline:3px solid var(--sg-ink);outline-offset:2px}
.sg-bowl-rings a[aria-current="true"] .sg-ring{fill:var(--sg-gold);stroke-width:4.5}
.sg-bowl-num text{font-family:var(--display);font-weight:700;font-size:15px;fill:var(--sg-ink);
  text-anchor:middle}

.sg-ringnav{display:none;margin:16px 0 0;padding:0;list-style:none}
.sg-ringnav li{min-width:0}
.sg-ringnav li + li{margin-top:-1.5px}
.sg-ringnav a{display:flex;align-items:center;gap:12px;min-height:52px;min-width:0;
  padding:9px 14px;border:1.5px solid var(--sg-line);background:var(--sg-paper-2);
  text-decoration:none !important;color:var(--sg-ink) !important}
.sg-ringnav b{flex:0 0 28px;display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;background:var(--sg-purple);color:#fff;
  font-family:var(--display);font-weight:700;font-size:15px}
.sg-ringnav span{flex:1 1 auto;min-width:0;font-family:var(--display);font-weight:600;font-size:14px;
  letter-spacing:.05em;text-transform:uppercase}
.sg-ringnav i{flex:0 1 auto;min-width:0;font-style:normal;font-family:var(--body);font-size:12.5px;
  color:var(--sg-ink-2);text-align:right}
.sg-ringnav a:hover{background:var(--sg-gold)}
.sg-ringnav a[aria-current="true"]{background:var(--sg-purple);color:#fff !important;border-color:var(--sg-plum)}
.sg-ringnav a[aria-current="true"] b{background:var(--sg-gold);color:#231800}
.sg-ringnav a[aria-current="true"] i{color:rgba(255,255,255,.85)}

.sg-bowl-side{min-width:0}
.sg-window{margin:0 0 18px;border:1.5px solid var(--sg-line);background:var(--sg-paper-2);padding:14px}
.sg-window figcaption{font-family:var(--display);font-weight:600;font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--sg-ink-2);margin-bottom:10px}
.sg-window-svg{display:block;width:100%;height:auto;max-width:300px}
.sg-window-lab{margin-top:10px !important;font-family:var(--display) !important;font-weight:600;
  font-size:12.5px !important;letter-spacing:.08em;text-transform:uppercase;color:var(--sg-ink) !important;
  border-top:1.5px solid var(--sg-line);padding-top:9px}
.sg-win-field{fill:rgba(199,196,191,.5);stroke:var(--sg-line);stroke-width:2}
.sg-win-ez{fill:rgba(79,38,131,.18);stroke:var(--sg-line);stroke-width:1.6}
.sg-win-lines path{stroke:var(--sg-grey);stroke-width:1.4;fill:none}
.sg-win-eye{transform:var(--sg-eyet,translate(0,0));transition:transform 380ms ease}
.sg-win-eye circle{fill:var(--sg-gold);stroke:var(--sg-line);stroke-width:2}
.sg-win-eye path{stroke:var(--sg-line);stroke-width:2.5;fill:none}

.sg-rings{list-style:none;margin:0;padding:0;counter-reset:none}
.sg-ringitem{min-width:0;border-left:6px solid var(--sg-purple);padding-left:16px}
.sg-ringitem + .sg-ringitem{margin-top:20px}
.sg-ringitem:focus{outline:3px solid var(--sg-ink);outline-offset:4px}
.sg-ring-n{font-family:var(--display) !important;font-weight:700;font-size:11.5px !important;
  letter-spacing:.2em;color:var(--sg-ink-2) !important;margin-bottom:4px !important}
.sg-ringitem h3{margin-bottom:8px}
.sg-ringitem p + p{margin-top:8px}
.sg-ring-price{font-size:14.5px !important;background:var(--sg-gold);color:#231800 !important;
  display:inline-block;padding:5px 10px;border:1.5px solid var(--sg-line);margin-bottom:8px !important}
.sg-ring-best{margin-top:10px !important;border-top:1.5px solid var(--sg-line);padding-top:8px;
  font-size:14.5px !important}
.sg-ring-best span{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--sg-ink-2);display:block}
.sg-js .sg-rings .sg-ringitem[hidden]{display:none}
.sg-js .sg-rings .sg-ringitem + .sg-ringitem{margin-top:0}

/* ===========================================================
   8. CONCOURSE DIRECTORY
   =========================================================== */
.sg-sec-dir{background:var(--sg-plum);border-top-color:var(--sg-plum)}
.sg-sec-dir h2,.sg-sec-dir h3{color:#fff}
.sg-sec-dir p{color:rgba(255,255,255,.88)}
.sg-intro-dark{color:rgba(255,255,255,.88) !important}
.sg-sec-dir a{color:var(--sg-gold)}
.sg-dir{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:clamp(20px,2.6vw,40px);margin-top:26px;align-items:start}
.sg-dir > *{min-width:0}
.sg-dir-board{min-width:0;border:2px solid var(--sg-gold);background:#1B0E2C;padding:18px 20px}
.sg-dir-lev{font-family:var(--display) !important;font-weight:700;font-size:11.5px !important;
  letter-spacing:.22em;text-transform:uppercase;color:var(--sg-gold) !important;
  border-bottom:1.5px solid rgba(255,198,47,.5);padding-bottom:8px;margin:22px 0 6px !important}
.sg-dir-lev:first-child{margin-top:0 !important}
.sg-dir-rows{list-style:none;margin:0;padding:0}
.sg-dir-rows li{display:flex;align-items:center;gap:14px;min-height:44px;min-width:0;
  padding:9px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.sg-dir-rows li:last-child{border-bottom:0}
.sg-dir-ar{flex:0 0 26px;width:26px;height:26px;display:block;color:var(--sg-gold)}
.sg-ar-r{transform:none}
.sg-ar-l{transform:rotate(180deg)}
.sg-ar-u{transform:rotate(-90deg)}
.sg-ar-d{transform:rotate(90deg)}
.sg-dir-lab{flex:1 1 auto;min-width:0;font-family:var(--display);font-weight:600;font-size:15px;
  letter-spacing:.05em;text-transform:uppercase;color:#fff}
.sg-dir-det{flex:0 1 auto;min-width:0;font-family:var(--body);font-size:14px;
  color:rgba(255,255,255,.8);text-align:right}
.sg-dir-notes{min-width:0;border-left:3px solid var(--sg-gold);padding-left:18px}
.sg-dir-notes h3{margin-top:18px;margin-bottom:6px}
.sg-dir-notes h3:first-child{margin-top:0}

/* ===========================================================
   9. ACCESSIBILITY — quieter, simpler
   =========================================================== */
.sg-sec-access{background:#FFFDF8}
.sg-access{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);
  gap:clamp(22px,3vw,48px);margin-top:24px;align-items:start}
.sg-access > *{min-width:0}
.sg-route{min-width:0}
.sg-routelist{list-style:none;margin:16px 0 0;padding:0}
.sg-routelist li{display:flex;gap:16px;align-items:flex-start;min-width:0;padding:14px 0;
  border-bottom:1.5px solid var(--sg-grey)}
.sg-routelist li:last-child{border-bottom:0}
.sg-route-n{flex:0 0 34px;min-width:0;display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;background:var(--sg-gold);border:1.5px solid var(--sg-line);
  color:#231800;font-family:var(--display);font-weight:700;font-size:16px}
.sg-route-b{min-width:0;font-family:var(--body);font-size:16px;line-height:1.6;color:var(--sg-ink)}
.sg-route-b b{display:block;font-family:var(--display);font-weight:600;font-size:14px;
  letter-spacing:.09em;text-transform:uppercase;margin-bottom:3px}

.sg-floor{margin:0}
.sg-floor-svg{display:block;width:100%;height:auto;max-width:380px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2)}
.sg-floor figcaption{margin-top:8px;font-family:var(--body);font-size:13.5px;color:var(--sg-ink-2)}
.sg-floor-shell rect{fill:none;stroke:var(--sg-line);stroke-width:2}
.sg-floor-lab{font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.12em;
  fill:var(--sg-ink-2);text-anchor:middle}
.sg-floor-route{fill:none;stroke:var(--sg-gold);stroke-width:11;stroke-linecap:square;stroke-linejoin:miter}
.sg-floor-stop circle{fill:var(--sg-purple);stroke:var(--sg-line);stroke-width:2}
.sg-floor-stop text{font-family:var(--display);font-weight:700;font-size:16px;fill:#fff;text-anchor:middle}
.sg-floor-txt text{font-family:var(--body);font-weight:500;font-size:13px;fill:var(--sg-ink);text-anchor:middle}

.sg-access-more{margin-top:30px;border-top:1.5px solid var(--sg-line);padding-top:22px}
.sg-access-more h3{margin-top:20px;margin-bottom:6px}
.sg-access-more h3:first-child{margin-top:0}
.sg-access-more p + p{margin-top:9px}
.sg-access-more > p:last-of-type{margin-top:12px}

.sg-contact{margin-top:26px;border:2px solid var(--sg-line);border-left-width:10px;
  border-left-color:var(--sg-gold);background:var(--sg-paper);padding:20px 22px}
.sg-contact h3{margin-bottom:10px}
.sg-contact p{font-size:16.5px !important}
.sg-contact p + p{margin-top:8px}
.sg-contact a{color:var(--sg-purple);font-weight:600}
.sg-contact a[href^="tel:"],.sg-contact a[href^="mailto:"]{
  display:inline-flex;align-items:center;min-height:44px;padding:4px 12px;margin:2px 0;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2);text-decoration:none;
  font-family:var(--sg-mono);font-size:15.5px}
.sg-contact a[href^="tel:"]:hover,.sg-contact a[href^="mailto:"]:hover{background:var(--sg-gold);color:#231800}

/* ===========================================================
   10. DEPARTURE DIAL + TICKET-STUB CHECKLIST
   =========================================================== */
.sg-exit{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);
  gap:clamp(22px,3vw,44px);margin-top:26px;align-items:start}
.sg-exit > *{min-width:0}
.sg-exitdial{min-width:0}
.sg-exitdial-svg{display:block;width:100%;height:auto;max-width:400px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2)}
.sg-ex-seg{stroke:var(--sg-line);stroke-width:2}
.sg-ex-s1{fill:#B79BD8}
.sg-ex-s2{fill:var(--sg-gold)}
.sg-ex-s3{fill:var(--sg-grey)}
.sg-ex-lab text{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.06em;
  fill:var(--sg-ink);text-anchor:middle;text-transform:uppercase}
.sg-ex-pin circle{fill:var(--sg-plum)}
.sg-exitdial a{cursor:pointer}
.sg-exitdial a:hover .sg-ex-seg{fill:#FFE29B}
.sg-exitdial a:focus-visible{outline:3px solid var(--sg-ink);outline-offset:2px}
.sg-ex-base{stroke:var(--sg-line);stroke-width:2.5;fill:none}

.sg-exits{list-style:none;margin:0;padding:0}
.sg-exits li{min-width:0;border:1.5px solid var(--sg-line);background:var(--sg-paper-2);padding:16px 18px}
.sg-exits li + li{margin-top:14px}
.sg-exits h3{margin-bottom:8px}
.sg-exits p + p{margin-top:8px}
.sg-exit-k{font-size:15px !important}
.sg-exit-k span{display:block;font-family:var(--display);font-weight:600;font-size:10.5px;
  letter-spacing:.17em;text-transform:uppercase;color:var(--sg-ink-2)}

.sg-stub{margin-top:34px;max-width:820px;border:1.5px solid var(--sg-line);
  background:var(--sg-plum);display:flex;min-width:0;box-shadow:7px 7px 0 rgba(32,32,36,.16)}
.sg-stub-edge{flex:0 0 22px;min-width:0;border-right:1.5px dashed rgba(255,255,255,.55);
  background:repeating-linear-gradient(180deg,var(--sg-gold) 0 10px,transparent 10px 22px)}
.sg-stub-in{flex:1 1 auto;min-width:0;padding:22px 26px;font-family:var(--sg-mono)}
.sg-stub-in h3{color:#fff}
.sg-stub-sub{margin-top:10px !important;font-family:var(--sg-mono) !important;font-size:11.5px !important;
  letter-spacing:.2em;text-transform:uppercase;color:var(--sg-gold) !important;
  border-bottom:1.5px dashed rgba(255,255,255,.4);padding-bottom:8px}
.sg-stub-list{list-style:none;margin:14px 0 0;padding:0;
  columns:2;column-gap:34px}
.sg-stub-list li{break-inside:avoid;position:relative;padding-left:26px;margin-bottom:10px;
  font-family:var(--sg-mono);font-size:13.5px;line-height:1.5;color:#fff}
.sg-stub-list li::before{content:"";position:absolute;left:0;top:2px;width:13px;height:13px;
  border:1.5px solid var(--sg-gold)}
.sg-stub-lines{display:flex;flex-direction:column;gap:6px;margin-top:18px}
.sg-stub-lines i{display:block;height:2px;background:rgba(255,255,255,.4);width:100%}
.sg-stub-lines i:nth-child(n+4){display:none}
.sg-stub-lines i:nth-child(2){width:66%}
.sg-stub-lines i:nth-child(3){width:38%}

/* ===========================================================
   11. HISTORY — editorial serif
   =========================================================== */
.sg-hist{max-width:74ch;margin:0 auto;font-family:var(--sg-serif)}
.sg-hist h2{font-family:var(--sg-serif);font-weight:700;text-transform:none;letter-spacing:0;
  font-size:clamp(24px,2.8vw,38px);line-height:1.14}
.sg-hist p{font-family:var(--sg-serif);font-size:18px;line-height:1.72}
.sg-hist p + p{margin-top:14px}
.sg-hist-1{margin-top:16px !important;font-size:21px !important;line-height:1.55 !important;
  font-style:italic;border-left:3px solid var(--sg-gold);padding-left:16px}

/* ===========================================================
   12. FAQ
   =========================================================== */
.sg-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:22px;
  border-top:1.5px solid var(--sg-line);border-left:1.5px solid var(--sg-line)}
.sg-faq > *{min-width:0}
.sg-q{min-width:0;border-right:1.5px solid var(--sg-line);border-bottom:1.5px solid var(--sg-line);
  padding:18px 20px;background:var(--sg-paper-2)}
.sg-q h3{margin-bottom:8px}
.sg-q p{font-size:15.5px !important}

/* ===========================================================
   13. MORE
   =========================================================== */
.sg-more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px;
  padding:0;list-style:none}
.sg-more > *{min-width:0}
.sg-more li{min-width:0}
.sg-more a{display:flex;flex-direction:column;gap:5px;min-width:0;height:100%;min-height:44px;
  border:1.5px solid var(--sg-line);background:var(--sg-paper-2);padding:14px 16px;
  text-decoration:none !important;color:var(--sg-ink) !important;transition:background 180ms}
.sg-more a:hover{background:var(--sg-gold)}
.sg-more b{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.04em;
  text-transform:uppercase}
.sg-more span{font-family:var(--body);font-size:13.5px;line-height:1.4;color:var(--sg-ink-2)}
.sg-more a:hover span{color:#3d3427}
.sg-more .sg-ar{margin-top:auto;color:var(--sg-purple)}

/* ===========================================================
   MOBILE CLOCK + DOCK
   =========================================================== */
.sg-mini{display:none}
.sg-dock{display:none}

/* ===========================================================
   RESPONSIVE
   =========================================================== */
@media (max-width:1080px){
  .sg-open-in{grid-template-columns:minmax(0,1fr);gap:26px}
  .sg-dial{max-width:560px}
  .sg-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sg-facts > div{border-right:1.5px solid var(--sg-line);border-bottom:1.5px solid var(--sg-line)}
  .sg-facts > div:nth-child(2n){border-right:0}
  .sg-facts > div:last-child{border-bottom:0;grid-column:1 / -1}
  .sg-tickets{grid-template-columns:minmax(0,1fr)}
  .sg-doors{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sg-bagrow{grid-template-columns:minmax(0,1fr)}
  .sg-plaza,.sg-bowl,.sg-dir,.sg-access,.sg-exit{grid-template-columns:minmax(0,1fr)}
  .sg-ringnav{display:block}
  .sg-plaza-info{border-left:0;border-top:3px solid var(--sg-gold);padding-left:0;padding-top:18px}
  .sg-dir-notes{border-left:0;border-top:3px solid var(--sg-gold);padding-left:0;padding-top:18px}
  .sg-plaza-svg,.sg-floor-svg,.sg-exitdial-svg{margin:0 auto}
  .sg-more{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:768px){
  .sg-mini{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:55;
    background:var(--sg-paper-2);border-bottom:1.5px solid var(--sg-line);padding:6px 16px}
  .sg-mini-svg{flex:0 0 74px;width:74px;height:39px;display:block}
  .sg-mini-hand{transform-box:view-box;transform-origin:70px 70px;
    transform:rotate(var(--sg-a2,-90deg));transition:transform 480ms cubic-bezier(.2,.75,.2,1)}
  .sg-mini-txt{display:flex;flex-direction:column;min-width:0;margin:0}
  .sg-mini-t{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--sg-ink-2)}
  .sg-mini-s{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.05em;
    text-transform:uppercase;color:var(--sg-ink)}

  .sg-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;
    position:fixed;left:0;right:0;bottom:0;z-index:60;
    background:var(--sg-plum);border-top:2px solid var(--sg-gold)}
  .sg-dock a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;
    padding:8px 4px;text-align:center;color:#fff;text-decoration:none;
    border-right:1px solid rgba(255,255,255,.28);
    font-family:var(--display);font-weight:600;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
  .sg-dock a:last-child{border-right:0}
  .sg-dock a:hover,.sg-dock a:active{background:var(--sg-purple)}
  .sg-doc{padding-bottom:60px}

  .sg-doors{grid-template-columns:minmax(0,1fr)}
  .sg-door > summary{min-height:auto}
  .sg-door::after{display:none}
  .sg-faq{grid-template-columns:minmax(0,1fr)}
  .sg-stub-list{columns:1}
  .sg-r-line{grid-template-columns:minmax(0,1fr);gap:4px}
  .sg-dir-rows li{flex-wrap:wrap}
  .sg-dir-det{text-align:left;flex:1 1 100%;padding-left:40px}
}

@media (max-width:560px){
  .sg-dial{max-width:100%}
  .sg-pt a{min-width:84px;padding:5px 6px}
  .sg-pt b{font-size:13px}
  .sg-pt span{font-size:10px}
  .sg-more{grid-template-columns:minmax(0,1fr)}
  .sg-facts{grid-template-columns:minmax(0,1fr)}
  .sg-facts > div{border-right:0}
  .sg-facts > div:nth-child(2n){border-right:0}
  .sg-stub{flex-direction:column}
  .sg-stub-edge{flex:0 0 16px;height:16px;border-right:0;
    border-bottom:1.5px dashed rgba(255,255,255,.55);
    background:repeating-linear-gradient(90deg,var(--sg-gold) 0 10px,transparent 10px 22px)}
  .sg-r-head,.sg-r-body,.sg-r-items,.sg-r-foot{padding-left:18px;padding-right:18px}
  .sg-stub-in{padding:18px}
  .sg-ringnav a{flex-wrap:wrap}
  .sg-ringnav i{flex:1 1 100%;text-align:left;padding-left:40px}
  .sg-plaza-pins{flex-direction:column;align-items:stretch}
  .sg-pin{justify-content:flex-start}
}

/* ===========================================================
   REDUCED MOTION — clock, doors, receipt fold
   =========================================================== */
@media (prefers-reduced-motion:reduce){
  .page-stadiumguide *,
  .page-stadiumguide *::before,
  .page-stadiumguide *::after{
    transition-duration:1ms !important;animation-duration:1ms !important;animation-iteration-count:1 !important;
  }
  /* the clock becomes inert: the hand rests on the first stage and never sweeps */
  .sg-hand{transition:none !important;transform:rotate(0deg) !important}
  .sg-mini-hand{transition:none !important;transform:rotate(-90deg) !important}
  .sg-win-eye{transition:none !important}
  /* the doors are shown open */
  .sg-door > summary{transition:none !important}
  /* the receipt never folds */
  .sg-receipt,.sg-js .sg-receipt.sg-folded{transform:none !important;opacity:1 !important;transition:none !important}
}

@media print{
  .sg-dock,.sg-mini{display:none !important}
}
