:root{--ink:#101820;--lime:#d4f852;--muted:#a5b0b8;--paper:#f2f4f5;--line:#2d353b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--ink);color:white;font-size:16px;line-height:1.6}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #8bbdfd;outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;color:black;z-index:20}header{min-height:100px;padding:22px 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;gap:14px;align-items:center;color:var(--lime);font-weight:900;font-size:32px;letter-spacing:-2px}.brand span{color:white;font-size:14px;letter-spacing:1px;line-height:1.5}.brand small{font-size:10px;color:var(--muted);letter-spacing:1.5px}nav{display:flex;gap:28px}nav a{font-size:14px;text-decoration:none;color:#c7cdd1}nav a:hover{color:var(--lime)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:5%;padding:65px 5.5% 55px;align-items:center;max-width:1500px;margin:auto}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--lime);margin:0 0 22px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(45px,5.8vw,84px);line-height:1.02;letter-spacing:-4px;margin-bottom:28px;font-weight:800}em{font-style:normal;color:var(--lime)}.intro{max-width:520px;font-size:18px;color:#bfc8ce;margin-bottom:32px}.button{background:var(--lime);color:var(--ink);font-weight:700;display:inline-flex;align-items:center;min-height:52px;padding:13px 24px;border-radius:3px;text-decoration:none;font-size:15px;transition:background .15s}.button:hover{background:#e6ff8c}.hero-note{display:flex;gap:12px;align-items:center;margin-top:33px;font-size:13px;color:var(--muted)}.line{width:32px;height:1px;background:var(--lime)}.portrait{position:relative;margin:0}.portrait img{width:100%;height:auto;display:block;aspect-ratio:1;object-fit:cover;border-radius:4px}.portrait figcaption{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.3px;color:var(--muted);margin-top:13px}.photo-badge{position:absolute;left:-30px;bottom:65px;background:var(--lime);color:var(--ink);display:flex;align-items:center;gap:16px;padding:18px 25px;transform:rotate(-4deg)}.photo-badge strong{font-size:45px;line-height:1}.photo-badge span{font-size:11px;line-height:1.4;letter-spacing:1px;font-weight:800}.stats{display:grid;grid-template-columns:repeat(4,1fr) 1.3fr;padding:30px 5.5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px}.stats>div{border-right:1px solid var(--line)}.stats strong{font-size:40px;display:block;line-height:1.3;letter-spacing:-2px}.stats strong span{font-size:14px;margin-left:12px;vertical-align:middle}.stats div>span{color:var(--muted);font-size:13px}.gold{color:#d8bd60}.silver{color:#bccbd6}.bronze{color:#ce9273}.stats p{font-size:13px;margin:0;color:#c8d0d5}.stats small{font-size:12px;color:var(--muted)}.section{padding:90px 5.5%;scroll-margin-top:10px}h2{font-size:clamp(36px,4.4vw,62px);line-height:1.06;letter-spacing:-2.5px;margin-bottom:30px}.story{display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.story-text{color:#c0c8ce}.story-text .large{font-size:25px;line-height:1.4;color:white}.profile{display:flex;gap:35px;padding-top:22px;margin-top:25px;border-top:1px solid var(--line)}.profile span{font-size:12px;color:var(--muted)}.profile b{display:block;font-size:15px;color:white}.results{background:var(--paper);color:var(--ink)}.results .eyebrow{color:#59682f}.section-top{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-top>p{color:#59626b;font-size:14px;margin-bottom:35px}.filters{display:flex;gap:8px;margin:8px 0 40px;flex-wrap:wrap}.filters button{background:transparent;color:#35404a;border:1px solid #c8ced2;border-radius:3px;padding:10px 22px;font-size:14px;cursor:pointer}.filters .active{background:var(--ink);color:white;border-color:var(--ink)}.group-title{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:12px;margin-top:40px}.group-title h3{font-size:22px;letter-spacing:-.6px;margin:0}.group-title span{font-size:12px;color:#59626b}.result-row{display:grid;grid-template-columns:70px 115px 1fr 240px;align-items:center;gap:20px;padding:21px 0;border-bottom:1px solid #d4dadd}.year{font-weight:bold;font-size:14px;color:#67717b}.medal{display:inline-flex;justify-content:center;padding:5px 9px;background:#e8e4d5;border-radius:3px;font-size:12px;font-weight:bold;color:#735a14}.medal.silver{background:#dde3e8;color:#465967}.medal.bronze{background:#eddfd6;color:#875033}.medal.neutral{background:#e1e5e7;color:#5b6670}.discipline h4{font-size:17px;margin:0}.discipline p{font-size:13px;color:#67717b;margin:2px 0 0}.location{font-size:13px;color:#59626b;text-align:right}.result-note{font-size:13px;color:#69737b;max-width:730px;margin:30px 0 0}.hall{background:var(--lime);color:var(--ink)}.hall .eyebrow{color:#475224}.hall-heading{display:flex;gap:12%;align-items:center}.hall-heading>p{max-width:410px;font-size:21px}.hall-numbers{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;border-top:1px solid #a7be47;border-bottom:1px solid #a7be47;padding:30px 0;margin:20px 0 40px}.hall-numbers strong{font-size:clamp(37px,4vw,62px);letter-spacing:-2px;line-height:1.3}.hall-numbers strong span{color:#6d812a}.hall-numbers p{font-size:13px;margin:8px 0 0}.hall-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:10%}.hall-bottom h3{font-size:23px;line-height:1.3;letter-spacing:-.5px}.hall-bottom p{font-size:15px}.hall-bottom .source{font-size:12px;line-height:1.7;color:#4f5c27}.hall-card{background:#bddf46;padding:30px;border-radius:3px}.hall-card .eyebrow{font-size:11px}.dark{background:var(--ink);color:white}.dark:hover{background:#2d3c45}.text-link{display:block;margin-top:15px;font-size:14px}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.impact-grid article{border-top:1px solid var(--line);padding-top:20px}.impact-grid article>span{font-size:12px;color:var(--lime)}.impact-grid h3{margin-top:22px;font-size:22px;letter-spacing:-.6px}.impact-grid p{color:#b4bfc6;font-size:15px}.next{display:flex;gap:8%;background:#1b252d;padding:30px;margin-top:40px;border-left:3px solid var(--lime)}.next>span{font-size:11px;letter-spacing:1.5px;color:var(--lime);min-width:125px;padding-top:6px}.next h3{font-size:23px;margin-bottom:10px}.next p{margin:0;color:#b4bfc6;font-size:15px}.timeline{padding-top:30px;border-bottom:1px solid var(--line)}.timeline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.timeline-grid article{border-top:2px solid #4c5a39;padding-top:25px}.timeline strong{font-size:36px;color:var(--lime);letter-spacing:-1px}.timeline h3{font-size:18px;margin-top:15px}.timeline p{color:var(--muted);font-size:14px}.contact{display:flex;justify-content:space-between;gap:35px;align-items:center}.contact>div>p:not(.eyebrow){color:#b4bfc6;font-size:16px}.email{display:block;font-size:14px;color:var(--muted);margin-top:18px}footer{border-top:1px solid var(--line);padding:26px 5.5%;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}@media(min-width:1600px){.section,header,.stats,footer{padding-left:calc((100vw - 1320px)/2);padding-right:calc((100vw - 1320px)/2)}}@media(max-width:850px){header{align-items:start}nav{gap:14px;flex-wrap:wrap;justify-content:end;max-width:235px}.hero{gap:30px;padding-top:40px}h1{letter-spacing:-2.4px}.intro{font-size:16px}.photo-badge{left:-15px;padding:13px 16px}.photo-badge strong{font-size:32px}.stats{grid-template-columns:repeat(4,1fr)}.stats>p{grid-column:1/-1}.stats br{display:none}.stats small{margin-left:12px}.story{gap:35px}.result-row{grid-template-columns:50px 90px 1fr;gap:14px}.location{grid-column:3;text-align:left}.hall-heading{gap:30px}.hall-bottom{gap:30px}.impact-grid{gap:25px}.timeline-grid{grid-template-columns:repeat(2,1fr)}.section{padding-top:65px;padding-bottom:65px}}@media(max-width:600px){header{padding:20px 6%;flex-direction:column;gap:20px}nav{max-width:none;justify-content:start;gap:20px}nav a{font-size:12px}.brand{font-size:28px}.hero{grid-template-columns:1fr;padding:35px 6% 30px}.hero h1{font-size:49px}.hero-note{margin-top:20px}.portrait{margin-top:5px}.portrait img{max-height:460px}.photo-badge{left:15px;bottom:60px}.stats{padding:25px 6%;gap:12px}.stats strong{font-size:30px}.stats strong span{margin-left:6px;font-size:10px}.stats div>span{font-size:11px}.stats>div:last-of-type{border:0}.section{padding:55px 6%}h2{font-size:41px;letter-spacing:-1.7px}.story{grid-template-columns:1fr;gap:5px}.story-text .large{font-size:22px}.profile{gap:22px}.section-top{display:block}.section-top>p{margin-bottom:25px}.filters{margin-bottom:25px}.filters button{padding:9px 16px}.group-title h3{font-size:19px;max-width:240px;line-height:1.3}.group-title>span{font-size:11px}.result-row{grid-template-columns:38px 79px 1fr;gap:12px;padding:18px 0}.discipline h4{font-size:15px}.discipline p{font-size:12px}.location{font-size:12px}.medal{font-size:10px;padding:5px}.hall-heading{display:block}.hall-heading>p{font-size:19px}.hall-numbers{grid-template-columns:1fr;gap:25px}.hall-numbers>div{display:grid;grid-template-columns:135px 1fr;align-items:center}.hall-numbers strong{font-size:37px}.hall-numbers p{font-size:12px}.hall-bottom{grid-template-columns:1fr;gap:20px}.impact-grid{grid-template-columns:1fr;gap:20px}.impact-grid h3{margin-top:12px;margin-bottom:10px}.next{display:block;padding:23px}.next>span{display:block;margin-bottom:16px}.next h3{font-size:21px}.timeline-grid{gap:25px}.timeline strong{font-size:30px}.timeline h3{font-size:17px;line-height:1.35}.contact{display:block}.contact h2{margin-bottom:25px}footer{flex-direction:column;gap:8px;padding:25px 6%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.history-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}.history-gallery figure,.history-videos figure{margin:0;min-width:0}.history-gallery img{width:100%;height:320px;object-fit:contain;background:#101820;border-radius:12px;display:block}.history-gallery h3{margin:1rem 0 .4rem}.history-gallery p{margin:0}.history-videos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:3rem}.history-videos video{display:block;width:100%;border-radius:12px;background:#101820}.history-videos figcaption{font-size:14px;margin-top:1rem}header nav{flex-wrap:wrap}@media(max-width:900px){.history-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.history-gallery,.history-videos{grid-template-columns:1fr}.history-gallery img{height:auto;max-height:550px}}

.guest-section{border-top:1px solid var(--line);background:#17232c}.guest-intro{max-width:650px;color:#c0c8ce}.guest-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}.guest-gallery figure{margin:0;min-width:0}.guest-photo{display:block;border-radius:12px;overflow:hidden;background:var(--ink)}.guest-photo img{display:block;width:100%;height:340px;object-fit:contain}.guest-gallery figcaption{margin-top:.75rem;font-size:16px;color:#c0c8ce}#guest-viewer{border:1px solid var(--line);border-radius:12px;background:var(--ink);color:white;padding:1rem;max-width:1100px;width:94vw;max-height:94dvh}#guest-viewer::backdrop{background:rgba(0,0,0,.88)}#viewer-photo{display:block;width:100%;height:70dvh;object-fit:contain;margin-top:1rem}.viewer-close,.viewer-controls button{min-height:44px;padding:.6rem 1rem;border:1px solid #65717a;border-radius:4px;background:var(--ink);color:white;font-size:14px;cursor:pointer}.viewer-close{display:block;margin-left:auto}.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.viewer-controls p{margin:0;text-align:center;font-size:14px}@media(max-width:900px){.guest-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.guest-gallery{grid-template-columns:1fr}.guest-photo img{height:auto;max-height:550px}#viewer-photo{height:65dvh}.viewer-controls{gap:.5rem}.viewer-controls button{padding:.5rem}.viewer-controls p{font-size:12px}}

.tournament-section{border-top:1px solid var(--line)}.tournament-photo{display:block;border-radius:12px;overflow:hidden;background:#17232c}.tournament-photo img{display:block;width:100%;height:340px;object-fit:contain}@media(max-width:600px){.tournament-photo img{height:auto;max-height:550px}}

.em-group>h3{font-size:26px;margin-top:2rem}.em-group+.em-group{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem}

.hero-links{display:flex;flex-wrap:wrap;gap:12px}.button-secondary{background:transparent;border:1px solid var(--lime);color:var(--lime)}.button-secondary:hover{background:var(--lime);color:var(--ink)}

/* Titelbild: gesamte Spielszene ohne Beschnitt. */
.portrait img{aspect-ratio:1;object-fit:contain}

.hero-future{font-size:clamp(45px,5.8vw,84px);line-height:1.02;letter-spacing:-4px;margin-bottom:28px;font-weight:800;overflow-wrap:normal}.portrait img{aspect-ratio:auto;height:auto;object-fit:contain}@media(max-width:600px){.hero-future{font-size:clamp(32px,8.3vw,45px);letter-spacing:-1.5px}}

.stats strong .medal-icon{font-size:28px;display:inline-block;line-height:1;letter-spacing:0;vertical-align:middle;margin-left:12px}

.language-switch{display:flex;gap:.25rem;align-items:center;flex-shrink:0}.language-switch a{font-size:.875rem;padding:.65rem .8rem;border:1px solid currentColor;border-radius:6px;text-decoration:none;white-space:nowrap}.language-switch a[aria-current="page"]{background:#d4f852;color:#101820;border-color:#d4f852}.language-switch a:focus-visible{outline:3px solid #d4f852;outline-offset:3px}@media(max-width:1100px){header{flex-wrap:wrap}.language-switch{margin-left:auto}}

header{gap:1rem;flex-wrap:wrap}header nav{flex:1;flex-wrap:wrap;justify-content:flex-end}.language-switch{align-self:center}@media(max-width:700px){header nav{flex-basis:100%;justify-content:flex-start;order:3}.language-switch{margin-left:auto}}

/* Bright editorial palette, approved October 2026. */
:root{--ink:#0d2048;--lime:#0950e8;--muted:#52647c;--paper:#f5f9fd;--line:#d7e3ef;--gold:#98701f}
body{background:#fbfdff;color:var(--ink)}
header{background:#fff;border-color:var(--line)}
.brand{color:var(--gold)}.brand span,nav a{color:var(--ink)}.brand small{color:var(--muted);font-size:12px}
nav{gap:12px 22px}nav a{font-size:14px}nav a:hover{color:var(--lime)}
.hero{position:relative;max-width:1500px;padding-top:54px;padding-bottom:54px;gap:4%;grid-template-columns:1.05fr 1fr;background:linear-gradient(145deg,#fff 12%,#f4faff 67%,#e7f3ff)}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,5.7vw,82px);font-weight:700;letter-spacing:-3px;line-height:1.07;margin-bottom:28px}
.hero-eyebrow{color:var(--gold);font-size:14px;letter-spacing:3px;margin-bottom:30px}.intro{color:var(--ink);font-size:clamp(18px,2vw,25px);line-height:1.55;max-width:550px}
.button{background:var(--lime);color:#fff;border-radius:30px;padding:13px 24px}.button:hover{background:#063db5;color:#fff}
.button-secondary{border-color:var(--lime);background:transparent;color:var(--lime)}.button-secondary:hover{background:#e7efff;color:#063db5}
.hero-links .gallery-link{order:1}.hero-links .button:not(.button-secondary){order:0}.hero-links .button-secondary:not(.gallery-link){order:2;font-size:14px;padding:10px 17px;min-height:44px}
.portrait img{border-radius:32px;aspect-ratio:4/5;width:100%;height:auto;object-fit:cover;background:#dceeff}.portrait figcaption{color:var(--gold);font-size:12px}.hero-note{color:var(--muted)}.line{background:var(--gold)}
.stats{background:#fff;border-color:var(--line);gap:20px}.stats>div{padding:12px 18px;border:1px solid var(--line);border-radius:15px}.stats strong{color:var(--ink)}.stats p{color:var(--muted)}.stats div>span{font-size:14px}.stats small{font-size:13px}
.eyebrow{color:var(--gold);font-size:13px}.story-text,.guest-intro,.guest-gallery figcaption,.impact-grid p,.contact>div>p:not(.eyebrow){color:var(--muted)}.story-text .large,.profile b{color:var(--ink)}
h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-1.7px}.profile span{font-size:14px}.results{background:#f1f6fc}.results .eyebrow{color:var(--gold)}.filters .active{background:var(--lime);border-color:var(--lime)}
.hall{background:#e8f2fc;color:var(--ink)}.hall .eyebrow{color:var(--gold)}.hall-numbers{border-color:#c4d8ec}.hall-numbers strong span{color:var(--gold)}.hall-bottom .source{color:var(--muted)}.hall-card{background:#fff;border:1px solid var(--line);border-radius:18px}.dark{background:var(--ink);color:white}.dark:hover{background:#1c3a68}
.impact-grid article>span{color:var(--gold)}.next{background:#eff5fc}.next p{color:var(--muted)}.timeline-grid article{border-color:var(--gold)}.timeline strong{color:var(--gold)}
.guest-section{background:#f0f6fc}.history-gallery img,.guest-photo,.tournament-photo{background:#e4edf7}.guest-photo,.tournament-photo{border:1px solid var(--line)}
#guest-viewer{background:#fff;color:var(--ink)}.viewer-close,.viewer-controls button{background:var(--ink);color:#fff}.viewer-controls p{color:var(--ink)}
.language-switch a[aria-current="page"]{background:var(--ink);color:#fff;border-color:var(--ink)}.language-switch a:focus-visible{outline-color:var(--lime)}
footer{font-size:13px;background:#f3f7fc}.history-gallery p,.history-videos figcaption{color:var(--muted)}
@media(max-width:850px){.hero{gap:24px}.hero h1{font-size:clamp(38px,5.6vw,58px);letter-spacing:-2px}.stats>div{padding:12px}.hero-links{gap:9px}}
@media(max-width:600px){.hero{grid-template-columns:1fr;padding:35px 6%}.hero h1{font-size:clamp(39px,10.4vw,58px);letter-spacing:-1.8px}.hero-eyebrow{font-size:13px;margin-bottom:20px}.portrait img{max-height:none;aspect-ratio:4/5}.portrait{margin-top:12px}.intro{font-size:19px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 6%;gap:12px}.stats>div:last-of-type{border:1px solid var(--line)}.stats strong{font-size:34px}.stats div>span{font-size:14px}.stats>p{grid-column:1/-1}.brand small{font-size:12px}nav a{font-size:14px}.portrait figcaption{font-size:12px;letter-spacing:.6px}}

.hero-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0 5.5% 40px;background:#f4faff}.hero-highlights>div{display:flex;align-items:center;gap:24px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:22px 28px}.hero-highlights>div>span{color:var(--gold);font-size:40px;line-height:1}.hero-highlights p{margin:0;padding-left:22px;border-left:1px solid var(--gold);font-size:16px;line-height:1.5}.hero-highlights strong{font-family:Georgia,serif;font-size:clamp(24px,2.6vw,38px);line-height:1.2}@media(max-width:850px){.hero-highlights{gap:14px}.hero-highlights>div{padding:18px 14px;gap:12px}.hero-highlights p{padding-left:12px}.hero-highlights>div>span{font-size:32px}}@media(max-width:600px){.hero-highlights{grid-template-columns:1fr;padding:0 6% 30px;gap:12px}.hero-highlights>div{padding:16px 24px}.hero-highlights strong{font-size:28px}.hero-highlights p{font-size:16px}.hero-highlights>div>span{width:44px;text-align:center}}

/* Keep the real hall photograph and its court geometry fully visible. */
.hero .portrait img{aspect-ratio:auto;height:auto;object-fit:contain}.hero{grid-template-columns:1fr 1.2fr}@media(max-width:600px){.hero{grid-template-columns:1fr}.hero .portrait img{aspect-ratio:auto;max-height:none}}

/* Close portrait framing approved by the owner. */
.hero{grid-template-columns:1.05fr 1fr}.hero .portrait img{aspect-ratio:auto;height:auto;object-fit:contain}@media(max-width:600px){.hero{grid-template-columns:1fr}}

.gallery-category-links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}#firmen-schulen .guest-gallery figcaption{font-size:16px}#firmen-schulen .history-videos video{height:auto}#firmen-schulen .history-videos{grid-template-columns:minmax(0,1fr);max-width:800px}

/* Focused navigation, sporting gallery entry and concrete contact choices. */
header nav{gap:14px 24px}header nav a{white-space:nowrap;font-size:15px}
.hero h1{font-size:clamp(38px,4.5vw,65px);letter-spacing:-2px}.profile-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:24px}.profile-links a{font-size:15px;color:var(--muted);text-underline-offset:4px} .profile-links a{animation:none!important;color:#171717!important}
.gallery-hub{background:#edf4fd}.gallery-intro{max-width:680px;color:var(--muted);font-size:18px}.gallery-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:36px 0}.gallery-feature{display:block;background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;transition:box-shadow .15s}.gallery-feature:hover{box-shadow:0 8px 26px #0d20481a}.gallery-feature img{display:block;width:100%;height:290px;object-fit:contain;background:#e4edf7}.gallery-feature>span{display:block;padding:22px}.gallery-feature strong{display:block;font-size:21px;line-height:1.3}.gallery-feature small{display:block;font-size:15px;color:var(--muted);margin-top:8px}.gallery-hub .gallery-category-links{margin-bottom:0}.travel-gallery{margin-top:28px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:18px 22px}.travel-gallery summary{cursor:pointer;font-size:17px;font-weight:700;min-height:28px}.travel-gallery summary span{color:var(--muted);font-weight:400}.contact-refined{background:#edf4fd}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:34px}.contact-grid article{display:flex;flex-direction:column;align-items:start;background:white;border:1px solid var(--line);border-radius:18px;padding:28px}.contact-grid h3{font-size:23px}.contact-grid p{font-size:16px;color:var(--muted);flex:1}.contact-grid .button{font-size:15px}.contact-address{font-size:15px;color:var(--muted);margin:30px 0 0}footer{flex-wrap:wrap;align-items:center}.site-notices{width:100%;display:flex;flex-wrap:wrap;gap:16px}.site-notices details{max-width:780px}.site-notices summary{cursor:pointer;min-height:32px;font-size:14px}.site-notices p{font-size:14px;line-height:1.7}.source{font-size:14px!important}section[id]{scroll-margin-top:24px}
@media(max-width:1000px){header nav{order:3;flex-basis:100%;justify-content:flex-start;max-width:none}.gallery-feature-grid,.contact-grid{gap:16px}.gallery-feature strong{font-size:19px}.contact-grid article{padding:22px}.contact-grid .button{padding:12px 18px}}
@media(max-width:700px){.gallery-feature-grid,.contact-grid{grid-template-columns:1fr}.gallery-feature img{height:320px}.gallery-feature>span{padding:20px}.hero h1{font-size:clamp(37px,8vw,56px)}header{flex-direction:row;align-items:center}.brand{font-size:28px}.language-switch a{padding:10px 12px}header nav{gap:10px 18px}header nav a{font-size:14px;min-height:34px;display:inline-flex;align-items:center}.contact-grid article{padding:26px}.gallery-hub .button{font-size:14px;padding:12px 18px}.profile-links{gap:22px}}

/* Personal AM logo in the existing header. */
header .brand-logo{display:block;flex:0 0 auto;line-height:0;letter-spacing:normal}header .brand-logo img{display:block;width:170px;height:auto;max-width:100%;object-fit:contain}header{align-items:center}@media(max-width:700px){header .brand-logo img{width:140px}.language-switch{margin-left:auto}}

/* Player crest: transparent contour and readable name on the white header. */
header .brand-logo img{width:170px;height:auto}@media(max-width:700px){header .brand-logo img{width:140px}}

/* Restrained black, yellow and neutral palette, October 2026. */
:root{--ink:#202020;--lime:#171717;--muted:#595959;--paper:#f5f5f5;--line:#dedede;--gold:#866200;--accent:#ffdf00}
body{background:#fff;color:var(--ink)}
header{background:#fff;border-color:var(--line)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #866200;outline-offset:5px}
nav a{color:var(--ink);text-underline-offset:8px}nav a:hover{color:#111;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px}
.hero{background:linear-gradient(145deg,#fff 15%,#f7f7f7 100%)}
.hero h1,.intro,h2,h3,.profile b{color:var(--ink)}
.eyebrow,.hero-eyebrow,.results .eyebrow,.hall .eyebrow{color:var(--gold)}
.button,.dark{background:#171717;color:#fff;border-color:#171717}.button:hover,.dark:hover{background:#383838;color:#fff}
.button-secondary{background:transparent;color:#202020;border-color:#202020}.button-secondary:hover{background:#f3f3f3;color:#111;border-color:#111}
.hero-note,.portrait figcaption,.profile-links a{color:var(--muted)}.line{background:var(--accent)}
.hero-highlights{background:#f7f7f7}.hero-highlights>div{background:#fff;border-color:var(--line)}.hero-highlights>div>span{color:var(--gold)}.hero-highlights p{border-left-color:var(--accent)}
.stats{background:#fff;border-color:var(--line)}.stats>div{border-color:var(--line)}
.results{background:#f5f5f5}.filters button{color:#333;border-color:#c9c9c9}.filters .active{background:var(--accent);color:#111;border-color:var(--accent)}.group-title{border-bottom-color:#202020}.result-row{border-bottom-color:#d6d6d6}.year,.discipline p,.location,.group-title span,.result-note,.section-top>p{color:var(--muted)}
.hall{background:#f3f3f3;color:var(--ink)}.hall-numbers{border-color:#d6d6d6}.hall-numbers strong span{color:var(--gold)}.hall-card{background:#fff;border-color:var(--line)}.hall-bottom .source{color:var(--muted)}
.impact-grid article{border-color:var(--line)}.impact-grid article>span{color:var(--gold)}.next{background:#f5f5f5;border-left-color:var(--accent)}.next>span{color:var(--gold)}.next p{color:var(--muted)}
.timeline-grid article{border-top-color:var(--accent)}.timeline strong{color:var(--ink)}
.gallery-hub,.guest-section,.contact-refined{background:#f5f5f5}.gallery-feature:hover{box-shadow:0 8px 26px #00000014}.gallery-feature img,.history-gallery img,.guest-photo,.tournament-photo{background:#eee}.guest-photo,.tournament-photo{border-color:var(--line)}.travel-gallery{border-color:var(--line)}
#guest-viewer{background:#fff;color:var(--ink)}.viewer-close,.viewer-controls button{background:#171717;color:white;border-color:#555}
.language-switch a[aria-current="page"]{background:#171717;color:#fff;border-color:#171717}.language-switch a:focus-visible{outline-color:var(--gold)}
footer{background:#f5f5f5;border-color:var(--line)}

/* Current news replaces the right-hand lead photograph. */
.latest-news{min-width:0;align-self:stretch;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 10px 35px #00000008}.news-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 26px;border-bottom:1px solid var(--line)}.news-label{font-size:14px;font-weight:800;letter-spacing:1.8px;border-left:4px solid var(--accent);padding-left:12px}.news-top time{font-size:14px;color:var(--muted)}.news-art{position:relative;aspect-ratio:596/335;overflow:hidden;background:#f5f5f5}.news-art img{position:absolute;width:202.35%;max-width:none;height:auto;left:-51.175%;top:-179.4%;display:block}.news-body{padding:28px 30px 32px}.news-kicker{font-size:13px;letter-spacing:1.6px;font-weight:700;color:var(--gold);margin-bottom:14px}.news-body h2{font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-1.1px;margin-bottom:14px}.news-place{font-size:16px;font-weight:700;margin-bottom:18px}.news-intro{font-size:16px;color:var(--muted);line-height:1.6}.news-facts{margin:24px 0 16px}.news-facts>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid var(--line);font-size:15px}.news-facts dt{color:var(--muted)}.news-facts dd{margin:0;text-align:right;font-weight:700}.news-schedule-note{font-size:14px;color:var(--muted);line-height:1.5;margin-bottom:24px}.hero{align-items:center}.latest-news .button{font-size:15px}@media(max-width:850px){.news-top{padding:16px 20px;flex-wrap:wrap}.news-body{padding:24px 22px}.news-facts>div{flex-direction:column;gap:3px}.news-facts dd{text-align:left}}@media(max-width:600px){.latest-news{margin-top:16px}.news-body h2{font-size:36px}.news-facts>div{flex-direction:row;gap:12px}.news-facts dd{text-align:right}.news-top time{font-size:14px}}

/* Compact, consistent spacing in the achievements list. */
.results .section-top h2{margin-bottom:20px}.results .section-top>p{margin-bottom:22px}
.results .filters{margin:8px 0 16px}
.results .group-title{margin-top:24px;padding-bottom:8px}
.results .result-group:first-child .group-title{margin-top:8px}
.results .result-row{padding:9px 0;row-gap:3px;line-height:1.4}
.results .discipline h4{line-height:1.35}.results .discipline p{margin:1px 0 0;line-height:1.35}
.results .result-note{margin-top:20px}
@media(max-width:850px){.results .result-row{padding:8px 0;row-gap:2px;column-gap:10px}.results .location{line-height:1.3}.results .group-title{margin-top:20px}}

.youtube-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:inherit;background:#111}

.brand-with-visits{display:flex;align-items:center;gap:18px;flex-shrink:0}.visit-counter{font-size:14px;font-weight:400;white-space:nowrap;color:inherit;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.5}@media(max-width:600px){.brand-with-visits{gap:10px}.visit-counter{font-size:14px}}

.video-poster{display:block;position:relative;overflow:hidden;border-radius:12px;background:#111;aspect-ratio:16/9}.video-poster img{display:block;width:100%;height:100%;object-fit:contain}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border-radius:50%;color:#fff;background:rgba(0,0,0,.72);pointer-events:none}.video-play svg{margin-left:4px}.video-poster:hover .video-play,.video-poster:focus-visible .video-play{background:#171717}

/* Consistent landscape previews in every video gallery. */
.history-videos video,.youtube-video iframe,.history-videos .video-poster{width:100%;height:auto;aspect-ratio:16/9;display:block;border-radius:12px}
.history-videos video,.video-poster img{object-fit:cover;object-position:center}
.history-videos video.video-started{object-fit:contain}

.southampton-poster img{object-position:50% 65%;transform:scale(1.15)}
#southampton-2024>.guest-gallery .tournament-photo img{height:auto;aspect-ratio:16/9;object-fit:cover;object-position:50% 45%}
#southampton-2024>.guest-gallery .tournament-photo{border:0;background:transparent}
#southampton-2024>.guest-gallery .tournament-photo img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}

/* Photographs without borders or empty padded image surfaces. */
.guest-photo,.tournament-photo,.gallery-feature{border:0;background:transparent;box-shadow:none}
.guest-photo,.tournament-photo{padding:0}
.history-gallery img,.guest-photo img,.tournament-photo img,.gallery-feature img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;background:transparent;border:0;padding:0}
.gallery-feature:hover{box-shadow:none}
.gallery-feature>span{padding:14px 0 0}

/* Consistent photo previews and shared title/media/caption rows. */
.history-gallery img,.guest-photo img,.tournament-photo img,.gallery-feature img,
#southampton-2024>.guest-gallery .tournament-photo img{width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-fit:cover;object-position:50% 0%}
.guest-gallery,.history-gallery,.gallery-feature-grid{align-items:start}
.history-videos>figure>h3{min-height:3.2em;margin:0 0 1rem}
@supports(grid-template-rows:subgrid){
  .history-videos{row-gap:1rem;column-gap:2rem}
  .history-videos>figure{display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:1rem;padding-bottom:1rem}
  .history-videos>figure>h3{grid-row:1;min-height:0;margin:0}
  .history-videos>figure>video,.history-videos>figure>iframe,.history-videos>figure>.video-poster{grid-row:2;align-self:start}
  .history-videos>figure>figcaption{grid-row:3;margin:0}
}
/* Keep faces visible in photographs with large areas above the people. */
img[src="ch-turnier-03.jpeg"],
img[src="ch-turnier-05.jpeg"],
img[src="ch-turnier-06.jpeg"],
img[src="ch-turnier-09.jpeg"],
img[src="ch-turnier-13.jpeg"],
img[src="ch-turnier-14.jpeg"],
img[src="ptt-estoril-2026-09.png"],
img[src="ptt-estoril-2026-13.jpeg"],
img[src="ptt-estoril-2026-14.jpeg"],
img[src="eroeffnung.jpg"],
img[src="em-rom-2025-05.jpeg"],
img[src="gaeste-08.jpeg"]{object-position:50% 50%}

.guest-reel h3{font-size:1rem;margin:0 0 1rem}.guest-reel .video-poster img{height:100%;object-fit:contain}.guest-reel .video-poster{aspect-ratio:3/4}

.sherif-guest .guest-photo img{aspect-ratio:auto;object-fit:contain}.sherif-guest figcaption{line-height:1.6}

.guest-reel .video-play{top:auto;left:16px;bottom:16px;transform:none;width:60px;height:60px}

.guest-photo img[src="juan-jose-gomez-delgado-beschriftet.jpeg"]{aspect-ratio:auto;object-fit:contain}

.guest-photo img[src="stephanie-vogt-oben.jpeg"]{aspect-ratio:auto;object-fit:contain}

/* Keep the close control and full photograph visible on phone screens. */
#guest-viewer{box-sizing:border-box;width:94vw;max-height:92dvh;overflow:auto;padding:.75rem}
#guest-viewer[open]{display:flex;flex-direction:column;gap:.5rem}
.viewer-close{position:sticky;top:0;z-index:2;flex-shrink:0;min-height:44px}
#viewer-photo{height:auto;min-height:0;max-height:calc(92dvh - 160px);object-fit:contain;margin:0}
.viewer-controls{flex-shrink:0;margin-top:0}

.photo-search{max-width:1440px;margin:0 auto;padding:1rem clamp(1rem,4vw,4rem);border-bottom:1px solid #d6dce5}.photo-search label{display:block;font-size:1rem;font-weight:700;margin-bottom:.5rem}.photo-search-controls{display:flex;gap:.5rem;flex-wrap:wrap}.photo-search input{flex:1;min-width:150px;padding:.75rem 1rem;border:1px solid #8a96a7;border-radius:6px;font:inherit;font-size:1rem;background:#fff;color:#0d2048}.photo-search button{padding:.75rem 1rem;border:0;border-radius:6px;background:#0d2048;color:white;font:inherit;font-size:1rem;cursor:pointer}.photo-search [hidden]{display:none!important}#photo-search-status:empty{display:none}.photo-search-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}.photo-search-results figure{margin:0;min-width:0}.photo-search-results img{width:100%;height:230px;object-fit:contain;background:#eef1f6;border-radius:8px}.photo-search-results figcaption{font-size:1rem;line-height:1.5;margin-top:.5rem}.photo-search-results figcaption h3,.photo-search-results figcaption p{font-size:1rem;margin:.25rem 0}


/* Alphabetical guest directory. */
header nav .guest-directory-button{color:#080808;animation:guest-name-blink 2s ease-in-out infinite}@keyframes guest-name-blink{0%,100%{color:#080808;opacity:1}50%{color:#ffdf00;opacity:.8}}.guest-directory{background:#fff}.guest-name-list{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 24px}.guest-name-list a{display:block;padding:12px 16px;border:1px solid var(--line);border-radius:8px;font-size:1rem;text-decoration:none;line-height:1.5}.guest-name-list a:hover{background:#eee}.guest-name-list a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}@media(max-width:700px){.guest-name-list{grid-template-columns:1fr;gap:8px}.guest-directory-button{font-size:14px}}

/* Only ordinary text links blink. Navigation, guest names, places and footer links stay still. */
main a:not(.button):not(.gallery-feature):not(.tournament-photo):not(.guest-photo):not(.video-poster):not(.weather-symbol):not(.world-location):not(.guest-name-list a){animation:guest-name-blink 2s ease-in-out infinite}
footer a,.world-location,.guest-name-list a,.text-link{color:#171717;animation:none!important}
@media(prefers-reduced-motion:reduce){main a:not(.button):not(.gallery-feature):not(.tournament-photo):not(.guest-photo):not(.video-poster):not(.weather-symbol):not(.world-location):not(.guest-name-list a){animation:none}}

.guest-name-list li{display:flex;min-width:0}.guest-name-list a{width:100%;height:100%}.guest-name{display:block;font-weight:600}.guest-role{display:block;margin-top:6px;font-size:.875rem;line-height:1.5;color:#595959;overflow-wrap:anywhere}
@font-face{font-family:GuestSignature;src:url('guest-signature.otf') format('opentype');font-display:swap}
.signature-photo,.signature-viewer-photo{position:relative;display:block}
.signature-photo img{aspect-ratio:auto!important;object-fit:contain!important;height:auto!important}
.photo-signature-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.photo-signature{position:absolute;transform:translate(-50%,-100%);font-family:GuestSignature,cursive;font-weight:500;color:#fff;white-space:nowrap;line-height:1.15;text-shadow:0 2px 3px #000,1px 0 2px #000,-1px 0 2px #000;padding:3px 5px}
.signature-viewer-photo{flex:none;min-height:0;align-self:center;max-width:100%}
.signature-viewer-photo #viewer-photo{width:auto;max-width:100%;max-height:calc(92dvh - 180px)}

.tc-irchel-photo .tournament-photo img{aspect-ratio:auto;object-fit:contain;height:auto}
/* Pickleball friends around the world. */
.world-friends{background:#f5f5f5}.world-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.world-place{min-width:0;background:#fff;border-radius:14px;overflow:hidden}.world-place figure{margin:0}.world-place .world-main img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 28%}.world-photo-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.world-thumbnails{display:flex;gap:10px;padding:12px 20px 0}.world-thumb{width:64px}.world-place .world-thumb img{width:64px;height:52px;aspect-ratio:auto;object-fit:cover;object-position:50% 28%;border-radius:5px}.world-info{padding:20px}.world-info h3{font-size:1.3rem;margin:0 0 8px}.world-info p{font-size:.9rem;color:var(--muted);margin:0 0 12px}.world-location{font-size:.9rem;display:inline-block;min-height:44px;padding:10px 0;border-bottom:2px solid var(--accent)}.world-history{padding:14px 20px;background:var(--accent);color:#171717;font-weight:700}.world-history small{display:block;font-size:.8rem;font-weight:400;margin-top:4px}.world-flag{display:inline-block;transform-origin:12% 60%;animation:world-flutter 2.8s ease-in-out infinite}.world-place:nth-child(even) .world-flag{animation-delay:-1.1s}@keyframes world-flutter{0%,100%{transform:perspective(100px) rotateY(-12deg) rotateZ(-3deg) skewY(2deg)}35%{transform:perspective(100px) rotateY(17deg) rotateZ(3deg) skewY(-3deg)}65%{transform:perspective(100px) rotateY(-5deg) rotateZ(-1deg) skewY(3deg)}}@media(max-width:650px){.world-grid{grid-template-columns:1fr;gap:22px}}@media(prefers-reduced-motion:reduce){.world-flag{animation:none}}

.world-place .world-main img[src="world-friends/arcachon-neu.jpeg"]{height:auto;aspect-ratio:auto;object-fit:contain}



#aufbau .history-videos video.construction-video,#aufbau .history-videos video.construction-video.video-started{object-fit:cover;object-position:center}

/* Tighter spacing between sections and gallery groups. */
main .section{padding-top:54px;padding-bottom:54px}
main .section h2{margin-bottom:22px}
main .section .eyebrow{margin-bottom:16px}
.history-gallery,.guest-gallery{margin-top:24px;row-gap:24px}
.history-videos{margin-top:28px}
.em-group>h3{margin-top:24px}
.em-group+.em-group{margin-top:28px;padding-top:12px}
.gallery-feature-grid{margin-top:24px;margin-bottom:24px}
.impact-grid{margin-top:28px}
.hall-numbers{margin-bottom:28px}
@media(max-width:600px){
 main .section{padding-top:36px;padding-bottom:36px}
 main .section h2{margin-bottom:18px}
 .history-gallery,.guest-gallery{margin-top:20px;row-gap:22px}
 .history-videos{margin-top:24px}
 .em-group+.em-group{margin-top:24px}
}

/* Video cards match the photograph grid and open in a larger player. */
.history-videos,#firmen-schulen .history-videos{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;column-gap:2rem}
.history-videos .video-poster,.video-poster,.guest-reel .video-poster,.history-videos video,.history-videos iframe{aspect-ratio:4/3}
.video-poster img,.guest-reel .video-poster img{height:100%;object-fit:cover;object-position:center}
.video-preview{display:block;width:100%;padding:0;border:0;cursor:pointer;font:inherit}
#medien>figure{max-width:calc((100% - 4rem)/3)!important}
#video-viewer{width:min(1100px,94vw);max-height:94dvh;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);overflow:auto}
#video-viewer::backdrop{background:#000c}
.video-viewer-stage{margin-top:12px}
.video-viewer-stage video{display:block;width:100%;height:auto;max-height:75dvh;object-fit:contain;background:transparent}
.video-viewer-stage iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.video-viewer-title{margin:12px 0 0;font-size:16px}
@media(max-width:900px){.history-videos,#firmen-schulen .history-videos{grid-template-columns:repeat(2,minmax(0,1fr))}#medien>figure{max-width:calc((100% - 2rem)/2)!important}}
@media(max-width:600px){.history-videos,#firmen-schulen .history-videos{grid-template-columns:1fr}#medien>figure{max-width:100%!important}}

.header-metrics{display:flex;flex-direction:column;align-items:center;gap:4px}
.weather-symbol{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:28px;line-height:1;text-decoration:none}
.weather-symbol[hidden]{display:none}
.weather-credit{width:100%;margin:0;font-size:12px;color:var(--muted)}

.weather-symbol{gap:6px;font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}

.story-transition{margin:0 0 30px;width:100%}.story-transition img{display:block;width:100%;height:auto;border-radius:12px}

.story-courts{margin:50px 0 30px;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.story-court-slot>svg{display:block;width:100%;height:auto;aspect-ratio:0.68;overflow:visible}@media(max-width:600px){.story-courts{margin:36px 0 30px;gap:14px}}

.story-court-slot{position:relative;aspect-ratio:0.68;min-width:0}.story-court-slot>svg{filter:saturate(.55) brightness(1.04)}.story-courts .pickleball-court{position:absolute;width:62.1%;aspect-ratio:0.647;right:0;top:19.2%}

.court-ball-tennis{animation:tennis-rally 5.2s linear infinite}.court-ball-pickleball{animation:pickleball-rally 6s linear infinite}.court-athlete{transform-box:fill-box;transform-origin:center;animation:athlete-ready 5.2s ease-in-out infinite}.court-athlete-pickleball{animation-duration:6s}.court-athlete-opponent{animation-delay:-2.6s}.court-athlete-pickleball.court-athlete-opponent{animation-delay:-3s}
/* In the overhead court view, a brief contact ring and ball compression mark each bounce. */
.court-bounce{opacity:0;fill:none;stroke:#effa71;stroke-width:3;pointer-events:none}.court-bounce-near{animation:tennis-bounce-near 5.2s linear infinite}.court-bounce-far{animation:tennis-bounce-far 5.2s linear infinite}
@keyframes tennis-rally{0%,100%{transform:translate(520px,185px) scale(1)}17%{transform:translate(538px,455px) scale(1.16)}29%{transform:translate(552px,620px) scale(.65)}34%{transform:translate(558px,650px) scale(1.15)}50%{transform:translate(580px,755px) scale(1)}67%{transform:translate(566px,465px) scale(1.16)}79%{transform:translate(550px,330px) scale(.65)}84%{transform:translate(542px,305px) scale(1.15)}}
@keyframes tennis-bounce-near{0%,27%,32%,100%{opacity:0}29%{opacity:.9}}
@keyframes tennis-bounce-far{0%,77%,82%,100%{opacity:0}79%{opacity:.9}}
@keyframes pickleball-rally{0%,100%{transform:translate(1140px,250px) scale(1)}20%{transform:translate(1160px,505px) scale(1.15)}33%{transform:translate(1180px,650px) scale(.7)}38%{transform:translate(1185px,680px) scale(1.12)}50%{transform:translate(1190px,810px) scale(1)}70%{transform:translate(1160px,500px) scale(1.15)}82%{transform:translate(1145px,340px) scale(.7)}87%{transform:translate(1140px,305px) scale(1.12)}}
@keyframes athlete-ready{0%,46%,56%,100%{transform:translateX(0) rotate(0deg)}49%,52%{transform:translateX(6px) rotate(-10deg)}}
.court-motion-toggle{display:block;margin:14px 0 0;padding:7px 12px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;cursor:pointer}.court-motion-paused .court-ball,.court-motion-paused .court-athlete,.court-motion-paused .court-bounce{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.court-ball,.court-athlete,.court-bounce{animation-play-state:paused}.court-motion-toggle{display:none}}
.court-player-name{fill:#171717;stroke:none;font:normal 23px Arial,Helvetica,sans-serif;pointer-events:none}.court-game-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;align-items:center}.court-game-controls button{border:1px solid var(--ink);border-radius:8px;background:#172f5c;color:#fff;padding:9px 14px;font:700 14px Arial,Helvetica,sans-serif;cursor:pointer}.court-game-controls button[aria-pressed="true"]{background:#d4f852;color:#101820}.court-game-controls p{width:100%;font-size:14px;margin:2px 0 0}.story-courts[data-playing="tennis"] [data-game-ball="tennis"],.story-courts[data-playing="tennis"] .court-athlete-tennis,.story-courts[data-playing="pickleball"] [data-game-ball="pickleball"],.story-courts[data-playing="pickleball"] .court-athlete-pickleball{animation:none}.story-courts[data-playing="tennis"] [data-game-court="tennis"] svg,.story-courts[data-playing="pickleball"] [data-game-court="pickleball"] svg{touch-action:none}
.court-surround{fill:#999fa2;pointer-events:none}.vector-court-lines{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:square;vector-effect:non-scaling-stroke;pointer-events:none}.kitchen-mark{fill:#fff2cd;text-anchor:middle;font:italic 900 25px Arial,Helvetica,sans-serif;letter-spacing:2px;pointer-events:none}.kitchen-mark-sub{font-size:14px;letter-spacing:4px}
.story-courts[data-playing="tennis"] .court-bounce-near,.story-courts[data-playing="tennis"] .court-bounce-far{display:none}
.pickle-kitchen{fill:#93e4fa;fill-opacity:.55;pointer-events:none}
.court-bounce-pickleball,.court-bounce-game{opacity:0;fill:none;stroke:#faff97;stroke-width:4;pointer-events:none}.court-bounce-pickleball.is-bouncing,.court-bounce-game.is-bouncing{animation:pickle-bounce-pulse .38s ease-out}
@keyframes pickle-bounce-pulse{0%{opacity:.9;r:7}100%{opacity:0;r:21}}
@media(prefers-reduced-motion:reduce){.court-bounce-pickleball.is-bouncing,.court-bounce-game.is-bouncing{animation:none}}

/* Uniform company and school gallery: edge-to-edge rounded landscape crops. */
#firmen-schulen .guest-gallery .tournament-photo{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:transparent}
#firmen-schulen .guest-gallery .tournament-photo img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:12px}
#firmen-schulen .guest-gallery img[src="firmen-schulen-1.jpeg"]{object-position:center top}

/* Temperature, Pickleball clock and lunar phase share a compact header row. */
.header-status{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:20px;line-height:1.2;max-width:340px}
.header-status .weather-symbol,.moon-phase{font-size:20px;white-space:nowrap}
.pickleball-clock{display:block;width:36px;height:36px;flex:0 0 36px}
.moon-phase{display:inline-flex;gap:6px;align-items:center}
@media(max-width:700px){.header-status{max-width:200px;gap:8px}.brand-with-visits{min-width:0;flex-shrink:1}}

.header-date{font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}

/* Align the introduction with the news heading on the two-column start page. */
.hero{align-items:start}
.hero-copy{padding-top:21px}
@media(max-width:850px){.hero-copy{padding-top:17px}}
@media(max-width:600px){.hero-copy{padding-top:0}}

/* Kang’s guest photograph uses the full image, including both heads. */
.kang-guest .guest-photo img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center top}

/* Worldwide friends use the same photo width as the other galleries. */
.world-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;align-items:start}
.world-place .world-main img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:12px}
.world-place .world-main .tournament-photo{border-radius:12px;overflow:hidden}
@media(max-width:900px){.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.world-grid{grid-template-columns:1fr;gap:22px}}

/* The community story fills the left side of the Grüze section. */
.hall-bottom{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:7%;align-items:stretch}
.hall-purpose{min-width:0}
.hall-purpose .eyebrow{margin-bottom:14px}
.hall-purpose h2{font-size:clamp(32px,3.3vw,46px);letter-spacing:-1.8px;margin-bottom:22px}
.hall-purpose .impact-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:0}
.hall-purpose .impact-grid article{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:14px;border-top:1px solid #c8c8c8;padding:16px 0}
.hall-purpose .impact-grid article>span{grid-row:1/3;font-size:14px;font-weight:700;color:var(--gold)}
.hall-purpose .impact-grid h3{font-size:19px;line-height:1.3;letter-spacing:-.3px;margin:0 0 5px}
.hall-purpose .impact-grid p{grid-column:2;color:#4d5660;font-size:14px;line-height:1.5;margin:0}
.hall-card{display:flex;flex-direction:column;align-items:flex-start}
.hall-card .text-link + .eyebrow{margin-top:24px}
.hall-card .source{width:100%;margin:auto 0 0;padding-top:20px;border-top:1px solid #d9d9d9;color:#58616b;font-size:13px;line-height:1.55}
@media(max-width:600px){.hall-bottom{grid-template-columns:1fr;gap:28px}.hall-purpose h2{font-size:36px}.hall-card .source{margin-top:24px}}

/* Match the enlarged player to the video's own proportions. */
#video-viewer:has(video){width:fit-content;max-width:94vw}
.video-viewer-stage video{width:auto;height:auto;max-width:calc(94vw - 34px);max-height:75dvh;margin-inline:auto;aspect-ratio:auto;object-fit:contain;background:transparent}

.dieter-photo-info{position:absolute;box-sizing:border-box;padding:.4em .5em;border-radius:8px;background:rgba(12,15,20,.73);color:#fff;font-family:Arial,sans-serif;text-align:center;line-height:1.2}
.dieter-photo-info>strong{display:block;font-size:1.16em;white-space:nowrap}.dieter-photo-info>b{display:block;margin:.2em 0;font-size:.9em}.dieter-photo-info>span{display:block;font-size:.87em;line-height:1.25}.dieter-photo-info>span+span{margin-top:.25em}

/* Monday registration fills the space beside the logo and metrics. */
header .monday-signup{flex:1 1 430px;max-width:640px;min-width:0;padding:16px 18px;background:#fafaf7;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:8px;order:1}
header nav{order:3;flex:1 0 100%;justify-content:flex-end}
header .language-switch{order:2}
.monday-heading{display:flex;gap:10px;align-items:center;justify-content:space-between}
.monday-heading h2{font-size:20px;letter-spacing:0;line-height:1.25;margin:0;font-weight:700}.monday-heading h2 span{white-space:nowrap}
.monday-count{background:var(--accent);color:#202020;border-radius:4px;padding:3px 9px;font-size:14px;font-weight:700;white-space:nowrap}
.monday-date,.monday-status,.monday-note,.monday-feedback{font-size:14px;line-height:1.35;margin:8px 0;color:var(--muted)}
.monday-seats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0}
.monday-seat{background:white;border:1px solid #d9ded3;border-radius:5px;padding:7px 9px;min-width:0;overflow-wrap:anywhere;font-size:14px;line-height:1.35}.monday-seat small{display:block;font-size:12px;color:var(--muted);margin-bottom:2px}.monday-seat.is-free{border-style:dashed;background:transparent;color:var(--muted)}
.monday-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}.monday-form label{font-size:14px;line-height:1.35;min-width:0}.monday-form input{display:block;width:100%;margin-top:4px;min-height:42px;padding:8px;border:1px solid #bbc2bb;border-radius:5px;background:#fff;color:#202020;font:16px Arial,sans-serif;min-width:0}.monday-form button{grid-column:1/-1;justify-self:end;border:0;border-radius:5px;min-height:42px;padding:9px 18px;background:var(--accent);color:#202020;font:700 14px Arial,sans-serif;cursor:pointer}.monday-form button:disabled{opacity:.55;cursor:default}.monday-note{font-size:12px;margin-bottom:0}.monday-feedback:empty{display:none}.monday-feedback{color:var(--ink)}
@media(max-width:1100px){header .monday-signup{order:2;flex-basis:100%;max-width:none}header .language-switch{order:1;margin-left:auto}header nav{justify-content:flex-start}}
@media(max-width:600px){header .monday-signup{padding:14px}.monday-heading h2{font-size:18px}.monday-seats{grid-template-columns:repeat(2,minmax(0,1fr))}.monday-form{grid-template-columns:1fr 1fr}.monday-form label:last-of-type{grid-column:1/-1}.monday-form button{justify-self:stretch}.brand-with-visits{max-width:100%}.header-status{max-width:calc(89vw - 155px)}}
.monday-seat .monday-seat-cost{font-size:12px;margin:4px 0 0;color:var(--gold)}
.monday-costs{grid-column:1/-1;display:grid;gap:6px;background:#eeeeea;border-radius:5px;padding:10px 12px;font-size:14px;line-height:1.35}.monday-costs>span{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.monday-costs strong{white-space:nowrap;font-variant-numeric:tabular-nums}.monday-costs small{font-size:12px;color:var(--muted)}

/* Compact registration aligns with the news column and opens on demand. */
body>header:has(.monday-signup){display:grid;grid-template-columns:1.1fr 1fr;column-gap:5%;row-gap:18px;align-items:start}
body>header:has(.monday-signup)>.brand-with-visits{grid-column:1;min-width:0;align-items:center;gap:18px;flex-shrink:1}
body>header:has(.monday-signup)>.monday-signup{grid-column:2;grid-row:1;max-width:none;width:100%;min-height:242px;align-self:start;padding:12px 16px;order:initial}
body>header:has(.monday-signup)>nav{grid-column:1/-1;grid-row:2;order:initial;justify-content:flex-end}
.header-metrics>.language-switch{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 6px;margin:0 0 8px;order:initial;align-self:center}
.header-metrics .language-caption{flex-basis:100%;text-align:center;font-size:14px;line-height:1.3;color:var(--muted)}
.header-metrics>.language-switch a{font-size:14px;padding:5px 10px}
.monday-summary{display:block;cursor:pointer;list-style:none}.monday-summary::-webkit-details-marker{display:none}.monday-summary::marker{content:''}
.monday-summary .monday-heading h2{font-size:18px;line-height:1.25}.monday-summary .monday-date{margin:5px 0 8px}
.monday-summary .monday-seats{margin:8px 0;gap:6px}.monday-summary .monday-seat{padding:4px 8px;line-height:1.2}.monday-summary .monday-seat small{margin-bottom:1px}.monday-summary .monday-seat-cost{margin-top:3px}
.monday-summary .monday-status{margin:7px 0;font-size:14px}
.monday-toggle{display:block;font-size:14px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.monday-close-label{display:none}.monday-signup[open] .monday-open-label{display:none}.monday-signup[open] .monday-close-label{display:inline}.monday-expanded{padding-top:14px;margin-top:12px;border-top:1px solid var(--line)}
@media(max-width:1000px){body>header:has(.monday-signup){grid-template-columns:1fr;gap:16px}body>header:has(.monday-signup)>.brand-with-visits{grid-column:1;grid-row:1}body>header:has(.monday-signup)>.monday-signup{grid-column:1;grid-row:2;min-height:0}body>header:has(.monday-signup)>nav{grid-column:1;grid-row:3;justify-content:flex-start}}
@media(max-width:600px){.monday-summary .monday-heading h2{font-size:18px}.header-metrics>.language-switch a{min-height:38px;padding:7px 9px}.header-metrics .language-caption{font-size:14px}}
body>header:has(.monday-signup){max-width:1500px;margin-inline:auto}
body>header:has(.monday-signup) .header-status{max-width:min(340px,calc(100%))}
body>header:has(.monday-signup) .header-metrics{min-width:0;flex:1}
.monday-cancel{display:block;margin-top:6px;min-height:36px;padding:6px 8px;border:1px solid #a4aaa1;border-radius:4px;background:#fff;color:var(--ink);font:14px Arial,sans-serif;cursor:pointer;width:100%;white-space:normal}.monday-cancel:disabled{opacity:.5;cursor:default}@media(pointer:coarse){.monday-cancel{min-height:44px}}
/* Outer header edges and columns follow the content directly below. */
@media(min-width:1001px){body>header:has(.monday-signup){grid-template-columns:1.05fr 1fr}body>header:has(.monday-signup)>.monday-signup{justify-self:end}body>header:has(.monday-signup)>.brand-with-visits{justify-self:start;width:100%}}
body>header:has(.monday-signup) .brand-logo{transform:translateX(-5px)}
.monday-invitation{font-size:14px;line-height:1.3;margin:5px 0;color:var(--ink)}
.monday-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border-radius:5px;background:#ffdf00;color:#080808;text-decoration:none;animation:monday-yellow-black 2.4s ease-in-out infinite}
@keyframes monday-yellow-black{0%,100%{background:#ffdf00;color:#080808}50%{background:#080808;color:#ffdf00}}
@media(prefers-reduced-motion:reduce){.monday-toggle{animation:none}}
/* Visible outward adjustment within the existing page gutters. */
@media(min-width:701px){body>header:has(.monday-signup) .brand-logo{transform:translateX(-29px)}body>header:has(.monday-signup)>.monday-signup{transform:translateX(24px)}}
@media(max-width:700px){body>header:has(.monday-signup) .brand-logo{transform:translateX(-17px)}body>header:has(.monday-signup)>.monday-signup{transform:translateX(12px)}}
.monday-info-hint{font-size:14px;line-height:1.35;margin:7px 0 10px;color:var(--muted)}.monday-signup[open] .monday-info-hint{display:none}

/* Desktop header uses the same gutters and columns as the introduction.
   Override the viewport-based wide-screen gutter inside the centred header. */
@media(min-width:1001px){
  body>header:has(.monday-signup){padding-left:5.5%;padding-right:5.5%;grid-template-columns:1.05fr 1fr;column-gap:4%}
  body>header:has(.monday-signup) .brand-logo{transform:translateX(-5px)}
  body>header:has(.monday-signup)>.monday-signup{transform:none}
}

/* Give the crest more presence on desktop while keeping its proportions. */
@media(min-width:1001px){
 body>header:has(.monday-signup) .brand-logo img{width:190px;height:auto}
 body>header:has(.monday-signup) .brand-logo{transform:translateX(-6px)}
}

/* A slow guest-name ribbon connects the header with the full directory. */
header nav .guest-directory-button{animation:none;color:var(--ink)}
.guest-ticker{max-width:1500px;margin-inline:auto;padding:10px 5.5%;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:#fff}
.guest-ticker-link{display:block;flex:1;min-width:0;overflow:hidden;text-decoration:none;color:var(--ink);padding-block:8px;border-radius:3px}
.guest-ticker-track{display:flex;width:max-content;animation:guest-ticker-scroll 120s linear infinite}
.guest-ticker-group{display:flex;align-items:center;flex-shrink:0;padding-right:32px;gap:32px}
.guest-ticker-name{display:inline-flex;align-items:center;gap:32px;font-size:15px;line-height:1.5;white-space:nowrap}
.guest-ticker-name::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}
.guest-ticker-pause{flex-shrink:0;padding:8px 12px;min-height:40px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:14px Arial,Helvetica,sans-serif;cursor:pointer}
.guest-ticker:not(.has-returned):has(:focus-visible) .guest-ticker-track,.guest-ticker.is-paused .guest-ticker-track,.guest-ticker.is-touching .guest-ticker-track{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){.guest-ticker:not(.has-returned):hover .guest-ticker-track{animation-play-state:paused}}
@keyframes guest-ticker-scroll{to{transform:translateX(-50%)}}
@media(max-width:600px){.guest-ticker{padding-inline:6%;gap:10px}.guest-ticker-name{font-size:14px}.guest-ticker-pause{min-height:44px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.guest-ticker-track{animation:none;width:auto}.guest-ticker-group{flex-wrap:wrap;gap:8px 20px;padding:0}.guest-ticker-group[aria-hidden="true"],.guest-ticker-pause{display:none}.guest-ticker-name{gap:20px;white-space:normal}}

/* Guest photos are opened deliberately from the directory or gallery disclosure. */
.guest-directory-hint{font-size:16px;color:var(--muted);margin:0 0 22px}
.guest-gallery-disclosure{margin-top:22px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px 18px}
.guest-gallery-disclosure>summary{cursor:pointer;font-size:16px;font-weight:600;min-height:32px;line-height:1.5}
.guest-gallery-disclosure[open]>summary{padding-bottom:8px}
#viewer-guest-info{font-size:14px;line-height:1.5;color:var(--ink);padding:10px 4px}
#viewer-guest-info[hidden]{display:none}
#viewer-guest-info strong{display:block;font-size:16px;margin-bottom:5px}
#viewer-guest-info .guest-role{margin-top:0}

/* Two compact lines: the guest name and their principal role. */
.guest-ticker-item{display:inline-flex;align-items:center;gap:32px;flex-shrink:0}
.guest-ticker-item::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}
.guest-ticker-labels{display:grid;gap:2px}
.guest-ticker-name{display:block;font-weight:600}
.guest-ticker-name::after{display:none}
.guest-ticker-role{display:block;font-size:14px;line-height:1.4;color:var(--muted);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.guest-ticker-item{gap:20px;min-width:0;flex-shrink:1}.guest-ticker-role{white-space:normal}}

/* Every ribbon role sits below its name; galleries have no enclosing frame. */
.guest-ticker-labels{display:grid;grid-template-columns:1fr;gap:2px;text-align:left}
.guest-ticker-name,.guest-ticker-role{display:block;grid-column:1}
.guest-gallery-disclosure{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}
.guest-photo,.tournament-photo,.signature-photo,.guest-gallery figure{border:0;background:transparent;box-shadow:none}
#guest-viewer{border:0;box-shadow:none}

/* The guest ribbon is introduced by a clear label on its left. */
.guest-ticker-heading{flex:0 0 auto;padding:4px 18px 4px 0;border-right:1px solid var(--line);line-height:1.2}
.guest-ticker-heading a{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--ink);white-space:nowrap}
.guest-ticker-heading strong{font-size:15px;font-weight:700}
.guest-ticker-heading span{font-size:13px;color:var(--muted)}
@media(max-width:600px){.guest-ticker-heading{padding-right:10px}.guest-ticker-heading strong{font-size:14px}.guest-ticker-heading span{font-size:12px}}

/* Compact YouTube gateway below the visit counter. */
.pickleball-watch{width:100%;max-width:340px;margin:12px 0 0;padding:12px 14px;text-align:left;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:10px;background:#fff;color:var(--ink);box-shadow:0 3px 12px #0d204808}
.pickleball-watch-title{display:flex;align-items:center;gap:8px;font-size:16px;line-height:1.35}.pickleball-watch-title>span{color:#c62828;font-size:18px}
.pickleball-watch p{margin:5px 0;font-size:14px;line-height:1.45}.pickleball-watch .pickleball-watch-caption{font-weight:700;color:var(--gold)}
.pickleball-watch-links{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:9px;align-items:center}.pickleball-watch-links a{font-size:14px;line-height:1.4;padding:7px 0;text-underline-offset:3px}.pickleball-watch-links .pickleball-watch-primary{padding:8px 12px;border-radius:6px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700}.pickleball-watch-links a:hover{color:var(--gold)}.pickleball-watch-links .pickleball-watch-primary:hover{background:var(--gold);color:#fff}.pickleball-watch-links a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:600px){.pickleball-watch{padding:10px;max-width:100%}.pickleball-watch-links{align-items:stretch;flex-direction:column}.pickleball-watch-links a{min-height:40px;display:flex;align-items:center}}

/* EPF watermark stays behind readable text and interactive links. */
.pickleball-watch{position:relative;isolation:isolate;overflow:hidden}
.pickleball-watch::before{content:"";position:absolute;inset:8px;background:url("epf-logo.png") center / contain no-repeat;opacity:.08;pointer-events:none;z-index:-1}

/* Align the stream panel and Monday panel with the header navigation. */
header nav .association-link{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;margin-right:auto;line-height:1.4;text-decoration:underline;text-underline-offset:3px;white-space:normal}
@media(min-width:1001px){
 body>header:has(.monday-signup){align-items:stretch}
 body>header:has(.monday-signup)>.brand-with-visits{align-items:stretch}
 body>header:has(.monday-signup) .brand-logo{align-self:flex-start;transform:none}
 body>header:has(.monday-signup) .brand-logo img{width:210px;height:auto}
 body>header:has(.monday-signup) .header-metrics{align-self:stretch}
 body>header:has(.monday-signup) .header-metrics>.language-switch{margin-top:0}
 body>header:has(.monday-signup) .pickleball-watch{margin-top:auto;max-width:none}
 body>header:has(.monday-signup)>.monday-signup{align-self:stretch}
 body>header:has(.monday-signup)>nav{align-items:center}
}
@media(min-width:1201px){header nav .association-link{margin-left:228px}}
@media(max-width:1000px){header nav .association-link{flex-basis:100%;margin:0 0 4px}body>header:has(.monday-signup) .brand-logo{align-self:flex-start}body>header:has(.monday-signup)>.brand-with-visits{align-items:flex-start}}
@media(min-width:601px) and (max-width:1000px){body>header:has(.monday-signup) .brand-logo img{width:190px}}

/* National and European federation links share one row. */
header nav .association-links{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;margin-right:auto;min-width:0}
header nav .association-links .association-link{margin:0;flex-basis:auto}
@media(max-width:1000px){header nav .association-links{flex-basis:100%;margin-bottom:4px}}

/* Real flag images render consistently across computers and phones. */
.country-flag{display:inline-block!important;width:24px!important;height:16px!important;min-width:24px;max-width:none!important;object-fit:contain!important;vertical-align:middle;border-radius:1px!important;box-shadow:0 0 0 1px #00000016;background:transparent!important}
.world-flag{display:inline-flex;align-items:center;gap:5px;vertical-align:middle}
.world-flag .country-flag{width:27px!important;height:18px!important;min-width:27px}

/* Bright linked EPF emblem in the stream panel's upper-right corner. */
.pickleball-watch-epf{position:absolute;top:9px;right:10px;display:flex;align-items:center;justify-content:center;width:44px;height:46px;z-index:1;line-height:0;border-radius:4px;background:#fff;text-decoration:none}
.pickleball-watch-epf img{display:block;width:40px;height:42px;object-fit:contain;opacity:1}
.pickleball-watch-epf:hover{box-shadow:0 0 0 2px var(--gold)}.pickleball-watch-epf:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.pickleball-watch-title,.pickleball-watch-caption{padding-right:52px}

/* The visible crest follows the shared top and bottom of the desktop panels. */
@media(min-width:1200px){
 body>header:has(.monday-signup)>.brand-with-visits{align-items:stretch;gap:18px}
 body>header:has(.monday-signup) .brand-logo{position:relative;align-self:stretch;flex:0 0 220px;width:220px;min-height:0;transform:none}
 body>header:has(.monday-signup) .brand-logo img{position:absolute;top:0;right:0;height:100%;width:auto;max-width:none;object-fit:contain}
 body>header:has(.monday-signup) .header-metrics{align-self:stretch}
 body>header:has(.monday-signup) .pickleball-watch{margin-top:auto}
 body>header:has(.monday-signup)>.monday-signup{align-self:stretch}
}

/* Selected scrolling guest and separate media link. */
.guest-name-list li:has(.guest-media-link){flex-direction:column;gap:8px}.guest-name-list .guest-media-link{height:auto;font-size:.875rem;text-decoration:underline}.guest-name-list li.guest-selected>a{background:#ffe36b;color:#171717;border-color:#b88600;box-shadow:0 0 0 3px #ffe36b}.guest-name-list li.guest-selected .guest-role{color:#343020}.guest-ticker-item{color:inherit;text-decoration:none}.guest-ticker-item:focus-visible{outline:3px solid #e0ad25;outline-offset:4px}.guest-ticker-item:hover .guest-ticker-name{text-decoration:underline}#viewer-guest-info .guest-media-link{display:block;margin-top:12px}

/* Social symbols sit beside the name and open independently of the guest card. */
.guest-ticker-name-row{display:flex;align-items:center;gap:.45em;white-space:nowrap;grid-column:1}
.guest-ticker-name-link{color:inherit;text-decoration:none;font-size:inherit}
.guest-ticker-name-link:hover{text-decoration:underline}
.guest-ticker-socials{display:inline-flex;align-items:center;gap:2px}
.guest-social-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--ink);border-radius:4px}
.guest-social-icon svg{width:1em;height:1em;flex:none}
.guest-social-icon:hover{color:#715010;background:#ffe36b}
.guest-social-icon:focus-visible,.guest-ticker-name-link:focus-visible{outline:3px solid #d49b00;outline-offset:2px}

.monday-deadline{background:#fff5b3;border:1px solid #ffdf00;border-radius:5px;padding:9px 11px;font-size:14px;line-height:1.4;margin:8px 0;color:var(--ink)}
.monday-form input:disabled{background:#ececec;color:#666;cursor:not-allowed}

.photo-signature-layer .elia-photo-inset{position:absolute;right:2%;top:2%;width:25%;height:38%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center 20%;border:0;border-radius:0;box-shadow:0 2px 8px #0005;pointer-events:none}

.nasri-photo{position:relative}.nasri-photo .guest-photo img{height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}.nasri-name{position:absolute;left:63%;top:16%;transform:translate(-50%,-100%);font-size:clamp(14px,1.5vw,22px);white-space:nowrap;z-index:3;pointer-events:auto}

.nasri-name{left:65%;top:17%;font-size:clamp(20px,2.5vw,34px)}.nasri-tensaflex{position:absolute;left:6%;bottom:3%;width:40%;z-index:4;pointer-events:auto;display:block;transform:rotate(-7deg);filter:drop-shadow(0 1px 2px #ffffff88)}.nasri-tensaflex img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:0!important}.photo-signature-layer .nasri-tensaflex{pointer-events:auto}

.nasri-name{left:76%;text-decoration:none;pointer-events:none}

/* The Swiss federation flag has no frame or side lines. */
header nav .association-link .country-flag[src="flags/ch.svg"]{width:16px!important;height:16px!important;min-width:16px;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important}

/* Compact Antalya announcement and approved entry list. */
.latest-news-compact .news-top{padding:18px 22px 0}
.latest-news-compact .news-body{padding:14px 22px 16px}
.latest-news-compact .news-body h2{font-size:clamp(1.4rem,2vw,1.8rem);line-height:1.15;margin:0 0 7px}
.latest-news-compact .news-place{margin:0 0 14px;font-size:.9rem}
.latest-news-compact .news-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}
.latest-news-compact .news-facts>div{display:block;padding:0;border:0}
.latest-news-compact .news-facts dt{font-size:.875rem;margin-bottom:2px}
.latest-news-compact .news-facts dd{margin:0;font-size:.9rem}
.latest-news-compact .news-schedule-note{font-size:.8rem;line-height:1.4;margin:12px 0}
.latest-news-compact .news-body>.button{padding:9px 14px;font-size:.875rem}
.news-entry-list{margin:0;padding:0 12px 16px}
.news-entry-list>a{display:block;text-decoration:none;color:inherit}
.news-entry-list img{display:block;width:100%;height:auto;border:0;border-radius:0;object-fit:contain}
.news-list-enlarge{display:table;margin:12px auto 0;padding:11px 16px;background:var(--accent,#ffdf00);color:#202020;border-radius:8px;font-size:.875rem}

.latest-news-compact .news-intro{font-size:.9rem;line-height:1.45;margin:0 0 14px}

/* Keep the whole logo inside its column, including name and paddle. */
@media(min-width:1200px){
 body>header:has(.monday-signup) .brand-logo img{left:0;right:auto;top:0;width:100%;max-width:100%;height:100%;object-fit:contain;object-position:center top}
}

.header-location-form{margin:10px 0 5px;max-width:100%;font-size:.875rem}.header-location-form label{display:block;margin-bottom:4px}.location-input-row{display:flex;gap:6px;flex-wrap:wrap}.location-input-row input{flex:1 1 130px;width:130px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:1rem;background:#fff;color:var(--ink)}.location-input-row button{padding:8px 10px;background:var(--accent);border:0;border-radius:5px;color:var(--ink);font:inherit;min-height:40px}.location-feedback{display:block;font-size:.8rem;line-height:1.4;margin-top:4px}.location-feedback:empty{display:none}.header-local-time{display:block;font-size:.9rem;margin:6px 0}.moon-phase{white-space:normal}

/* Location label sits left of a compact field below the language controls. */
.header-location-form{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 7px;max-width:270px;margin:8px 0 4px}
.header-location-form label{margin:0;white-space:nowrap}
.header-location-form .location-input-row{flex-wrap:nowrap;min-width:0;gap:5px}
.header-location-form input{flex:1 1 100px;width:100px;padding:6px 7px}
.header-location-form button{flex:0 0 auto;padding:6px 8px;min-height:36px;font-size:.8rem}
.header-location-form .location-feedback{grid-column:1/-1;margin:0}

/* Compact header information, a larger complete logo, and personal match links. */
body>header:has(.monday-signup){row-gap:12px}
.header-metrics>.language-switch{margin-bottom:4px}
.header-location-form{margin-top:4px;margin-bottom:2px}
.header-local-time{margin:3px 0}
.header-metrics .header-status{gap:6px}
.header-metrics .visit-counter{margin-top:5px;font-size:.875rem}
body>header:has(.monday-signup) .pickleball-watch{margin-top:8px;padding:10px 12px}
.pickleball-watch p{margin:4px 0;line-height:1.35}
.pickleball-watch-links{gap:5px 10px;margin-top:6px}
.pickleball-watch-my-matches{flex-basis:100%;width:100%;display:block}
#rom-2025-videos{scroll-margin-top:24px}
@media(min-width:1200px){
 body>header:has(.monday-signup)>.brand-with-visits{gap:12px;align-items:flex-start}
 body>header:has(.monday-signup) .brand-logo{position:relative;align-self:flex-start;flex:0 0 clamp(240px,22vw,330px);width:clamp(240px,22vw,330px);transform:none}
 body>header:has(.monday-signup) .brand-logo img{position:static;width:100%;height:auto;max-width:100%;object-fit:contain}
 body>header:has(.monday-signup) .header-metrics{align-self:flex-start}
}

.header-location-form{max-width:100%}.header-location-form input::placeholder{color:var(--muted);opacity:1}

/* Keep the live-weather prompt as readable as its label. */
.header-location-form{font-size:1rem;grid-template-columns:auto minmax(0,1fr)}
.header-location-form label,.header-location-form input,.header-location-form input::placeholder{font-size:1rem;line-height:1.4}
.header-location-form .location-input-row{flex-wrap:wrap}
.header-location-form input{flex:1 1 18ch;width:18ch;min-width:min(18ch,100%)}

/* Align label and field independently of the submit button. */
.header-location-form{font-size:.875rem;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:7px}
.header-location-form .location-input-row{display:contents}
.header-location-form label{grid-column:1;grid-row:1;font-size:.875rem;line-height:1.4}
.header-location-form input{grid-column:2;grid-row:1;width:100%;min-width:0;font-size:.875rem;line-height:1.4;padding:7px 8px;border:1px solid #9299a2;box-sizing:border-box}
.header-location-form input::placeholder{font-size:.875rem;line-height:1.4}
.header-location-form button{grid-column:2;grid-row:2;justify-self:start}
.header-location-form .location-feedback{grid-row:3}
.guest-ticker-heading{max-width:245px;flex:0 1 245px}
.guest-ticker-help{font-size:.875rem;line-height:1.35;margin:5px 0 0;color:var(--muted)}
@media(max-width:600px){.guest-ticker-heading{flex-basis:145px;min-width:115px}.guest-ticker-help{font-size:.875rem}}

.header-metrics .moon-phase{font-size:.875rem;font-weight:400;line-height:1.5}

.header-location-form .location-feedback{grid-row:2}

header nav .association-link .winterthur-flag{width:16px!important;height:16px!important;min-width:16px;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important}

/* Keep the section menu together below the association and results links. */
body>header:has(.monday-signup)>nav{flex-direction:column;align-items:stretch;gap:14px}
header nav .association-links{width:100%;margin-right:0}
header nav .section-navigation{display:flex;justify-content:flex-end;align-items:center;gap:14px 24px;flex-wrap:nowrap;width:100%}
header nav .section-navigation a{white-space:nowrap}
@media(max-width:1000px){header nav .section-navigation{justify-content:flex-start}}
@media(max-width:600px){header nav .section-navigation{gap:8px 12px;flex-wrap:wrap}}

/* Equal gallery previews show the complete photograph without cutting off heads or captions. */
.history-gallery a>img,.guest-photo>img,.nasri-photo .guest-photo>img,.tournament-photo>img,.gallery-feature>img,
#southampton-2024>.guest-gallery .tournament-photo>img,
#firmen-schulen .guest-gallery .tournament-photo>img,
.world-place .world-main .tournament-photo>img{
 display:block;width:100%;height:auto!important;max-height:none!important;
 aspect-ratio:4/3!important;object-fit:contain!important;object-position:center!important;
 border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent;
}
.history-gallery a,.guest-photo,.tournament-photo,.world-place .world-main .tournament-photo,
#firmen-schulen .guest-gallery .tournament-photo{border:0;border-radius:0;box-shadow:none;background:transparent}
.nasri-photo .nasri-name{top:21%}
.nasri-photo .nasri-tensaflex{bottom:8%}

/* Comfortable touch targets with consistent spacing in the guest ribbon. */
@media(pointer:coarse){.guest-social-icon{width:44px;height:44px}.guest-ticker-name-link{display:inline-flex;align-items:center;min-height:44px}}

/* Quiet links and one restrained call to join the Monday game. */
body a{animation:none!important}
.monday-toggle{background:var(--accent);color:#080808;animation:monday-invitation-pulse 3.6s ease-in-out infinite}
@keyframes monday-invitation-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,223,0,0)}50%{box-shadow:0 0 0 5px rgba(255,223,0,.2)}}
.monday-signup[open] .monday-toggle{animation:none}
body a.book-court-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#171717;font-size:.9375rem;font-weight:700;line-height:1.4;text-decoration:none}
body a.book-court-primary:hover{background:#f1d000;border-color:#f1d000;color:#171717}
@media(prefers-reduced-motion:reduce){.monday-toggle{animation:none}}

/* Compact hall tour sits beside the hall headline. */
.hall-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(180px,.75fr) minmax(0,1fr);gap:28px;align-items:center}
.hall-heading>h2{grid-column:1;grid-row:1;margin-bottom:0}
.hall-heading>p{grid-column:3;grid-row:1;margin:0;max-width:none}
.hall-heading-video{grid-column:2;grid-row:1;margin:0;min-width:0;width:100%;max-width:260px;justify-self:center}
.hall-heading-video h3{font-size:.9375rem;line-height:1.35;letter-spacing:0;margin:0 0 8px}
.hall-heading-video video,.hall-heading-video .video-poster{display:block;width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden}
.hall-heading-video video{object-fit:cover}
.hall-heading-video .video-play{width:44px;height:44px;font-size:18px}
.hall-heading+.hall-numbers{margin-top:28px}
@media(max-width:1000px){.hall-heading{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);gap:22px}.hall-heading>p{grid-column:1/-1;grid-row:2}.hall-heading-video{grid-column:2;grid-row:1}}
@media(max-width:600px){.hall-heading{grid-template-columns:1fr;gap:18px}.hall-heading>h2{grid-column:1;grid-row:1}.hall-heading-video{grid-column:1;grid-row:2;justify-self:start;max-width:260px}.hall-heading>p{grid-column:1;grid-row:3}}

/* Keep each tournament label and its value on the same row. */
.latest-news-compact .news-facts{grid-template-columns:minmax(0,1fr);gap:12px}
.latest-news-compact .news-facts>div{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;align-items:baseline}
.latest-news-compact .news-facts dt{margin:0}
.latest-news-compact .news-facts dd{margin:0;text-align:left;white-space:normal}
.news-ranking-note{margin:12px 0 0;font-size:.8125rem;line-height:1.5;color:var(--muted,#555)}

/* Natural link widths keep every desktop label on one line. */
header nav .association-links{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:12px;align-items:center;width:100%;margin:0}
header nav .association-links .association-link{flex:0 0 auto;min-width:0;white-space:nowrap;margin:0;line-height:1.5;font-size:clamp(.8125rem,.95vw,.875rem)}
@media(max-width:1100px){header nav .association-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:18px}header nav .association-links .association-link{white-space:normal;font-size:.875rem}}
@media(max-width:600px){header nav .association-links{grid-template-columns:minmax(0,1fr);gap:16px}}

/* Each guest has one card with a compact shared row of external links. */
.guest-name-list li{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.guest-name-list li:has(.guest-media-link){gap:0}
.guest-name-list li>a[data-guest-name]{border:0;border-radius:0;height:auto;flex:1;padding:12px 16px}
.guest-name-list .guest-card-links{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;margin:0 16px;padding:7px 0 10px;border-top:1px solid var(--line)}
.guest-name-list .guest-card-links>a{display:inline-flex;align-items:center;width:auto;height:auto;min-height:28px;padding:0;border:0;border-radius:0;font-size:.8125rem;line-height:1.4;text-decoration:underline;text-underline-offset:3px;background:transparent}
.guest-name-list li.guest-selected{background:#ffe36b;border-color:#b88600;box-shadow:0 0 0 3px #ffe36b}
.guest-name-list li.guest-selected>a{box-shadow:none;border:0}

/* Equal, compact main previews for worldwide friends. */
.world-place .world-main .tournament-photo{display:block;width:100%;aspect-ratio:4/3;overflow:hidden}
.world-place .world-main .tournament-photo>img{width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
.world-place .world-thumb .tournament-photo{display:block;width:64px;height:52px;overflow:hidden}
.world-place .world-thumb .tournament-photo>img{width:64px!important;height:52px!important;aspect-ratio:auto!important;object-fit:contain!important}
.photo-social-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:8px;font-size:.8125rem;line-height:1.5}
.photo-social-links a{text-underline-offset:3px}

/* Compact television reports share one desktop row. */
.tv-reports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.tv-report{min-width:0}
.tv-report h2{font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.5px;line-height:1.2;margin:0 0 14px}
.tv-report>p{margin:0 0 18px}
.tv-report-video{margin:0;max-width:none}
.tv-report-video video,.tv-report-video .video-poster{width:100%;aspect-ratio:16/9;object-fit:contain}
.tv-report-video figcaption{margin-top:12px;font-size:.875rem;line-height:1.5}
@media(max-width:600px){.tv-reports-grid{grid-template-columns:1fr;gap:30px}}

/* Align text equally with and without a flag in the resource row. */
header nav .association-links .association-link{display:inline-flex;align-items:center;min-height:24px;align-self:center}

/* Equal worldwide card heights, with location information aligned below. */
.world-grid{align-items:stretch}
.world-place{display:flex;flex-direction:column;height:100%}
.world-place .world-main{flex:0 0 auto}
.world-place .world-info{margin-top:auto}
.world-place:nth-child(-n+3) .world-info{min-height:154px}
.world-info .world-person{margin:0 0 4px;font-weight:600;color:var(--ink)}
.world-info .photo-social-links{margin:4px 0 14px}
@media(max-width:600px){.world-place{height:auto}.world-place:nth-child(-n+3) .world-info{min-height:0}}

body a.video-text-link{color:#986f00!important;font-weight:700;animation:none!important;text-decoration:underline;text-underline-offset:3px}
body a.video-text-link:hover{color:#775600!important}

/* Company and school photos fill equal-width gallery columns. */
#firmen-schulen .guest-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
#firmen-schulen .guest-gallery>figure{width:100%;min-width:0;margin:0;grid-column:auto}
#firmen-schulen .guest-gallery .tournament-photo{display:block;width:100%;aspect-ratio:auto}
#firmen-schulen .guest-gallery .tournament-photo>img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
@media(max-width:900px){#firmen-schulen .guest-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#firmen-schulen .guest-gallery{grid-template-columns:minmax(0,1fr)}}

/* Rounded photo corners throughout the homepage. */
main figure img:not([src$=".svg"]),main .history-gallery img,main .guest-gallery img,main .world-place img,main .video-poster img,#guest-viewer #viewer-photo{border-radius:12px!important}
main .guest-photo,main .tournament-photo,main .gallery-feature,main .signature-photo,main .nasri-photo,main .video-poster{border-radius:12px!important}

/* Consistent company and school cards, with centered photo captions site-wide. */
main figcaption{width:100%;text-align:center!important}
#firmen-schulen .company-photo{display:flex!important;flex-direction:column;aspect-ratio:4/3!important;overflow:hidden;background:#08234a;border-radius:12px!important;container-type:inline-size}
#firmen-schulen .company-photo-image{display:block;width:100%;height:76%;flex:0 0 76%;background:#08234a}
#firmen-schulen .company-photo-footer{height:24%;flex:0 0 24%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;padding:4px 10px;box-sizing:border-box;background:linear-gradient(110deg,#071b39,#103764)}
#firmen-schulen .company-photo-title{font-family:GuestSignature,cursive;font-size:clamp(17px,7cqw,32px);line-height:1.1;max-width:100%}
#firmen-schulen .company-photo-thanks{display:block;font-size:clamp(10px,3.4cqw,15px);font-weight:700;line-height:1.2;margin-top:4px}

#firmen-schulen .company-source{display:none!important}
#viewer-caption{text-align:center!important}

/* Show each complete photo at full column width, without side borders. */
#firmen-schulen .company-photo{aspect-ratio:auto!important;background:transparent;container-type:inline-size}
#firmen-schulen .company-photo-image{height:auto!important;flex:none!important;overflow:hidden!important;background:transparent}
#firmen-schulen .company-photo-footer{height:auto!important;flex:none!important;width:100%;min-height:100px;padding:12px 10px;gap:6px}
#firmen-schulen .company-photo-title{font-size:clamp(18px,6cqw,28px);line-height:1.15;flex:none;overflow-wrap:normal}
#firmen-schulen .company-photo-thanks{font-size:clamp(11px,3.4cqw,15px);line-height:1.3;margin:0;flex:none;white-space:nowrap}

/* Center the photo navigation labels and remove the top strip from Rome. */
.gallery-feature>span{text-align:center!important;width:100%;box-sizing:border-box}
.gallery-feature-cropped-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden}

/* Equal photo panels preserve people; unused space has the page background. */
#firmen-schulen .company-photo-image{aspect-ratio:4/3!important;width:100%;height:auto!important;background:transparent}
#firmen-schulen .company-photo-footer{height:108px!important;min-height:108px;box-sizing:border-box}
.company-person-label{font-family:GuestSignature,cursive;fill:white;paint-order:stroke;stroke:#14213b;stroke-width:2px;stroke-linejoin:round;filter:drop-shadow(0 2px 2px #0009)}

#firmen-schulen .beauty-space-event{position:relative;container-type:inline-size}
main #firmen-schulen .beauty-space-photo-link{position:absolute;left:7%;top:64cqw;font-family:GuestSignature,cursive;font-size:clamp(18px,6cqw,28px);color:white;text-decoration:underline;text-underline-offset:4px;text-shadow:0 2px 3px #000;animation:none!important;z-index:2}

/* Readable German translations, anchored inside the video rather than over faces. */
.video-viewer-stage{position:relative}
.german-subtitle-band{position:absolute;bottom:48px;left:3%;right:3%;padding:10px 16px;border-radius:8px;background:rgba(5,13,28,.9);color:#fff;font-size:clamp(16px,2vw,22px);font-weight:600;line-height:1.4;text-align:center;pointer-events:none;white-space:normal;max-height:40%;overflow:auto;text-shadow:0 1px 2px #000;z-index:3}
.german-subtitle-band[hidden]{display:none}
.subtitle-controls{margin:12px auto 0;max-width:850px;text-align:center}
.subtitle-controls button{border:0;border-radius:22px;padding:10px 20px;background:#f2cc32;color:#101a2c;font-family:inherit;font-size:16px;font-weight:600;line-height:1.3;cursor:pointer}
.subtitle-controls button[aria-pressed="true"]{background:#152440;color:#fff}
.subtitle-controls button:disabled{opacity:.65;cursor:default}
.subtitle-hint{font-size:14px;line-height:1.5;margin:8px 0;color:#465363}
@media(max-width:600px){.german-subtitle-band{bottom:42px;padding:7px 10px;font-size:16px}.subtitle-controls button{font-size:16px}}
/* The Dink: borderless film feature, using the existing enlarged video player. */
#the-dink h2{margin-bottom:12px}
#the-dink .the-dink-subtitle{font-size:clamp(18px,2.2vw,24px);margin-bottom:24px}
#the-dink .the-dink-trailer{display:block;max-width:880px;margin-top:0}
#the-dink .the-dink-trailer figure{margin:0}
#the-dink .the-dink-trailer iframe{display:block;width:100%;aspect-ratio:1206/631;border:0;border-radius:12px}
#the-dink .the-dink-trailer .video-preview{position:relative;width:100%;aspect-ratio:1206/631;overflow:hidden}
#the-dink .the-dink-trailer .video-preview img{position:absolute;left:0;top:-25.0396%;display:block;width:100%;height:auto!important;max-width:none;object-fit:initial!important;border-radius:0!important}
#the-dink .the-dink-meta{color:var(--muted);font-size:14px;margin:16px 0 20px}
#the-dink .the-dink-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
#the-dink .the-dink-watch{background:var(--accent,#ffdf00);color:var(--ink);border:0;gap:10px}
#the-dink .the-dink-watch:hover{background:#f0d000;color:var(--ink)}
#the-dink .the-dink-note{font-size:14px;color:var(--muted);max-width:880px;margin:16px 0 0}
@media(max-width:600px){#the-dink .the-dink-actions{flex-direction:column;align-items:stretch}#the-dink .the-dink-actions .button{justify-content:center;text-align:center;width:100%;white-space:normal}}

/* Compact movie window directly beneath André's logo. */
.brand-film-column{display:flex;flex-direction:column;align-items:center;gap:12px;flex:0 0 140px;width:140px;min-width:0}
body>header:has(.monday-signup) .brand-film-column .brand-logo{display:block;position:relative;flex:none;width:100%;min-height:0;align-self:stretch;transform:none}
body>header:has(.monday-signup) .brand-film-column .brand-logo img{display:block;position:static;width:100%;height:auto;max-width:100%;object-fit:contain}
.brand-film{width:100%;max-width:180px;text-align:center;color:var(--ink)}
.brand-film h2{font-size:17px;font-weight:700;line-height:1.25;letter-spacing:0;margin:0 0 8px}
.brand-film-thumb{display:block;position:relative;width:100%;aspect-ratio:1206/631;overflow:hidden;border-radius:8px;background:var(--paper);text-decoration:none}
.brand-film-thumb img{display:block;position:absolute;left:0;top:-25.0396%;width:100%;height:auto;max-width:none}
.brand-film-play{position:absolute;left:0;right:0;bottom:0;padding:4px 6px;background:#202020de;color:#fff;font-size:12px;line-height:1.4}
.brand-film-watch{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;margin-top:7px;padding:8px 10px;border-radius:5px;background:var(--accent,#ffdf00);color:var(--ink);font-size:13px;font-weight:700;line-height:1.35;text-decoration:none}
.brand-film-watch:hover{background:#f0d000;color:var(--ink)}
.brand-film p{margin:5px 0 0;font-size:11px;line-height:1.4;color:var(--muted)}
@media(min-width:601px) and (max-width:1000px){.brand-film-column{flex-basis:190px;width:190px}}
@media(min-width:1001px) and (max-width:1199px){.brand-film-column{flex-basis:210px;width:210px}}
@media(min-width:1200px){.brand-film-column{flex-basis:clamp(240px,22vw,330px);width:clamp(240px,22vw,330px)}}
@media(max-width:400px){.brand-film-column{flex-basis:120px;width:120px}}
