@import url('/quad-loader.css');
@import url('/stop-assets.css');
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/cormorant-garamond-latin-400-normal.woff2') format('woff2')}@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/cormorant-garamond-latin-400-italic.woff2') format('woff2')}@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/cormorant-garamond-latin-500-normal.woff2') format('woff2')}@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/cormorant-garamond-latin-600-normal.woff2') format('woff2')}@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-latin-400-normal.woff2') format('woff2')}@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-latin-400-italic.woff2') format('woff2')}
*{box-sizing:border-box}body{margin:0;background:#172b24;color:#fbf7e8;font-family:system-ui,sans-serif}canvas{display:block;touch-action:none}#campus{height:100dvh;overflow:hidden}.campus-top{position:fixed;top:22px;left:24px;right:24px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;pointer-events:none}.campus-top>*{pointer-events:auto}.campus-brand small{font-size:9px;letter-spacing:.17em;color:#ece6d6;text-transform:uppercase}.campus-brand h1{font:35px/1.1 Georgia,serif;font-weight:400;margin:6px 0}.campus-badge{background:#13281dc9;backdrop-filter:blur(10px);border:1px solid #d6ddbd5c;border-radius:4px;padding:8px 12px;font-size:10px}.campus-bottom{position:fixed;bottom:24px;left:24px;right:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.tour-card{background:#13271ded;backdrop-filter:blur(12px);border:1px solid #b9c99a66;outline:1px solid #c8d4a82e;outline-offset:-5px;padding:25px;width:min(450px,100%);border-radius:5px}.tour-card .tour-num{font:10px/1 system-ui;letter-spacing:.17em;color:#d5d9b5}.tour-card h2{font:30px/1.1 Georgia,serif;margin:12px 0}.tour-card p{font:13px/1.55 Georgia,serif;color:#d5dac6}.campus-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:16px}.campus-button,.campus-select{border:1px solid #c2d2a577;background:#163624b5;color:#f5f1de;padding:9px 12px;border-radius:4px;font-size:10px;cursor:pointer;min-height:38px}.campus-button:hover,.campus-button.active{background:#d4d7b9;color:#193022}.campus-button:focus-visible,.campus-select:focus-visible{outline:3px solid #e8c680;outline-offset:3px}.campus-select option{color:#193022;background:#f7f8ef}.viewer-tools{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.source-line{position:fixed;bottom:5px;left:24px;color:#e2e7d2;font-size:9px;background:#142b22a8}.source-line a{color:inherit}.campus-status{display:flex;align-items:center;justify-content:center;height:100vh;color:#d5d7b4;font:24px Georgia,serif}.campus-stats{font:10px/1.6 monospace;color:#dde4ce;text-align:right;background:#152b23c9;padding:9px 11px;border-radius:4px}.touch-walk{display:none;gap:5px}.review-label{color:#efc88b;font-size:10px}.accessible-list{position:fixed;inset:8% 10%;z-index:10;background:#122c24;border:1px solid #8eac72;border-radius:8px;padding:30px;overflow:auto;box-shadow:0 0 0 200px #10291f99}.accessible-list h2{font:30px Georgia}.accessible-list li{margin:18px 0;line-height:1.5;font-size:13px}.accessible-list a{color:#dfdca7}[hidden]{display:none!important}@media(pointer:coarse){.touch-walk{display:flex}}@media(max-width:700px){.campus-top{left:15px;right:15px;top:16px}.campus-brand h1{font-size:25px}.campus-badge{font-size:9px}.campus-bottom{left:15px;right:15px;bottom:22px;display:block}.tour-card{padding:20px;width:100%;background:#13271deb}.tour-card h2{font-size:25px}.tour-card p{font-size:12px;max-height:60px;overflow:auto}.viewer-tools{position:fixed;right:15px;top:100px}.campus-stats{display:none}.accessible-list{inset:7% 5%;padding:23px}.campus-controls{margin-top:12px}.source-line{left:15px;font-size:8px}}

.tour-sources{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.tour-sources a{color:#c8d3b5;font-size:9px;text-decoration:none}.tour-sources a:hover{text-decoration:underline}.scenic-views{margin-top:0} @media(max-width:700px){.campus-badge{max-width:100px}.tour-card{max-height:46vh;overflow:auto}.viewer-tools{top:108px}.campus-top{gap:10px}.tour-card .campus-controls{gap:6px}.campus-button,.campus-select{min-height:42px}.scenic-views .campus-select{max-width:125px}}







.campus-loading{position:fixed;inset:0;z-index:100;background:#f5f3ed;display:grid;place-items:center}.campus-announcement{position:fixed;top:0;left:0;right:0;z-index:15;padding:9px 20px;background:var(--campus-accent,#7e233d);color:white;font-size:12px;text-align:center}.campus-announcement a{text-decoration:underline}.campus-announcement button{border:0;background:transparent;color:inherit;cursor:pointer;margin-left:15px}

.opening-extra{font:11px/1.6 Georgia,serif}.opening-extra blockquote{margin:12px 0;font-style:italic}.opening-extra cite{display:block;font-size:9px;margin-top:5px}.opening-extra small{display:block;color:#697060;font:9px/1.5 system-ui,sans-serif;margin-top:10px}.tour-fact{font-size:11px;padding:10px 0;color:#997449}

.configured-campus-tools{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;justify-content:flex-end}#campusMap{border:1px solid #91a77d;border-radius:5px;padding:0;overflow:hidden;cursor:pointer;background:#e8eddb}#campusMap canvas{width:180px;height:140px}.accessible-list a{color:inherit}.accessible-list li{margin:8px 0}@media(max-width:700px){#campusMap canvas{width:100px;height:78px}.configured-campus-tools .campus-button{font-size:9px;padding:5px}}

/* Inquiry cards fit their content, including the saved confirmation. */
.campus-inquiry{box-shadow:0 0 0 100vmax #10291f99;inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:min(620px,calc(100% - 48px));max-height:82vh;padding:30px}.campus-inquiry h2{font-size:32px;line-height:1.15;margin:20px 0 14px}.campus-inquiry p{font-size:15px;line-height:1.6}.campus-inquiry label{font-size:14px!important;line-height:1.5}.campus-inquiry input,.campus-inquiry textarea,.campus-inquiry select{font:15px system-ui}.campus-inquiry input:not([type=checkbox]),.campus-inquiry textarea,.campus-inquiry select{min-height:44px;border:1px solid #91a58b;border-radius:5px;padding:10px!important}.campus-inquiry input[type=checkbox]{width:17px;height:17px;margin-right:8px;vertical-align:middle}.campus-inquiry .campus-button{min-height:44px;font-size:14px;padding:10px 16px}.authored-campus .campus-inquiry{background:#fbf6ee;color:#31251f;border-color:#d2bfa7}.authored-campus .campus-inquiry input,.authored-campus .campus-inquiry textarea,.authored-campus .campus-inquiry select{background:#fffdf8;color:#31251f;border-color:#c8b19b}.authored-campus .campus-inquiry .campus-button{background:#fffaf1;color:#633f32;border-color:#b49b83}.authored-campus .campus-inquiry button[type=submit]{background:var(--campus-accent,#8c1515);color:white;border-color:var(--campus-accent,#8c1515)}@media(max-width:700px){.campus-inquiry{inset:auto;top:50%;left:50%;width:calc(100% - 32px);max-height:85vh;padding:22px}.campus-inquiry h2{font-size:28px}.campus-inquiry p{font-size:14px}}

/* Authored-campus editorial system: ink panels, gold rules, serif typography (self-hosted, OFL). */
.opening-head,.opening-times,.opening-links,#openingWalk,#walkHere,.stop-medallion,.tour-ornament,.tour-close,.controls-break,.tour-progress,.campus-frame{display:none}
.authored-campus{--ink:#15121a;--panel:rgba(21,18,26,.9);--gold:#d8ba7e;--gold-soft:#b89a62;--line:rgba(216,186,126,.42);--cream:#f7f0e3;--muted:#cdbfa6;--display:'Cormorant Garamond',Cormorant,Garamond,Georgia,serif;--book:'Libre Caslon Text',Baskerville,Georgia,serif;font-family:var(--book);background:#1b1714}
.authored-campus .campus-frame{display:block;position:fixed;inset:12px;z-index:1;pointer-events:none;border:1px solid var(--line);box-shadow:inset 0 0 0 4px transparent,inset 0 0 0 5px rgba(216,186,126,.16)}
.authored-campus .campus-frame i{position:absolute;width:9px;height:9px;border:1px solid var(--gold);background:var(--ink);transform:rotate(45deg)}.authored-campus .campus-frame i:nth-child(1){top:-5px;left:-5px}.authored-campus .campus-frame i:nth-child(2){top:-5px;right:-5px}.authored-campus .campus-frame i:nth-child(3){bottom:-5px;left:-5px}.authored-campus .campus-frame i:nth-child(4){bottom:-5px;right:-5px}
.authored-campus .campus-top{top:26px;left:34px;right:34px}
.authored-campus .campus-brand small{font:600 10px/1 var(--book);letter-spacing:.3em;color:#f0d9a8;text-shadow:0 1px 6px rgba(10,8,6,.8)}
.authored-campus .campus-brand h1{font:500 34px/1 var(--display);letter-spacing:.16em;color:var(--cream);margin:8px 0;text-shadow:0 2px 18px rgba(10,8,6,.55)}
/* A soft scrim keeps the wordmark readable over bright sky or busy treetops. */
.authored-campus .campus-brand h1{text-shadow:0 1px 2px rgba(8,6,5,.75),0 0 10px rgba(8,6,5,.45),0 2px 18px rgba(10,8,6,.55)}.authored-campus .campus-brand small{text-shadow:0 1px 2px rgba(8,6,5,.85),0 0 8px rgba(8,6,5,.6)}
.authored-campus .opening-kicker{text-shadow:0 1px 2px rgba(8,6,5,.85),0 0 8px rgba(8,6,5,.6)}
.authored-campus .campus-brand{position:relative;isolation:isolate}.authored-campus .campus-brand::before{content:'';position:absolute;inset:-30px -80px -28px -40px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 64% at 38% 52%,rgba(12,10,9,.5),rgba(12,10,9,.24) 52%,rgba(12,10,9,0) 100%)}
.authored-campus .campus-badge{margin-left:auto;background:rgba(120,22,24,.88);border:1px solid rgba(232,200,150,.55);border-radius:999px;padding:7px 14px;font:600 10px/1.2 var(--book);letter-spacing:.14em;text-transform:uppercase;color:#fbeedd}
.authored-campus .source-line{left:30px;bottom:18px;background:none;color:rgba(247,240,227,.78);font:10px var(--book);letter-spacing:.04em;text-shadow:0 1px 4px #000}
.authored-campus .campus-bottom{left:34px;right:34px;bottom:40px}
/* Tour card */
.authored-campus .tour-card{position:relative;width:min(470px,100%);background:linear-gradient(180deg,rgba(26,22,31,.95),rgba(17,15,21,.95));color:var(--cream);border:1px solid var(--line);outline:1px solid rgba(216,186,126,.16);outline-offset:-7px;border-radius:2px;padding:24px 28px 18px;box-shadow:0 30px 90px rgba(5,4,8,.55);backdrop-filter:none}
.authored-campus .tour-head{display:flex;gap:16px;align-items:center}
.authored-campus .stop-medallion{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:50%;border:1px solid var(--gold);box-shadow:inset 0 0 0 4px var(--ink),inset 0 0 0 5px rgba(216,186,126,.45);font:500 21px/1 var(--display);color:var(--gold);letter-spacing:.02em}
.authored-campus .tour-card .tour-num{font:600 10px/1.4 var(--book);letter-spacing:.24em;color:var(--gold-soft);text-transform:uppercase}
.authored-campus .tour-card h2{font:500 33px/1.04 var(--display);color:var(--cream);margin:4px 0 0;letter-spacing:.005em}
.authored-campus .tour-close{display:block;margin-left:auto;align-self:flex-start;background:none;border:0;color:var(--muted);font:300 26px/1 var(--display);cursor:pointer;padding:0 2px;min-width:28px;min-height:28px}
.authored-campus .tour-close:hover{color:var(--cream)}
.authored-campus .ornament{display:flex;align-items:center;gap:7px;margin:14px 0 12px}.authored-campus .ornament:before,.authored-campus .ornament:after{content:"";height:1px;width:52px;background:var(--gold-soft)}.authored-campus .ornament span{width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg)}
.authored-campus .tour-card p{font:14.5px/1.66 var(--book);color:#e9e1d1;margin:0}
.authored-campus .tour-fact{font:italic 17.5px/1.45 var(--display);color:#eadcbd;border-left:1px solid var(--gold-soft);padding:2px 0 2px 15px;margin:14px 0 4px}
.authored-campus #tourLinks a,.authored-campus .tour-sources a{font:16px var(--display);color:var(--cream);text-decoration:none;border:1px solid rgba(247,240,227,.32);border-radius:999px;padding:6px 15px}
.authored-campus #tourLinks a:hover,.authored-campus .tour-sources a:hover{border-color:var(--gold);background:rgba(216,186,126,.1)}
.authored-campus .tour-sources{margin-top:14px;gap:8px}
.authored-campus .review-label{font:italic 12px var(--display);color:var(--gold-soft);margin-top:12px;letter-spacing:.02em}
.authored-campus .tour-progress{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:18px 0 4px;padding-top:14px;border-top:1px solid rgba(216,186,126,.18)}
.authored-campus .progress-dot{width:10px;height:10px;padding:0;border:1px solid var(--gold-soft);background:transparent;transform:rotate(45deg);cursor:pointer}
.authored-campus .progress-dot.visited{background:var(--cream);border-color:var(--cream)}.authored-campus .progress-dot.current{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,186,126,.22),0 0 14px rgba(216,186,126,.6)}
.authored-campus .progress-dot:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.authored-campus .progress-end{width:9px;height:9px;border:1px solid var(--gold-soft);border-radius:50%}
.authored-campus .tour-card .campus-controls{gap:4px 14px;margin-top:12px;align-items:center}
.authored-campus .controls-break{display:block;flex-basis:100%;height:0}
.authored-campus .campus-button,.authored-campus .campus-select{font:600 10.5px var(--book);letter-spacing:.2em;text-transform:uppercase;border-radius:0;min-height:40px;color:var(--cream)}
.authored-campus .tour-card .campus-button,.authored-campus .tour-card .campus-select{background:none;border:0;padding:8px 2px}
.authored-campus .tour-card .campus-select{padding-right:4px;cursor:pointer}
.authored-campus .tour-card .campus-button:hover{background:none;color:var(--gold)}
.authored-campus #narrationToggle[aria-pressed=true]{color:var(--gold)}
.authored-campus #walkHere{display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--gold-soft)}
.authored-campus .tour-card #nextStop,.authored-campus .tour-card #campusCTA{margin-left:auto;background:var(--cream);color:var(--ink);border:1px solid var(--cream);outline:1px solid rgba(247,240,227,.45);outline-offset:3px;padding:12px 22px;display:inline-flex;align-items:center;text-decoration:none}
.authored-campus .tour-card #campusCTA{margin-left:0;background:var(--campus-accent,#8c1515);border-color:var(--campus-accent,#8c1515);color:#fff}
.authored-campus .tour-card #nextStop:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.authored-campus .campus-button:focus-visible,.authored-campus .campus-select:focus-visible,.authored-campus .text-link:focus-visible,.authored-campus .time-chip:focus-visible,.authored-campus .tour-close:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.authored-campus .tour-card.collapsed>*:not(.tour-head){display:none!important}.authored-campus .tour-card.collapsed{padding-bottom:22px}
/* Viewer tools: minimap and pills, top right */
.authored-campus .viewer-tools{position:fixed;top:70px;right:34px;gap:10px}
.authored-campus #campusMap{border:1px solid var(--line);border-radius:3px;background:#e9e1cc;box-shadow:0 18px 50px rgba(10,8,6,.45);outline:1px solid rgba(21,18,26,.6);outline-offset:-4px}
.authored-campus #campusMap canvas{width:210px;height:163px;display:block}
.authored-campus .viewer-tools .campus-button,.authored-campus .viewer-tools .campus-select{background:rgba(21,18,26,.82);border:1px solid var(--line);border-radius:999px;padding:8px 18px;font:500 16px var(--display);letter-spacing:.02em;text-transform:none;backdrop-filter:blur(6px)}
.authored-campus .viewer-tools .campus-button:hover,.authored-campus .viewer-tools .campus-button.active{background:var(--cream);color:var(--ink)}
.authored-campus .viewer-tools .campus-controls{margin-top:0;justify-content:flex-end}
.authored-campus .campus-select option{color:#1b1714;background:#f7f0e3}
/* Opening */
.authored-campus.campus-intro:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(17,14,20,.93) 0%,rgba(17,14,20,.84) 28%,rgba(17,14,20,.42) 47%,rgba(17,14,20,0) 63%),radial-gradient(ellipse at 70% 40%,transparent 50%,rgba(10,8,12,.35) 100%)}
.authored-campus.campus-intro .campus-brand,.authored-campus.campus-intro .viewer-tools,.authored-campus.campus-intro .stop-medallion,.authored-campus.campus-intro .tour-num,.authored-campus.campus-intro .tour-close,.authored-campus.campus-intro .tour-ornament,.authored-campus.campus-intro #tourFact,.authored-campus.campus-intro #tourLinks,.authored-campus.campus-intro #tourSources,.authored-campus.campus-intro .tour-progress,.authored-campus.campus-intro #prevStop,.authored-campus.campus-intro #walkHere,.authored-campus.campus-intro #languageChoice,.authored-campus.campus-intro #narrationToggle,.authored-campus.campus-intro #textTour,.authored-campus.campus-intro .controls-break,.authored-campus.campus-intro #stopAssets{display:none!important}
.authored-campus.campus-intro .tour-card{position:fixed;left:clamp(24px,4.4vw,72px);top:50%;transform:translateY(-50%);width:min(620px,46vw);max-height:calc(100vh - 60px);overflow:auto;background:none;border:0;outline:0;box-shadow:none;padding:0 10px;text-align:center;scrollbar-width:none}
.authored-campus.campus-intro .opening-head{display:flex;flex-direction:column;align-items:center}
.authored-campus .opening-emblem{width:250px;height:112px;fill:none;stroke:var(--gold);stroke-width:1.15;stroke-linejoin:round;stroke-linecap:round;margin-bottom:10px;overflow:visible}
.authored-campus .opening-kicker{display:flex;align-items:center;justify-content:center;gap:18px;font:500 13px/1.5 var(--display);letter-spacing:.3em;color:var(--gold);text-transform:uppercase;text-align:center;max-width:100%}.authored-campus .opening-kicker:before,.authored-campus .opening-kicker:after{content:"";width:34px;height:1px;background:var(--gold-soft)}
.authored-campus .opening-wordmark{font:400 clamp(56px,6.3vw,104px)/.98 var(--display);letter-spacing:.11em;margin:14px -.11em 0 0;color:var(--cream);text-shadow:0 4px 30px rgba(0,0,0,.45);white-space:nowrap}
.authored-campus.campus-intro .opening-head .ornament{margin:14px 0 8px}
.authored-campus.campus-intro .tour-card h2{font:italic 400 30px/1.2 var(--display);color:var(--cream);margin:6px 0 10px}
.authored-campus.campus-intro .tour-card p{font:16px/1.6 var(--book);color:#dcd1bd;max-width:470px;margin:0 auto}
.authored-campus .opening-extra{font:inherit}
.authored-campus.campus-intro .opening-extra blockquote{margin:18px auto 0;max-width:470px;font:italic 21px/1.35 var(--display);color:#efe4cf}
.authored-campus.campus-intro .opening-extra .quote-translation{display:block;font-size:16px;color:#d4c6ab;margin-top:2px}
.authored-campus.campus-intro .opening-extra cite{display:block;font:600 10px/1.4 var(--book);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-soft);margin-top:8px;font-style:normal}.authored-campus .opening-extra cite a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(216,186,126,.4)}
.authored-campus.campus-intro .opening-extra small{display:block;max-width:400px;margin:0 auto;color:#b9ad97;font:12px/1.55 var(--book);order:9}
.authored-campus.campus-intro .opening-times{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:24px 0 4px}
.authored-campus .time-chip{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;min-height:42px;background:rgba(247,240,227,.04);color:#efe6d4;border:1px solid rgba(216,186,126,.32);font:500 16px var(--display);cursor:pointer;border-radius:2px}
.authored-campus .time-chip i{width:13px;height:13px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:radial-gradient(circle at 35% 35%,#f3f6fb,#9fb3c8)}.authored-campus .time-chip[data-time=golden] i{background:radial-gradient(circle at 35% 35%,#ffe9bf,#d39a4d)}.authored-campus .time-chip[data-time=dusk] i{background:radial-gradient(circle at 35% 35%,#f0b0a3,#6a4f8c)}.authored-campus .time-chip[data-time=night] i{background:radial-gradient(circle at 35% 35%,#4c5d94,#141c3c)}
.authored-campus .time-chip[aria-pressed=true]{border-color:var(--gold);background:rgba(216,186,126,.16);color:var(--cream)}.authored-campus .time-chip:hover{border-color:var(--gold)}
.authored-campus.campus-intro .tour-card .campus-controls{flex-direction:column;align-items:center;gap:12px;margin-top:20px}
.authored-campus.campus-intro .tour-card #nextStop,.authored-campus.campus-intro #openingWalk{display:inline-flex;justify-content:center;margin:0;min-width:300px;padding:17px 30px;font:500 15px var(--display);letter-spacing:.3em;text-transform:uppercase}
.authored-campus.campus-intro #openingWalk{background:rgba(17,14,20,.4);color:var(--cream);border:1px solid var(--gold-soft);outline:1px solid rgba(216,186,126,.25);outline-offset:3px}.authored-campus.campus-intro #openingWalk:hover{background:rgba(216,186,126,.14)}
.authored-campus.campus-intro .opening-links{display:flex;justify-content:center;gap:28px;margin-top:20px}
.authored-campus .text-link{background:none;border:0;padding:4px 0;color:#e6dcc9;font:500 13px var(--display);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;border-bottom:1px solid rgba(216,186,126,.45)}.authored-campus .text-link:hover{color:var(--gold)}
.authored-campus.campus-intro .review-label{margin-top:16px;font-size:12.5px}
.authored-campus.campus-intro .opening-extra{display:flex;flex-direction:column;gap:14px}
.authored-campus.campus-intro .opening-extra small{margin-top:4px}
.authored-campus .accessible-list{background:#17141b;border:1px solid var(--line);border-radius:2px;color:var(--cream);font-family:var(--book);box-shadow:0 0 0 100vmax rgba(10,8,12,.7)}.authored-campus .accessible-list h2{font:500 34px var(--display)}.authored-campus .accessible-list a{color:var(--gold)}.authored-campus .accessible-list .campus-button{border:1px solid var(--line);background:none}
.authored-campus .campus-inquiry{font-family:var(--book)}.authored-campus .campus-inquiry h2{font:500 34px var(--display)}
@media(max-width:1100px){.authored-campus.campus-intro .tour-card{width:min(560px,58vw)}.authored-campus .opening-wordmark{font-size:clamp(50px,6.6vw,84px)}}
@media(max-width:700px){
.authored-campus .campus-frame{inset:7px}
.authored-campus .campus-top{top:16px;left:18px;right:18px}.authored-campus .campus-brand h1{font-size:24px}.authored-campus .campus-badge{font-size:8.5px;padding:6px 10px;max-width:none}
.authored-campus .campus-bottom{left:10px;right:10px;bottom:12px}
.authored-campus .tour-card{width:100%;max-height:52vh;overflow:auto;padding:16px 18px 12px}
.authored-campus .stop-medallion{flex-basis:42px;height:42px;font-size:17px}.authored-campus .tour-card h2{font-size:25px}.authored-campus .tour-card p{font-size:13.5px}.authored-campus .tour-fact{font-size:16px}
.authored-campus .ornament{margin:10px 0 9px}.authored-campus .tour-progress{gap:11px;margin-top:12px;padding-top:10px}
.authored-campus .tour-card .campus-controls{gap:0 12px}.authored-campus .tour-card #nextStop{padding:11px 16px}
.authored-campus .viewer-tools{top:60px;right:16px;gap:6px}.authored-campus #campusMap canvas{width:112px;height:87px}.authored-campus .viewer-tools .campus-select,.authored-campus .viewer-tools .campus-button{font-size:13px;padding:5px 11px;min-height:36px}.authored-campus .scenic-views .campus-select{max-width:150px}
.authored-campus.campus-intro:before{background:linear-gradient(0deg,rgba(17,14,20,.95) 0%,rgba(17,14,20,.86) 50%,rgba(17,14,20,.6) 66%,rgba(17,14,20,.22) 79%,rgba(17,14,20,0) 90%)}
.authored-campus.campus-intro .tour-card{left:16px;right:16px;width:auto;top:auto;bottom:26px;transform:none;max-height:none;overflow:visible;padding:0}
.authored-campus .opening-emblem{width:150px;height:68px;margin-bottom:4px}.authored-campus .opening-kicker{font-size:9.5px;letter-spacing:.22em;gap:10px}.authored-campus .opening-kicker:before,.authored-campus .opening-kicker:after{width:16px}
.authored-campus .opening-wordmark{font-size:52px;margin-top:8px}.authored-campus.campus-intro .opening-head .ornament{margin:8px 0 2px}
.authored-campus.campus-intro .tour-card h2{font-size:22px;margin:4px 0 6px}.authored-campus.campus-intro .tour-card p{font-size:13.5px}
.authored-campus.campus-intro .opening-extra blockquote{font-size:17px;margin-top:10px}.authored-campus.campus-intro .opening-extra .quote-translation{font-size:14px}.authored-campus.campus-intro .opening-extra small{font-size:10.5px}
.authored-campus.campus-intro .opening-times{gap:5px;margin-top:12px}.authored-campus .time-chip{font-size:13px;padding:5px 9px;min-height:36px;gap:6px}.authored-campus .time-chip i{width:10px;height:10px}
.authored-campus.campus-intro .tour-card .campus-controls{gap:9px;margin-top:12px}.authored-campus.campus-intro .tour-card #nextStop,.authored-campus.campus-intro #openingWalk{min-width:0;width:100%;padding:14px 12px;font-size:13px;letter-spacing:.22em}
.authored-campus.campus-intro .opening-links{gap:18px;margin-top:12px}.authored-campus .text-link{font-size:11px;letter-spacing:.16em}.authored-campus.campus-intro .review-label{margin-top:8px}
.authored-campus .source-line{left:16px;bottom:2px;font-size:8.5px}
}
@media(max-width:700px) and (max-height:760px){.authored-campus.campus-intro .opening-extra blockquote,.authored-campus.campus-intro .opening-emblem{display:none}}

.authored-campus.campus-intro .tour-card{display:flex;flex-direction:column;align-items:center}.authored-campus.campus-intro .tour-head{display:block}.authored-campus.campus-intro .opening-extra{display:contents}.authored-campus.campus-intro .opening-extra small{order:1;margin-top:18px}.authored-campus.campus-intro .review-label{order:2}
.authored-campus .tour-card .campus-controls{gap:2px 16px}.authored-campus .tour-card #languageChoice,.authored-campus .tour-card #narrationToggle,.authored-campus .tour-card #textTour{font-size:10px;letter-spacing:.16em;color:#ddd1bb}
.authored-campus .touch-walk{display:none!important}@media(pointer:coarse){.authored-campus.campus-walking .touch-walk,.authored-campus.campus-vehicle .touch-walk{display:flex!important}}
@media(max-width:700px){
.authored-campus .opening-emblem{display:none}.authored-campus .campus-brand small{display:none}.authored-campus .campus-brand h1{font-size:21px;margin:2px 0}.authored-campus .campus-badge{white-space:nowrap;font-size:8px;letter-spacing:.1em}
.authored-campus .viewer-tools{top:54px;right:14px}.authored-campus #campusMap canvas{width:96px;height:75px}.authored-campus .viewer-tools #timeOfDay{display:none}.authored-campus .viewer-tools .campus-controls{gap:6px}
.authored-campus .tour-card{max-height:50vh}.authored-campus .tour-card #campusCTA{width:100%;justify-content:center;margin-top:6px}
}
.authored-campus .configured-campus-tools{flex-direction:column;align-items:flex-end;gap:8px;margin-bottom:0}.authored-campus .configured-campus-tools #campusMap{order:-1}.authored-campus .configured-campus-tools .campus-button{min-height:38px}

.campus-bottom{pointer-events:none}.campus-bottom>*{pointer-events:auto}
/* Vehicles */
.vehicle-hud{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:4;display:flex;align-items:center;gap:16px;padding:10px 12px 10px 20px;background:rgba(21,18,26,.88);border:1px solid rgba(216,186,126,.42);color:#f7f0e3;font:15px Georgia,serif;border-radius:999px;box-shadow:0 14px 40px rgba(5,4,8,.4);backdrop-filter:blur(6px);max-width:calc(100% - 24px)}
.vehicle-hud .vehicle-keys{font:11px/1.3 system-ui,sans-serif;letter-spacing:.06em;color:#cdbfa6}.vehicle-hud .campus-button{border-radius:999px;background:#f7f0e3;color:#15121a;border-color:#f7f0e3;min-height:36px;padding:6px 16px}
.authored-campus .vehicle-hud{font-family:var(--display);font-size:18px}.authored-campus .vehicle-hud .campus-button{font:600 10.5px var(--book);letter-spacing:.18em;text-transform:uppercase}
.touch-heli{display:none}.campus-heli .touch-heli{display:inline-flex}
.campus-vehicle .tour-card .campus-controls,.campus-vehicle .tour-progress{display:none}
@media(pointer:coarse){.campus-vehicle .touch-walk{display:flex}}
@media(max-width:700px){.vehicle-hud{bottom:auto;top:58px;left:12px;right:auto;transform:none;font-size:13px;gap:8px;padding:6px 6px 6px 12px}.vehicle-hud .vehicle-keys{display:none}.authored-campus .vehicle-hud{font-size:14px}.campus-vehicle .campus-bottom{display:none}}
.authored-campus .vehicle-hud .campus-button,.vehicle-hud .campus-button{background:#f7f0e3!important;color:#15121a!important;border-color:#f7f0e3!important}.campus-vehicle .tour-card{display:none}

/* Long wordmarks and kickers stay inside the opening column. */
.authored-campus .opening-kicker span{flex:0 1 auto;min-width:0;white-space:normal;text-wrap:balance}
.authored-campus .opening-wordmark.long{font-size:clamp(40px,4.5vw,76px);letter-spacing:.08em;margin-right:-.08em}
.authored-campus .opening-wordmark.xlong{font-size:clamp(34px,3.6vw,60px);letter-spacing:.06em;white-space:normal}
@media(max-width:700px){.authored-campus .opening-wordmark.long{font-size:38px}.authored-campus .opening-wordmark.xlong{font-size:30px}}
/* Tour cards with many sources scroll inside the frame instead of running off screen. */
@media(min-width:701px){.authored-campus .tour-card{max-height:calc(100vh - 56px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}

.tour-more-sources{background:none;border:1px dashed var(--line,rgba(255,255,255,.25));border-radius:999px;color:inherit;font:inherit;font-size:12px;opacity:.8;padding:6px 14px;cursor:pointer}.tour-more-sources:hover{opacity:1}

/* Building labels and info cards */
.campus-labels{position:fixed;inset:0;pointer-events:none;z-index:4;overflow:hidden}
.campus-label{position:absolute;left:0;top:0;pointer-events:auto;display:inline-flex;align-items:center;gap:7px;max-width:260px;padding:5px 11px 5px 10px;border:1px solid rgba(255,248,232,.35);border-radius:999px;background:rgba(18,16,22,.66);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbf5e8;font:500 12.5px/1.15 var(--display,Georgia),serif;letter-spacing:.02em;white-space:nowrap;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:opacity .25s}
.campus-label span{overflow:hidden;text-overflow:ellipsis}
.campus-label b{font:600 10.5px/1 system-ui,sans-serif;letter-spacing:.06em;color:var(--gold,#c9a95b);border-right:1px solid rgba(255,248,232,.25);padding-right:7px}
.campus-label:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:12px;background:linear-gradient(rgba(255,248,232,.55),rgba(255,248,232,0))}
.campus-label.major{font-size:14px;padding:6px 13px;border-color:var(--gold-soft,rgba(201,169,91,.8))}
.campus-label:hover,.campus-label:focus-visible{background:rgba(18,16,22,.9);outline:2px solid var(--gold,#c9a95b);outline-offset:2px}
.building-card{position:fixed;right:clamp(16px,2vw,28px);bottom:clamp(16px,3vh,32px);z-index:6;width:min(360px,calc(100vw - 32px));max-height:min(60vh,520px);overflow:auto;padding:18px 20px 16px;border:1px solid var(--line,rgba(255,255,255,.2));border-radius:14px;background:linear-gradient(180deg,rgba(26,22,31,.96),rgba(17,15,21,.96));color:#f7f0e3;font:14px/1.5 system-ui,sans-serif;box-shadow:0 18px 50px rgba(0,0,0,.4)}
.building-card h2{font:500 24px/1.12 var(--display,Georgia),serif;margin:4px 0 8px}
.building-card p{margin:0 0 9px}.building-card ul{margin:4px 0 10px;padding-left:18px}.building-card li{margin:3px 0}
.building-card a{color:var(--gold,#c9a95b);text-decoration:none}.building-card a:hover{text-decoration:underline}
.building-card-kicker{font:600 10.5px/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gold,#c9a95b);display:flex;gap:8px;align-items:center}
.building-card-kicker span{border:1px solid var(--gold-soft,rgba(201,169,91,.7));border-radius:4px;padding:1px 6px;letter-spacing:.06em}
.building-card-meta{color:#cfc6b5;font-size:12.5px}
.building-card-close{position:absolute;top:8px;right:10px;background:none;border:0;color:#f7f0e3;font-size:22px;cursor:pointer;line-height:1}
@media(max-width:700px){.building-card{bottom:auto;top:76px;max-height:44vh}.campus-label{font-size:11.5px;padding:4px 9px}}

/* Lore, trivia and missions */
.tour-lore{margin:10px 0 0;padding:10px 12px;border-left:2px solid var(--gold,#c9a95b);background:rgba(255,248,232,.05);font-style:italic;font-size:14px;line-height:1.5}
/* The story panels show in full (the generic .tour-card p rule caps paragraphs at 60px on phones). */
.tour-card .tour-lore,.tour-card .tour-adventure,.tour-card .tour-quiz p{max-height:none;overflow:visible}
.tour-adventure{margin:10px 0 0;padding:10px 12px;border-left:2px solid var(--campus-accent,#8c1515);background:rgba(255,248,232,.04);font-size:14px;line-height:1.5}
.tour-adventure span{display:block;font:600 10px/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#e9d9b4;margin-bottom:3px}
#tourBody{white-space:pre-line}
.tour-lore span{display:block;font:600 10px/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:var(--gold,#c9a95b);margin-bottom:3px}
.tour-quiz{margin:12px 0 0;padding:12px;border:1px solid var(--line,rgba(255,255,255,.18));border-radius:10px;background:rgba(255,248,232,.04)}
.quiz-kicker{margin:0 0 4px;font:600 10px/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gold,#c9a95b)}
.quiz-q{margin:0 0 8px;font-size:14.5px;line-height:1.4}
.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.quiz-options button{padding:8px 10px;border:1px solid var(--line,rgba(255,255,255,.2));border-radius:8px;background:rgba(255,255,255,.04);color:inherit;font:13px/1.3 system-ui,sans-serif;text-align:left;cursor:pointer}
.quiz-options button:hover:not(:disabled){border-color:var(--gold,#c9a95b)}
.quiz-options button.right{border-color:#5fa36b;background:rgba(95,163,107,.22)}.quiz-options button.wrong{border-color:#b85a4f;background:rgba(184,90,79,.2)}
.quiz-options button:disabled{cursor:default;opacity:.92}
.quiz-explain{margin:8px 0 0;font-size:13px;color:#d9cfbd}
.mission-panel{position:fixed;right:clamp(16px,2vw,28px);top:clamp(240px,30vh,300px);z-index:6;width:min(380px,calc(100vw - 32px));max-height:min(62vh,560px);overflow:auto;padding:18px 20px 14px;border:1px solid var(--line,rgba(255,255,255,.2));border-radius:14px;background:linear-gradient(180deg,rgba(26,22,31,.97),rgba(17,15,21,.97));color:#f7f0e3;font:14px/1.45 system-ui,sans-serif;box-shadow:0 18px 50px rgba(0,0,0,.4)}
.mission-panel h2{font:500 23px/1.15 var(--display,Georgia),serif;margin:2px 0 10px}
.mission-kicker{margin:0;font:600 10.5px/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gold,#c9a95b)}
.mission-panel ol{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mission-panel li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}
.mission-panel li p{margin:2px 0 0;font-size:12.5px;color:#cfc6b5}.mission-panel li small{color:var(--gold,#c9a95b);font-weight:600}
.mission-check{width:20px;height:20px;border:1px solid var(--gold-soft,rgba(201,169,91,.7));border-radius:50%;display:grid;place-items:center;font-size:12px;color:#15121a;margin-top:2px}
.mission-panel li.done .mission-check{background:var(--gold,#c9a95b)}
.mission-reward{color:#f1e3bf!important}.mission-reward a{color:var(--gold,#c9a95b)}
.mission-note{margin:12px 0 0;font-size:11.5px;color:#a89f90}
.mission-close{position:absolute;top:8px;right:10px;background:none;border:0;color:#f7f0e3;font-size:22px;cursor:pointer}
.mission-toast{position:fixed;left:50%;bottom:clamp(90px,14vh,140px);z-index:8;transform:translateX(-50%);max-width:min(560px,calc(100vw - 32px));padding:12px 18px;border:1px solid var(--gold-soft,rgba(201,169,91,.8));border-radius:12px;background:rgba(17,15,21,.95);color:#f7f0e3;font:14px/1.45 system-ui,sans-serif;box-shadow:0 14px 40px rgba(0,0,0,.45);text-align:center}
.mission-toast strong{color:var(--gold,#c9a95b);margin-right:6px}.mission-toast span{display:block;margin-top:4px;font-size:13px;color:#e9dcc0}
.mission-toast.show{animation:missionIn .5s ease-out}@keyframes missionIn{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@media(prefers-reduced-motion:reduce){.mission-toast.show{animation:none}}
@media(max-width:700px){.quiz-options{grid-template-columns:1fr}.mission-panel{top:76px;max-height:52vh}}
/* Vehicle readouts (mph, feet above ground), sound toggle and transient hints, after the reference HUD. */
.vehicle-readout{display:flex;align-items:baseline;gap:5px;font:600 22px/1 var(--display,Georgia),serif;font-variant-numeric:tabular-nums;color:#fff8ea}.vehicle-readout small{font:600 9.5px var(--book,system-ui),sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#cdbfa6;margin-right:10px}.vehicle-readout[hidden],#vehicleAltBox[hidden]{display:none}#vehicleAltBox{display:flex;align-items:baseline;gap:5px}
.vehicle-hud .vehicle-sound{background:transparent!important;color:#f7f0e3!important;border-color:rgba(247,240,227,.45)!important}
.vehicle-toast{position:fixed;left:50%;top:84px;transform:translateX(-50%);z-index:5;max-width:min(520px,calc(100vw - 32px));padding:12px 20px;background:rgba(21,18,26,.9);border:1px solid rgba(216,186,126,.42);border-radius:14px;color:#f7f0e3;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.3);pointer-events:none}.vehicle-toast strong{display:block;font:500 20px var(--display,Georgia),serif}.vehicle-toast span{display:block;margin-top:4px;font:12px/1.45 var(--book,system-ui),sans-serif;color:#d8ccb6}.vehicle-toast[hidden]{display:none}
@media(max-width:700px){.vehicle-readout{font-size:16px}.vehicle-readout small{margin-right:6px}.vehicle-toast{top:auto;bottom:150px}}
@media(max-width:1180px){.vehicle-hud .vehicle-keys{display:none}}

/* ---- Tour navigation (nav-kit): story card, chapter bar and tool rail stay out of the view ---------------------- */
.campus-nav.authored-campus .campus-bottom{left:34px;right:34px;bottom:26px}
.campus-nav.authored-campus:not(.campus-intro) .tour-card{width:min(420px,calc(100vw - 68px));max-height:calc(100vh - 168px);padding:20px 24px 14px;background:linear-gradient(180deg,rgba(24,20,29,.9),rgba(16,14,20,.88));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .35s ease,opacity .35s ease}
.campus-nav.authored-campus:not(.campus-intro) .tour-card h2{font-size:30px}
.campus-nav.authored-campus:not(.campus-intro) .tour-card p{font-size:14px;line-height:1.62}
.campus-nav.authored-campus:not(.campus-intro) .tour-card .campus-controls{margin-top:10px}
.campus-nav .story-fold{display:grid!important;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line)!important;color:var(--muted)!important}
.campus-nav .story-fold:hover{color:var(--ink)!important;background:var(--cream)!important}
.campus-nav .tour-card.collapsed .story-fold{transform:rotate(180deg)}
.campus-nav.authored-campus .tour-card.collapsed{padding:12px 16px 12px 12px;width:auto;max-width:min(420px,calc(100vw - 68px))}
.campus-nav.authored-campus .tour-card.collapsed .stop-medallion{flex-basis:40px;height:40px;font-size:16px}.campus-nav.authored-campus .tour-card.collapsed h2{font-size:22px}
.campus-nav .story-foot{display:flex;flex-wrap:wrap;align-items:center;gap:2px 16px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(216,186,126,.16)}
.campus-nav .story-foot .campus-button,.campus-nav .story-foot .campus-select{background:none;border:0;padding:6px 0;min-height:32px;font:600 9.5px var(--book);letter-spacing:.17em;text-transform:uppercase;color:#d9ccb4}
.campus-nav .story-foot .campus-button:hover{color:var(--gold)}
.campus-nav.campus-intro .story-foot{display:none}
.nav-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.nav-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Chapter bar */
.chapter-bar{position:fixed;z-index:3;bottom:26px;left:calc(34px + min(420px,calc(100vw - 68px)) + 18px);right:34px;display:flex;align-items:center;gap:16px;min-height:56px;padding:6px 8px 6px 18px;background:rgba(18,15,22,.74);border:1px solid var(--line);border-radius:2px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 50px rgba(5,4,8,.35);color:var(--cream);transition:opacity .3s ease}
.campus-intro .chapter-bar,.campus-vehicle .chapter-bar{display:none}
.chapter-now{display:flex;flex-direction:column;min-width:0;flex:0 1 220px}
.chapter-count{font:600 9.5px/1.2 var(--book);letter-spacing:.26em;color:var(--gold-soft)}
.chapter-title{font:500 18px/1.15 var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chapter-track{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0;justify-content:flex-end}
.campus-nav.authored-campus .chapter-track .tour-progress{display:flex;flex:1 1 auto;justify-content:center;flex-wrap:nowrap;gap:clamp(6px,.75vw,13px);margin:0;padding:0;border:0;min-width:0;overflow:hidden}
.chapter-track .progress-dot{flex:0 0 auto}
.chapter-next-label{font:italic 15px/1.2 var(--display);color:#d9ccb4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px;flex:0 1 auto}
.campus-nav .chapter-step{display:grid!important;place-items:center;width:40px;height:40px;padding:0!important;border:1px solid var(--line)!important;border-radius:50%!important;background:none!important;color:var(--cream)!important;flex:0 0 auto}
.campus-nav .chapter-step:hover{background:var(--cream)!important;color:var(--ink)!important}
.campus-nav.authored-campus .chapter-track #nextStop{margin:0;flex:0 0 auto;background:var(--cream);color:var(--ink);border:1px solid var(--cream);outline:1px solid rgba(247,240,227,.4);outline-offset:3px;padding:11px 20px;font:600 10.5px var(--book);letter-spacing:.2em;text-transform:uppercase;min-height:40px;border-radius:0}
.campus-nav.authored-campus .chapter-track #nextStop:hover{background:var(--gold);border-color:var(--gold)}
/* Tool rail */
.campus-nav.authored-campus .viewer-tools{top:66px;right:28px;gap:10px;align-items:flex-end}
.campus-nav.authored-campus #campusMap canvas{width:176px;height:137px}
.tool-rail{display:flex;flex-direction:column;align-items:flex-end;gap:8px;transition:opacity .3s ease}
.rail-group{display:flex;flex-direction:column;gap:8px;padding:6px 0;border-top:1px solid rgba(216,186,126,.2);border-bottom:1px solid rgba(216,186,126,.2)}
.campus-nav .rail-btn,.campus-nav.authored-campus .viewer-tools .rail-btn{position:relative;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0!important;border-radius:50%!important;background:rgba(18,15,22,.78)!important;border:1px solid var(--line)!important;color:var(--cream)!important;font-size:0!important;letter-spacing:0!important;backdrop-filter:blur(6px);cursor:pointer;box-shadow:0 8px 24px rgba(5,4,8,.3)}
.campus-nav .rail-btn:hover,.campus-nav .rail-btn:focus-visible,.campus-nav .rail-btn[aria-expanded=true]{background:var(--cream)!important;color:var(--ink)!important}
.campus-nav .rail-btn.active,.campus-nav .rail-btn[aria-pressed=true]:not(#labelToggle){background:var(--gold)!important;color:var(--ink)!important;border-color:var(--gold)!important}
.campus-nav #labelToggle[aria-pressed=false]{opacity:.6}
.campus-nav .rail-btn[data-tip]:hover:after,.campus-nav .rail-btn[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);white-space:nowrap;padding:6px 11px;background:rgba(18,15,22,.92);border:1px solid var(--line);color:var(--cream);font:500 15px/1 var(--display);letter-spacing:.01em;pointer-events:none;border-radius:2px}
.campus-nav .rail-btn[data-badge]:before{content:attr(data-badge);position:absolute;top:-6px;right:-8px;padding:2px 5px;background:var(--gold);color:var(--ink);font:700 9px/1 system-ui,sans-serif;border-radius:999px}
.rail-pop-wrap{position:relative}
.rail-pop{position:absolute;right:calc(100% + 12px);top:0;min-width:210px;padding:10px;background:rgba(18,15,22,.95);border:1px solid var(--line);box-shadow:0 18px 50px rgba(5,4,8,.45);z-index:6;border-radius:2px}
.rail-pop-title{margin:2px 6px 8px;font:600 9.5px var(--book);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-soft)}
.rail-pop button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;background:none;border:0;color:var(--cream);font:500 17px var(--display);text-align:left;cursor:pointer;border-radius:2px}
.rail-pop button:hover,.rail-pop button:focus-visible{background:rgba(216,186,126,.14);outline:none}
.rail-pop button[aria-checked=true]{color:var(--gold)}
.rail-pop button[disabled]{opacity:.4;cursor:default}
.time-dot{width:13px;height:13px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:radial-gradient(circle at 35% 35%,#f3f6fb,#9fb3c8)}.time-dot.golden{background:radial-gradient(circle at 35% 35%,#ffe9bf,#d39a4d)}.time-dot.dusk{background:radial-gradient(circle at 35% 35%,#f0b0a3,#6a4f8c)}.time-dot.night{background:radial-gradient(circle at 35% 35%,#4c5d94,#141c3c)}
.keys-help{min-width:280px}.keys-help dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0 6px 4px;font:13px/1.35 var(--book);color:#e9e1d1}.keys-help dt{font:600 11px var(--book);letter-spacing:.08em;color:var(--gold)}.keys-help dd{margin:0}
.nav-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;border:0!important;opacity:0;overflow:hidden;pointer-events:none}
.nav-native:focus{position:static!important;width:auto!important;height:auto!important;min-height:40px!important;padding:8px 14px!important;opacity:1;pointer-events:auto;border:1px solid var(--gold)!important}
.rail-toggle{display:none}
/* Looking around and hiding the interface */
.campus-looking .chapter-bar,.campus-looking .tool-rail,.campus-looking .rail-map,.campus-looking .campus-labels{opacity:.28}
.campus-ui-hidden .campus-bottom,.campus-ui-hidden .viewer-tools,.campus-ui-hidden .campus-top,.campus-ui-hidden .campus-labels,.campus-ui-hidden .source-line,.campus-ui-hidden .campus-frame,.campus-ui-hidden .chapter-bar,.campus-ui-hidden .mission-panel{opacity:0!important;pointer-events:none!important}
.campus-ui-hidden .vehicle-hud{opacity:1}
.show-interface{position:fixed;right:24px;bottom:22px;z-index:8;padding:10px 18px;background:rgba(18,15,22,.82);border:1px solid rgba(216,186,126,.45);color:#f7f0e3;font:600 10.5px 'Libre Caslon Text',Georgia,serif;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:999px}
@media(max-width:1180px){.chapter-next-label{display:none}.chapter-now{flex-basis:170px}}
@media(max-width:960px) and (min-width:701px){.campus-nav.authored-campus:not(.campus-intro) .tour-card{width:340px}.chapter-bar{left:calc(34px + 340px + 14px)}.campus-nav.authored-campus .chapter-track .tour-progress{display:none}}
@media(prefers-reduced-motion:reduce){.chapter-bar,.tool-rail,.campus-nav .tour-card{transition:none}}
/* Phones: story as a bottom sheet above a compact chapter bar; tools behind one Explore button. */
@media(max-width:700px){
.campus-nav.authored-campus .campus-bottom{left:10px;right:10px;bottom:72px}
.campus-nav.authored-campus:not(.campus-intro) .tour-card{width:100%;max-width:none;max-height:38vh;padding:14px 16px 10px}
.campus-nav.authored-campus:not(.campus-intro) .tour-card h2{font-size:22px}
.campus-nav.authored-campus .tour-card.collapsed{width:100%;max-width:none}
.chapter-bar{left:10px;right:10px;bottom:10px;min-height:52px;padding:5px 6px 5px 14px;gap:8px}
.campus-nav.authored-campus .chapter-track .tour-progress,.chapter-next-label{display:none}
.chapter-now{flex:1 1 auto}.chapter-title{font-size:16px}
.campus-nav.authored-campus .chapter-track #nextStop{padding:10px 14px;font-size:9.5px;letter-spacing:.14em}
.campus-nav.authored-campus .viewer-tools{top:52px;right:12px}
.campus-nav.authored-campus #campusMap canvas{width:92px;height:72px}
.rail-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;min-height:38px;background:rgba(18,15,22,.82);border:1px solid var(--line);color:var(--cream);font:600 10px var(--book);letter-spacing:.16em;text-transform:uppercase;border-radius:999px}
.tool-rail{display:none}.tool-rail.open{display:grid;grid-template-columns:repeat(4,44px);gap:8px;padding:10px;background:rgba(18,15,22,.92);border:1px solid var(--line);border-radius:4px}
.tool-rail.open .rail-group{display:contents}
.campus-nav .rail-btn[data-tip]:hover:after{display:none}
.rail-pop{right:auto;left:0;top:calc(100% + 8px);min-width:200px}
.campus-intro .rail-toggle{display:none}
.show-interface{bottom:auto;top:14px;right:14px}
}

/* Building labels: a pill on a stem, pinned to the roof it names; placement follows the camera every frame. */
.campus-labels .campus-label{position:absolute;left:0;top:0;width:0;height:0;padding:0;margin:0;border:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;opacity:var(--fade,1);transition:opacity .25s ease;will-change:transform}
.campus-labels .campus-label:after{display:none}
.campus-labels .campus-label.entering,.campus-labels .campus-label.leaving{opacity:0}
.campus-labels .label-pill{position:absolute;left:0;bottom:22px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:7px;max-width:270px;padding:6px 12px 6px 11px;border:1px solid rgba(255,248,232,.42);border-radius:999px;background:rgba(14,12,18,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fffaf0;font:500 13.5px/1.15 var(--display,Georgia),serif;letter-spacing:.015em;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.35);pointer-events:auto;cursor:pointer;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.campus-labels .label-pill span{overflow:hidden;text-overflow:ellipsis}
.campus-labels .label-pill b{font:700 10.5px/1 system-ui,sans-serif;letter-spacing:.06em;color:var(--gold,#d8ba7e);border-right:1px solid rgba(255,248,232,.28);padding-right:7px}
.campus-labels .label-stem{position:absolute;left:-.5px;bottom:4px;width:1px;height:18px;background:linear-gradient(rgba(255,248,232,.85),rgba(255,248,232,.25))}
.campus-labels .label-pin{position:absolute;left:-3.5px;top:-7px;width:7px;height:7px;border-radius:50%;background:#fffaf0;box-shadow:0 0 0 2px rgba(14,12,18,.55)}
.campus-labels .campus-label.major .label-pill{font-size:15px;padding:7px 14px;border-color:rgba(216,186,126,.75)}
.campus-labels .campus-label.current .label-pill{background:rgba(216,186,126,.96);color:#15121a;border-color:#f3dfb4;text-shadow:none}
.campus-labels .campus-label.current .label-pill b{color:#5a3f1c;border-color:rgba(21,18,26,.25)}
.campus-labels .campus-label.current .label-stem{background:linear-gradient(#f3dfb4,rgba(243,223,180,.35))}.campus-labels .campus-label.current .label-pin{background:#f3dfb4}
.campus-labels .label-pill:hover,.campus-labels .label-pill:focus-visible{outline:2px solid var(--gold,#d8ba7e);outline-offset:2px}
@media(max-width:700px){.campus-labels .label-pill{font-size:12px;padding:5px 10px;max-width:200px}.campus-labels .campus-label.major .label-pill{font-size:13px}}
@media(prefers-reduced-motion:reduce){.campus-labels .campus-label{transition:none}}
/* Story card sources read as a cited line rather than a stack of chips. */
.campus-nav.authored-campus:not(.campus-intro) #tourSources{display:block;margin-top:12px;font:12px/1.6 var(--book);color:#cdbfa6}
.campus-nav.authored-campus:not(.campus-intro) #tourSources:empty{display:none}
.campus-nav.authored-campus:not(.campus-intro) #tourSources:before{content:attr(data-label);display:block;margin-bottom:2px;font:600 9px/1.4 var(--book);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft)}
.campus-nav.authored-campus:not(.campus-intro) #tourSources a{display:inline;margin-right:12px;padding:0;border:0;border-radius:0;font:12.5px/1.6 var(--book);color:#e9e1d1;text-decoration:underline;text-decoration-color:rgba(216,186,126,.45);text-underline-offset:3px}
.campus-nav.authored-campus:not(.campus-intro) #tourSources a:hover{background:none;color:var(--gold)}
.campus-nav.authored-campus:not(.campus-intro) #tourSources .tour-more-sources{display:inline;padding:0;border:0;font:italic 13px var(--display);text-decoration:underline;text-underline-offset:3px}
.campus-nav.authored-campus:not(.campus-intro) #tourLinks{margin-top:12px;gap:6px}
.campus-nav.authored-campus:not(.campus-intro) #tourLinks a{font-size:14.5px;padding:5px 12px}
.campus-nav .story-foot{gap:2px 13px}.campus-nav .story-foot .campus-button,.campus-nav .story-foot .campus-select{letter-spacing:.13em;font-size:9px}
.story-more{display:none}
@media(max-width:700px){
.campus-nav.authored-campus:not(.campus-intro) .tour-card{max-height:31vh}
.campus-nav.authored-campus:not(.campus-intro) .tour-card.expanded{max-height:64vh}
.campus-nav .story-more{display:block;position:sticky;top:0;margin:6px 0 4px auto;padding:4px 0;background:none;border:0;color:var(--gold);font:600 9px var(--book);letter-spacing:.2em;text-transform:uppercase;cursor:pointer}
.campus-intro .story-more,.tour-card.collapsed .story-more{display:none!important}
.campus-nav.authored-campus .source-line{top:46px;bottom:auto;left:18px;right:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px;cursor:pointer;z-index:3}
.campus-nav.authored-campus .source-line.open{white-space:normal;right:18px;background:rgba(14,12,18,.92);padding:8px 10px;border:1px solid var(--line);font-size:10px}
.campus-nav.authored-campus.campus-intro .source-line{top:auto;bottom:4px;right:18px}
}
@media(max-width:700px){
.campus-nav.authored-campus .source-line{top:auto;bottom:3px;left:14px;right:14px}
.campus-nav.authored-campus .source-line.open{bottom:3px}
.chapter-bar{bottom:20px}
.campus-nav.authored-campus .campus-bottom{bottom:82px}
}
.campus-nav .story-foot{flex-wrap:wrap;gap:0 11px}.campus-nav .story-foot .campus-button,.campus-nav .story-foot .campus-select{letter-spacing:.1em;white-space:nowrap}
.control-link{margin-left:auto;margin-right:10px;display:inline-flex;align-items:center;padding:7px 14px;border:1px solid rgba(232,200,150,.55);border-radius:999px;background:rgba(18,15,22,.72);color:#fbeedd;font:600 10px/1.2 'Libre Caslon Text',Georgia,serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;backdrop-filter:blur(6px)}
.control-link:hover{background:#f7f0e3;color:#15121a}
.control-link+.campus-badge{margin-left:0}
.opening-control{display:none;text-decoration:none}@media(max-width:700px){.control-link{display:none}.opening-control{display:inline-block}}
/* Cramped viewports (Studio's preview pane, small landscape windows): the opening card reaches the top bar, so the
   provenance badge yields to it during the opening; the card itself carries the same independent-preview disclaimer. */
@media(max-height:700px) and (max-width:960px){.authored-campus.campus-intro .campus-top{opacity:0;pointer-events:none}}
/* Building-card photographs: full-bleed at the top of the card, credited, steppable, and openable full size. */
.building-card.has-photo{padding-top:0}
.bc-photo{margin:0 -20px 12px;position:relative}
.bc-photo-frame{display:block;width:100%;padding:0;border:0;background:#0d0b10;cursor:zoom-in;border-radius:13px 13px 0 0;overflow:hidden;aspect-ratio:16/10}
.bc-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.bc-photo figcaption{display:flex;flex-direction:column;gap:2px;padding:7px 20px 0;font-size:11.5px;line-height:1.4;color:#d9cfbd}
.bc-photo-caption:empty{display:none}
.bc-photo-credit{font-size:10px;color:#a99f8f}
.bc-photo-credit a{color:#cdb680}
.bc-photo-nav{position:absolute;right:10px;top:10px;display:flex;align-items:center;gap:4px;padding:3px;border-radius:999px;background:rgba(14,12,18,.72);backdrop-filter:blur(6px)}
.bc-photo-nav button{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:#f7f0e3;font-size:17px;line-height:1;cursor:pointer}
.bc-photo-nav button:hover,.bc-photo-nav button:focus-visible{background:rgba(247,240,227,.16)}
.bc-photo-count{font-size:10.5px;color:#e9dfcc;min-width:30px;text-align:center}
.building-card.has-photo .building-card-close{z-index:2;top:8px;left:10px;right:auto;width:30px;height:30px;border-radius:50%;background:rgba(14,12,18,.72);font-size:20px}
.bc-lightbox{max-width:min(1100px,94vw);max-height:92vh;padding:0;border:1px solid rgba(232,200,150,.35);border-radius:12px;background:#0e0c12;color:#efe6d4;overflow:hidden}
.bc-lightbox::backdrop{background:rgba(8,7,10,.82)}
.bc-lightbox img{display:block;max-width:100%;max-height:calc(92vh - 52px);margin:0 auto;object-fit:contain}
.bc-lightbox p{margin:0;padding:10px 16px 12px;font:12px/1.45 system-ui,sans-serif;color:#cfc5b3}
.bc-lightbox-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border:0;border-radius:50%;background:rgba(14,12,18,.75);color:#f7f0e3;font-size:20px;cursor:pointer}
.quad-assets-credit{margin:6px 0 0;font-size:11px;color:#6b6255}.quad-assets-credit a{color:#7a4c14}
@media(max-width:700px){.bc-photo-frame{aspect-ratio:2/1}.building-card.has-photo{max-height:52vh}}
/* The building card opens beside the tool rail, never over it. */
@media(min-width:701px){body:has(.tool-rail:not([hidden])) .building-card{right:calc(clamp(16px,2vw,28px) + 60px)}body:not(.campus-intro):has(.chapter-bar:not([hidden])) .building-card{bottom:104px;max-height:min(calc(100vh - 290px),520px)}}
/* Touch deck: thumbstick (left), hold buttons and exit (right), readout (top). Phones and tablets only. */
.touch-deck{position:fixed;inset:0;z-index:7;pointer-events:none;font-family:'Libre Caslon Text',Georgia,serif;color:#f7f0e3;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.touch-deck[hidden]{display:none}
.touch-stick,.touch-actions button{pointer-events:auto;touch-action:none}
.touch-stick{position:absolute;left:max(16px,env(safe-area-inset-left));bottom:calc(34px + env(safe-area-inset-bottom));width:148px;height:148px}
.touch-stick-ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(232,200,150,.5);background:radial-gradient(circle,rgba(18,15,22,.18) 0,rgba(18,15,22,.46) 70%);box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 0 0 10px rgba(232,200,150,.06);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.touch-tick{position:absolute;width:6px;height:6px;border-top:1.5px solid rgba(232,200,150,.7);border-left:1.5px solid rgba(232,200,150,.7)}
.touch-tick.n{left:calc(50% - 3px);top:12px;transform:rotate(45deg)}.touch-tick.s{left:calc(50% - 3px);bottom:12px;transform:rotate(225deg)}
.touch-tick.w{top:calc(50% - 3px);left:12px;transform:rotate(-45deg)}.touch-tick.e{top:calc(50% - 3px);right:12px;transform:rotate(135deg)}
.touch-knob{position:absolute;left:calc(50% - 31px);top:calc(50% - 31px);width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 38% 32%,#fff6e2 0,#e6cf9c 38%,#a98a4e 100%);box-shadow:0 6px 16px rgba(0,0,0,.45),inset 0 -3px 6px rgba(80,56,20,.35);transition:transform .14s ease-out}
.touch-stick.active .touch-knob{transition:none}
.touch-stick.active .touch-stick-ring{border-color:rgba(255,226,160,.85)}
.touch-hint{position:absolute;left:0;right:0;bottom:-24px;text-align:center;font:600 10px/1.2 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(247,240,227,.82);text-shadow:0 1px 3px rgba(0,0,0,.6);transition:opacity .6s}
.touch-stick.active .touch-hint{opacity:0}
.touch-actions{position:absolute;right:max(16px,env(safe-area-inset-right));bottom:calc(34px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.touch-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1.5px solid rgba(232,200,150,.55);background:rgba(18,15,22,.72);color:#f7f0e3;border-radius:18px;box-shadow:0 8px 22px rgba(0,0,0,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;font:600 11px/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.touch-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.touch-exit{min-height:42px;padding:0 16px;border-radius:999px;background:rgba(120,22,24,.88);border-color:rgba(232,200,150,.6);font-family:'Libre Caslon Text',Georgia,serif;letter-spacing:.1em}
.touch-climb,.touch-descend{width:76px;height:64px;flex-direction:column;gap:3px;font-size:9.5px}
.touch-horn{width:58px;height:58px;border-radius:50%}
.touch-btn.held,.touch-btn:active{background:rgba(232,200,150,.9);color:#15121a;border-color:#fff3d6}
.touch-deck:not([data-mode=heli]) .touch-climb,.touch-deck:not([data-mode=heli]) .touch-descend,.touch-deck:not([data-mode=car]) .touch-horn{display:none}
.touch-readout{position:absolute;left:50%;transform:translateX(-50%);top:calc(64px + env(safe-area-inset-top));display:flex;align-items:baseline;gap:6px;padding:7px 16px;border-radius:999px;background:rgba(18,15,22,.7);border:1px solid rgba(232,200,150,.4);box-shadow:0 6px 18px rgba(0,0,0,.3);font-variant-numeric:tabular-nums}
.touch-readout[hidden]{display:none}
.touch-speed{font-size:22px;line-height:1}.touch-readout small{font:600 9px/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#cdb680}
.touch-alt{margin-left:10px;padding-left:10px;border-left:1px solid rgba(232,200,150,.35);font-size:17px}
body.has-touch-deck .touch-walk{display:none!important}
body.has-touch-deck.campus-vehicle .vehicle-hud{display:none!important}
@media(orientation:landscape) and (max-height:500px){.touch-stick{width:124px;height:124px;bottom:calc(16px + env(safe-area-inset-bottom))}.touch-knob{width:54px;height:54px;left:calc(50% - 27px);top:calc(50% - 27px)}.touch-actions{bottom:calc(16px + env(safe-area-inset-bottom))}.touch-readout{top:calc(14px + env(safe-area-inset-top))}}
@media(prefers-reduced-motion:reduce){.touch-knob,.touch-hint{transition:none}}
/* Annotation labels: notes at a point (planned or demolished work), quieter than building names. */
.campus-label.note .label-pill{background:rgba(18,15,22,.62);border-style:dashed;font-style:italic;color:#efe4cf}
.campus-label.note .label-pin{background:#cdb680}
/* Phones: the small kicker sits over the scene above the opening veil, so it is brighter and heavier. */
@media(max-width:700px){.authored-campus .opening-kicker{color:#f4e2b6;font-weight:600}}
/* During the desktop opening the map attribution moves right of the opening card, so it never overlaps the card's
   disclaimer at its foot (the card is centred vertically and reaches the bottom on 900 px screens). */
@media(min-width:701px){.campus-nav.authored-campus.campus-intro .source-line{left:calc(clamp(24px,4.4vw,72px) + min(620px,46vw) + 28px);right:30px;text-align:right;white-space:normal}}
@media(min-width:701px) and (max-width:1100px){.campus-nav.authored-campus.campus-intro .source-line{left:calc(clamp(24px,4.4vw,72px) + min(560px,58vw) + 28px)}}
/* Desktop screens up to ~960 px tall: a smaller emblem and tighter quote spacing keep the opening card's disclaimer
   in view without scrolling the card. */
@media(min-width:701px) and (max-height:960px){.authored-campus .opening-emblem{width:140px;height:62px;margin-bottom:2px}.authored-campus.campus-intro .opening-extra blockquote{margin-top:10px}.authored-campus.campus-intro .tour-card .campus-controls{gap:9px;margin-top:12px}.authored-campus.campus-intro .opening-extra{gap:10px}}

/* "Join us" invitation on selected public previews (nav-kit, meta quad-recruit). */
.recruit-link{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.recruit-link i{width:6px;height:6px;border-radius:50%;background:var(--gold,#d8c58c)}
.opening-control.recruit-link{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 2px;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}
.recruit-pop{position:fixed;top:64px;right:24px;z-index:40;width:min(290px,calc(100vw - 32px));padding:16px 18px;background:rgba(18,15,22,.94);border:1px solid rgba(232,200,150,.55);border-radius:6px;color:#f3ead9;font:14px/1.5 var(--book,Georgia,serif);box-shadow:0 12px 40px rgba(0,0,0,.45);backdrop-filter:blur(8px)}
.recruit-pop[hidden]{display:none}.recruit-pop p{margin:0 0 10px}.recruit-pop a{color:var(--gold,#d8c58c);font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
@media(max-width:700px){.recruit-pop{top:auto;bottom:96px;right:16px}}
.control-link.recruit-link{background:#c8102e;border-color:#c8102e;color:#fff}.control-link.recruit-link:hover{background:#a50d26;border-color:#a50d26;color:#fff}.control-link.recruit-link i{background:#fff}
.opening-control.recruit-link{display:inline-flex;padding:7px 14px;border:0;border-radius:999px;background:#c8102e;color:#fff}.opening-control.recruit-link i{background:#fff}
.opening-control.recruit-link{display:none!important}.campus-top .control-link.recruit-link{display:inline-flex}
@media(max-width:700px){.recruit-pop{top:52px;bottom:auto;right:12px}}
