:root{--bg-deep: #0e0d0b;--bg-surface: #16140f;--bg-card: #1c1a14;--bg-card-hover: #23201a;--border-subtle: rgba(180, 155, 100, .1);--border-warm: rgba(180, 155, 100, .2);--text-primary: #e2ddd4;--text-secondary: #a09888;--text-dim: #6b6358;--warm-glow: #e8a84c;--warm-glow-soft: rgba(232, 168, 76, .08);--warm-glow-mid: rgba(232, 168, 76, .15);--candle: #f0c060;--accent-red: #a04030;--accent-red-dim: rgba(160, 64, 48, .15);--font-display: "Cormorant Garamond", serif;--font-body: "Inter", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);font-size:15px;font-weight:300;line-height:1.7;min-height:100vh;overflow-x:hidden}a{color:inherit}.candle-ambient{position:fixed;top:-10%;left:50%;transform:translate(-50%);width:800px;height:600px;background:radial-gradient(ellipse at 50% 0%,rgba(240,192,96,.04) 0%,rgba(232,168,76,.02) 30%,rgba(200,140,60,.008) 60%,transparent 100%);pointer-events:none;z-index:0;animation:candleFlicker 8s ease-in-out infinite alternate}@keyframes candleFlicker{0%{opacity:.8;transform:translate(-50%) scale(1)}25%{opacity:1;transform:translate(-50%) scale(1.02)}50%{opacity:.85;transform:translate(-50%) scale(.98)}75%{opacity:.95;transform:translate(-50%) scale(1.01)}to{opacity:.9;transform:translate(-50%) scale(1)}}.candle{position:relative;width:2px;height:24px;background:linear-gradient(to top,var(--text-dim),transparent);margin:0 auto;opacity:.3}.flame{position:absolute;bottom:100%;left:50%;transform:translate(-50%);width:8px;height:18px;background:radial-gradient(ellipse at 50% 80%,#fff8e0 0%,var(--candle) 30%,var(--warm-glow) 60%,transparent 100%);border-radius:50%/60% 60% 40% 40%;animation:flame 3s ease-in-out infinite alternate;filter:blur(.5px)}.flame:after{content:"";position:absolute;top:-4px;left:50%;transform:translate(-50%);width:18px;height:18px;background:radial-gradient(circle,rgba(240,192,96,.2) 0%,transparent 70%);border-radius:50%;animation:glowPulse 3s ease-in-out infinite alternate}@keyframes flame{0%{height:18px;width:8px}20%{height:20px;width:7px}40%{height:17px;width:9px}60%{height:19px;width:7px}80%{height:18px;width:8px}to{height:20px;width:8px}}@keyframes glowPulse{0%{opacity:.6;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.2)}to{opacity:.7;transform:translate(-50%) scale(1)}}.page{max-width:820px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.page-wide{max-width:960px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.site-header{max-width:820px;margin:0 auto;padding:32px 24px 28px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.logo{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--text-primary);letter-spacing:2px;text-decoration:none}.logo span{color:var(--warm-glow);font-weight:400}.site-nav{display:flex;gap:28px}.site-nav a{font-family:var(--font-body);font-size:12px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);text-decoration:none;transition:color .3s;position:relative}.site-nav a:hover,.site-nav a.active{color:var(--text-secondary)}.site-nav a.active:after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:1px;background:var(--warm-glow);opacity:.5}.divider{display:flex;align-items:center;gap:16px;max-width:820px;margin:0 auto;padding:0 24px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(to right,transparent,var(--border-warm),transparent)}.divider-icon{color:var(--text-dim);font-size:14px;opacity:.5}.section-label{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--text-dim);text-align:center;margin-bottom:10px}.section-title{font-family:var(--font-display);font-size:30px;font-weight:400;color:var(--text-primary);text-align:center;margin-bottom:40px;letter-spacing:1px}.glow-card{background:var(--bg-card);border:1px solid var(--border-subtle);position:relative;overflow:hidden;transition:border-color .35s,background .35s,transform .35s,box-shadow .35s}.glow-card .card-light{position:absolute;inset:0;opacity:0;transition:opacity .3s ease;pointer-events:none;background:radial-gradient(350px circle at var(--light-x, 50%) var(--light-y, 50%),rgba(240,192,96,.1) 0%,rgba(232,168,76,.04) 35%,transparent 70%)}.glow-card .card-border-glow{position:absolute;inset:-1px;opacity:0;transition:opacity .3s ease;pointer-events:none;background:radial-gradient(400px circle at var(--light-x, 50%) var(--light-y, 50%),rgba(232,168,76,.2) 0%,rgba(232,168,76,.05) 40%,transparent 70%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px}.glow-card:hover{border-color:var(--border-warm);background:var(--bg-card-hover);transform:translateY(-2px);box-shadow:0 4px 24px #0000004d}.glow-card:hover .card-light,.glow-card:hover .card-border-glow{opacity:1}.glow-card-inner{position:relative;z-index:1}.site-footer{padding:48px 0 64px;text-align:center;max-width:820px;margin:0 auto;border-top:1px solid var(--border-subtle)}.compass-small{width:36px;height:36px;margin:0 auto 20px;opacity:.25}.compass-small svg{width:100%;height:100%}.footer-name{font-family:var(--font-body);font-size:11px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px;opacity:.7}.footer-faculty{font-family:var(--font-display);font-style:italic;font-size:14px;color:var(--text-dim);margin-bottom:4px}.footer-info{font-family:var(--font-body);font-size:12px;font-weight:300;color:var(--text-dim);line-height:2}.footer-info a{color:var(--text-secondary);text-decoration:none;border-bottom:1px solid var(--border-subtle);transition:all .3s}.footer-info a:hover{color:var(--warm-glow);border-color:#e8a84c4d}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.site-nav{gap:16px}.site-nav a{font-size:11px;letter-spacing:1px}.section-title{font-size:24px}}@media (max-width: 480px){.site-header{flex-direction:column;gap:16px}.site-nav{flex-wrap:wrap;justify-content:center}}
