@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--primary:#2E3585;--accent:#C25B59;--ink:#18322f;--muted:#73769b;--pale:#f7f7fb;--line:#e3e4f1}*{box-sizing:border-box}body{font-family:'DM Sans',sans-serif;color:var(--ink);margin:0}h1,h2,h3,h4,.navbar-brand{font-family:Manrope,sans-serif}.site-nav{background:#252b6d;padding:18px 0}.navbar-brand{font-size:1rem;line-height:1.35}.navbar-brand small{font-size:.68rem;opacity:.72;letter-spacing:.06em}.brand-mark{display:inline-grid;place-items:center;background:var(--accent);color:#18322f;width:36px;height:36px;border-radius:12px;margin-right:8px}.nav-link{font-size:.9rem;margin:0 5px}.btn-gold{background:var(--accent);color:#252b6d;border:1px solid var(--accent);font-weight:800;border-radius:999px;padding:11px 20px}.btn-gold:hover{background:#d77c79;color:#252b6d}.hero{background:radial-gradient(ellipse at 85% 15%,#555bb0 0,transparent 38%),linear-gradient(120deg,#252b6d,#2E3585);color:white;padding:76px 0 112px;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;right:-100px;bottom:-250px;width:500px;height:500px;border:1px solid #ffffff18;border-radius:50%;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff05}.eyebrow,.section-heading>span,.mini-label{font-size:.72rem;letter-spacing:.15em;font-weight:800;color:var(--accent)}.eyebrow{display:inline-flex;gap:9px;align-items:center;border:1px solid #ffffff38;border-radius:99px;padding:9px 13px}.hero h1{font-size:clamp(2.4rem,4.2vw,4.4rem);font-weight:800;line-height:1.08;letter-spacing:-.045em;margin:22px 0 12px;max-width:650px}.hero-subtitle{font-size:1.15rem;font-weight:600;margin-bottom:14px}.hero-copy{color:#e1e2f5;max-width:510px;line-height:1.8}.hero-meta{font-size:.85rem;color:#e1e2f5}.hero-meta i{color:var(--accent);margin-right:8px}.hero-image-wrap{height:420px;border-radius:26px;position:relative;overflow:hidden;border:1px solid #ffffff44;box-shadow:0 30px 65px #252b6d40;background:linear-gradient(145deg,#555bb0,#252b6d)}.hero-image-wrap>img{width:100%;height:100%;object-fit:cover}.image-fallback{height:100%;display:none;place-content:center;text-align:center;color:#C25B59;font-size:2.5rem;gap:15px}.image-fallback span{font-size:1.1rem;color:#fff}.image-note{position:absolute;bottom:20px;left:20px;right:20px;background:#252b6ddc;backdrop-filter:blur(10px);border:1px solid #ffffff35;border-radius:16px;padding:15px;display:flex;gap:13px;align-items:center}.image-note>i{font-size:1.4rem;color:var(--accent)}.image-note b,.image-note small{display:block}.image-note small{color:#e1e2f5;margin-top:3px}.stats-wrap{margin-top:-52px;position:relative;z-index:2}.stat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;height:100%;box-shadow:0 12px 28px #252b6d0a}.stat-icon{width:40px;height:40px;border-radius:13px;background:#f4e5e4;color:var(--primary);display:grid;place-items:center;font-size:1.2rem;margin-bottom:16px}.stat-value{font:800 clamp(1.35rem,2vw,1.9rem) Manrope,sans-serif;color:var(--primary)}.stat-title{font-weight:800;margin-top:4px}.stat-card p{color:var(--muted);font-size:.8rem;margin:5px 0 0}.section-pad{padding:78px 0}.section-heading{margin-bottom:32px}.section-heading>span{color:var(--primary)}.section-heading h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:800;letter-spacing:-.045em;margin:12px 0}.section-heading h2 em{font-style:normal;color:var(--primary)}.section-heading p{color:var(--muted);max-width:600px;line-height:1.8}.panel{border:1px solid var(--line);border-radius:20px;padding:27px;background:#fff;box-shadow:0 12px 32px #2E358508}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:8px}.panel-heading h3{font-size:1.35rem;font-weight:800;margin:5px 0 0}.panel-heading>i{font-size:1.6rem;color:var(--primary);background:var(--pale);padding:12px;border-radius:14px}.collection-row,.area-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 2px;border-bottom:1px solid var(--line);font-size:.92rem}.collection-row:last-child,.area-row:last-child{border:0}.collection-row span i{color:var(--primary);margin-right:10px}.collection-row b,.area-row b{font-weight:800;white-space:nowrap}.library-hours{margin-top:18px;padding:16px;background:var(--pale);border-radius:13px;display:flex;gap:13px}.library-hours>i{font-size:1.35rem;color:var(--primary)}.library-hours b,.library-hours span{display:block}.library-hours span{font-size:.82rem;color:var(--muted);margin-top:4px}.services-section,.team-section{background:var(--pale)}.text-center .section-heading p{margin-left:auto;margin-right:auto}.service-card{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;height:100%;transition:transform .2s,box-shadow .2s}.service-card:hover,.resource-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #252b6d12}.service-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:#f4e5e4;color:var(--primary);font-size:1.4rem;margin-bottom:20px}.service-card h3{font-size:1.1rem;font-weight:800}.service-subtitle{color:var(--primary);font-size:.82rem;font-weight:700}.service-card p{font-size:.9rem;color:var(--muted);line-height:1.7;margin-top:12px}.service-card a,.notice-card a{font-weight:800;font-size:.85rem;color:var(--primary);text-decoration:none}.resource-card{display:flex;align-items:center;gap:15px;height:100%;padding:20px;border:1px solid var(--line);border-radius:16px;text-decoration:none;color:var(--ink);transition:.2s}.resource-icon{flex:0 0 48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#f4e5e4;color:var(--primary);font-size:1.3rem}.resource-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.resource-copy b{font-weight:800}.resource-copy small{color:var(--primary);font-weight:700}.resource-copy>span{font-size:.8rem;color:var(--muted)}.resource-arrow{margin-left:auto;color:var(--primary)}.person-card{display:flex;align-items:center;gap:17px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px;height:100%}.person-card img,.person-avatar{width:65px;height:65px;object-fit:cover;border-radius:18px;flex-shrink:0}.person-avatar{display:grid;place-items:center;background:#f4e5e4;color:var(--primary);font-weight:800;font-size:1.4rem}.person-card small{font-size:.7rem;color:var(--primary);font-weight:800;text-transform:uppercase}.person-card h3{font-size:1rem;font-weight:800;margin:5px 0}.person-card p{font-size:.8rem;color:var(--muted);margin:0}.person-card a{font-size:.8rem;color:var(--primary)}.committee-item{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;padding:16px}.committee-item>i{background:var(--pale);color:var(--primary);padding:12px;border-radius:12px;font-size:1.1rem}.committee-item b,.committee-item span{display:block}.committee-item span{font-size:.82rem;color:var(--muted);margin-top:4px}.rules-section{background:#f7f7fb}.custom-accordion .accordion-item{border:1px solid var(--line);border-radius:12px!important;overflow:hidden;margin-bottom:10px}.custom-accordion .accordion-button{font-weight:800;color:var(--ink);box-shadow:none}.custom-accordion .accordion-button:not(.collapsed){background:#f4e5e4;color:var(--primary)}.custom-accordion .accordion-body{color:var(--muted);line-height:1.8}.notice-card{padding:24px;border:1px solid var(--line);border-radius:16px;height:100%}.notice-card h3{font-size:1.1rem;font-weight:800;margin:12px 0}.notice-card p{color:var(--muted);font-size:.9rem;line-height:1.7}.site-footer{background:#252b6d;color:#e1e2f5;padding:55px 0 0}.site-footer h3{font-size:1.2rem;color:#fff;font-weight:800}.site-footer h3 i{color:var(--accent)}.site-footer h4{font-size:.95rem;color:#fff;font-weight:800;margin-bottom:18px}.site-footer p{font-size:.88rem;line-height:1.7}.footer-link{display:block;color:#e1e2f5;text-decoration:none;margin:0 0 10px;font-size:.88rem}.footer-link:hover{color:var(--accent)}.footer-bottom{border-top:1px solid #ffffff25;margin-top:35px;padding:20px 0;text-align:center;font-size:.8rem;color:#c6c8e8}@media(max-width:767px){.hero{padding:52px 0 85px}.hero-image-wrap{height:300px}.section-pad{padding:55px 0}.panel{padding:20px}.stats-wrap{margin-top:-35px}.stat-card{padding:16px}.navbar-brand{font-size:.85rem}}
