@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap');
:root{--navy:#103e78;--gold:#f4be00;--base:16px;--ink:#152943;--muted:#657487;--bg:#fff;--line:#e6e9ef}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:var(--base);line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.55rem,5vw,4.6rem)}h2{font-size:clamp(1.8rem,3vw,2.8rem)}h3{font-size:1.25rem}img{max-width:100%}.container{width:min(1160px,calc(100% - 44px));margin:auto}.header{border-bottom:1px solid #edf0f3;background:white;position:sticky;top:0;z-index:10;box-shadow:0 3px 22px #17385d08}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--navy);font-size:.94rem;line-height:1.24;max-width:360px}.brand img{width:66px;height:66px;object-fit:contain}.brand small{display:block;font-size:.67rem;letter-spacing:.08em;color:#8390a1;text-transform:uppercase;margin-top:5px}.nav{display:flex;align-items:center;gap:22px;font-size:.87rem;font-weight:700}.nav a:hover,.text-link:hover{color:#bc8700}.nav-cta{background:var(--navy);color:#fff;padding:11px 16px;border-radius:6px}.nav .nav-cta:hover{color:white;opacity:.88}.mobile-nav{display:none}.hero{background:radial-gradient(circle at 77% 45%,#18558d 0%,#103e78 42%,#092a56 100%);color:white;position:relative;overflow:hidden}.hero:after{content:'✦';font-size:520px;color:#ffffff05;position:absolute;right:-140px;top:-240px}.hero-grid{min-height:560px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:44px;padding:60px 0;position:relative;z-index:1}.hero-label,.eyebrow{font-weight:800;font-size:.73rem;letter-spacing:.17em;text-transform:uppercase;color:#b68a12}.hero-label{color:var(--gold)}.hero h1{margin:20px 0;max-width:740px}.hero p{font-size:1.08rem;max-width:570px;color:#d5e3f3}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.btn{border:0;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;padding:13px 22px;background:var(--navy);color:white;border-radius:6px;font-weight:800;font-size:.9rem;text-decoration:none}.btn:hover{filter:brightness(1.12)}.btn-gold{background:var(--gold);color:#0c2b4b}.btn-light{background:transparent;border:1px solid #95b4d4;color:white}.btn-outline{background:white;color:var(--navy);border:1px solid #cad5e0}.hero-motto{margin-top:54px;font-size:.68rem;letter-spacing:.13em;color:#9ab4cf;font-weight:800}.hero-motto span{color:var(--gold);padding:0 9px}.hero-emblem{display:grid;place-items:center}.emblem-ring{width:min(390px,100%);aspect-ratio:1;border:10px solid #ffffff21;border-radius:50%;padding:13px;background:#fff;box-shadow:0 30px 75px #001c3980}.emblem-ring img{height:100%;width:100%;object-fit:contain;border-radius:50%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:90px 0}.intro p{font-size:1.12rem;color:#627084}.text-link{color:var(--navy);font-weight:800}.values{background:#f5f8fc;padding:46px 0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.values-grid>div{padding:14px}.value-icon{font-size:32px;color:#ae7f0a}.values-grid h3{margin:10px 0 5px}.values-grid p{font-size:.9rem;color:var(--muted)}.section-space,.page-space{padding:75px 0 90px;min-height:48vh}.section-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section-row h2{margin:5px 0 0}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 8px 26px #1239630b}.project-card img,.project-image-fallback{width:100%;height:215px;object-fit:cover;background:#dfebf5}.project-image-fallback{display:grid;place-items:center;font-size:80px;color:#7f9dbc}.project-body{padding:23px}.project-body h3{margin:9px 0}.project-body p{color:var(--muted);font-size:.91rem}.cta{padding:65px 0;background:#f3bd07;color:#092b51}.cta-row{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta .eyebrow{color:#6e5002}.cta h2{margin:8px 0}.cta p{margin:0}.cta .btn-gold{background:var(--navy);color:#fff}.footer{background:#09284e;color:#d7e2ee;padding-top:55px;font-size:.86rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:45px}.footer-title{font-weight:800;color:white;font-size:1.12rem}.footer a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #ffffff20;display:flex;gap:25px;justify-content:space-between;align-items:center;padding:25px 0;margin-top:45px;font-size:.78rem}.credit{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.credit img{height:26px;width:auto;background:#fff;padding:3px 7px;border-radius:4px}.lead{font-size:1.12rem;color:var(--muted);max-width:770px}.empty{border:1px dashed #d4dce5;border-radius:10px;padding:45px;text-align:center;color:var(--muted);margin-top:25px}.article{max-width:870px}.article h1{margin-top:20px}.article-cover{width:100%;max-height:530px;object-fit:cover;border-radius:14px;margin:30px 0}.article-text{font-size:1.07rem;line-height:1.9;margin:34px 0;white-space:normal}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:15px}.gallery img{width:100%;height:175px;object-fit:cover;border-radius:8px}.panel{background:white;border:1px solid var(--line);padding:28px;border-radius:12px;box-shadow:0 8px 26px #193e6708}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.feature p,.muted{color:var(--muted)}.feature:hover{border-color:#b8cadb}.auth-wrap{min-height:65vh;display:grid;place-items:center;padding:55px 20px;background:#f5f8fb}.auth{width:min(440px,100%)}.auth h1{font-size:2.1rem}.tiny{font-size:.81rem;color:#788698}.full{width:100%}label{display:block;font-size:.87rem;font-weight:700;margin:0 0 17px}input,textarea,select{display:block;width:100%;padding:11px 13px;margin-top:7px;border:1px solid #cbd5e1;background:white;border-radius:6px;color:#18314d;max-width:100%}input:focus,textarea:focus,select:focus{outline:2px solid #aac1e0;border-color:var(--navy)}input[type=color]{height:46px;padding:4px}.dashboard{padding:38px 0 90px;min-height:65vh}.dash-head{display:flex;justify-content:space-between;align-items:center}.dash-head h1{font-size:2.5rem;margin:7px 0 20px}.admin-nav{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0 35px;border-top:1px solid var(--line)}.admin-nav a{background:#edf3f9;padding:9px 12px;border-radius:5px;color:var(--navy);font-size:.84rem;font-weight:800}.admin-nav a:hover{background:#dde9f6}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:26px}.wide{grid-column:1/-1}.stack{display:grid;gap:18px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:30px 0}.stat{border:1px solid var(--line);background:#f5f8fb;border-radius:10px;padding:25px}.stat b{display:block;font-size:2.4rem;color:var(--navy)}.stat span{font-size:.86rem;color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}td,th{padding:12px;border-bottom:1px solid var(--line)}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.inline{display:inline}.link-button{border:0;background:none;padding:0;color:var(--navy);cursor:pointer;text-decoration:underline}.notification{padding:13px 18px;background:#fff4ca;border-radius:5px;margin-top:15px}.pill{background:#edf3f9;border-radius:40px;padding:6px 13px;font-size:.8rem;color:var(--navy)}@media(max-width:900px){.nav{gap:11px;font-size:.78rem}.brand{max-width:270px}.brand img{width:55px;height:55px}.projects-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:20px}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.header-inner{min-height:75px}.mobile-nav{display:block;background:none;border:0;font-size:1.7rem;color:var(--navy)}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;box-shadow:0 13px 15px #0002;padding:20px;flex-direction:column;align-items:stretch}.nav.show{display:flex}.hero-grid{grid-template-columns:1fr;padding:54px 0}.hero-emblem{grid-row:1}.emblem-ring{max-width:220px;border-width:5px}.hero h1{font-size:2.6rem}.hero-motto{margin-top:25px}.intro,.footer-grid{grid-template-columns:1fr;gap:20px}.intro{padding:55px 0}.values-grid{grid-template-columns:repeat(2,1fr)}.projects-grid,.feature-grid,.form-grid{grid-template-columns:1fr}.section-row,.cta-row,.footer-bottom{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:repeat(2,1fr)}.wide{grid-column:auto}.panel{padding:18px}.brand{font-size:.8rem;max-width:270px}.section-space,.page-space{padding:50px 0}.footer-bottom{gap:14px}}
/* Club management extension */
.club-cards {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin-top:26px}
.club-photo {width:100%;height:220px;object-fit:cover;border-radius:10px}
.club-form {margin:14px 0;padding:22px}
.club-fields {display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.club-form label {display:block;margin-bottom:14px}
.club-form input,.club-form select,.club-form textarea {width:100%;padding:10px;border:1px solid #d2d8e2;border-radius:7px;margin-top:5px;box-sizing:border-box}
.club-form textarea {min-height:85px}
.club-delete {margin:0 0 25px}
.club-delete button {background:transparent;border:0;color:#a42424;cursor:pointer}
