*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--midnight: #091b2a;--deep: #0c2640;--ocean: #0e3a5c;--teal: #14a89a;--teal-glow: #1de4d2;--ice: #e0f7f5;--white: #f8fcfc;--gray-100: #f1f5f5;--gray-200: #dce4e4;--gray-600: #5a6b6b;--gray-800: #2a3a3a}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:DM Sans,sans-serif;color:var(--gray-800);background:var(--white);line-height:1.6}a{color:var(--teal);text-decoration:none}a:hover{color:var(--ocean)}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.site-nav{background:var(--midnight);padding:1rem 0;position:sticky;top:0;z-index:100}.site-nav .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.nav-brand{font-family:"Instrument Serif",serif;font-size:1.4rem;color:var(--white);text-decoration:none}.nav-brand .dot{color:var(--teal-glow)}.nav-links{display:flex;list-style:none;gap:.25rem}.nav-links a{color:var(--ice);padding:.4rem .9rem;border-radius:6px;font-size:.85rem;font-weight:500;transition:background .2s}.nav-links a:hover{background:#14a89a26;color:var(--teal-glow)}.hero{background:linear-gradient(135deg,var(--midnight) 0%,var(--ocean) 100%);color:var(--white);padding:5rem 0;text-align:center}.hero h1{font-family:"Instrument Serif",serif;font-size:clamp(2rem,5vw,3.2rem);font-weight:400;margin-bottom:.75rem}.hero p{font-size:1.15rem;color:var(--ice);opacity:.85;max-width:600px;margin:0 auto}.section{padding:4rem 0}.section:nth-child(2n){background:var(--gray-100)}.section-title{font-family:"Instrument Serif",serif;font-size:2rem;font-weight:400;color:var(--midnight);margin-bottom:2rem;text-align:center}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.card{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:1.75rem;transition:box-shadow .2s}.card:hover{box-shadow:0 4px 20px #091b2a14}.card h3{font-size:1.1rem;font-weight:600;color:var(--midnight);margin-bottom:.35rem}.card .subtitle{font-size:.82rem;color:var(--teal);font-weight:500;margin-bottom:.75rem}.card p{font-size:.9rem;color:var(--gray-600);line-height:1.6}.badge{display:inline-block;padding:.2rem .6rem;border-radius:100px;font-size:.72rem;font-weight:600;margin-top:.75rem}.badge-open{background:#14a89a1a;color:var(--teal)}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.info-block h3{font-size:1rem;font-weight:600;color:var(--midnight);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--teal);display:inline-block}.hours-table{width:100%;max-width:400px;border-collapse:collapse}.hours-table td{padding:.5rem 0;font-size:.9rem;border-bottom:1px solid var(--gray-200)}.hours-table td:first-child{font-weight:500;color:var(--midnight)}.hours-table td:last-child{text-align:right;color:var(--gray-600)}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none}.tag-list li{padding:.35rem .9rem;background:#14a89a14;border:1px solid rgba(20,168,154,.15);border-radius:100px;font-size:.82rem;color:var(--ocean)}.announcement{background:linear-gradient(135deg,#14a89a0f,#0e3a5c0a);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;padding:1.25rem 1.5rem;margin-bottom:1rem}.announcement h3{font-size:1rem;font-weight:600;color:var(--midnight);margin-bottom:.25rem}.announcement p{font-size:.88rem;color:var(--gray-600)}.announcement .date{font-size:.75rem;color:var(--gray-600);margin-top:.5rem}.pinned-badge{display:inline-block;font-size:.68rem;font-weight:600;color:var(--teal);text-transform:uppercase;letter-spacing:.05em;margin-left:.5rem}.site-footer{background:var(--midnight);color:var(--ice);padding:2.5rem 0;text-align:center;font-size:.85rem}.footer-links{display:flex;justify-content:center;gap:1.5rem;list-style:none;margin-bottom:1rem}.footer-links a{color:var(--ice);opacity:.7;font-size:.82rem}.footer-links a:hover{opacity:1}.footer-copy{opacity:.5;font-size:.78rem}.cta-bar{background:linear-gradient(135deg,var(--teal),var(--ocean));color:var(--white);padding:2.5rem 0;text-align:center}.cta-bar h2{font-family:"Instrument Serif",serif;font-size:1.6rem;font-weight:400;margin-bottom:.5rem}.cta-bar p{opacity:.9;margin-bottom:1.25rem}.cta-btn{display:inline-block;padding:.7rem 2rem;background:var(--white);color:var(--ocean);border-radius:100px;font-weight:600;font-size:.9rem;transition:transform .2s}.cta-btn:hover{transform:translateY(-1px);color:var(--midnight)}@media(max-width:600px){.nav-links{gap:0}.nav-links a{padding:.3rem .5rem;font-size:.78rem}.hero{padding:3rem 0}.section{padding:2.5rem 0}}
