:root{--bg: #FAFAF7;--bg-card: #ffffff;--text: #1a1d2e;--text-soft: rgba(26, 29, 46, .65);--text-muted: rgba(26, 29, 46, .45);--accent: #1e4a8a;--accent-hover: #163a6e;--gold: #d4a72c;--border: rgba(26, 29, 46, .1);--border-soft: rgba(26, 29, 46, .06);--tile-bg: #e8e8e0;--font-serif: "Playfair Display", Georgia, "Times New Roman", serif;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#fafaf7;color:var(--text);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px 5vw;background:#fffffff2;backdrop-filter:blur(8px);border-bottom:.5px solid var(--border)}.nav-logo{font-size:15px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--text)}.nav-logo span{color:var(--accent);font-style:italic}.nav-links{display:flex;gap:28px}.nav-links a{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-soft);font-weight:500;transition:color .15s ease}.nav-links a:hover,.nav-links a.active{color:var(--text)}@media(max-width:640px){.nav-links{gap:16px}.nav-links a{font-size:10px;letter-spacing:1px}}.hero{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:.5px solid var(--border);padding:80px 5vw}.hero-bg{position:absolute;inset:0;background:linear-gradient(180deg,#e8f0f9 0% 100%)}.hero-photo-overlay{position:absolute;inset:0;background-image:url(/uploads/hero.jpg);background-size:cover;background-position:center 30%;opacity:.25}.hero-content{position:relative;text-align:center;z-index:2;max-width:600px}.hero-eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent);font-weight:500;margin-bottom:18px}.hero h1{font-size:clamp(36px,6vw,64px);font-weight:400;line-height:1;letter-spacing:-1.5px;margin-bottom:20px;font-family:var(--font-serif)}.hero h1 em{font-style:italic;color:var(--accent)}.hero p{font-size:14px;color:var(--text-soft);max-width:420px;margin:0 auto;line-height:1.7}.section{padding:72px 5vw;background:#fafaf7}.section-narrow{max-width:1200px;margin:0 auto}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:32px;border-bottom:.5px solid var(--border);padding-bottom:16px}.section-title{font-family:var(--font-serif);font-size:clamp(24px,3vw,32px);font-weight:400;letter-spacing:-.3px}.section-link{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-weight:500}.cats{display:flex;gap:24px;margin-bottom:28px;flex-wrap:wrap}.cat{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);cursor:pointer;padding-bottom:6px;border:none;background:none;border-bottom:1px solid transparent;font-weight:500;font-family:inherit;transition:all .15s ease}.cat.active,.cat:hover{color:var(--text);border-bottom-color:var(--accent)}.grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:12px}.tile{border-radius:4px;overflow:hidden;position:relative;cursor:pointer;background:var(--tile-bg);transition:transform .3s ease}.tile:hover{transform:translateY(-2px)}.tile-1{grid-row:1 / span 2}.tile-photo{width:100%;height:100%;background-size:cover;background-position:center;transition:transform .5s ease}.tile:hover .tile-photo{transform:scale(1.04)}.tile-photo.placeholder{background:linear-gradient(135deg,#c4b8a8,#8a7868)}.tile-overlay{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.4) 60%,transparent 100%)}.tile-cat{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:4px}.tile-name{font-size:14px;font-weight:500;color:#fff}.tile-1 .tile-name{font-size:22px;font-family:var(--font-serif)}.tile-date{position:absolute;right:14px;top:14px;font-size:10px;letter-spacing:1px;color:#ffffffb3;opacity:0;transition:opacity .2s ease}.tile:hover .tile-date{opacity:1}@media(max-width:768px){.grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,200px)}.tile-1{grid-column:1 / span 2;grid-row:1}}.sub-section{margin-top:36px;padding:24px 28px;background:var(--bg-card);border-radius:6px;border:.5px solid var(--border-soft);border-left:3px solid var(--accent)}.sub-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px;font-weight:500}.sub-list{display:flex;gap:8px;flex-wrap:wrap}.sub-item{font-size:12px;padding:7px 14px;background:var(--bg);border-radius:4px;color:var(--text);cursor:pointer;transition:all .15s ease;border:none;font-family:inherit}.sub-item:hover{background:var(--accent);color:#fff}.about{padding:72px 5vw;background:var(--bg-card);border-top:.5px solid var(--border);border-bottom:.5px solid var(--border)}.about-inner{max-width:720px;margin:0 auto}.about h2{font-family:var(--font-serif);font-size:clamp(28px,4vw,40px);font-weight:400;margin-bottom:24px;letter-spacing:-.5px}.about p{font-size:16px;line-height:1.8;color:var(--text-soft);margin-bottom:16px}.cta{padding:80px 5vw;text-align:center;background:var(--text);color:#fff}.cta-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-weight:500}.cta h2{font-family:var(--font-serif);font-size:clamp(28px,4vw,40px);font-weight:400;margin-bottom:14px;letter-spacing:-.5px}.cta p{font-size:14px;color:#ffffffb3;max-width:440px;margin:0 auto 26px;line-height:1.7}.cta-btn{display:inline-block;padding:14px 32px;background:#fff;color:var(--text);border:none;border-radius:2px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:500;cursor:pointer;font-family:inherit;transition:transform .15s ease}.cta-btn:hover{transform:translateY(-1px)}.footer{padding:32px 5vw;font-size:11px;letter-spacing:1px;color:var(--text-muted);display:flex;justify-content:space-between;text-transform:uppercase;background:var(--bg-card);border-top:.5px solid var(--border);flex-wrap:wrap;gap:12px;align-items:center}.footer-social{display:flex;gap:16px}.footer-social a{color:var(--text-muted);transition:color .15s ease;font-size:18px}.footer-social a:hover{color:var(--accent)}[data-theme=dark]{--bg: #0f1117;--bg-card: #1a1d2e;--text: #f0f0f0;--text-soft: rgba(240,240,240,.7);--text-muted: rgba(240,240,240,.4);--border: rgba(255,255,255,.1);--border-soft: rgba(255,255,255,.06);--tile-bg: #2a2d3e}[data-theme=dark] body{background:#0f1117}[data-theme=dark] .nav{background:#0f1117f2}[data-theme=dark] .about,[data-theme=dark] .footer,[data-theme=dark] .sub-section{background:#1a1d2e}[data-theme=dark] .hero-bg{background:linear-gradient(180deg,#1a2a4a,#0f1117)}[data-theme=dark] .section{background:#0f1117}#dark-toggle{position:fixed;bottom:80px;right:20px;z-index:100;background:var(--bg-card);border:.5px solid var(--border);border-radius:50%;width:40px;height:40px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a;transition:transform .15s ease}#dark-toggle:hover{transform:scale(1.1)}#loading-screen{position:fixed;inset:0;z-index:9999;background:#1a1d2e;display:flex;align-items:center;justify-content:center;transition:opacity .5s ease}.loading-logo{display:flex;flex-direction:column;align-items:center;gap:24px}.loading-bar{width:200px;height:2px;background:#ffffff1a;border-radius:99px;overflow:hidden}.loading-progress{height:100%;width:0%;background:#d4a72c;border-radius:99px;animation:load .8s ease forwards}@keyframes load{to{width:100%}}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{display:flex;align-items:center;gap:24px;padding:20px 24px;background:var(--bg-card);border-radius:6px;border:.5px solid var(--border);transition:transform .15s ease,box-shadow .15s ease}.schedule-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.schedule-item.past{opacity:.5}.schedule-item.today{border-left:3px solid var(--accent)}.schedule-date{display:flex;flex-direction:column;align-items:center;min-width:48px;font-family:var(--font-serif)}.schedule-day{font-size:28px;font-weight:400;line-height:1;color:var(--accent)}.schedule-month{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted)}.schedule-info{flex:1}.schedule-title{font-size:15px;font-weight:500;margin-bottom:6px}.schedule-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--text-muted)}.badge{font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:4px 10px;border-radius:99px;font-weight:500;white-space:nowrap}.upcoming-badge{background:#e6f1fb;color:#1e4a8a}.today-badge{background:#d4a72c;color:#fff}.past-badge{background:var(--border);color:var(--text-muted)}.footer-newsletter[data-astro-cid-sckkx6r4]{background:var(--text);padding:24px 5vw;border-top:.5px solid rgba(255,255,255,.08)}.footer-newsletter-inner[data-astro-cid-sckkx6r4]{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-newsletter-left[data-astro-cid-sckkx6r4]{display:flex;align-items:center;gap:14px;color:#fffc}.footer-newsletter-titel[data-astro-cid-sckkx6r4]{font-size:14px;font-weight:500;color:#fff;margin-bottom:2px}.footer-newsletter-sub[data-astro-cid-sckkx6r4]{font-size:12px;color:#ffffff80}.footer-newsletter-btn[data-astro-cid-sckkx6r4]{padding:10px 22px;background:#d4a72c;color:#1a1d2e;border:none;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;font-family:inherit;white-space:nowrap;transition:opacity .15s ease;flex-shrink:0}.footer-newsletter-btn[data-astro-cid-sckkx6r4]:hover{opacity:.85}
