/* One distinct decorative image per main area; all colours follow the selected theme. */
/* A taller responsive wordmark must never cover a masthead's eyebrow or back link. */
html:root body.wlfv-ui.wlfv-concept-site #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wl-event-hero,.wl-document-hero):not(:where(.wl-clubs-index *,.wl-club-profile *)){padding-top:calc(max(var(--wl-header-height,108px),110px) + 20px)!important}
html:root body #oxy-main a.wl-detail-back-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;max-width:100%;margin:0 0 18px;padding:0;border:0;background:transparent;box-shadow:none;color:var(--wl-theme-link);font-family:var(--wlfv-font);font-size:14px;font-weight:700;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
html:root body #oxy-main a.wl-detail-back-link:focus-visible{outline:3px solid var(--wl-theme-link);outline-offset:4px;border-radius:4px}
body.wl-hero-home{--wl-page-hero-art:url('wlfv-hero-home-20261022.webp')}
body.wl-hero-news{--wl-page-hero-art:url('wlfv-hero-news-20261030.webp')}
body.wl-hero-clubs{--wl-page-hero-art:url('wlfv-hero-clubs-20261022.webp')}
body.wl-hero-tournaments{--wl-page-hero-art:url('wlfv-hero-tournaments-20261022.webp')}
body.wl-hero-events{--wl-page-hero-art:url('wlfv-hero-events-20261022.webp')}
body.wl-hero-school{--wl-page-hero-art:url('wlfv-hero-school-20261022.webp')}
body.wl-hero-info{--wl-page-hero-art:url('wlfv-hero-info-20261023.webp')}
body.wl-hero-contact{--wl-page-hero-art:url('wlfv-hero-contact-20261022.webp')}
body.wl-hero-projects{--wl-page-hero-art:url('wlfv-hero-projects-20261022.webp')}
body.wl-hero-partners{--wl-page-hero-art:url('wlfv-hero-partners-20261022.webp')}
body[class*="wl-hero-"]{--wl-masthead-art:var(--wl-page-hero-art);--wl-service-art:var(--wl-page-hero-art);--wl-hero-shade:transparent}
html[data-wlfv-theme="dark"] body[class*="wl-hero-"]{--wl-hero-shade:#0b142380}
/* Separate night illustrations retain the daytime compositions; no filter on real photos. */
html[data-wlfv-theme="dark"] body.wl-hero-home{--wl-page-hero-art:url('wlfv-hero-home-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-news{--wl-page-hero-art:url('wlfv-hero-news-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-clubs{--wl-page-hero-art:url('wlfv-hero-clubs-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-tournaments{--wl-page-hero-art:url('wlfv-hero-tournaments-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-events{--wl-page-hero-art:url('wlfv-hero-events-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-school{--wl-page-hero-art:url('wlfv-hero-school-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-info{--wl-page-hero-art:url('wlfv-hero-info-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-contact{--wl-page-hero-art:url('wlfv-hero-contact-legal-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.page-id-13.wl-hero-contact{--wl-page-hero-art:url('wlfv-hero-contact-desk-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-projects{--wl-page-hero-art:url('wlfv-hero-projects-night-20261030.webp')}
html[data-wlfv-theme="dark"] body.wl-hero-partners{--wl-page-hero-art:url('wlfv-hero-partners-night-20261030.webp')}
html[data-wlfv-theme="dark"] body[class*="wl-hero-"]{--wl-hero-shade:transparent}
html:root body.wlfv-ui.wlfv-concept-site[class*="wl-hero-"] #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wlfv-concept-hero,.wl-event-hero,.wl-document-hero,.wlfv-project-hero):not(:where(.wl-clubs-index *)){
 position:relative;isolation:isolate;background-color:var(--wl-theme-page,#f8fbff);background-image:none;min-height:clamp(360px,26vw,460px)
}
html:root body.wlfv-ui.wlfv-concept-site[class*="wl-hero-"] #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wlfv-concept-hero,.wl-event-hero,.wl-document-hero,.wlfv-project-hero):not(:where(.wl-clubs-index *))::after{
 content:"";position:absolute;inset:var(--wl-header-height,88px) 0 0 auto;width:78%;z-index:-1;pointer-events:none;
 background-image:linear-gradient(0deg,var(--wl-theme-page,#f8fbff) 0%,transparent 34%),linear-gradient(var(--wl-hero-shade),var(--wl-hero-shade)),var(--wl-page-hero-art);
 background-size:100% 100%,100% 100%,cover;background-repeat:no-repeat;background-position:0 0,0 0,right top;
 mask-image:linear-gradient(90deg,transparent 0% 15%,#000 70%),linear-gradient(180deg,transparent,#000 28%);mask-composite:intersect
}
html:root body.wlfv-ui.wlfv-concept-site.wl-hero-home #oxy-main .wlfv-concept-hero{
 background-image:linear-gradient(0deg,var(--wl-theme-page,#f8fbff) 0%,transparent 30%),linear-gradient(90deg,var(--wl-theme-page,#f8fbff) 0% 36%,color-mix(in srgb,var(--wl-theme-page,#f8fbff) 87%,transparent) 49%,transparent 72%),linear-gradient(var(--wl-hero-shade),var(--wl-hero-shade)),var(--wl-page-hero-art);
 background-size:100% 100%,100% 100%,100% 100%,cover;background-position:0 0,0 0,0 0,right center
}
html:root body.wlfv-ui.wlfv-concept-site.wl-hero-home #oxy-main .wlfv-concept-hero::after,html:root body.wlfv-ui.wlfv-concept-site.wl-hero-home #oxy-main .wlfv-concept-hero::before{content:none}
/* Match the surrounding page ground so the lower fade has no seam in either theme. */
html:root body.wlfv-ui.wlfv-concept-site[class*="wl-hero-"] #oxy-main>.wlfv-ui{background-color:var(--wl-theme-page,#f8fbff)}
/* School title uses its own panorama while the existing content photograph stays in the media library. */
html body.wl-hero-school #oxy-main .wlfv-project-picture{display:none}
html body.wl-hero-school #oxy-main .wlfv-project-hero-grid{grid-template-columns:minmax(0,1fr)}
html body.wl-hero-school #oxy-main .wlfv-project-hero-copy{max-width:51%}
/* Retain the interactive club map, adding artwork only to the shallow title layer. */
html body.wl-hero-clubs #oxy-main .wl-clubs-index .wlfv-hub-hero::after{content:""!important;position:absolute;inset:64px 0 0 auto;width:56%;z-index:-1;pointer-events:none;opacity:.8;background:linear-gradient(0deg,var(--wl-theme-page,#f8fbff),transparent 22%),linear-gradient(var(--wl-hero-shade),var(--wl-hero-shade)),var(--wl-page-hero-art) right center/cover no-repeat;mask-image:linear-gradient(90deg,transparent,#000 25%)}
/* Tournament subnavigation is a transparent row, with a visible active underline. */
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:4px 0!important;margin-block:4px 18px!important;gap:6px}
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation a{background:transparent!important;color:var(--wl-theme-link,#0066c9);border-radius:4px;box-shadow:none}
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation a:is([aria-current=page],[aria-current=location]){color:var(--wl-theme-text,#071449);box-shadow:inset 0 -3px var(--wl-theme-accent,#d64a00)}
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation a:hover{background:color-mix(in srgb,var(--wl-theme-link,#0066c9) 7%,transparent)!important}
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation a:focus-visible{outline:3px solid var(--wl-theme-link,#0066c9);outline-offset:3px}
/* Both outer cards start at the same grid line, regardless of later generic panel margins. */
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-registration-layout{align-items:start}
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-registration-layout>.wlfv-core-panel,html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-registration-layout>.wlfv-event-detail-layout,html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-registration-layout>.wlfv-event-detail-layout>.wlfv-core-detail{margin-block:0!important}
body.page-id-904:not(.wlfv-tournament-selected) #oxy-main .wlfv-hub-hero .wlfv-breadcrumb{display:none!important}
#wlfv-saisonturniere{scroll-margin-top:calc(var(--wl-header-height,90px) + var(--wl-toolbar-offset,0px) + 16px)}
@media(max-width:767px){
 html:root body.wlfv-ui.wlfv-concept-site[class*="wl-hero-"] #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wlfv-concept-hero,.wl-event-hero,.wl-document-hero,.wlfv-project-hero):not(:where(.wl-clubs-index *)){background-image:none!important;background-color:var(--wl-theme-page,#f8fbff);min-height:0;padding-bottom:294px!important}
 html:root body.wlfv-ui.wlfv-concept-site[class*="wl-hero-"] #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wlfv-concept-hero,.wl-event-hero,.wl-document-hero,.wlfv-project-hero):not(:where(.wl-clubs-index *))::after{content:"";position:absolute;inset:auto 0 0;width:100%;height:274px;mask-image:none;z-index:-1;pointer-events:none;background:linear-gradient(180deg,var(--wl-theme-page,#f8fbff),transparent 28%,transparent 70%,var(--wl-theme-page,#f8fbff)),linear-gradient(var(--wl-hero-shade),var(--wl-hero-shade)),var(--wl-page-hero-art) 88% center/cover no-repeat}
 html body.wl-hero-school #oxy-main .wlfv-project-hero-copy{max-width:100%}
 html body.wl-hero-clubs #oxy-main .wl-clubs-index .wlfv-hub-hero::after{inset:72px 0 0 auto;width:48%;opacity:.4}
}
@media(forced-colors:active){html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-tournament-navigation a:is([aria-current=page],[aria-current=location]){border-bottom:3px solid LinkText}}

/* One clear back control directly beside the season, replacing the separate breadcrumb. */
html:root body.wlfv-ui.wlfv-tournament-selected #oxy-main .wlfv-hub-hero .wlfv-eyebrow{display:none}
html:root body.wlfv-ui.wlfv-tournament-selected #oxy-main .wlfv-hub-hero .wlfv-breadcrumb{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin:0 0 18px;color:var(--wl-theme-link);font-size:14px;font-weight:700;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.wl-season-back-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;transition:transform .18s,background .18s}
.wl-season-back-icon::before{content:"";width:24px;height:24px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 12H5m7-7-7 7 7 7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.wlfv-breadcrumb:hover .wl-season-back-icon{background:color-mix(in srgb,var(--wl-theme-link) 9%,transparent);transform:translateX(-3px)}
html:root body.wlfv-ui.wlfv-tournament-selected #oxy-main .wlfv-breadcrumb:focus-visible{outline:3px solid var(--wl-theme-link);outline-offset:4px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.wl-season-back-icon{transition:none}.wlfv-breadcrumb:hover .wl-season-back-icon{transform:none}}

/* Continuous tournament/event panorama: under the sticky menu and category row. */
@media(min-width:768px){
 html:root body.wlfv-ui.wlfv-concept-site:is(.wl-hero-tournaments,.wl-hero-events) #oxy-main .wlfv-hub-hero{min-height:0;overflow:visible}
 html:root body.wlfv-ui.wlfv-concept-site:is(.wl-hero-tournaments,.wl-hero-events) #oxy-main .wlfv-hub-hero::after{
  inset:0 0 auto auto;width:100%;height:calc(clamp(420px,30vw,540px) + 80px);
  background-image:linear-gradient(180deg,transparent 32%,color-mix(in srgb,var(--wl-theme-page,#f8fbff) 52%,transparent) 54%,var(--wl-theme-page,#f8fbff) 80%),linear-gradient(var(--wl-hero-shade),var(--wl-hero-shade)),var(--wl-page-hero-art);
  background-position:0 0,0 0,right top;
  mask-image:linear-gradient(90deg,transparent 0% 8%,#000 67%);mask-composite:add
 }
 html:root body.wlfv-ui:is(.wl-hero-tournaments,.wl-hero-events) #oxy-main .wlfv-tournament-navigation{z-index:1}
 html:root body.wlfv-ui:is(.wl-hero-tournaments,.wl-hero-events) #oxy-main .wlfv-tournament-registration-layout{position:relative;z-index:1}
 html:root body.wlfv-ui:is(.wl-hero-tournaments,.wl-hero-events) header.wlfv-header:not(.wlfv-menu-open){background:linear-gradient(180deg,#ffffffd9 0%,#ffffffb3 45%,#ffffff4d 78%,transparent 100%)}
 html:root[data-wlfv-theme="dark"] body.wlfv-ui:is(.wl-hero-tournaments,.wl-hero-events) header.wlfv-header:not(.wlfv-menu-open){background:linear-gradient(180deg,#0b1423ed 0%,#0b1423bf 45%,#0b142366 78%,transparent 100%)}
 html:root body.wlfv-ui:is(.wl-hero-tournaments,.wl-hero-events) header.wlfv-header:not(.wlfv-menu-open)::after{background:none}
}

/* Every content block following a masthead paints above its overflowing artwork.
   Keep the panorama in the title layer; opaque cards must never be washed out. */
html:root body.wlfv-ui.wlfv-concept-site #oxy-main :is(.wlfv-hub-hero,.wlfv-knowledge-hero,.wlfv-initiative-hero,.wlfv-contact-hero,.wlfv-concept-hero,.wl-event-hero,.wl-document-hero,.wlfv-project-hero):not(:where(.wl-clubs-index *)) ~ *{position:relative;z-index:1}


/* A little of the panorama can show through list surfaces, never through text/buttons. */
body.wlfv-ui{--wl-list-surface:color-mix(in srgb,var(--wl-theme-surface,#fff) 82%,transparent)}
html[data-wlfv-theme="dark"] body.wlfv-ui{--wl-list-surface:color-mix(in srgb,var(--wl-theme-surface,#142337) 88%,transparent)}
html:root body.wlfv-ui #oxy-main .wlfv-tournament-list>.wlfv-tournament-row{background:var(--wl-list-surface)}
@media(forced-colors:active){html:root body.wlfv-ui #oxy-main .wlfv-tournament-list>.wlfv-tournament-row{background:Canvas}}
@media print{html:root body.wlfv-ui #oxy-main .wlfv-tournament-list>.wlfv-tournament-row{background:#fff}}

/* Impressum: compact reading layout, confined to this page. */
html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-legal-page .wlfv-contact-hero{min-height:0;padding-bottom:24px!important}
html:root body #oxy-main .wlfv-legal-page .wlfv-hub-title{font-size:clamp(32px,3.5vw,48px);line-height:1.15;margin-bottom:0}
html:root body #oxy-main .wlfv-legal-page .wlfv-eyebrow{margin-block:0 10px}
html:root body #oxy-main .wlfv-legal-page .wl-detail-back-link{margin-bottom:12px}
html:root body #oxy-main .wlfv-legal-content{padding-block:20px 32px}
html:root body #oxy-main .wlfv-legal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
html:root body #oxy-main .wlfv-legal-card{padding:20px;box-shadow:none}
html:root body #oxy-main .wlfv-legal-card h2{font-size:20px;line-height:1.3;margin:0 0 10px;letter-spacing:-.2px}
html:root body #oxy-main .wlfv-legal-copy{font-size:15px;line-height:1.65}
html:root body #oxy-main .wlfv-legal-card a{min-height:24px}
html:root body #oxy-main .wlfv-legal-page .wlfv-image-credits{margin-top:16px;padding:20px;box-shadow:none}
html:root body #oxy-main .wlfv-legal-page .wlfv-image-credits h2{font-size:21px;line-height:1.3;margin:0 0 12px}
html:root body #oxy-main .wlfv-legal-page .wlfv-image-credits h3{font-size:17px;margin:14px 0 6px}
html:root body #oxy-main .wlfv-legal-page .wlfv-image-credits p{max-width:none;font-size:15px;line-height:1.65;margin-block:8px}
html:root body #oxy-main .wlfv-legal-related{margin-top:20px;gap:12px 24px}
@media(max-width:1000px){html:root body #oxy-main .wlfv-legal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){
 html:root body #oxy-main .wlfv-legal-grid{grid-template-columns:1fr;gap:12px}
 html:root body #oxy-main .wlfv-legal-card,html:root body #oxy-main .wlfv-legal-page .wlfv-image-credits{padding:18px}
 html:root body.wlfv-ui.wlfv-concept-site #oxy-main .wlfv-legal-page .wlfv-contact-hero{padding-bottom:20px!important}
 html:root body #oxy-main .wlfv-legal-page .wlfv-contact-hero::after{display:none}
}
