/* ============================================================
   UW-Green Bay WebTour · production UI layer · uwgb-ui v001
   Daylight Bold skin over the live Pano2VR player + skin.
   Design source of truth: approved mockup v2.3 + blueprint.
   Build: 2026-07-08
   ============================================================ */
:root{
  --uw-ink:#003429; --uw-green:#0f5640; --uw-phx:#00a33f; --uw-phx2:#45d72d;
  --uw-orange:#d35c01; --uw-paper:#f3fbf6; --uw-mut:#3e5c52;
  --uw-day1:#e7f1eb; --uw-day2:#cfe0d8;
  --uw-disp:"Archivo Black",system-ui,sans-serif;
  --uw-ui:"Space Grotesk",system-ui,sans-serif;
  --uw-body:"Inter",system-ui,sans-serif;
}
.uw-ui, .uw-ui *{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased}
.uw-ui{font-family:var(--uw-body);color:var(--uw-ink)}
.uw-ui button{font-family:var(--uw-ui);cursor:pointer;border:0;background:none;color:inherit;font-size:inherit}
.uw-ui :is(button,a,[tabindex]):focus-visible{outline:3px solid var(--uw-orange);outline-offset:2px;border-radius:4px}
.uw-hide{display:none!important}
.uw-fade{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.uw-t{transition:opacity .4s,visibility .4s}

/* ---------- sticker primitives ---------- */
.uw-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;background:#fff;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-phx);font-family:var(--uw-ui);font-size:13.5px;font-weight:700;color:var(--uw-ink);transition:transform .12s,box-shadow .12s}
.uw-chip:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--uw-phx)}
.uw-chip svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.uw-cta{min-height:44px;padding:0 20px;border-radius:10px;font-weight:700;font-size:13.5px;border:2px solid var(--uw-ink);display:inline-flex;align-items:center}
.uw-cta.uw-primary{background:var(--uw-phx);color:#001d17;font-family:var(--uw-disp);font-weight:400;box-shadow:3px 3px 0 var(--uw-ink);text-decoration:none}
.uw-cta.uw-primary:hover{background:var(--uw-phx2)}
.uw-cta.uw-ghost{background:#fff;color:var(--uw-ink);box-shadow:3px 3px 0 var(--uw-orange);font-family:var(--uw-ui);text-decoration:none}
.uw-cta.uw-ghost:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--uw-orange)}
.uw-wordmark{font-family:var(--uw-disp);font-size:14px;color:#fff;background:var(--uw-green);padding:7px 11px;transform:rotate(-1.2deg);box-shadow:3px 3px 0 var(--uw-phx);white-space:nowrap;display:inline-block}
.uw-tag{display:inline-block;background:#fff;color:var(--uw-green);font-family:var(--uw-ui);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-phx);transform:rotate(-1deg);border-radius:7px}
@keyframes uwPulse{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}
.uw-pulse{animation:uwPulse .6s ease 2}

/* ---------- landing ---------- */
#uwLanding{position:fixed;inset:0;z-index:6000;overflow:hidden;background:#003429;transition:opacity .6s,visibility .6s}
#uwLanding video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#uwLanding .uw-shade{position:absolute;inset:0;background:linear-gradient(175deg,rgba(0,52,41,.12) 30%,rgba(0,52,41,.78) 100%)}
#uwLanding .uw-inner{position:absolute;left:clamp(20px,4.5vw,64px);right:clamp(20px,4.5vw,64px);bottom:clamp(28px,6vh,64px);z-index:3}
#uwLanding .uw-wordmark{margin-bottom:24px;font-size:16px}
#uwLanding .uw-hero{font-family:var(--uw-disp);font-size:clamp(29px,4.2vw,60px);line-height:1.02;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.4);max-width:15em;margin-bottom:14px}
#uwLanding .uw-hero em{font-style:normal;color:var(--uw-phx2)}
#uwLanding p{font-family:var(--uw-ui);font-size:clamp(14px,1.2vw,17px);max-width:40em;color:rgba(255,255,255,.92);line-height:1.55;margin-bottom:26px}
.uw-bigbtn{min-height:58px;padding:0 28px;border-radius:12px;border:2.5px solid var(--uw-ink);font-family:var(--uw-disp);font-size:clamp(15px,1.35vw,19px);text-align:left}
.uw-bigbtn small{font-family:var(--uw-ui);font-size:12.5px;font-weight:700;display:block;margin-top:1px}
.uw-bigbtn.uw-go{background:var(--uw-phx);color:#001d17;box-shadow:5px 5px 0 var(--uw-ink)}
.uw-bigbtn.uw-go:hover{background:var(--uw-phx2)}
.uw-bigbtn.uw-alt{background:rgba(255,255,255,.95);color:var(--uw-ink);box-shadow:5px 5px 0 var(--uw-orange)}
.uw-btnrow{display:flex;flex-wrap:wrap;gap:14px;align-items:stretch}
.uw-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#uwAboutBtn{margin-top:10px;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:9px;background:rgba(255,255,255,.92);border:2px solid var(--uw-ink);box-shadow:2.5px 2.5px 0 var(--uw-phx);font-family:var(--uw-ui);font-size:13px;font-weight:700}
#uwAboutBtn:hover{transform:translate(-1px,-1px);box-shadow:3.5px 3.5px 0 var(--uw-phx)}
#uwAbout{position:fixed;left:28px;bottom:170px;z-index:4700;width:min(430px,80vw);max-height:46vh;overflow-y:auto;background:#fff;border:2.5px solid var(--uw-ink);border-radius:14px;box-shadow:6px 6px 0 var(--uw-phx);padding:20px 22px}
#uwAbout h3{font-family:var(--uw-disp);font-size:16px;margin-bottom:8px;padding-right:48px}
#uwAbout p{font-family:var(--uw-body);font-size:13.5px;line-height:1.6;color:var(--uw-ink)}
#uwAbout .uw-close{position:absolute;top:10px;right:10px}
#uwMenuCtas{display:flex;gap:8px;padding:8px 16px 4px;border-top:1.5px dashed rgba(0,52,41,.2)}
#uwMenuCtas a{flex:1;text-align:center;min-height:40px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--uw-ui);font-size:12px;font-weight:700;color:var(--uw-ink);text-decoration:none;border:2px solid var(--uw-ink);border-radius:9px;background:#fff;box-shadow:2px 2px 0 var(--uw-orange)}
#uwMenuCtas a.uw-applylink{background:var(--uw-phx);color:#001d17;font-family:var(--uw-disp);font-weight:400;box-shadow:2px 2px 0 var(--uw-ink)}
@media (max-width:1080px){#uwContact,#uwVisit{display:none}}
body.uw-mobile #uwAbout{left:14px;right:14px;width:auto;bottom:150px}
.uw-bigbtn.uw-alt:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--uw-orange)}
#uwSiteLink{position:absolute;right:24px;top:20px;z-index:4;color:rgba(255,255,255,.88);font-family:var(--uw-ui);font-weight:700;font-size:13px;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}
#uwVidPause{position:absolute;right:24px;bottom:22px;z-index:4}
#uwLanding footer{position:absolute;left:clamp(20px,4.5vw,64px);bottom:8px;z-index:3;color:rgba(255,255,255,.55);font-family:var(--uw-ui);font-size:11px;font-weight:700}

/* ---------- top bar ---------- */
#uwTop{position:fixed;top:0;left:0;right:0;z-index:5000;display:flex;align-items:center;gap:12px;padding:12px 22px;background:rgba(255,255,255,.94);border-bottom:2.5px solid var(--uw-ink)}
#uwTop .uw-sp{flex:1}
#uwSaveBtn{position:relative}
#uwSaveCount{position:absolute;top:-8px;right:-8px;min-width:21px;height:21px;border-radius:99px;background:var(--uw-orange);border:2px solid var(--uw-ink);color:#fff;font-size:11px;font-weight:800;display:none;place-items:center;padding:0 5px}
#uwSaveCount.uw-show{display:grid}

/* ---------- scene title + bottom nav ---------- */
#uwScene{position:fixed;left:28px;bottom:92px;z-index:4600;max-width:min(560px,60vw)}
#uwScene h2{font-family:var(--uw-disp);font-size:clamp(22px,2.4vw,34px);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.55);line-height:1.05;margin-top:12px}
#uwNav{position:fixed;left:0;right:0;bottom:0;z-index:4600;display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 22px 20px;pointer-events:none}
#uwNav button{pointer-events:auto;display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 22px;border-radius:11px;background:#fff;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-phx);font-size:14px;font-weight:700}
#uwNav button:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--uw-phx)}

/* ---------- menu drawer ---------- */
#uwMenu{position:fixed;top:0;bottom:0;left:-410px;width:390px;z-index:5600;background:#fff;border-right:2.5px solid var(--uw-ink);transition:left .35s ease;display:flex;flex-direction:column}
#uwMenu.uw-open{left:0}
#uwMenu .uw-dlghead{display:flex;align-items:center;gap:10px;padding:18px 18px 8px}
#uwMenu .uw-dlghead h2{font-family:var(--uw-disp);font-size:16px;flex:1}
.uw-close{width:44px;height:44px;border-radius:9px;display:grid;place-items:center;font-size:20px;border:2px solid var(--uw-ink);box-shadow:2.5px 2.5px 0 var(--uw-orange);background:#fff;flex:none}
#uwFilterWrap{margin:4px 16px 8px;display:flex}
#uwFilter{flex:1;font-family:var(--uw-ui);font-weight:700;font-size:14px;color:var(--uw-ink);background:var(--uw-day1);border:2px solid var(--uw-ink);border-radius:9px;padding:11px 13px}
#uwFilter::placeholder{color:var(--uw-mut)}
#uwMenuList{overflow-y:auto;padding:0 12px 8px;flex:1;overscroll-behavior:contain}
.uw-mb{margin-bottom:3px}
.uw-mb>button{width:100%;display:flex;align-items:center;gap:10px;min-height:46px;padding:0 10px;border-radius:9px;font-weight:700;font-size:14.5px;text-align:left;color:var(--uw-mut)}
.uw-mb>button:hover{background:rgba(0,163,63,.12);color:var(--uw-ink)}
.uw-mb.uw-open>button{color:var(--uw-ink);background:rgba(0,163,63,.12)}
.uw-mb>button .uw-n{margin-left:auto;font-size:12px;font-weight:700}
.uw-mb>button .uw-car{transition:transform .25s;color:var(--uw-green)}
.uw-mb.uw-open>button .uw-car{transform:rotate(90deg)}
.uw-mb ol{list-style:none;padding:2px 0 8px;display:none}
.uw-mb.uw-open ol{display:block}
.uw-mb ol button{width:100%;display:flex;gap:10px;align-items:center;min-height:40px;padding:0 12px 0 24px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--uw-mut);text-align:left}
.uw-mb ol button:hover{background:rgba(0,163,63,.1);color:var(--uw-ink)}
.uw-mb ol button.uw-cur{color:#00702b;font-weight:700;background:rgba(0,163,63,.14)}
.uw-mb ol .uw-i{font-size:11px;font-weight:700;color:#4a635a;min-width:18px}
#uwCampuses{border-top:2.5px solid var(--uw-ink);padding:10px 16px 14px}
#uwCampuses .uw-lbl{font-family:var(--uw-ui);font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--uw-mut);margin-bottom:6px}
#uwCampuses .uw-row{display:flex;gap:6px;flex-wrap:wrap}
#uwCampuses button{font-family:var(--uw-ui);font-weight:700;font-size:12.5px;color:var(--uw-green);min-height:34px;padding:0 10px;border-radius:8px;border:1.5px solid rgba(0,52,41,.35)}
#uwCampuses button:hover{border-color:var(--uw-ink);background:var(--uw-day1)}
#uwCampuses button.uw-cur{background:var(--uw-phx);border:1.5px solid var(--uw-ink);color:#001d17}
#uwTuck{font-family:var(--uw-ui);font-weight:700;font-size:10.5px;color:var(--uw-green);background:var(--uw-day1);border:1.5px dashed var(--uw-green);border-radius:7px;margin:0 16px 10px;padding:7px 10px;text-align:center}

/* ---------- map ---------- */
#uwMap{position:fixed;inset:0;z-index:5700;background:linear-gradient(180deg,var(--uw-day1),var(--uw-day2));display:flex;flex-direction:column;padding:26px 40px}
#uwMap .uw-dlghead{display:flex;align-items:center;gap:14px;margin-bottom:12px}
#uwMap h2{font-family:var(--uw-disp);font-size:clamp(17px,2vw,24px)}
#uwMap .uw-hint{font-family:var(--uw-ui);font-weight:700;font-size:13px;color:var(--uw-mut)}
#uwLblBtn{font-family:var(--uw-ui);font-weight:700;font-size:12.5px;min-height:44px;padding:0 14px;border-radius:99px;border:2px solid var(--uw-ink);background:#fff;color:var(--uw-ink);box-shadow:2.5px 2.5px 0 var(--uw-orange);flex:none}
#uwLblBtn[aria-pressed="true"]{background:var(--uw-ink);color:#fff;box-shadow:2.5px 2.5px 0 var(--uw-phx)}
#uwMap .uw-close{margin-left:auto}
#uwMapWrap{flex:1;position:relative;border-radius:14px;background:#fff;border:2.5px solid var(--uw-ink);box-shadow:6px 6px 0 var(--uw-phx);overflow:hidden;touch-action:none}
#uwMapWrap svg{position:absolute;inset:0;width:100%;height:100%}
#uwMapInner{position:absolute;inset:0;transform-origin:0 0;transition:transform .2s ease;will-change:transform}
#uwMapInner.uw-panning{transition:none}
#uwMapInner.uw-noart{position:absolute;inset:0;transform:none!important}
#uwZoomCtl{position:absolute;right:14px;bottom:14px;z-index:8;display:flex;flex-direction:column;gap:8px}
#uwZoomCtl button{width:44px;height:44px;border-radius:10px;font-size:22px;font-weight:700;background:#fff;border:2px solid var(--uw-ink);box-shadow:2.5px 2.5px 0 var(--uw-phx);display:grid;place-items:center;font-family:var(--uw-ui)}
#uwZoomCtl button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:3.5px 3.5px 0 var(--uw-phx)}
#uwZoomCtl button:disabled{opacity:.35;cursor:default}
#uwMapImg{position:absolute;inset:0;width:100%;height:100%;display:block}
#uwPins{position:absolute;inset:0}
#uwMapPoly{position:absolute;inset:0;width:100%;height:100%}
#uwMapPoly polygon{fill:rgba(0,163,63,0);stroke:rgba(0,163,63,0);stroke-width:4;cursor:pointer;transition:fill .18s ease,stroke .18s ease;pointer-events:auto;outline:none}
#uwMapPoly polygon:hover,#uwMapPoly polygon.uw-hot,#uwMapPoly polygon:focus-visible{fill:rgba(0,163,63,.32);stroke:var(--uw-phx)}
#uwPolyLbls{display:none}
#uwMapPoly.uw-lbls-on #uwPolyLbls{display:block}
#uwPolyLbls text{font-family:var(--uw-ui);font-size:34px;font-weight:700;fill:var(--uw-ink);stroke:#fff;stroke-width:6px;paint-order:stroke;text-anchor:middle;pointer-events:none}
#uwMapTip{position:fixed;z-index:6200;pointer-events:none;background:#fff;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-phx);border-radius:8px;padding:8px 13px;font-family:var(--uw-ui);font-weight:700;font-size:14px;color:var(--uw-ink);opacity:0;transition:opacity .12s;white-space:nowrap}
#uwMapTip.uw-on{opacity:1}
#uwMapTip small{display:block;font-weight:600;font-size:10.5px;color:var(--uw-mut);margin-top:1px}
.uw-pin{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:3px;min-width:44px;min-height:44px;justify-content:flex-end;background:none;border:0;cursor:pointer}
.uw-pin i{width:24px;height:24px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--uw-phx);border:2.5px solid var(--uw-ink);box-shadow:2px 2px 6px rgba(0,52,41,.3)}
.uw-pin b{font-family:var(--uw-ui);font-size:11.5px;font-weight:700;background:#fff;border:1.5px solid var(--uw-ink);color:var(--uw-ink);padding:3px 8px;border-radius:6px;white-space:nowrap}
.uw-pin:hover i{background:var(--uw-orange)}
.uw-pin:hover b{background:var(--uw-ink);color:#fff}

/* ---------- story ---------- */
#uwStory{position:fixed;inset:0;z-index:5200;pointer-events:none}
#uwSegs{position:absolute;top:0;left:0;right:0;display:flex;gap:5px;padding:10px 12px}
#uwSegs i{flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.55);border:1px solid rgba(0,52,41,.35)}
#uwSegs i.uw-done{background:var(--uw-phx)}
#uwCap{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);width:min(680px,88%);background:#fff;border:2.5px solid var(--uw-ink);box-shadow:6px 6px 0 var(--uw-phx);border-radius:14px;padding:18px 24px;text-align:center;pointer-events:auto}
#uwCap .uw-tag{font-size:11px;padding:5px 11px;box-shadow:2.5px 2.5px 0 var(--uw-orange)}
#uwCap h2{font-family:var(--uw-disp);font-size:clamp(17px,1.8vw,26px);margin:10px 0 6px}
#uwCap p{font-family:var(--uw-ui);color:var(--uw-mut);max-width:44em;margin:0 auto;line-height:1.5;font-size:14.5px}
.uw-edge{position:absolute;top:0;bottom:0;width:10%;pointer-events:auto;display:grid;place-items:center;color:rgba(255,255,255,0);background:none;border:0}
.uw-edge:hover,.uw-edge:focus-visible{color:#fff}
.uw-edge svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6))}
.uw-edge.uw-l{left:0}.uw-edge.uw-r{right:0}
#uwExit{position:absolute;top:24px;right:16px;pointer-events:auto;min-height:44px;border-radius:10px;background:#fff;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-orange);font-size:13px;font-weight:700;padding:0 15px}
#uwCoach{position:fixed;inset:0;z-index:5900;background:rgba(0,52,41,.62);display:grid;place-items:center}
#uwCoach .uw-box{background:#fff;border:2.5px solid var(--uw-ink);box-shadow:7px 7px 0 var(--uw-phx);border-radius:16px;padding:26px 30px;text-align:center;max-width:min(34em,90vw);transform:rotate(-.5deg)}
#uwCoach h2{font-family:var(--uw-disp);font-size:clamp(16px,1.6vw,22px);margin-bottom:14px}
#uwCoach .uw-zones{display:flex;gap:8px;margin-bottom:16px}
#uwCoach .uw-zones span{flex:1;border:2px dashed var(--uw-phx);border-radius:9px;padding:12px 6px;font-family:var(--uw-ui);font-size:12px;font-weight:700;color:var(--uw-green)}
#uwCoach .uw-zones span.uw-mid{flex:2;border-color:rgba(0,52,41,.35);color:var(--uw-mut)}
#uwCoach button{background:var(--uw-phx);color:#001d17;font-family:var(--uw-disp);min-height:46px;padding:0 26px;border-radius:10px;border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-ink);font-size:15px}

/* ---------- end card ---------- */
#uwEnd{position:fixed;inset:0;z-index:5800;background:linear-gradient(180deg,var(--uw-day1),var(--uw-day2));display:grid;place-items:center;overflow:auto}
#uwEnd .uw-box{text-align:center;max-width:36em;padding:24px}
#uwEnd .uw-tag{transform:rotate(1.2deg);box-shadow:3px 3px 0 var(--uw-orange)}
#uwEnd h2{font-family:var(--uw-disp);font-size:clamp(26px,3.4vw,42px);margin:20px 0 12px;line-height:1.02}
#uwEnd h2 em{font-style:normal;color:#008734}
#uwEnd p{font-family:var(--uw-ui);color:var(--uw-mut);line-height:1.55;margin-bottom:26px;font-size:15.5px}
#uwEnd .uw-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
#uwEnd .uw-bigbtn{text-align:center;margin-left:0}
#uwEnd .uw-bigbtn.uw-keep{box-shadow:5px 5px 0 var(--uw-phx)}
#uwEnd a.uw-bigbtn{display:inline-flex;align-items:center;text-decoration:none}

/* ---------- saved ---------- */
#uwSaved{position:fixed;top:0;bottom:0;right:-370px;width:350px;z-index:5600;background:#fff;border-left:2.5px solid var(--uw-ink);transition:right .35s;display:flex;flex-direction:column;padding:18px}
#uwSaved.uw-open{right:0}
#uwSaved h2{font-family:var(--uw-disp);font-size:16px;margin-bottom:12px;display:flex;align-items:center;gap:8px}
#uwSaved h2 .uw-close{margin-left:auto}
#uwSavedList{flex:1;overflow-y:auto;list-style:none;overscroll-behavior:contain}
#uwSavedList li{display:flex;align-items:stretch;gap:4px}
#uwSavedList button{text-align:left;min-height:44px;padding:8px 10px;border-radius:9px;font-size:14px;font-weight:700;border-bottom:1px dashed rgba(0,52,41,.25);background:none;border-left:0;border-right:0;border-top:0}
#uwSavedList .uw-saved-go{flex:1}
#uwSavedList .uw-saved-rm{flex:0 0 44px;min-width:44px;text-align:center;font-size:20px;font-weight:400;color:var(--uw-mut);line-height:1}
#uwSavedList .uw-saved-rm:hover{color:#b3261e;background:rgba(179,38,30,.08)}
#uwSavedList button:hover{background:rgba(0,163,63,.1)}
#uwSavedList .uw-empty{display:block;width:100%}
#uwSavedList .uw-empty{color:var(--uw-mut);font-weight:500;font-size:14px;padding:10px;font-family:var(--uw-ui)}
#uwShareList{min-height:48px;border-radius:10px;background:var(--uw-phx);color:#001d17;font-family:var(--uw-disp);border:2px solid var(--uw-ink);box-shadow:3px 3px 0 var(--uw-ink);margin-top:12px;font-size:14px}

/* ---------- nudge · confirm · toast ---------- */
#uwNudge{position:fixed;left:22px;bottom:92px;z-index:5850;background:#fff;border:2.5px solid var(--uw-ink);box-shadow:5px 5px 0 var(--uw-orange);border-radius:14px;padding:16px 18px;max-width:min(23em,88vw);transform:rotate(-.6deg)}
#uwNudge b{font-family:var(--uw-disp);display:block;margin-bottom:6px;font-size:15px}
#uwNudge p{font-family:var(--uw-ui);font-size:13.5px;color:var(--uw-mut);line-height:1.5;margin-bottom:12px}
#uwNudge .uw-row{display:flex;gap:10px}
#uwConfirm{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-.5deg);z-index:5950;background:#fff;border:2.5px solid var(--uw-ink);box-shadow:6px 6px 0 var(--uw-phx);border-radius:14px;padding:22px 26px;text-align:center}
#uwConfirm h2{font-family:var(--uw-disp);font-size:18px;margin-bottom:16px}
#uwConfirm .uw-row{display:flex;gap:10px;justify-content:center}
#uwToast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);z-index:6100;background:var(--uw-ink);color:#fff;font-family:var(--uw-ui);font-weight:700;font-size:13.5px;padding:11px 18px;border-radius:10px;border:2px solid var(--uw-ink);opacity:0;visibility:hidden;transition:all .3s;max-width:88vw}
#uwToast.uw-on{opacity:1;visibility:visible;transform:translate(-50%,0)}
#uwScrim{position:fixed;inset:0;z-index:5500;background:rgba(0,52,41,.35);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
#uwScrim.uw-on{opacity:1;visibility:visible}

/* hide legacy chrome + walk arrows in story mode */
.uw-legacy-hide{display:none!important}
body.uw-story-on .ggskin_hotspot{visibility:hidden!important}
body.uw-popup-open #uwTop, body.uw-popup-open #uwScene, body.uw-popup-open #uwNav{opacity:0;visibility:hidden}

/* ---------- mobile ---------- */
body.uw-mobile #uwTop{gap:8px;padding:10px 12px}
body.uw-mobile #uwTop .uw-chip{min-width:44px;padding:0 12px}
body.uw-mobile #uwTop .uw-chip .uw-txt{display:none}
/* mobile keeps the client's #1 conversion (APPLY) and Share in the bar; the
   wordmark + Contact/Visit move to the menu footer (2026-08-18 audit) */
body.uw-mobile #uwTop .uw-wordmark,body.uw-mobile #uwTop #uwContact,body.uw-mobile #uwTop #uwVisit{display:none}
body.uw-mobile #uwTop #uwApply{min-height:40px;padding:0 12px;font-size:12px}
body.uw-mobile #uwLanding footer{right:84px}
body.uw-mobile #uwVidPause{bottom:12px;right:12px}
body.uw-mobile #uwScene{left:16px;bottom:96px;max-width:78vw}
body.uw-mobile #uwScene h2{font-size:22px}
body.uw-mobile #uwCap{padding:14px 16px}
body.uw-mobile #uwCap p{font-size:12.5px}
body.uw-mobile .uw-edge{width:20%;top:56px;bottom:150px}
body.uw-mobile .uw-edge svg{display:none}
body.uw-mobile #uwMenu{top:auto;left:0;right:0;bottom:-105%;width:auto;height:46%;border-right:0;border-top:3px solid var(--uw-ink);border-radius:20px 20px 0 0;transition:bottom .32s ease,height .32s ease}
body.uw-mobile #uwMenu.uw-open{left:0;bottom:0}
body.uw-mobile #uwMenu.uw-full{height:100%;border-radius:0;border-top:0}
body.uw-mobile #uwMenu .uw-grab{width:44px;height:5px;background:rgba(0,52,41,.3);border-radius:99px;margin:8px auto 2px;flex:none}
body.uw-mobile #uwMenu.uw-full .uw-grab{display:none}
body.uw-mobile #uwFilterWrap{display:none}
body.uw-mobile #uwMenu.uw-full #uwFilterWrap{display:flex}
body.uw-mobile #uwMap{padding:14px}
body.uw-mobile #uwSaved{top:auto;right:0;left:0;bottom:-105%;width:auto;max-height:62%;height:62%;border-left:0;border-top:3px solid var(--uw-ink);border-radius:20px 20px 0 0;transition:bottom .32s}
body.uw-mobile #uwSaved.uw-open{right:0;bottom:0}
body.uw-mobile #uwLanding .uw-bigbtn{width:100%;margin:0 0 12px;text-align:center}
body.uw-mobile #uwNudge{left:12px;right:12px;max-width:none;bottom:96px}
@media (prefers-reduced-motion: reduce){
  .uw-pulse{animation:none}
  #uwMenu,#uwSaved{transition:none}
}

/* ---------- a11y additions (2026-08-18 audit) ---------- */
/* WCAG 2.4.1 skip link: hidden until focused, then a visible pill */
.uw-skip{position:fixed;top:-60px;left:12px;z-index:9000;background:var(--uw-phx);color:#001d17;font-family:var(--uw-ui);font-weight:700;font-size:14px;padding:12px 18px;border:2px solid var(--uw-ink);border-radius:10px;box-shadow:3px 3px 0 var(--uw-ink);text-decoration:none;transition:top .15s}
.uw-skip:focus,.uw-skip:focus-visible{top:12px;outline:3px solid var(--uw-orange);outline-offset:2px}
/* WCAG 1.4.11 / forced colors: keep controls perceivable in Windows High Contrast */
@media (forced-colors: active){
  .uw-chip,.uw-cta,.uw-bigbtn,.uw-close,#uwZoomCtl button,#uwLblBtn,#uwAboutBtn{border:2px solid ButtonText;forced-color-adjust:none;background:ButtonFace;color:ButtonText}
  .uw-cta.uw-primary,.uw-bigbtn.uw-go{background:Highlight;color:HighlightText}
  #uwMapPoly polygon:hover,#uwMapPoly polygon.uw-hot,#uwMapPoly polygon:focus-visible{stroke:Highlight;fill:transparent}
  .uw-ui :is(button,a,[tabindex]):focus-visible{outline:3px solid Highlight}
}
/* WCAG 2.3.3 / 1.4: honor reduced motion across all UI transitions */
@media (prefers-reduced-motion: reduce){
  .uw-ui *,.uw-ui *::before,.uw-ui *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  .uw-pulse{animation:none}
}
/* text-version links (WCAG text-only route) */
#uwLanding footer a{color:rgba(255,255,255,.85);text-decoration:underline;text-underline-offset:3px;font-weight:700;padding:8px 0;display:inline-block;min-height:44px;line-height:28px}
#uwLanding footer a:hover{color:#fff}
.uw-textlink{display:inline-block;margin-top:12px;font-family:var(--uw-ui);font-weight:700;font-size:13px;color:var(--uw-green);text-decoration:underline;text-underline-offset:3px;min-height:44px;line-height:44px}
