/* Shared icon treatment and consistent framing. */
:root{--page-gutter:clamp(16px,3vw,48px);--frame-radius:28px}
.icon-definitions{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.icon{display:inline-block;width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.button .icon{width:22px;height:22px}.button b{display:flex;align-items:center}
.text-link .icon,.source .icon,.address .icon{width:17px;height:17px;margin-left:4px}
.result-foot a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%}
.result-foot a:hover{background:#fff1ee}
.topbar{gap:18px;padding:12px 20px;box-shadow:none;flex-wrap:wrap;z-index:19}
.topbar a{gap:10px;font-size:14px;line-height:1.5}
.topbar a>span{background:none;border-radius:0;width:20px;height:20px;color:#f37765}
.topbar a small{font-size:12px;margin-left:0}
.topbar a:first-child{flex-wrap:wrap;gap:4px 10px}
.topbar a:first-child small{flex-basis:100%;margin-left:30px;display:block}
.topbar strong{font-weight:500}
.topbar .top-social .icon,.instagram-button .icon{color:currentColor;stroke-width:1.9}
.topbar .top-social strong{display:inline}
.instagram-button{gap:12px;font-size:14px;background:#17212b}
.instagram-button>span{display:flex;color:inherit}
.instagram-button>.icon{width:18px;height:18px;margin-left:4px}
#menu .icon{width:24px;height:24px}
#menu .icon:last-child{display:none}
#menu[aria-expanded=true] .icon:first-child{display:none}
#menu[aria-expanded=true] .icon:last-child{display:block}
.hero,.quicklinks{margin-left:var(--page-gutter);margin-right:var(--page-gutter);border-radius:var(--frame-radius)}
.quicklinks{padding:14px;margin-top:0;margin-bottom:30px;background:#fff;color:#17212b;border:1px solid #e4e8ec;box-shadow:0 8px 28px #14233206;gap:0}
.quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{padding:20px 24px;gap:16px;border:0;border-right:1px solid #e4e8ec;min-width:0;border-radius:0}
.quicklinks>a:last-child{border-right:0}
.quicklinks>a:hover{background:#f5f7f9;border-radius:14px}
.quicklinks .quick-icon{display:grid;width:44px;height:44px;place-items:center;flex-shrink:0;color:#df341f;background:#fff3f0;border-radius:13px}
.quicklinks .quick-icon .icon{width:24px;height:24px;stroke-width:1.7}
.quicklinks strong{font-size:16px;letter-spacing:-.25px;font-weight:700}
.quicklinks small{font-size:13px;color:#67727d;line-height:1.5;margin-top:5px}
.quicklinks>a>b{display:flex;color:#687580;margin-left:auto;flex-shrink:0}
.quicklinks>a>b .icon{width:19px;height:19px}
.quicklinks>a>div{min-width:0}
/* Clip only the rectangular surround; preserve the white inside each original crest. */
.match-logo{background:transparent;filter:none;width:70px;height:70px}
.match .league{font-size:14px}
.match>small{font-size:12px;color:#b9c4c8}
.live-countdown>p{font-size:12px;letter-spacing:1.5px}
.countdown-grid small{font-size:12px;letter-spacing:0;text-transform:none}
.countdown-grid b{font-size:25px}
.match-date strong,.match-date span{font-size:13px}
.eyebrow{letter-spacing:2px}.hero .eyebrow{font-size:12px}
.button:hover{transform:none}.team-card:hover{transform:translateY(-3px)}
@media(min-width:1700px){.hero,.quicklinks{max-width:1804px;margin-left:auto;margin-right:auto}}
@media(max-width:1280px){
 .topbar{gap:12px 18px}.topbar a{font-size:13px}.topbar .top-social strong{display:none}
 .quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{padding:18px 16px;gap:12px}
 .quicklinks small{font-size:12px}.quicklinks .quick-icon{width:36px;height:36px}.quicklinks .quick-icon .icon{width:22px;height:22px}
}
@media(max-width:1040px){
 body>.topbar{display:none}
 header{height:80px;position:sticky;top:0;padding:0 4%;gap:14px;z-index:20;border-bottom:1px solid #edf0f2}
 .header-cta{display:none}
 #menu{display:grid;place-items:center;border:1px solid #e3e7eb;background:white;border-radius:12px;width:46px;height:46px;cursor:pointer;color:#17212b;flex-shrink:0}
 #nav{display:none;position:absolute;top:calc(100% + 8px);left:12px;right:12px;background:white;padding:16px;flex-direction:column;gap:0;border:1px solid #e4e8ec;border-radius:20px;box-shadow:0 18px 40px #16212e20;max-height:calc(100dvh - 104px);overflow-y:auto;overscroll-behavior:contain}
 #nav.open{display:flex}
 #nav>a{font-size:16px;padding:13px 14px;border-radius:10px;line-height:1.4}
 #nav>a:hover,#nav>a.active{background:#fff3f0;color:#ce301e}
 #nav .topbar{display:flex;flex-direction:column;align-items:stretch;margin:14px 0 0;padding:20px 14px 8px;gap:12px;background:none;color:#17212b;border-top:1px solid #e5e9ed;border-radius:0;box-shadow:none}
 #nav .topbar a{font-size:14px;white-space:normal;padding:7px 0;gap:10px;min-width:0}
 #nav .topbar a:first-child{display:grid;grid-template-columns:20px 1fr;gap:2px 10px}
 #nav .topbar a:first-child small{grid-column:2;margin:0;color:#63707c;font-size:13px;display:block}
 #nav .topbar a:first-child>span{grid-row:1/3}
 #nav .topbar strong{font-weight:500;overflow-wrap:anywhere}
 #nav .topbar a>span{background:none;color:#d93622;width:20px;height:20px;flex:none}
 #nav .topbar .top-social{margin:0}
 #nav .topbar .top-social strong{display:block}
 .hero{margin-top:14px;padding:48px 6%;display:flex;gap:24px;min-height:620px}
 .hero h1{font-size:clamp(40px,5.6vw,58px);white-space:normal;letter-spacing:-2px}
 .hero h1 .hero-ev{font-size:12px;letter-spacing:1.5px}
 .hero .match{width:310px;padding:22px}.hero-sub{font-size:22px}
 .actions{flex-direction:column;align-items:flex-start}
 .hero .actions .button{font-size:14px;padding:17px 18px}
 .values{flex-direction:column;gap:8px}.values span+span{padding:0;border:0}
 .quicklinks{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}
 .quicklinks>a:nth-child(2){border-right:0}.quicklinks>a:nth-child(-n+2){border-bottom:1px solid #e4e8ec}
 .quicklinks .quick-icon{display:grid;width:42px;height:42px}
 .quicklinks small{font-size:13px}
}
@media(max-width:760px){
 :root{--page-gutter:12px;--frame-radius:20px}
 .hero{display:block;padding:40px 6% 28px;margin-bottom:17px;min-height:0}
 .hero h1{font-size:clamp(34px,8vw,56px);white-space:normal;letter-spacing:-1.6px}
 .hero .eyebrow{font-size:12px;letter-spacing:1px;line-height:1.6;flex-wrap:wrap}
 .hero h1 .hero-ev{font-size:12px}.hero .match{width:100%;margin-top:30px}
 .hero .actions{align-items:stretch}.hero .actions .button{width:100%}
 .scroll{display:none}
 .quicklinks{padding:8px;margin-bottom:20px}
 .quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{padding:17px 12px!important;display:grid;grid-template-columns:1fr auto;gap:12px 6px;align-items:start}
 .quicklinks>a .quick-icon{width:36px;height:36px;grid-column:1;grid-row:1}
 .quicklinks>a>div{grid-row:2;grid-column:1/-1}
 .quicklinks>a>b{grid-row:1;grid-column:2;align-self:center}
 .quicklinks strong{font-size:14px}.quicklinks small{font-size:12px;margin-top:4px}
 .match-logo{width:68px;height:68px}.countdown-grid b{font-size:23px}
 .hero .values{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.team-card:hover{transform:none}}

/* 2026 club-site expansion: sponsors, complete teams, events and legal page */
.sponsor-marquee{position:relative;margin:4px var(--page-gutter) 18px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;background:#fff;border:1px solid #e4e8ec;border-radius:18px;overflow:hidden;box-shadow:0 10px 34px #14233208}
.sponsor-marquee-label{position:relative;z-index:2;align-self:stretch;display:flex;align-items:center;gap:10px;padding:0 0 0 24px;background:#fff;color:#344250;font-size:11px;font-weight:800;letter-spacing:1.6px;white-space:nowrap}
.sponsor-marquee-label:after{content:"";position:absolute;left:100%;top:0;width:38px;height:100%;background:linear-gradient(90deg,#fff,transparent);pointer-events:none}
.sponsor-marquee-label span{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px #fff0ed}
.sponsor-window{min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.sponsor-track{display:flex;width:max-content;animation:sponsor-scroll 48s linear infinite;will-change:transform}
.sponsor-group{display:flex;align-items:center;gap:15px;padding:10px 15px 10px 0}
.sponsor-logo{width:168px;height:72px;display:grid;place-items:center;padding:10px 16px;background:#fff;border-right:1px solid #edf0f2}
.sponsor-logo.square{width:110px}
.sponsor-logo img{display:block;max-width:100%;max-height:52px;width:auto;height:auto;object-fit:contain;filter:saturate(.94);mix-blend-mode:multiply}
.sponsor-logo.square img{max-height:58px}
.sponsor-marquee:hover .sponsor-track{animation-play-state:paused}
@keyframes sponsor-scroll{to{transform:translateX(-50%)}}

/* Every consecutive content section gets a deliberate light/dark rhythm. */
.results{background:#f4f6f8}.teams{background:#fff}.upcoming{background:#f4f6f8}.fixtures{background:#fff}.standings{background:#f4f6f8}.news{background:#fff}.instagram-section{background:#f4f6f8}.about{background:#fff}.events{background:#f4f6f8}
.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.team-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.team-card:hover{box-shadow:0 20px 46px #172a3e12;border-color:#d8dde2}
.team-card .team-visual{overflow:hidden;border-radius:17px 17px 0 0;background:#e9edf0}
.team-card .team-photo{aspect-ratio:16/10;object-fit:cover;transition:transform .5s ease}
.team-card .team-visual.portrait .team-photo{object-position:center 34%}
.team-card:hover .team-photo{transform:scale(1.025)}
.team-card.junior{background:#fff;color:var(--ink)}
.team-card.junior .team-label{color:#d53925}
.team-card.junior p{color:#697787}
.team-card .team-bottom{align-items:center}
.team-card .team-bottom b{display:grid;place-items:center;width:32px;height:32px;background:#fff2ef;border-radius:50%}
.team-card.seniors .team-number{background:#172838}
.team-card.seniors .team-label{color:#53687b}

.events-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px}
.event-feature{position:relative;min-height:430px;padding:38px;border-radius:24px;overflow:hidden;color:#fff;background:linear-gradient(135deg,rgba(12,28,39,.94),rgba(19,37,49,.87)),url('hero-players.jpg') center 58%/cover;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 18px 45px #182b3c17}
.event-kicker{position:absolute;top:32px;left:34px;font-size:11px;letter-spacing:1.8px;font-weight:800;color:#ff8d7d}
.event-date{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.event-date strong{font-size:84px;line-height:.85;letter-spacing:-5px}.event-date span{font-size:12px;line-height:1.55;letter-spacing:1.3px;color:#b9c4cc;font-weight:700}
.event-feature p{font-size:11px;letter-spacing:1.5px;color:#ff8d7d;font-weight:800}.event-feature h3{font-size:clamp(25px,2.4vw,38px);line-height:1.12;letter-spacing:-1.3px;margin:10px 0 14px}.event-feature>div:last-of-type>span{font-size:14px;color:#c7d0d7}
.event-feature>a{position:absolute;right:34px;bottom:34px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff}.event-feature>a:hover{background:#cf2915}
.event-stack{display:grid;gap:18px}.event-stack article{display:grid;grid-template-columns:auto 1fr;gap:19px;padding:27px;background:#fff;border:1px solid #e2e7eb;border-radius:20px;box-shadow:0 8px 24px #172a3d06}.event-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#fff0ed;color:var(--red)}.event-icon .icon{width:24px;height:24px}.event-stack small{font-size:10px;letter-spacing:1.5px;color:#d13d29;font-weight:800}.event-stack h3{margin:9px 0 8px;font-size:20px;letter-spacing:-.4px}.event-stack p{margin:0;color:#6d7986;font-size:14px;line-height:1.65}.event-stack a{display:inline-flex;align-items:center;gap:7px;margin-top:17px;font-size:13px;font-weight:800;color:#283a4d}.event-stack a:hover{color:var(--red)}.event-stack a .icon{width:16px;height:16px}.event-note{display:inline-block;margin-top:17px;padding:8px 11px;border-radius:30px;background:#eef1f4;color:#687684;font-size:11px;font-weight:700}

.legal-page{background:#f4f6f8}.legal-header{position:relative;top:auto;max-width:1600px;margin:0 auto}.legal-back{font-size:14px;font-weight:800;display:flex;align-items:center;gap:10px}.legal-back:hover{color:var(--red)}.legal-main{max-width:1500px;margin:0 auto;padding:18px var(--page-gutter) 90px}.legal-hero{position:relative;min-height:330px;border-radius:28px;padding:58px clamp(30px,6vw,85px);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(135deg,#172635,#0c1823);overflow:hidden}.legal-hero:after{content:"FC";position:absolute;right:-8px;bottom:-65px;font-size:270px;font-weight:900;line-height:1;color:#ffffff08;letter-spacing:-20px}.legal-hero p{margin:0 0 17px;color:#ff8c7b;font-size:11px;letter-spacing:2px;font-weight:800}.legal-hero h1{font-size:clamp(48px,7vw,88px);letter-spacing:-4px}.legal-hero span{font-size:15px;color:#bcc6ce;margin-top:17px}.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}.legal-card{position:relative;padding:34px;background:#fff;border:1px solid #e1e6ea;border-radius:20px;min-height:260px}.legal-card>span{position:absolute;right:25px;top:19px;color:#edf0f2;font-size:64px;font-weight:900}.legal-card h2,.legal-notice h2{position:relative;font-size:22px;letter-spacing:-.5px;margin:0 0 24px}.legal-card p,.legal-notice p{position:relative;color:#677583;font-size:15px;line-height:1.75}.legal-card strong{color:#1b2a38}.legal-card a{color:#d83c27;font-weight:700}.legal-notice{margin-top:22px;padding:32px 34px;background:#fff;border:1px solid #e1e6ea;border-radius:20px}.legal-notice h2{margin-bottom:10px}.legal-notice p{max-width:850px;margin-bottom:0}

@media(max-width:1040px){
  #nav .topbar{display:flex;flex-direction:column;align-items:stretch}
  #nav .topbar a,#nav .topbar a:first-child{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto;width:100%;padding:9px 0;gap:3px 10px}
  #nav .topbar a>span,#nav .topbar a:first-child>span{grid-column:1;grid-row:1/3;align-self:start}
  #nav .topbar a strong{grid-column:2;grid-row:1;display:block}
  #nav .topbar a small,#nav .topbar a:first-child small{grid-column:2;grid-row:2;margin:0;display:block}
  .sponsor-marquee{margin-top:12px;grid-template-columns:1fr;gap:0}.sponsor-marquee-label{padding:13px 18px;border-bottom:1px solid #edf0f2}.sponsor-marquee-label:after{display:none}
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.events-layout{grid-template-columns:1fr}.event-feature{min-height:390px}
}
@media(max-width:760px){
  .sponsor-marquee{margin:10px 12px 14px;border-radius:15px}.sponsor-marquee-label{font-size:10px}.sponsor-track{animation-duration:36s}.sponsor-group{gap:8px;padding:8px 8px 8px 0}.sponsor-logo{width:140px;height:62px;padding:8px 12px}.sponsor-logo.square{width:90px}.sponsor-logo img{max-height:44px}
  .team-grid{grid-template-columns:1fr}.team-card .team-photo{aspect-ratio:16/10}.events-layout{gap:16px}.event-feature{min-height:420px;padding:30px 25px}.event-kicker{top:27px;left:25px}.event-date strong{font-size:70px}.event-feature>a{right:24px;bottom:26px;width:46px;height:46px}.event-feature h3{font-size:28px;padding-right:35px}.event-stack article{padding:23px 20px}.legal-header{padding:0 5%}.legal-header .brand small{display:none}.legal-back{font-size:12px}.legal-main{padding:10px 12px 60px}.legal-hero{min-height:280px;border-radius:20px;padding:35px 25px}.legal-hero h1{font-size:50px;letter-spacing:-2.5px}.legal-grid{grid-template-columns:1fr;gap:15px}.legal-card{min-height:0;padding:27px 23px}.legal-notice{padding:27px 23px}
}
@media(prefers-reduced-motion:reduce){.sponsor-track{animation-play-state:paused}.team-card:hover .team-photo{transform:none}}

/* One shared outer frame on every viewport, including the sticky navigation. */
:root{--page-gutter:clamp(12px,3vw,48px);--frame-width:1804px}
body{padding-top:var(--page-gutter)}
body>main{max-width:none}
body>header,body>.topbar,.hero,.quicklinks{
 width:calc(100% - var(--page-gutter) - var(--page-gutter));
 max-width:var(--frame-width);margin-left:auto;margin-right:auto;
}
body>.topbar{margin-top:0;margin-bottom:12px}
body>header{position:sticky;top:var(--page-gutter);padding:0 clamp(14px,2vw,32px);border:1px solid #e4e8ec;border-radius:var(--frame-radius);box-shadow:0 8px 28px #14233208}
.hero{margin-top:var(--page-gutter);margin-bottom:var(--page-gutter);padding-bottom:220px;min-height:840px;isolation:isolate}
.hero-content,.hero>.match{z-index:1}

/* Partners live inside the photograph and fade into its dark lower edge. */
.hero .sponsor-marquee{
 position:absolute;left:0;right:0;bottom:0;z-index:2;display:block;
 width:100%;margin:0;padding:48px 0 24px;border:0;border-radius:0;
 background:linear-gradient(180deg,transparent,#09141a 38%);box-shadow:none;
}
.hero .sponsor-marquee-label{justify-content:center;padding:0 20px 16px;border:0;background:none;color:#c2cbd1;font-size:12px;letter-spacing:2px}
.hero .sponsor-marquee-label:after,.hero .sponsor-marquee-label>span{display:none}
.hero .sponsor-window{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.hero .sponsor-group{gap:16px;padding:0 16px 0 0}
.hero .sponsor-logo,.hero .sponsor-logo.square{width:154px;height:64px;border:0;border-radius:10px;padding:10px 16px;background:#fff;flex:none}
.hero .sponsor-logo img,.hero .sponsor-logo.square img{max-height:44px;filter:none}
.hero .sponsor-track{animation-duration:48s}
.team-photo[src="team-ue32.webp"]{object-position:center 57%}
@media(max-width:1040px){
 body>header{height:80px}
 #nav{left:0;right:0;max-height:calc(100dvh - 110px - var(--page-gutter) - var(--page-gutter))}
 .hero{padding-bottom:220px}
}
@media(max-width:760px){
 .hero{padding:40px 6% 190px;min-height:0}
 .hero h1{font-size:clamp(30px,7.5vw,56px)}
 .hero .sponsor-marquee{padding:42px 0 20px}
 .hero .sponsor-group{gap:12px;padding-right:12px}
 .hero .sponsor-logo,.hero .sponsor-logo.square{width:132px;height:58px;padding:9px 13px;border-radius:8px}
 .hero .sponsor-logo img,.hero .sponsor-logo.square img{max-height:40px}
 .hero .sponsor-track{animation-duration:40s}
 body>header .brand{min-width:0;flex-shrink:1}
 body>header .brand-logo{width:46px;height:46px}
 body>header .brand strong{font-size:clamp(12px,3.3vw,15px)}
 body>header .brand small{font-size:12px}
}
@media(max-width:380px){
 body>header{gap:8px;padding:0 10px}
 body>header .brand{gap:6px}
 body>header .brand small{max-width:145px;line-height:1.35}
 .hero .eyebrow{gap:8px;font-size:12px;letter-spacing:0}
 .hero .eyebrow>span{width:20px}
 .hero .match{padding:16px!important}
}

/* Supplied landscape and portrait images, selected at the mobile hero breakpoint. */
.hero{background-image:url('hero-desktop.webp');background-position:center center}
.social-platform{display:none}
@media(max-width:1040px){
 #nav>.top-social{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:center;margin:4px 0 0;padding:12px 14px;font-size:14px;line-height:1.5}
 #nav>.top-social>span{display:flex;align-items:center;color:#d93622}
 #nav>.top-social strong{font-weight:500;overflow-wrap:anywhere}
 #nav>.top-social .social-platform{display:inline}
}
@media(max-width:760px){
 .hero{background-image:url('hero-mobile.webp');background-position:center center}
}

/* The browser pins the image itself; no scroll-time layout or image repositioning. */
.hero{background-image:none}
.hero-backdrop-clip{position:absolute;inset:0;pointer-events:none;clip-path:inset(0 round var(--frame-radius))}
.hero-backdrop{position:fixed;top:0;left:50%;width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:var(--frame-width);height:100vh;height:100lvh;transform:translateX(-50%);pointer-events:none;background:url('hero-desktop.webp') center/cover no-repeat}
.hero .live-countdown,.hero .live-countdown.is-live{background:#ffffff0c;border:1px solid #ffffff24;box-shadow:inset 0 1px 0 #ffffff08}
.hero .live-countdown>p{color:#fff}
.hero .countdown-grid>span{background:linear-gradient(145deg,#d93420,#b42417);border-color:#ff948059;box-shadow:0 4px 10px #380b1033,inset 0 1px 0 #ffffff1f}
.hero .countdown-grid b{color:#fff}
.hero .countdown-grid small{color:#ffe4dd}
.hero .live-countdown.is-live .countdown-grid>span{background:linear-gradient(145deg,#ed351d,#bc2415)}
@media(max-width:760px){
 .hero-backdrop{background-image:url('hero-mobile.webp');background-size:auto 145%;background-position:center bottom}
}
@media(prefers-reduced-motion:reduce){
 .hero-backdrop{position:absolute;inset:0;width:100%;height:100%;max-width:none;transform:none}
}

/* Contacts share one left icon column; Instagram remains last in the same list. */
body>.topbar{justify-content:flex-start;align-items:flex-start}
body>.topbar a,body>.topbar a:first-child{display:grid;grid-template-columns:20px minmax(0,1fr);gap:3px 10px;align-items:start;text-align:left}
body>.topbar a>span,body>.topbar a:first-child>span{display:flex;justify-content:flex-start;align-items:flex-start;grid-column:1;grid-row:1/3;align-self:start;margin:0;width:20px;height:20px}
body>.topbar a strong{grid-column:2;grid-row:1}
body>.topbar a:first-child small{grid-column:2;grid-row:2;margin:0}
body>.topbar .top-social{margin-left:auto}
@media(max-width:1040px){
 #nav #contact-strip{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;margin:14px 0 0;padding:16px 14px 8px}
 #nav #contact-strip>a,#nav #contact-strip>a:first-child{display:grid;grid-template-columns:20px minmax(0,1fr);gap:3px 12px;align-items:start;justify-content:start;text-align:left;width:100%;margin:0;padding:9px 0}
 #nav #contact-strip>a>span,#nav #contact-strip>a:first-child>span{display:flex;justify-content:flex-start;align-items:flex-start;grid-column:1;grid-row:1/3;align-self:start;width:20px;height:20px;margin:0}
 #nav #contact-strip>a strong{display:block;grid-column:2;grid-row:1;line-height:1.5}
 #nav #contact-strip>a small,#nav #contact-strip>a:first-child small{display:block;grid-column:2;grid-row:2;margin:0;line-height:1.5}
 #nav #contact-strip .social-platform{display:inline}
}

/* Soft elevation stays consistent across the existing cards and controls. */
:root{--card-shadow:0 5px 14px #16212e0d,0 16px 36px #16212e1c;--control-shadow:0 4px 10px #16212e1f}
.hero{box-shadow:0 8px 20px #1223321a,0 26px 54px #12233233}
.result-card,.team-card,.upcoming-card,.schedule-list,.table-scroll,.position-card,.event-stack article,.legal-card,.legal-notice,.quicklinks{box-shadow:var(--card-shadow)}
.team-card:hover{box-shadow:0 8px 18px #16212e12,0 22px 42px #16212e26}
.match,.event-feature,.news-art{box-shadow:0 8px 20px #1223321a,0 20px 42px #1223322b}
.button,.instagram-button,.expand-button,.filter-buttons,.season-pill,.quick-icon,.event-icon,.event-note,.team-number,.team-bottom>b{box-shadow:var(--control-shadow)}
.hero .button{box-shadow:0 5px 14px #0003}
.hero .sponsor-logo{box-shadow:0 4px 12px #0003}
.hero .tag,.match-date{box-shadow:0 3px 10px #0000000a}

body>header,body>.topbar{box-shadow:0 4px 12px #16212e0a,0 12px 28px #16212e14}
.instagram-media{box-shadow:var(--card-shadow)!important}
.contact .address{min-width:0}
.contact-map{overflow:hidden;border-radius:20px;border:1px solid #ffffff66;background:#fff;margin:22px 0;box-shadow:0 6px 16px #67120e26,0 18px 34px #67120e38}
.contact-map iframe{display:block;width:100%;height:300px;border:0}

/* The mobile menu has its own single-column contact list, with no desktop layout rules. */
.mobile-contact-list{display:none}
@media(max-width:1040px){
 #nav .mobile-contact-list{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;margin:16px 0 0;padding:18px 14px 8px;border-top:1px solid #e5e9ed}
 #nav .mobile-contact-list>.mobile-contact-item{display:grid;grid-template-columns:20px minmax(0,1fr);grid-column:1;gap:12px;align-items:start;justify-content:start;width:100%;margin:0;padding:10px 0;color:#17212b;text-align:left;font-size:14px;font-weight:500;line-height:1.5}
 #nav .mobile-contact-item>.icon{grid-column:1;align-self:start;justify-self:start;color:#d93622;margin-top:1px}
 #nav .mobile-contact-item>span{grid-column:2;min-width:0;overflow-wrap:anywhere}
 #nav .mobile-contact-item small{display:block;margin-top:3px;font-size:13px;line-height:1.5;color:#63707c}
 #nav .mobile-contact-item:hover{color:#ce301e}
}
@media(max-width:760px){
 .contact-map iframe{height:280px}
}

/* Stronger hero elevation and a soft vignette without altering the pinned image. */
.hero{box-shadow:0 4px 10px #12233226,0 18px 36px #12233240,0 36px 68px -16px #12233259}
.hero-shade{box-shadow:inset 0 0 100px 12px #04101866,inset 0 -70px 90px -45px #030d18b3;border-radius:inherit;pointer-events:none}
.hero .match{box-shadow:0 8px 18px #0003,0 24px 48px #0005,inset 0 1px 0 #ffffff26}

/* Native links make the full match cards accessible to touch and keyboard users. */
.game-card{display:block;text-decoration:none;transition:box-shadow .2s ease,transform .2s ease}
.result-card.game-card{color:var(--ink)}
.upcoming-card.game-card{color:#fff}
.game-link-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--red)}
.game-details{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:12px;font-weight:600;color:#fff}
.game-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #16212e1f,0 24px 44px #16212e33}
.game-card:hover .game-link-icon{background:#fff1ee}
.game-card:focus-visible,.instagram-post:focus-visible{outline:3px solid #ed351d;outline-offset:5px}

/* Same-origin post images remain visible without third-party embed scripts. */
.instagram-grid{align-items:stretch}
.instagram-post{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e3e7eb;border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:var(--card-shadow);transition:box-shadow .2s ease,transform .2s ease}
.instagram-post-head{display:flex;align-items:center;gap:9px;padding:16px;font-size:12px;line-height:1.5}
.instagram-post-head>.icon{color:#d93622;width:19px;height:19px}
.instagram-post-head>span{font-weight:700;min-width:0;overflow-wrap:anywhere}
.instagram-post-head>time{margin-left:auto;font-size:11px;color:#78838e;white-space:nowrap}
.instagram-post-photo{aspect-ratio:4/5;display:grid;place-items:center;background:#eef0f2}
.instagram-post-photo>img{display:block;width:100%;height:100%;max-height:100%;aspect-ratio:4/5;object-fit:contain}
.instagram-post-caption{padding:20px}
.instagram-post-caption h3{margin:0 0 16px;font-size:17px;line-height:1.4;letter-spacing:-.2px}
.instagram-post-caption>span{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;font-weight:600;color:#ce301e}
.instagram-post:hover{transform:translateY(-3px);box-shadow:0 8px 20px #16212e1f,0 24px 44px #16212e2b}
@media(max-width:760px){
 .hero{box-shadow:0 5px 12px #1223322b,0 18px 36px -5px #12233259}
 .hero-shade{box-shadow:inset 0 0 65px #04101859,inset 0 -55px 70px -40px #030d18a6}
}
@media(prefers-reduced-motion:reduce){
 .game-card,.instagram-post{transition:none}
 .game-card:hover,.instagram-post:hover{transform:none}
}

/* Image-led shortcut cards using original FC Hochbrueck photography. */
.quicklinks{
 padding:0;
 gap:12px;
 background:transparent;
 border:0;
 box-shadow:none;
}
.quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{
 position:relative;
 min-height:156px;
 padding:26px 24px;
 overflow:hidden;
 border:1px solid #ffffff2e;
 border-radius:18px;
 color:#fff;
 background-position:center;
 background-size:cover;
 box-shadow:0 8px 18px #1223321f,0 20px 40px #1223322b;
 transition:transform .24s ease,box-shadow .24s ease;
}
.quicklinks>a:nth-child(1){background-image:linear-gradient(115deg,rgba(8,20,29,.91),rgba(8,20,29,.62)),url('hero-players.jpg');background-position:center 48%}
.quicklinks>a:nth-child(2){background-image:linear-gradient(115deg,rgba(8,20,29,.91),rgba(8,20,29,.62)),url('team-first.jpg');background-position:center 46%}
.quicklinks>a:nth-child(3){background-image:linear-gradient(115deg,rgba(8,20,29,.91),rgba(8,20,29,.62)),url('shortcut-training.jpg');background-position:center 50%}
.quicklinks>a:nth-child(4){background-image:linear-gradient(115deg,rgba(8,20,29,.91),rgba(8,20,29,.62)),url('shortcut-huddle.jpg');background-position:center 48%}
.quicklinks>a:hover{
 transform:translateY(-3px);
 border-radius:18px;
 background-color:transparent;
 box-shadow:0 10px 22px #12233226,0 25px 48px #12233238;
}
.quicklinks .quick-icon{
 color:#fff;
 background:#ed351ddd;
 border:1px solid #ff95845c;
 box-shadow:0 5px 14px #0004;
}
.quicklinks strong{color:#fff;font-size:17px;text-shadow:0 2px 12px #0008}
.quicklinks small{color:#dbe2e7;font-size:13px;text-shadow:0 2px 10px #0009}
.quicklinks>a>b{color:#fff}

@media(max-width:1040px){
 .quicklinks{gap:12px}
 .quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{min-height:148px;border:1px solid #ffffff2e}
}
@media(max-width:760px){
 .quicklinks{padding:0;gap:10px}
 .quicklinks>a,.quicklinks>a:first-child,.quicklinks>a:last-child{min-height:146px;padding:18px 15px!important;border:1px solid #ffffff2e}
 .quicklinks strong{font-size:15px}
 .quicklinks small{color:#e1e6ea;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 .quicklinks>a:hover{transform:none}
}

/* White, rounded club crest tiles. */
.hero .match-logo{background:#fff!important;padding:10px;border-radius:16px!important;border:1px solid #ffffffdb;box-shadow:0 5px 12px #0003,0 14px 25px #0002;object-fit:contain}
.data-note{font-size:13px;line-height:1.6;color:#73808c;margin-top:18px}.upcoming .data-note{color:#c0c9d1}.score-font{font-weight:normal!important}.schedule-row[href]{color:inherit;text-decoration:none}.schedule-row[href]:hover{background:#f3f5f7}

.hero .versus[hidden],.hero .match-date[hidden]{display:none!important}

.hero #countdown{position:relative}
.hero .cup-indicator{position:absolute;right:12px;top:7px;width:27px;height:27px;color:#e9ca82;stroke-width:1.7;opacity:1}
.hero .cup-indicator[hidden]{display:none}

/* Exact windows onto the three original posts supplied by the club. */
.instagram-source-crop{position:relative;overflow:hidden;display:block;aspect-ratio:284/379}
.instagram-post-photo.instagram-source-crop>img{position:absolute;left:var(--crop-left);top:-71.76781003%;width:531.33802817%;height:auto;max-width:none;max-height:none;aspect-ratio:auto;object-fit:initial}

/* Club contacts in the existing red closing section. */
.contact{column-gap:clamp(45px,8vw,130px);row-gap:56px;align-items:start}
.board-panel{grid-column:1/-1;min-width:0;padding-top:38px;border-top:1px solid #ffffff4d}
.board-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
.board-heading .eyebrow{margin:0 0 10px;color:#ffd4ce}
.board-heading h3{margin:0;font-size:clamp(27px,2.4vw,36px);line-height:1.15;letter-spacing:-1px}
.board-heading>span{display:inline-flex;align-items:center;min-height:37px;padding:9px 14px;border:1px solid #ffffff4d;border-radius:999px;color:#ffe2de;font-size:12px;font-weight:700;white-space:nowrap}
.board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.board-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:18px;align-items:start;min-width:0;padding:20px;border:1px solid #ffffff45;border-radius:20px;background:linear-gradient(145deg,#ffffff20,#ffffff10);box-shadow:0 8px 18px #79160f24,0 22px 42px #79160f2e,inset 0 1px 0 #ffffff24;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.board-card:hover{transform:translateY(-3px);background:linear-gradient(145deg,#ffffff2a,#ffffff15);box-shadow:0 10px 22px #79160f2b,0 27px 48px #79160f38,inset 0 1px 0 #ffffff2b}
.board-card>img{display:block;width:88px;height:88px;object-fit:cover;border:3px solid #ffffffd6;border-radius:50%;background:#fff;box-shadow:0 7px 18px #67120e38}
.board-card-body{min-width:0}
.board-role{display:block;margin:1px 0 7px;color:#ffd7d1;font-size:10px;font-weight:800;line-height:1.4;letter-spacing:1.3px}
.board-card h4{margin:0 0 14px;color:#fff;font-size:20px;line-height:1.2;letter-spacing:-.35px}
.board-links{display:grid;gap:9px}
.board-links a{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;color:#fff;font-size:13px;font-weight:600;line-height:1.45}
.board-links a:hover{text-decoration:underline;text-underline-offset:4px}
.board-links .icon{width:17px;height:17px;margin-top:1px;color:#ffd2cb;stroke-width:1.8}
.board-links span{min-width:0;overflow-wrap:anywhere}
@media(max-width:1040px){
 .board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .board-card:last-child{grid-column:1/-1}
}
@media(max-width:760px){
 .contact{row-gap:38px}
 .board-panel{padding-top:32px}
 .board-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:20px}
 .board-grid{grid-template-columns:1fr;gap:13px}
 .board-card:last-child{grid-column:auto}
 .board-card{grid-template-columns:76px minmax(0,1fr);gap:15px;padding:17px;border-radius:17px}
 .board-card>img{width:76px;height:76px}
 .board-card h4{font-size:19px}
}
@media(prefers-reduced-motion:reduce){.board-card{transition:none}.board-card:hover{transform:none}}
