html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem}.error-content{text-align:center;max-width:500px}.error-content h2{color:var(--secondary-blue);margin-bottom:1rem}.error-content p{color:var(--gray-medium);margin-bottom:2rem}.header{position:sticky;top:0;z-index:1000;background:var(--navy-700);border-bottom:1px solid var(--line-dark);transition:background var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),padding var(--dur-2) var(--ease)}.header:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.header--scrolled{background:#1b1b33eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 30px #00000059}.header-content{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;transition:padding var(--dur-2) var(--ease)}.header--scrolled .header-content{padding:.15rem 0}.logo{display:flex;align-items:center;gap:.75rem}.logo-image{height:68px;width:auto;max-width:84px;object-fit:contain;transition:height var(--dur-2) var(--ease),transform var(--dur-2) var(--ease);filter:brightness(0) invert(1) drop-shadow(0 4px 10px rgba(0,0,0,.35))}.logo:hover .logo-image{transform:rotate(-4deg) scale(1.04)}.header--scrolled .logo-image{height:52px}.logo-text{font-family:var(--font-display);font-size:1.7rem;letter-spacing:.02em;text-transform:uppercase;color:var(--white);line-height:1;transition:font-size var(--dur-2) var(--ease)}.header--scrolled .logo-text{font-size:1.45rem}.nav{display:flex;align-items:center;margin-left:auto;flex-wrap:nowrap;height:52px}.nav-main,.nav-dropdowns,.nav-auth{display:flex;gap:.35rem;align-items:center;height:100%}.nav-dropdowns,.nav-auth{margin-left:1.25rem}.nav-link,.dropdown-toggle{position:relative;display:flex;align-items:center;gap:.3rem;height:44px;padding:0 .9rem;border:none;background:none;font-family:var(--font-body);font-size:.95rem;font-weight:700;letter-spacing:.02em;color:#ffffffd1;text-decoration:none;cursor:pointer;border-radius:var(--radius-sm);white-space:nowrap;transition:color var(--dur-1) var(--ease)}.nav-link:after,.dropdown-toggle:after{content:"";position:absolute;left:.9rem;right:.9rem;bottom:6px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-2) var(--ease)}.nav-link:hover,.dropdown-toggle:hover{color:var(--white)}.nav-link:hover:after,.dropdown-toggle:hover:after{transform:scaleX(1)}.nav-link.active,.dropdown-toggle.active{color:var(--accent)}.nav-link.active:after,.dropdown-toggle.active:after{transform:scaleX(1)}.dropdown-caret{transition:transform var(--dur-2) var(--ease)}.logout-link{cursor:pointer}.nav-auth .nav-link[href="/login"]{background:var(--accent);color:var(--navy-900);padding:0 1.15rem;border-radius:var(--radius-pill);box-shadow:var(--shadow-gold)}.nav-auth .nav-link[href="/login"]:after{display:none}.nav-auth .nav-link[href="/login"]:hover{color:var(--navy-900);transform:translateY(-1px)}.nav-dropdown{position:relative}.dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;z-index:1001;animation:dropdown-in var(--dur-2) var(--ease)}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.dropdown-item{display:block;padding:.8rem 1.1rem;color:var(--navy-800);font-weight:600;font-size:.92rem;text-decoration:none;border-left:3px solid transparent;transition:background var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.dropdown-item:hover,.dropdown-item.active{background:var(--paper-alt);border-left-color:var(--accent);color:var(--navy-900)}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;background:#ffffff14;border:1px solid var(--line-dark);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-2) var(--ease)}.menu-toggle span{width:24px;height:2.5px;margin:0 auto;background:var(--white);border-radius:2px;transition:var(--transition)}.menu-toggle.active{background:var(--accent)}.menu-toggle.active span{background:var(--navy-900)}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,6px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-6px)}@media (max-width: 900px){.menu-toggle{display:flex;z-index:10001;position:relative}.nav{position:fixed;inset:0;height:100dvh;width:100vw;flex-direction:column;justify-content:center;gap:0;padding:5.5rem 1.5rem 2.5rem;background:linear-gradient(160deg,var(--navy-900),var(--navy-700) 70%,var(--green-700));transform:translate(100%);opacity:0;visibility:hidden;transition:transform var(--dur-3) var(--ease-out),opacity var(--dur-3) var(--ease-out),visibility var(--dur-3);overflow-y:auto;z-index:9999}.nav-open{transform:none;opacity:1;visibility:visible}.nav-main,.nav-dropdowns,.nav-auth{flex-direction:column;width:100%;max-width:420px;margin:0 auto;gap:.6rem;height:auto}.nav-dropdowns,.nav-auth{margin-top:.6rem}.nav-link,.dropdown-toggle{width:100%;height:56px;justify-content:center;font-size:1.15rem;text-transform:uppercase;color:var(--white);background:#ffffff0f;border:1px solid var(--line-dark);border-radius:var(--radius-md)}.nav-link:after,.dropdown-toggle:after{display:none}.nav-link.active,.dropdown-toggle.active{background:var(--accent);color:var(--navy-900);border-color:var(--accent)}.nav-dropdown{width:100%;max-width:420px;margin:0 auto}.dropdown-menu{position:static;width:100%;margin-top:.5rem;background:#00000040;border:1px solid var(--line-dark);box-shadow:none;animation:none}.dropdown-item{color:#ffffffe6;text-align:center;border-left:none;border-bottom:1px solid var(--line-dark)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover,.dropdown-item.active{background:var(--green-600);color:var(--white)}.nav-auth .nav-link[href="/login"]{justify-content:center}.logo-text{font-size:1.4rem}.logo-image,.header--scrolled .logo-image{height:54px}}@media (max-width: 480px){.logo-text{font-size:1.15rem}}.footer{background:var(--navy-900);color:var(--text-on-dark);padding:clamp(3rem,2rem + 3vw,5rem) 0 1.5rem;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent));z-index:2}.footer-content{display:grid;grid-template-columns:1.3fr 1fr 1.2fr;gap:clamp(2rem,1rem + 3vw,4rem);margin-bottom:2.5rem;position:relative;z-index:1}.footer-section h3,.footer-section h4{color:var(--white);margin-bottom:1.1rem;letter-spacing:.03em}.footer-section h3{font-size:1.5rem}.footer-section h4{font-size:1.05rem;position:relative;padding-bottom:.6rem}.footer-section h4:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:2px;background:var(--accent)}.footer-brand .footer-logo{height:64px;width:auto;margin-bottom:1rem;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4))}.footer-brand p{color:var(--text-on-dark-muted);max-width:34ch}.footer-section ul{list-style:none;display:flex;flex-direction:column;gap:.7rem}.footer-links a{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-on-dark);font-weight:600;text-decoration:none;transition:color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.footer-links a .icon{color:var(--accent);transition:transform var(--dur-1) var(--ease)}.footer-links a:hover{color:var(--accent)}.footer-links a:hover .icon{transform:translate(3px)}.footer-contact li{display:flex;align-items:flex-start;gap:.7rem;color:var(--text-on-dark-muted);line-height:1.5}.footer-contact .icon{color:var(--accent);flex:0 0 auto;margin-top:2px}.footer-contact a{color:var(--text-on-dark-muted);text-decoration:none;word-break:break-word}.footer-contact a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--line-dark);padding-top:1.5rem;text-align:center;color:var(--text-on-dark-muted);font-size:.9rem}@media (max-width: 768px){.footer-content{grid-template-columns:1fr;text-align:center;gap:2.5rem}.footer-section h4:after{left:50%;transform:translate(-50%)}.footer-brand{display:flex;flex-direction:column;align-items:center}.footer-brand p{max-width:none}.footer-section ul{align-items:center}.footer-contact li{justify-content:center;text-align:left}}.carousel{position:relative;width:100%;overflow:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.carousel-container{position:relative;width:100%;height:100%}.carousel-track{display:flex;width:100%;height:100%;transition:transform .7s var(--ease-out)}.carousel-slide{min-width:100%;height:100%;overflow:hidden}.carousel-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.02)}.carousel-slide.is-active img{animation:ken-burns 7s ease-out forwards}@keyframes ken-burns{0%{transform:scale(1.02)}to{transform:scale(1.12)}}.carousel-slide:nth-child(1) img{object-position:center 40%}.carousel-slide:nth-child(3) img{object-position:center 30%}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#14142b73;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--white);border:1px solid rgba(255,255,255,.25);border-radius:50%;font-size:26px;line-height:1;cursor:pointer;z-index:3;transition:background var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.carousel-btn:hover{background:var(--accent);color:var(--navy-900);transform:translateY(-50%) scale(1.08)}.carousel-btn-prev{left:18px}.carousel-btn-next{right:18px}.carousel-indicators{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:10px;z-index:3}.carousel-indicator{width:28px;height:5px;border-radius:var(--radius-pill);border:none;background:#ffffff73;cursor:pointer;transition:background var(--dur-2) var(--ease),width var(--dur-2) var(--ease)}.carousel-indicator.active{background:var(--accent);width:46px}.carousel-indicator:hover{background:var(--white)}.carousel--hero{border-radius:0;height:clamp(440px,72vh,760px);box-shadow:none}.carousel--hero:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#14142b73,#14142b26 35%,#14142b8c 75%,#14142beb)}.carousel--hero .carousel-indicators{bottom:26px}@media (max-width: 768px){.carousel-btn{width:40px;height:40px;font-size:20px}.carousel-btn-prev{left:10px}.carousel-btn-next{right:10px}.carousel--hero{height:clamp(420px,78vh,560px)}}.next-match-overlay{position:fixed;top:auto;bottom:24px;right:24px;transform:none;z-index:100;min-width:230px;padding:1rem 1.15rem;border-radius:var(--radius-md);color:var(--white);background:linear-gradient(150deg,#1b1b33eb,#23a05e8c);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow-lg);animation:overlay-in .6s var(--ease-out) both}@keyframes overlay-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.next-match-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.65rem;padding-bottom:.55rem;border-bottom:1px solid rgba(255,255,255,.18)}.next-match-header h4{margin:0;font-family:var(--font-body);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.countdown{font-weight:800;font-size:.78rem;letter-spacing:.02em;padding:.22rem .6rem;border-radius:var(--radius-pill);background:var(--accent);color:var(--navy-900)}.match-details{font-size:.9rem}.teams{font-weight:700;margin-bottom:.2rem;line-height:1.25}.match-time{opacity:.85;font-size:.78rem}@media (max-width: 768px){.next-match-overlay{display:none}}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.card-small{padding:1rem}.card-medium{padding:1.5rem}.card-large{padding:2rem}.card-hover{position:relative;overflow:hidden}.card-hover:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform:scaleX(0);transform-origin:left;transition:transform var(--dur-2) var(--ease)}.card-hover:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.card-hover:hover:before{transform:scaleX(1)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.loading-spinner-small{padding:1rem}.loading-spinner-medium{padding:2rem}.loading-spinner-large{padding:3rem}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-small .spinner{width:1.5rem;height:1.5rem}.loading-spinner-medium .spinner{width:2.5rem;height:2.5rem}.loading-spinner-large .spinner{width:4rem;height:4rem}.loading-text{color:var(--text-muted);font-size:.9rem;font-weight:600;letter-spacing:.02em;margin:0}.section--dark .spinner,.section--darker .spinner{border-color:#ffffff2e;border-top-color:var(--accent)}.section--dark .loading-text,.section--darker .loading-text{color:var(--text-on-dark-muted)}.hero{position:relative;background:var(--navy-900)}.hero-overlay{position:absolute;inset:0;z-index:3;display:flex;align-items:flex-end;padding-bottom:clamp(2.5rem,1rem + 6vw,6rem)}.hero-content{max-width:760px;width:100%;min-width:0;animation:fade-up .9s var(--ease-out) both}.hero-content .eyebrow{color:var(--accent)}.hero-content h1{font-size:var(--step-5);color:var(--white);line-height:.92;text-shadow:0 6px 30px rgba(0,0,0,.5);margin-bottom:1rem;overflow-wrap:break-word}.hero-content p{font-size:clamp(1.1rem,1rem + .6vw,1.5rem);color:#ffffffe0;margin-bottom:2rem;font-weight:500;overflow-wrap:break-word}.stat-band{background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--navy-900)}.stats{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding:clamp(1.75rem,1rem + 2vw,2.75rem) 0}.stat{text-align:center;padding:0 1rem;position:relative}.stat+.stat:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:60%;width:1px;background:#14142b33}.stat-num{display:block;font-family:var(--font-display);font-size:clamp(2.4rem,1.6rem + 3.4vw,4rem);line-height:1;color:var(--navy-900);letter-spacing:.01em}.stat-num--text{font-size:clamp(1.8rem,1.2rem + 2.4vw,3rem)}.stat-label{display:block;margin-top:.4rem;font-weight:800;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#14142bb8}.sponsors{background:var(--surface);padding:2.5rem 0}.sponsors-eyebrow{text-align:center;font-weight:800;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.75rem}.sponsors-layout{display:flex;flex-direction:column;align-items:center;gap:2rem}.sponsors-bar{display:flex;justify-content:center;align-items:center;gap:clamp(1.5rem,1rem + 3vw,4rem);flex-wrap:wrap}.sponsor-logo{display:flex;align-items:center;justify-content:center;height:76px}.sponsor-logo img{max-height:100%;max-width:170px;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter var(--dur-2) var(--ease),opacity var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.sponsor-logo:hover img{filter:grayscale(0);opacity:1;transform:scale(1.05)}.duke-logo img{background:var(--white);padding:10px;border-radius:var(--radius-sm)}.main-sponsor{height:150px}.main-sponsor img{max-height:150px;max-width:480px;filter:none;opacity:1}.about-results-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,1rem + 4vw,5rem);align-items:start}.about-section h2,.results-section h2{font-size:var(--step-3);color:var(--white);margin-bottom:1.5rem}.results-section h2{display:flex;align-items:center;gap:.6rem}.results-section h2 .icon{color:var(--accent)}.about-content p{font-size:1.05rem;line-height:1.85;margin-bottom:1.25rem;color:#ffffffd1}.social-media-section{margin-top:2.5rem}.social-media-section h2{font-size:var(--step-2);margin-bottom:1.25rem}.social-links{display:flex;flex-direction:column;gap:1rem}.social-link{display:flex;align-items:center;gap:1rem;padding:.9rem 1.4rem;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--navy-900);text-decoration:none;font-weight:700;box-shadow:var(--shadow-gold);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.social-link:hover{transform:translateY(-3px);box-shadow:0 14px 34px #ffcc3273;color:var(--navy-900)}.social-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.social-text{display:flex;flex-direction:column;line-height:1.2}.social-platform{font-weight:800;font-size:1.05rem}.social-handle{font-size:.85rem;opacity:.8}.results-table{display:flex;flex-direction:column;gap:.85rem}.result-row{display:grid;grid-template-columns:110px 1fr auto;gap:1rem;align-items:center;padding:1.1rem 1.25rem;background:#ffffff0d;border:1px solid var(--line-dark);border-left:4px solid var(--accent);border-radius:var(--radius-md);transition:background var(--dur-2) var(--ease),transform var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.result-row:hover{background:#ffffff17;transform:translate(4px);border-left-color:var(--accent-2)}.result-date{font-size:.8rem;color:var(--text-on-dark-muted);font-weight:600}.result-teams{font-weight:700;color:var(--white);font-size:.92rem}.result-score{font-family:var(--font-display);font-size:1.35rem;letter-spacing:.02em}.result-score.win{color:var(--green-400)}.result-score.loss{color:#ff7a7a}.fixture-time{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;color:var(--accent);font-size:.9rem}.upcoming-fixtures-title{margin-top:2.5rem;display:flex;align-items:center;gap:.6rem}.upcoming-fixtures-title .icon{color:var(--accent)}.news-events-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(2rem,1rem + 4vw,4rem);align-items:start}.news-section,.events-section{display:flex;flex-direction:column}.news-section .section-title,.events-section .section-title{text-align:left;font-size:var(--step-3);margin-bottom:1.5rem}.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.news-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.news-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.news-image{height:190px;overflow:hidden}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.news-card:hover .news-image img{transform:scale(1.06)}.news-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.news-content h3{font-size:1.2rem;color:var(--navy-800);margin-bottom:.4rem;line-height:1.1}.news-date{color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.9rem}.news-content>p{color:var(--text);line-height:1.6;margin-bottom:1.1rem}.read-more{margin-top:auto;display:inline-flex;align-items:center;gap:.35rem;font-weight:800;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:var(--green-600)}.read-more .icon{transition:transform var(--dur-1) var(--ease)}.read-more:hover{color:var(--navy-800)}.read-more:hover .icon{transform:translate(4px)}.news-cta,.events-cta{margin-top:2rem;text-align:center}.event-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-sm);border-top:3px solid var(--accent)}.event-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.event-header h3{font-size:1.4rem;color:var(--navy-800);line-height:1.05}.event-type{flex:0 0 auto;background:var(--green-500);color:var(--white);padding:.3rem .8rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.event-details{display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.1rem}.event-date,.event-time,.event-location{display:flex;align-items:center;gap:.55rem;color:var(--text);font-size:.95rem}.event-date{color:var(--navy-800);font-weight:700}.event-date .icon,.event-time .icon,.event-location .icon{color:var(--green-600);flex:0 0 auto}.event-description{color:var(--text-muted);line-height:1.6}.cta .cta-content{text-align:center;max-width:640px;margin:0 auto}.cta .cta-content .eyebrow{justify-content:center;color:var(--accent)}.cta-content h2{font-size:var(--step-4);color:var(--white);margin-bottom:1rem}.cta-content p{font-size:1.15rem;color:#ffffffd1;margin-bottom:2rem}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width: 900px){.about-results-grid,.news-events-grid{grid-template-columns:1fr}}@media (max-width: 768px){.hero-overlay{align-items:center;text-align:center;padding-bottom:0}.hero-content{margin:0 auto}.hero-content .eyebrow{justify-content:center}.hero-content h1{font-size:clamp(2.2rem,1.4rem + 4vw,3.2rem)}.hero-content p{font-size:1.05rem}.stats{grid-template-columns:1fr;gap:1.5rem}.stat+.stat:before{display:none}.stat+.stat{border-top:1px solid rgba(20,20,43,.18);padding-top:1.5rem}.result-row{grid-template-columns:1fr;text-align:center;gap:.5rem}.result-date{order:3}.result-teams{order:1;font-size:1rem}.result-score{order:2;font-size:1.6rem}.fixture-time{justify-content:center}.news-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.main-sponsor{height:120px}.main-sponsor img{max-height:120px}}.page-hero{position:relative;overflow:hidden;background:var(--navy-900);color:var(--white);padding:clamp(3rem,2rem + 5vw,6rem) 0 clamp(2.5rem,1.5rem + 4vw,5rem);border-bottom:3px solid var(--accent)}.page-hero-inner{position:relative;z-index:2;max-width:820px;animation:fade-up .7s var(--ease-out) both}.page-hero .eyebrow{color:var(--accent)}.page-hero h1{font-size:var(--step-4);color:var(--white);line-height:.95;text-shadow:0 4px 24px rgba(0,0,0,.4)}.page-hero-sub{margin-top:1rem;font-size:clamp(1.05rem,1rem + .4vw,1.3rem);color:#ffffffc7;font-weight:500;max-width:60ch}.page-hero .page-hero-watermark{position:absolute;right:-40px;top:50%;transform:translateY(-50%);height:150%;width:auto;opacity:.06;filter:grayscale(1) brightness(3);pointer-events:none;z-index:1}@media (max-width: 768px){.page-hero .page-hero-watermark{right:-80px;height:120%;opacity:.05}}.teams-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:4rem}.team-card{background:var(--surface);padding:2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);border-top:3px solid var(--accent);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.team-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.team-card h3{display:flex;align-items:center;gap:.55rem;color:var(--navy-800);margin-bottom:1rem;font-size:1.45rem}.team-card h3 .icon{color:var(--accent-strong)}.team-card>p{margin-bottom:1rem;line-height:1.6;color:var(--text)}.team-details{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem;display:flex;flex-direction:column;gap:.6rem}.team-details p{display:flex;align-items:center;gap:.5rem;color:var(--text)}.team-details strong{color:var(--navy-800)}.td-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--green-600);flex:0 0 auto}.team-profiles{margin-top:4rem}.profiles-title{color:var(--navy-800);font-size:var(--step-3);text-align:center;margin-bottom:2.5rem}.players-list{display:flex;gap:2rem;margin-top:2rem;overflow-x:auto;padding:1rem 0;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.players-list::-webkit-scrollbar{height:8px}.players-list::-webkit-scrollbar-track{background:var(--line);border-radius:4px}.players-list::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.players-list::-webkit-scrollbar-thumb:hover{background:var(--accent-2)}.player-profile{flex:0 0 340px;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:2px solid transparent;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease);overflow:hidden}.player-profile:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--accent)}.player-photo-container{position:relative;width:100%;height:400px;overflow:hidden}.player-photo{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.player-profile:hover .player-photo{transform:scale(1.05)}.photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--navy-700),var(--green-600));display:flex;align-items:center;justify-content:center;color:var(--white);font-family:var(--font-display);font-size:3rem}.player-info-overlay{position:absolute;inset:auto 0 0;background:linear-gradient(to bottom,rgba(255,204,50,0) 0%,rgba(255,204,50,.92) 55%,var(--gold-400) 100%);padding:1.5rem 1.25rem 1.25rem;text-align:center}.player-name-line{font-family:var(--font-display);font-size:1.5rem;color:var(--navy-900);line-height:1}.player-position{font-weight:700;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-800);margin-top:.3rem}.no-players{text-align:center;padding:3rem;color:var(--text-muted);font-size:1.1rem}@media (max-width: 768px){.teams-grid{grid-template-columns:1fr;gap:1.5rem}.team-card{padding:1.5rem}.profiles-title{font-size:var(--step-2)}.players-list{flex-direction:column;overflow-x:visible}.player-profile{flex:none}.player-photo-container{height:420px}}.fixtures-widget{margin-bottom:2rem}.fixtures-widget h2{color:var(--navy-800);margin-bottom:1.5rem;font-size:var(--step-2)}.fixtures-list{display:flex;flex-direction:column;gap:.85rem}.fixture-item{display:grid;grid-template-columns:120px 1fr auto;gap:1rem;padding:1rem 1.15rem;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius-md);align-items:center;box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.fixture-item:hover{transform:translate(4px);border-left-color:var(--accent-2)}.fixture-date{font-size:.8rem;color:var(--text-muted);font-weight:600}.fixture-match{font-weight:700;color:var(--navy-800);font-size:.9rem}.fixture-item .fixture-time{font-weight:800;color:var(--green-600);font-size:.9rem}@media (max-width: 480px){.fixture-item{grid-template-columns:1fr;text-align:left;gap:.35rem}}.events-page .events-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,1rem + 3vw,3rem);margin-bottom:3.5rem;align-items:start}.events-page .fixtures-column,.events-page .events-column{min-width:0}.events-page .admin-events h2,.events-page .past-events-section h2{display:flex;align-items:center;gap:.55rem;color:var(--navy-800);font-size:var(--step-2);margin-bottom:1.75rem}.events-page .admin-events h2 .icon{color:var(--accent-strong)}.events-page .admin-events .events-grid{display:flex;flex-direction:column;gap:1.25rem}.events-page .past-events-section{margin-bottom:3.5rem}.events-page .past-events-section .events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.5rem}.events-page .past-events-section .event-card{opacity:.9}.events-page .event-card{position:relative;overflow:hidden;background:var(--surface);padding:1.6rem 6rem 1.6rem 1.6rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);border-left:5px solid var(--ink-300);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.events-page .event-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.events-page .event-card.event-social{border-left-color:var(--accent)}.events-page .event-card.event-meeting{border-left-color:var(--navy-600)}.events-page .event-card h3{color:var(--navy-800);font-size:1.25rem;line-height:1.1;margin-bottom:.9rem}.events-page .event-type{position:absolute;top:1.1rem;right:1.1rem;padding:.28rem .7rem;border-radius:var(--radius-pill);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--paper-alt);color:var(--navy-800)}.events-page .event-social .event-type{background:var(--accent);color:var(--navy-900)}.events-page .event-meeting .event-type{background:var(--navy-700);color:var(--white)}.events-page .event-details{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.9rem}.events-page .event-details p{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.92rem;color:var(--text)}.events-page .event-details .icon{color:var(--green-600);flex:0 0 auto}.events-page .event-date{font-weight:700;color:var(--navy-800)}.events-page .event-location{font-style:normal}.events-page .event-description{color:var(--text-muted);font-size:.92rem;line-height:1.55}.events-page .events-empty{color:var(--text-muted)}.events-page .events-info{position:relative;overflow:hidden;background:var(--navy-900);color:var(--white);padding:clamp(2.25rem,1.5rem + 3vw,3.5rem);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);border-top:3px solid var(--accent)}.events-page .events-info h2{color:var(--white);margin-bottom:1rem;font-size:var(--step-2)}.events-page .events-info p{margin-bottom:1rem;line-height:1.7;color:#fffc;max-width:65ch;margin-inline:auto}@media (max-width: 768px){.events-page .events-layout{grid-template-columns:1fr;gap:2rem}.events-page .past-events-section .events-grid{grid-template-columns:1fr}.events-page .event-card{padding-right:1.5rem}.events-page .event-type{position:static;display:inline-block;margin-bottom:.75rem}}.memberships-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:920px;margin:0 auto 3rem;align-items:stretch}.membership-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:2.25rem;box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.membership-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.membership-card--featured{border:2px solid var(--accent);box-shadow:var(--shadow-md)}.membership-card--featured:before{content:"";position:absolute;inset:0 0 auto;height:5px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.membership-badge{position:absolute;top:-14px;right:1.5rem;display:inline-flex;align-items:center;gap:.35rem;background:var(--accent);color:var(--navy-900);padding:.35rem .85rem;border-radius:var(--radius-pill);font-family:var(--font-body);font-weight:800;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--shadow-gold)}.membership-card h3{font-size:1.45rem;color:var(--navy-800);line-height:1.05;margin-bottom:.75rem}.price{font-family:var(--font-display);font-size:3rem;line-height:1;color:var(--green-600);margin-bottom:.5rem}.membership-description{color:var(--text-muted);margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.includes{flex:1;margin-bottom:1.75rem}.includes h4{font-family:var(--font-body);font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy-800);margin-bottom:1rem}.includes ul{list-style:none;display:flex;flex-direction:column;gap:.7rem}.includes li{display:flex;align-items:flex-start;gap:.6rem;line-height:1.5;color:var(--text)}.includes li .icon{flex:0 0 auto;margin-top:2px;color:var(--white);background:var(--green-500);border-radius:50%;padding:3px;box-sizing:content-box;width:14px;height:14px}.membership-info{text-align:center;max-width:720px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius-lg);padding:clamp(2rem,1.5rem + 2vw,3rem);box-shadow:var(--shadow-sm)}.membership-info h2{color:var(--navy-800);margin-bottom:1rem;font-size:var(--step-2)}.membership-info p{color:var(--text-muted);line-height:1.7}@media (max-width: 768px){.memberships-grid{grid-template-columns:1fr}}.contact-content{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,1rem + 4vw,4rem);max-width:1040px;margin:0 auto;align-items:start}.contact-info h3,.contact-map-panel h3{color:var(--navy-800);margin-bottom:1.75rem;font-size:var(--step-2)}.contact-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.contact-icon{flex:0 0 auto;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--green-600);box-shadow:var(--shadow-sm)}.contact-item h4{font-family:var(--font-body);font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green-700);margin-bottom:.35rem}.contact-item p{color:var(--text);line-height:1.6}.contact-item a{color:var(--navy-800);font-weight:600}.contact-item a:hover{color:var(--green-600)}.contact-map-panel{position:relative;overflow:hidden;background:var(--surface);padding:clamp(1.5rem,1.1rem + 1.5vw,2rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--line);border-top:3px solid var(--accent)}.contact-map{border:0;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);width:100%;min-height:420px;height:100%}@media (max-width: 768px){.contact-content{grid-template-columns:1fr}.contact-map-panel{order:2}.contact-info{order:1}.contact-map{min-height:300px}}.news-page .news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3.5rem}.news-page .news-card{display:flex;flex-direction:column;background:var(--surface);padding:1.75rem;border-radius:var(--radius-lg);border:1px solid var(--line);border-top:3px solid var(--accent);box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.news-page .news-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.news-card-tag{align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem;background:var(--paper-alt);color:var(--green-700);padding:.25rem .7rem;border-radius:var(--radius-pill);font-weight:800;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}.news-page .news-card h3{font-size:1.3rem;line-height:1.1;margin-bottom:.5rem}.article-link{color:var(--navy-800);text-decoration:none}.article-link:hover{color:var(--green-600)}.news-page .news-date{color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:1rem}.news-excerpt{color:var(--text);line-height:1.6;margin-bottom:1.25rem}.read-more-btn{margin-top:auto;display:inline-flex;align-items:center;gap:.35rem;color:var(--green-600);font-weight:800;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}.read-more-btn .icon{transition:transform var(--dur-1) var(--ease)}.read-more-btn:hover{color:var(--navy-800)}.read-more-btn:hover .icon{transform:translate(4px)}.news-empty{color:var(--text-muted)}.news-info{position:relative;overflow:hidden;background:var(--navy-900);color:var(--white);padding:clamp(2.25rem,1.5rem + 3vw,3.5rem);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);border-top:3px solid var(--accent)}.news-info h2{color:var(--white);margin-bottom:1rem;font-size:var(--step-2)}.news-info p{color:#fffc;max-width:60ch;margin-inline:auto}@media (max-width: 768px){.news-page .news-grid{grid-template-columns:1fr;gap:1.5rem}}.article-content{max-width:820px;margin:0 auto;background:var(--surface);border-radius:var(--radius-lg);padding:clamp(1.75rem,1.25rem + 2vw,3rem);box-shadow:var(--shadow-md);border:1px solid var(--line);border-top:3px solid var(--accent)}.article-header{margin-bottom:2rem;text-align:center;border-bottom:1px solid var(--line);padding-bottom:1.5rem}.article-title{font-size:var(--step-4);margin-bottom:1rem;color:var(--navy-800);line-height:.98}.article-meta{display:flex;justify-content:center;gap:1rem;color:var(--text-muted);font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.article-image{margin:2rem 0;text-align:center;line-height:0}.article-image img{max-width:100%;height:auto;border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.article-body{line-height:1.85;font-size:1.1rem}.article-excerpt{font-size:1.25rem;font-weight:500;color:var(--navy-800);margin-bottom:2rem;padding:1.5rem;background:var(--gold-100);border-left:4px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0}.article-text p{margin-bottom:1.5rem;color:var(--text)}.article-text p:last-child{margin-bottom:0}.article-footer{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}@media (max-width: 768px){.article-content{padding:1.5rem 1.25rem}.article-excerpt{font-size:1.05rem;padding:1rem}.article-body{font-size:1rem;line-height:1.7}.article-image{margin:1.5rem -1.25rem}.article-image img{border-radius:0;width:100%}}.info-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}.info-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);border-top:3px solid var(--accent);padding:clamp(1.75rem,1.25rem + 1.5vw,2.5rem);box-shadow:var(--shadow-sm)}.info-section h2{display:flex;align-items:center;gap:.6rem;color:var(--navy-800);font-size:var(--step-2);margin-bottom:1.25rem}.info-section h2 .icon{color:var(--green-600);flex:0 0 auto}.info-section p{margin-bottom:1.25rem;line-height:1.8;color:var(--text)}.info-section p:last-child{margin-bottom:0}.info-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--navy-900);padding:clamp(2.25rem,1.5rem + 3vw,3.5rem);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md)}.info-cta h2{color:var(--navy-900);margin-bottom:1rem;font-size:var(--step-3)}.info-cta p{color:#14142bd1;margin-bottom:2rem;max-width:60ch;margin-inline:auto}.info-cta .btn-primary{background:var(--navy-800);color:var(--white);box-shadow:0 8px 22px #14142b4d}.info-cta .btn-primary:hover{background:var(--navy-900);color:var(--white)}@media (max-width: 768px){.info-content{grid-template-columns:1fr;gap:1.5rem}}.albums-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3.5rem}.album-card{display:block;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);overflow:hidden;text-decoration:none;color:inherit;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.album-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.album-cover{position:relative;height:210px;overflow:hidden;background:var(--paper-alt);display:flex;align-items:center;justify-content:center}.album-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.album-card:hover .album-cover img{transform:scale(1.07)}.no-cover{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-muted);font-weight:600}.album-overlay{position:absolute;inset:auto 0 0;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem;background:linear-gradient(transparent,#14142bd9);color:var(--accent);font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:opacity var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.album-card:hover .album-overlay{opacity:1;transform:none}.album-info{padding:1.5rem}.album-info h3{color:var(--navy-800);margin-bottom:.5rem;font-size:1.25rem;line-height:1.1}.album-info p{color:var(--text-muted);margin-bottom:1rem;line-height:1.6}.gallery-empty{color:var(--text-muted)}.gallery-info{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--navy-900);padding:clamp(2.25rem,1.5rem + 3vw,3.5rem);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md)}.gallery-info h2{color:var(--navy-900);margin-bottom:1rem;font-size:var(--step-2)}.gallery-info p{color:#14142bd1;max-width:62ch;margin-inline:auto}@media (max-width: 768px){.albums-grid{grid-template-columns:1fr;gap:1.5rem}}.news-form{display:flex;flex-direction:column;gap:1.5rem}.image-preview{margin-top:.5rem}.image-preview img{max-width:220px;max-height:160px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--line)}.event-form,.album-form{display:flex;flex-direction:column;gap:1.5rem}@media (max-width: 768px){.form-container{margin:0 1rem}}.album-header{text-align:center;margin-bottom:2.5rem}.album-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--green-600);text-decoration:none;font-weight:800;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.back-link .icon{transition:transform var(--dur-1) var(--ease)}.back-link:hover{color:var(--navy-800)}.back-link:hover .icon{transform:translate(-4px)}.album-header .section-title{text-align:center;margin-bottom:.75rem}.album-description{color:var(--text-muted);font-size:1.1rem;margin:0 auto .75rem;max-width:60ch}.album-date{display:inline-flex;align-items:center;gap:.4rem;color:var(--green-700);font-size:.8rem;font-weight:700}.photos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.photo-item{position:relative;background:var(--white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.photo-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.photo-item img{width:100%;height:220px;object-fit:cover;display:block;transition:transform .5s var(--ease)}.photo-item:hover img{transform:scale(1.06)}.photo-zoom{position:absolute;top:.75rem;right:.75rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#14142b8c;color:var(--accent);border-radius:50%;opacity:0;transform:scale(.8);transition:opacity var(--dur-2) var(--ease),transform var(--dur-2) var(--ease);pointer-events:none}.photo-item:hover .photo-zoom{opacity:1;transform:none}.photo-modal{position:fixed;inset:0;background:#0a0a16f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-up .25s var(--ease-out)}.modal-content{position:relative;max-width:92vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.modal-content img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.close-btn{position:absolute;top:-52px;right:0;width:44px;height:44px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:var(--white);font-size:1.6rem;line-height:1;border-radius:50%;cursor:pointer;z-index:1001;transition:background var(--dur-2) var(--ease)}.close-btn:hover{background:var(--accent);color:var(--navy-900)}.nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:var(--white);font-size:2rem;border-radius:50%;cursor:pointer;z-index:1002;transition:background var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.nav-btn:hover{background:var(--accent);color:var(--navy-900)}.prev-btn{left:-68px}.next-btn{right:-68px}.photo-counter{position:absolute;bottom:-44px;left:50%;transform:translate(-50%);color:#ffffffd9;font-weight:700;letter-spacing:.05em}@media (max-width: 768px){.album-nav{flex-direction:column;gap:1rem;align-items:stretch}.photos-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.photo-item img{height:150px}.prev-btn{left:10px}.next-btn{right:10px}.close-btn{top:10px;right:10px}.photo-counter{bottom:14px}}.login-page{position:relative;overflow:hidden;min-height:calc(100vh - 220px);display:flex;align-items:center;justify-content:center;padding:3rem 1rem;background:var(--navy-900)}.login-page:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1.5px,transparent 1.6px);background-size:26px 26px}.login-container{position:relative;z-index:1;width:100%;max-width:420px}.login-card{background:var(--surface);padding:clamp(2rem,1.5rem + 2vw,3rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border-top:4px solid var(--accent);text-align:center}.login-card h1{color:var(--navy-800);margin-bottom:.5rem;font-size:var(--step-3)}.login-card p{color:var(--text-muted);margin-bottom:2rem}.login-form{text-align:left}.login-btn{width:100%;margin-top:.5rem}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:#fdecea;color:#8c1d18;padding:.85rem 1rem;border-radius:var(--radius-sm);margin-bottom:1.25rem;border:1px solid #f6c9c5;font-weight:600;font-size:.9rem}@media (max-width: 768px){.login-container{padding:0}}.admin-news{padding:clamp(2rem,1.5rem + 2vw,3.5rem) 0}.news-form-card,.articles-list,.events-list{background:var(--surface);padding:clamp(1.5rem,1rem + 1.5vw,2rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);margin-bottom:2rem}.articles-list h2,.events-list h2{font-size:var(--step-2);color:var(--navy-800);margin-bottom:1.25rem}.article-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem .25rem;border-bottom:1px solid var(--line)}.article-item:last-child{border-bottom:none}.article-item h3,.article-item h4{color:var(--navy-800);font-family:var(--font-body);font-weight:700}.item-actions{display:flex;gap:.5rem;flex:0 0 auto}.btn-delete{background:var(--danger);color:var(--white);border:none;padding:.5rem 1rem;border-radius:var(--radius-pill);cursor:pointer;font-weight:700;font-size:.82rem;transition:filter var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.btn-delete:hover{filter:brightness(1.08);transform:translateY(-1px)}.admin-news-image{max-width:200px;margin-top:10px;border-radius:var(--radius-md);border:1px solid var(--line)}@media (max-width: 768px){.news-form-card,.articles-list,.events-list{padding:1.25rem}.article-item{flex-direction:column;align-items:stretch}.item-actions{justify-content:center}}.media-manager{padding:clamp(2rem,1.5rem + 2vw,3.5rem) 0;min-height:80vh}.media-manager h1{color:var(--navy-800);margin-bottom:.5rem;font-size:var(--step-3)}.media-manager>.container>p{color:var(--text-muted);margin-bottom:2rem}.upload-section,.files-section{background:var(--surface);padding:clamp(1.5rem,1rem + 1.5vw,2rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);margin-bottom:2rem}.upload-section h2,.files-section h2{color:var(--navy-800);margin-bottom:1rem;font-size:var(--step-2)}.upload-form{display:flex;flex-direction:column;gap:1.5rem}.manual-upload{border-top:1px solid var(--line);padding-top:1.5rem}.manual-upload h3{margin-bottom:1rem;color:var(--navy-800)}.upload-form input[type=file]{padding:1rem;border:2px dashed var(--ink-300);border-radius:var(--radius-md);background:var(--paper-alt);cursor:pointer;transition:border-color var(--dur-1) var(--ease),background var(--dur-1) var(--ease)}.upload-form input[type=file]:hover{border-color:var(--accent);background:var(--gold-100)}.selected-file{padding:1rem;background:var(--paper-alt);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.upload-progress{display:flex;align-items:center;gap:1rem}.progress-bar{flex:1;height:8px;background:var(--line);border-radius:var(--radius-pill);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .3s var(--ease)}.files-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.files-header h2{margin:0}.refresh-btn{font-size:.85rem}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.file-card{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.file-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.file-preview{height:160px;background:var(--paper-alt);display:flex;align-items:center;justify-content:center;overflow:hidden}.file-preview img{width:100%;height:100%;object-fit:cover}.file-icon{font-size:3rem;color:var(--ink-300)}.file-info{padding:1rem}.file-info h3{color:var(--navy-800);margin-bottom:.4rem;font-size:.95rem;font-family:var(--font-body);font-weight:700;word-break:break-word}.file-info p{color:var(--text-muted);font-size:.85rem;margin:.2rem 0}.file-actions{padding:1rem;display:flex;gap:.5rem;border-top:1px solid var(--line)}.file-actions .btn{flex:1;font-size:.85rem;padding:.5rem;min-height:40px}@media (max-width: 768px){.upload-section,.files-section{padding:1.25rem}.files-grid{grid-template-columns:1fr;gap:1rem}.files-header{flex-direction:column;align-items:stretch}.selected-file{flex-direction:column;align-items:flex-start}.file-actions{flex-direction:column}}.not-found{position:relative;overflow:hidden;min-height:calc(100vh - 220px);display:flex;align-items:center;justify-content:center;background:var(--navy-900);color:var(--white);padding:4rem 0}.not-found .not-found-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:120%;width:auto;opacity:.05;filter:grayscale(1) brightness(3);pointer-events:none}.not-found-content{position:relative;z-index:1;text-align:center;max-width:620px;margin:0 auto;padding:2rem;animation:fade-up .7s var(--ease-out) both}.not-found-content .eyebrow{justify-content:center;color:var(--accent)}.not-found-content h1{font-size:clamp(7rem,4rem + 18vw,14rem);line-height:.85;color:var(--accent);text-shadow:6px 6px 0 var(--navy-600);margin-bottom:.5rem}.not-found-content h2{font-size:var(--step-3);color:var(--white);margin-bottom:1.25rem}.not-found-content p{font-size:1.15rem;color:#ffffffc7;margin-bottom:2.5rem;line-height:1.6}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width: 768px){.not-found-actions{flex-direction:column;align-items:center}}#root{width:100%;margin:0;padding:0}.App{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}main{flex:1;min-width:0}:root{--primary-yellow: #FFCC32;--secondary-blue: #2A2A4C;--tertiary-green: #23A05E;--white: #ffffff;--navy-950: #14142b;--navy-900: #1b1b33;--navy-800: #242444;--navy-700: #2A2A4C;--navy-600: #353560;--navy-500: #45456f;--gold-600: #d9a916;--gold-500: #e6b82e;--gold-400: #FFCC32;--gold-300: #ffd95e;--gold-100: #fff2cc;--green-700: #198050;--green-600: #1f9356;--green-500: #23A05E;--green-400: #34c277;--paper: #ffffff;--paper-alt: #f5f6f8;--paper-warm: #faf9f6;--ink-900: #1a1c24;--ink-700: #3a3d49;--ink-500: #6b6f7d;--ink-300: #b8bcc6;--line: #e6e8ee;--line-dark: rgba(255, 255, 255, .12);--gray-light: #f5f6f8;--gray-medium: #6b6f7d;--gray-dark: #1a1c24;--surface: var(--paper);--surface-alt: var(--paper-alt);--surface-dark: var(--navy-700);--surface-darker: var(--navy-900);--text: var(--ink-900);--text-muted: var(--ink-500);--text-on-dark: rgba(255, 255, 255, .92);--text-on-dark-muted: rgba(255, 255, 255, .62);--accent: var(--gold-400);--accent-strong: var(--gold-600);--accent-2: var(--green-500);--danger: #e2453c;--font-display: "Anton", "Hanken Grotesk", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;--step--1: clamp(.83rem, .8rem + .15vw, .92rem);--step-0: clamp(1rem, .96rem + .2vw, 1.13rem);--step-1: clamp(1.2rem, 1.12rem + .4vw, 1.5rem);--step-2: clamp(1.5rem, 1.34rem + .8vw, 2.1rem);--step-3: clamp(1.9rem, 1.6rem + 1.5vw, 3rem);--step-4: clamp(2.4rem, 1.9rem + 2.5vw, 4rem);--step-5: clamp(3rem, 2.1rem + 4.4vw, 5.75rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-pill: 999px;--border-radius: 14px;--shadow-sm: 0 1px 2px rgba(20, 20, 43, .06), 0 2px 8px rgba(20, 20, 43, .06);--shadow-md: 0 4px 12px rgba(20, 20, 43, .08), 0 10px 30px rgba(20, 20, 43, .1);--shadow-lg: 0 12px 28px rgba(20, 20, 43, .14), 0 24px 60px rgba(20, 20, 43, .18);--shadow-gold: 0 10px 30px rgba(255, 204, 50, .35);--shadow-green: 0 10px 30px rgba(35, 160, 94, .3);--shadow: var(--shadow-md);--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-1: .18s;--dur-2: .32s;--dur-3: .55s;--transition: all var(--dur-2) var(--ease);--container: 1200px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html,body{width:100%;overflow-x:hidden}#root{width:100%}body{font-family:var(--font-body);font-size:var(--step-0);line-height:1.65;color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:1.02;letter-spacing:.01em;text-transform:uppercase;color:var(--text)}p{margin:0}a{color:var(--accent-strong);text-decoration:none;transition:color var(--dur-1) var(--ease)}a:hover{color:var(--accent-2)}img{display:block;max-width:100%}::selection{background:var(--accent);color:var(--navy-900)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px}.container--wide{max-width:1440px}.section{position:relative;padding:clamp(3.5rem,2.5rem + 4vw,7rem) 0}.section--dark{background:var(--surface-dark);color:var(--text-on-dark)}.section--darker{background:var(--surface-darker);color:var(--text-on-dark)}.section--alt{background:var(--surface-alt)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4,.section--dark h5,.section--dark h6,.section--darker h1,.section--darker h2,.section--darker h3{color:var(--white)}.section--dark p,.section--darker p{color:var(--text-on-dark)}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-weight:800;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:1rem}.eyebrow:before{content:"";width:26px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.section--dark .eyebrow,.section--darker .eyebrow{color:var(--accent)}.section-title{font-family:var(--font-display);font-size:var(--step-4);text-transform:uppercase;line-height:.98;margin-bottom:2.5rem;color:var(--text)}.section-title--center{text-align:center}.section--dark .section-title,.section--darker .section-title{color:var(--white)}.title-head{text-align:center;max-width:760px;margin:0 auto 3.5rem}.title-head .eyebrow{justify-content:center}.title-head .section-title{margin-bottom:.75rem}.title-head p{color:var(--text-muted);font-size:var(--step-1)}.section--dark .title-head p{color:var(--text-on-dark-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.95rem 1.75rem;border:2px solid transparent;border-radius:var(--radius-pill);font-family:var(--font-body);font-weight:800;font-size:.98rem;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;cursor:pointer;line-height:1.1;min-height:50px;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),background var(--dur-2) var(--ease),color var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease);-webkit-tap-highlight-color:transparent}.btn svg{width:1.1em;height:1.1em}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--navy-900);box-shadow:var(--shadow-gold)}.btn-primary:hover:not(:disabled){color:var(--navy-900);transform:translateY(-3px);box-shadow:0 14px 36px #ffcc3280}.btn-secondary{background:transparent;color:var(--navy-800);border-color:var(--navy-800)}.btn-secondary:hover:not(:disabled){background:var(--navy-800);color:var(--white);transform:translateY(-3px)}.section--dark .btn-secondary,.section--darker .btn-secondary,.btn-secondary.on-dark{color:var(--white);border-color:#ffffff8c}.section--dark .btn-secondary:hover:not(:disabled),.section--darker .btn-secondary:hover:not(:disabled),.btn-secondary.on-dark:hover:not(:disabled){background:var(--white);color:var(--navy-900);border-color:var(--white)}.btn-ghost{background:#ffffff14;color:var(--white);border-color:var(--line-dark)}.btn-ghost:hover:not(:disabled){background:var(--accent);color:var(--navy-900);border-color:var(--accent);transform:translateY(-3px)}.btn-danger{background:var(--danger);color:var(--white)}.btn-danger:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px)}.btn-small{padding:.6rem 1.1rem;min-height:42px;font-size:.82rem}.btn-large{padding:1.1rem 2.2rem;min-height:58px;font-size:1.05rem}.btn-block{width:100%}.btn-spinner{width:1.05rem;height:1.05rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.has-stripe{position:relative;overflow:hidden}.has-stripe:after{content:"";position:absolute;top:-40%;right:-8%;width:26%;height:180%;background:linear-gradient(180deg,var(--accent),var(--accent-2));transform:rotate(14deg);opacity:.1;pointer-events:none}.dot-field{position:relative}.dot-field:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1.5px,transparent 1.6px);background-size:26px 26px;pointer-events:none;z-index:0}.dot-field>*{position:relative;z-index:1}.rule-top{border-top:3px solid var(--accent)}.reveal{opacity:0;transform:translateY(28px);transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}.reveal-left{transform:translate(-32px)}.reveal-right{transform:translate(32px)}.reveal-scale{transform:scale(.94)}.reveal-left.is-visible,.reveal-right.is-visible,.reveal-scale.is-visible{transform:none}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.35rem}.form-group label{font-weight:700;font-size:.9rem;color:var(--navy-800)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.85rem 1rem;font-family:var(--font-body);font-size:1rem;color:var(--text);background:var(--paper-alt);border:1.5px solid var(--line);border-radius:var(--radius-sm);transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease),background var(--dur-1) var(--ease)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;background:var(--white);border-color:var(--green-500);box-shadow:0 0 0 3px #23a05e29}.form-group textarea{resize:vertical;min-height:120px}.form-container{max-width:820px;margin:0 auto;background:var(--surface);padding:clamp(1.75rem,1.25rem + 2vw,3rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--line);border-top:3px solid var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.25rem;border-top:1px solid var(--line)}.admin-shell{padding:clamp(2rem,1.5rem + 2vw,3.5rem) 0;min-height:70vh}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.admin-header h1{font-size:var(--step-3);color:var(--navy-800)}.admin-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.admin-panel{background:var(--surface);padding:clamp(1.5rem,1rem + 1.5vw,2rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);margin-bottom:2rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:1rem}.form-actions{flex-direction:column}.form-group input,.form-group select,.form-group textarea{font-size:16px}.admin-header{flex-direction:column;align-items:stretch}}@media (max-width: 768px){.container{padding:0 18px}.btn{width:100%;max-width:340px}.btn-small,.btn.btn-inline{width:auto}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1!important;transform:none!important}}
