:root{--v2-navy:#08111d;--v2-gold:#d4af37;--v2-cream:#fff8e9;--v2-glass:rgba(8,17,29,.9);--v2-line:rgba(212,175,55,.48)}
.skip-link{position:fixed;z-index:100;left:12px;top:-80px;padding:12px 16px;border-radius:10px;background:#fff;color:#08111d;font-weight:900}.skip-link:focus{top:12px}.brand{min-height:44px}
.ambient{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}.ambient-cloud{position:absolute;width:180px;height:42px;border-radius:999px;background:rgba(255,255,255,.14);filter:blur(4px);animation:campusCloud 48s linear infinite}.ambient-cloud::before,.ambient-cloud::after{content:"";position:absolute;border-radius:50%;background:inherit}.ambient-cloud::before{width:76px;height:76px;left:32px;bottom:0}.ambient-cloud::after{width:96px;height:96px;right:26px;bottom:-3px}.ambient-cloud.one{left:-240px;top:25%}.ambient-cloud.two{left:35%;top:17%;transform:scale(.65);animation-duration:64s;animation-delay:-32s}.ambient-light{position:absolute;left:50%;top:20%;width:44vw;height:62vh;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(255,220,125,.12),transparent 65%);animation:lightBreathe 8s ease-in-out infinite}.compass-glow{position:absolute;left:50%;top:48%;width:132px;height:132px;border:1px solid rgba(212,175,55,.22);border-radius:50%;animation:compassTurn 34s linear infinite}.compass-glow::before,.compass-glow::after{content:"";position:absolute;inset:12px;border:1px solid rgba(212,175,55,.15);transform:rotate(45deg)}.compass-glow::after{inset:35px;border-radius:50%}@keyframes campusCloud{to{transform:translateX(calc(100vw + 420px))}}@keyframes lightBreathe{50%{opacity:.55;transform:translateX(-50%) scale(1.05)}}@keyframes compassTurn{to{transform:rotate(360deg)}}
.ambient-mote{position:absolute;width:7px;height:7px;border-radius:50%;background:#ffe69a;box-shadow:0 0 12px rgba(255,224,130,.85);opacity:.25;animation:moteDrift 10s ease-in-out infinite}.mote-one{left:18%;top:62%}.mote-two{left:68%;top:32%;animation-delay:-3.2s;animation-duration:13s}.mote-three{left:81%;top:69%;animation-delay:-6.4s;animation-duration:15s}@keyframes moteDrift{0%,100%{transform:translate3d(0,10px,0);opacity:.18}45%{transform:translate3d(18px,-22px,0);opacity:.7}70%{transform:translate3d(-7px,-10px,0);opacity:.35}}
.building-banner{position:absolute;inset:0;z-index:3;pointer-events:none}.building-banner i{position:absolute;inset:0;background:url("assets/campus-artwork.png") center/cover no-repeat;transform-origin:58% 24%;animation:bannerBreeze 5.8s ease-in-out infinite;will-change:transform,filter}.banner-clarity{clip-path:polygon(50.7% 24.4%,53.2% 24.8%,53.1% 43.4%,50.9% 43.2%)}.banner-stewardship{clip-path:polygon(55.4% 24.2%,57.9% 24.5%,57.7% 43.2%,55.6% 43%)}.banner-stewardship i{animation-delay:-1.9s;animation-duration:6.6s}.banner-purpose{clip-path:polygon(62.4% 24.3%,64.9% 24.7%,64.7% 43.3%,62.6% 43.1%)}.banner-purpose i{animation-delay:-3.4s;animation-duration:6.2s}@keyframes bannerBreeze{0%,100%{transform:skewX(0deg) scaleX(1);filter:brightness(1)}38%{transform:skewX(.55deg) scaleX(1.004);filter:brightness(1.035)}68%{transform:skewX(-.32deg) scaleX(.998);filter:brightness(.985)}}
.arrival{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:22px;background:linear-gradient(180deg,rgba(4,10,17,.77),rgba(4,10,17,.94));backdrop-filter:blur(8px);transition:opacity .35s ease,visibility .35s ease}.arrival[hidden]{display:none}.arrival-card{width:min(760px,96vw);padding:clamp(28px,5vw,52px);border:1px solid var(--v2-line);border-radius:26px;background:linear-gradient(145deg,rgba(20,39,58,.97),rgba(7,16,27,.98));box-shadow:0 36px 100px rgba(0,0,0,.58);text-align:center}.arrival-mark{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 20px;border:1px solid var(--v2-gold);border-radius:50%;color:var(--v2-gold);font-size:13px;font-weight:950;letter-spacing:.12em}.arrival small{color:var(--v2-gold);font-weight:950;letter-spacing:.16em}.arrival h1{margin:12px 0 10px;font:700 clamp(38px,6vw,62px)/1.05 Georgia,serif}.arrival p{max-width:600px;margin:0 auto;color:#ded8cb;font-size:18px;line-height:1.65}.arrival-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}.arrival-actions button{min-height:50px;padding:12px 20px;border:1px solid var(--v2-gold);border-radius:999px;background:transparent;color:#fff;font-weight:950;letter-spacing:.05em;cursor:pointer}.arrival-actions .primary{background:var(--v2-gold);color:var(--v2-navy)}.arrival-actions button:hover,.arrival-actions button:focus-visible{outline:3px solid #fff2bb;outline-offset:3px;transform:translateY(-2px)}
.campus .stone{position:absolute;z-index:9;left:50%;bottom:5%;width:min(420px,44vw);min-height:84px;padding:17px 28px;border:1px solid rgba(255,243,199,.68);border-radius:50% 48% 42% 46%/46% 49% 38% 42%;background:linear-gradient(160deg,#9b998d,#5f625d 58%,#454946);box-shadow:inset 0 5px 12px rgba(255,255,255,.2),0 16px 30px rgba(0,0,0,.35);color:#fffbed;text-align:center;text-shadow:0 2px 5px rgba(0,0,0,.55);font:700 17px/1.35 Georgia,serif;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.campus .stone span{display:block;margin-top:4px;color:#f3d77f;font:900 10px/1.2 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.campus .stone:hover,.campus .stone:focus-visible{outline:3px solid #fff1b8;outline-offset:5px;transform:translate(-50%,-4px);box-shadow:inset 0 5px 12px rgba(255,255,255,.24),0 22px 40px rgba(0,0,0,.45)}.campus .stone{transform:translateX(-50%)}
.media-button{position:absolute;z-index:9;left:5%;top:calc(54% + 62px);display:inline-flex;align-items:center;min-height:44px;padding:9px 15px;border:1px solid rgba(255,255,255,.52);border-radius:999px;background:var(--v2-glass);color:#fff;font-weight:900;cursor:pointer}.media-button:hover,.media-button:focus-visible{outline:2px solid var(--v2-gold);outline-offset:3px;color:#f7da7b}
.tour-dialog{width:min(980px,96vw);max-width:calc(100vw - 24px)}.tour-stage{min-width:0;min-height:620px}.tour-artwork{position:absolute;inset:-3%;width:106%;height:106%;background:url("assets/campus-artwork.png") center/cover no-repeat;pointer-events:none}.tour-stage .story{min-width:0;width:100%}.tour-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tour-count{padding:5px 8px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff!important;letter-spacing:.04em!important}.tour-controls{position:relative;z-index:5;display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:9px;margin-top:21px}.tour-controls button,.tour-controls a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(8,17,29,.72);color:#fff;text-decoration:none;font-weight:900;cursor:pointer}.tour-controls .primary{border-color:var(--v2-gold);background:var(--v2-gold);color:var(--v2-navy)}.tour-controls button:hover,.tour-controls button:focus-visible,.tour-controls a:hover,.tour-controls a:focus-visible{outline:2px solid #fff1b8;outline-offset:2px}.tour-progress i{animation:none!important;transition:width .4s linear}.tour-jumps{position:relative;z-index:5;display:flex;width:100%;max-width:100%;min-width:0;gap:7px;margin-top:12px;padding-bottom:10px;overflow-x:auto;scrollbar-width:none}.tour-jumps::-webkit-scrollbar,.toolbar .nav::-webkit-scrollbar{display:none}.tour-jumps a{flex:0 0 auto;padding:6px 9px;border-radius:999px;color:#f8e3a1;text-decoration:none;font-size:12px;font-weight:850}.tour-jumps a:hover,.tour-jumps a:focus-visible{outline:1px solid var(--v2-gold);background:rgba(212,175,55,.14)}
.media-dialog{width:min(980px,96vw);max-height:92svh;overflow:auto;padding:34px;background:linear-gradient(145deg,#132235,#08111d)}.media-dialog>small{color:var(--v2-gold);font-weight:950;letter-spacing:.15em}.media-dialog>h2{margin:8px 0 6px;font:700 clamp(34px,5vw,50px)/1.1 Georgia,serif}.media-intro{margin:0 0 24px;color:#cbc6bb;line-height:1.6}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.media-card{display:flex;min-height:180px;flex-direction:column;padding:18px;border:1px solid rgba(212,175,55,.28);border-radius:16px;background:rgba(255,255,255,.04);color:#fff;text-align:left;cursor:pointer}.media-card small{color:var(--v2-gold);font-weight:900;letter-spacing:.1em}.media-card strong{display:block;margin:9px 0;font:700 23px/1.15 Georgia,serif}.media-card span{margin-top:auto;color:#c9c4b9}.media-card:hover,.media-card:focus-visible{outline:2px solid var(--v2-gold);outline-offset:2px;background:rgba(212,175,55,.1);transform:translateY(-2px)}.reel{margin-top:18px;padding:24px;border:1px solid rgba(212,175,55,.4);border-radius:18px;background:radial-gradient(circle at 80% 0,rgba(212,175,55,.16),transparent 35%),#0a1624}.reel[hidden]{display:none}.reel small{color:var(--v2-gold);font-weight:950;letter-spacing:.12em}.reel h3{margin:8px 0 15px;font:700 34px Georgia,serif}.caption-screen{display:grid;place-items:center;min-height:160px;padding:24px;border-radius:15px;background:linear-gradient(135deg,rgba(21,48,68,.9),rgba(8,17,29,.95));text-align:center}.caption-screen p{margin:0;max-width:700px;font:700 clamp(22px,3vw,31px)/1.45 Georgia,serif}.reel-controls{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:14px}.reel-controls button,.reel-controls a{min-height:42px;padding:8px 13px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:transparent;color:#fff;text-decoration:none;font-weight:900;cursor:pointer}.reel-controls .primary{border-color:var(--v2-gold);background:var(--v2-gold);color:var(--v2-navy)}.reel-status{margin-left:auto;color:#d7d1c4;font-size:13px}
.home-stories{position:relative;z-index:12;padding:clamp(54px,7vw,88px) max(24px,5vw);overflow:hidden;border-top:1px solid rgba(212,175,55,.24);background:radial-gradient(circle at 18% 0,rgba(212,175,55,.12),transparent 32%),linear-gradient(180deg,#0a1624,#07101b);color:#fff}.home-stories::before{content:"";position:absolute;right:-90px;top:-150px;width:360px;height:360px;border:1px solid rgba(212,175,55,.12);border-radius:50%;animation:compassTurn 70s linear infinite}.home-stories-heading{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:32px;align-items:end;max-width:1180px;margin:0 auto 30px}.home-stories-heading small{color:var(--v2-gold);font-size:11px;font-weight:950;letter-spacing:.16em}.home-stories-heading h2{max-width:760px;margin:9px 0 0;font:700 clamp(34px,5vw,56px)/1.08 Georgia,serif}.home-stories-heading p{margin:0;color:#cec8bb;font-size:17px;line-height:1.65}.home-media-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1180px;margin:0 auto}.home-media-grid .media-card{min-height:190px;background:linear-gradient(145deg,rgba(25,48,69,.92),rgba(8,17,29,.98));box-shadow:0 18px 36px rgba(0,0,0,.22);animation:storyRise .7s both}.home-media-grid .media-card:nth-child(2){animation-delay:.07s}.home-media-grid .media-card:nth-child(3){animation-delay:.14s}.home-media-grid .media-card:nth-child(4){animation-delay:.21s}.home-media-grid .media-card:nth-child(5){animation-delay:.28s}.home-media-grid .media-card:nth-child(6){animation-delay:.35s}.home-media-grid .media-card::before{content:"▶";display:grid;place-items:center;width:38px;height:38px;margin-bottom:20px;border:1px solid rgba(212,175,55,.62);border-radius:50%;background:rgba(212,175,55,.12);color:#f7da7b;font-size:13px}.home-media-grid .media-card span{color:#f4d979}@keyframes storyRise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:980px){.campus .stone{bottom:30%;width:min(390px,46vw)}.media-button{top:auto;bottom:31%}.tour-stage{min-height:72svh}.media-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.campus{min-height:1080px}.toolbar .nav{scrollbar-width:none}.toolbar .nav a{min-height:44px}.campus .stone{left:12px;right:12px;bottom:172px;width:auto;min-height:70px;transform:none;font-size:15px}.campus .stone:hover,.campus .stone:focus-visible{transform:translateY(-3px)}.media-button{left:14px;bottom:252px}.overview{bottom:306px!important}.now{bottom:12px}.signpost{bottom:365px!important}.media-dialog{padding:28px 18px}.media-grid{grid-template-columns:1fr}.tour-stage{min-height:78svh;padding-left:22px;padding-right:22px}.tour-controls{padding-right:0}.story h2{font-size:31px;overflow-wrap:anywhere}.story p{font-size:15px;overflow-wrap:anywhere}}
@media(max-width:720px){.banner-clarity{clip-path:polygon(41.2% 20.4%,49.6% 20.9%,49% 50.4%,42% 50%)}.banner-stewardship{clip-path:polygon(62.3% 20.2%,70.7% 20.7%,70% 50.1%,63% 49.8%)}.banner-purpose{display:none}.building-banner i{transform-origin:56% 21%}}
@media(max-width:900px){.home-stories-heading{grid-template-columns:1fr}.home-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.home-stories{padding-left:16px;padding-right:16px}.home-media-grid{grid-template-columns:1fr}.home-media-grid .media-card{min-height:170px}}
@media(max-width:420px){.campus{min-height:1160px}.signpost{grid-template-columns:repeat(2,1fr)!important;bottom:375px!important}.overview{bottom:325px!important}.media-button{bottom:274px}.campus .stone{bottom:184px}.arrival-card{padding:28px 20px}.arrival-actions{display:grid}.arrival-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.ambient-cloud,.ambient-light,.compass-glow,.ambient-mote,.building-banner i,.home-stories::before,.home-media-grid .media-card{animation:none!important}.ambient-cloud,.ambient-mote{display:none}.arrival-actions button:hover,.media-card:hover{transform:none}.tour-progress i{transition:none}}
.tour-dialog,.media-dialog{width:min(980px,100%);max-width:100%}.reel-controls button,.reel-controls a{min-height:44px}.close{width:44px;height:44px}.toolbar .nav a{min-height:44px}.now a{display:inline-flex;align-items:center;min-height:44px}.tour-jumps a{display:inline-flex;align-items:center;min-height:44px}
@media(max-height:500px){.modal{align-items:start;overflow:auto;padding:12px}.tour-dialog{max-height:calc(100svh - 24px);overflow:auto}.tour-stage{min-height:0;padding:54px 24px 34px}.tour-stage .story h2{font-size:28px}.tour-stage .story p{font-size:14px}.tour-controls{margin-top:12px}.progress{bottom:12px}}
@media(max-height:500px) and (min-width:721px){.campus{min-height:720px}.signpost{top:145px;right:18px;bottom:auto;width:460px;grid-template-columns:repeat(2,1fr)}.overview{left:42px;top:205px;bottom:auto}.media-button{left:42px;top:268px;bottom:auto}.campus .stone{top:435px;bottom:auto;width:420px}.now{left:42px;bottom:24px;width:390px}}
@media(min-width:721px) and (max-width:980px) and (min-height:700px){.signpost{top:350px;right:18px;bottom:auto;width:235px}.campus .stone{left:32%;top:590px;bottom:auto;width:390px}.overview{left:38px;top:700px;bottom:auto}.media-button{left:38px;top:760px;bottom:auto}.now{left:38px;bottom:38px;width:390px}}
