/*
Theme Name: TC Hoch-Weisel
Author: TC Hoch-Weisel
Description: Individuelles Vereinstheme mit redaktionell pflegbarer Startseite, Beiträgen und Terminen.
Version: 1.9.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: tc-hoch-weisel
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--tchw-green:#183e32;--tchw-lime:#def29d;--tchw-paper:#f7f8f4;--tchw-ink:#18372f;--tchw-red:#b95439}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--tchw-paper);color:var(--tchw-ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.15;letter-spacing:-.045em}body>header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;background:var(--tchw-paper);gap:24px}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}.brand img{width:58px;height:58px;object-fit:contain;background:var(--tchw-green);border-radius:50%;padding:6px}.brand span{font-weight:800;font-size:18px;letter-spacing:.01em;line-height:1.5}.brand small{display:block;font-size:10px;letter-spacing:.2em;font-weight:500}#site-navigation{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.button{padding:16px 23px;background:var(--tchw-green);color:white;display:inline-flex;align-items:center;justify-content:center;gap:28px;border-radius:3px;font-weight:600;font-size:15px}.button span{font-size:21px}.button.small{padding:11px 18px;gap:16px}.lime{background:var(--tchw-lime);color:var(--tchw-green)}.menu{display:none}.hero{min-height:620px;height:calc(88vh - 100px);max-height:810px;position:relative;color:#fff;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 55%;inset:0}.hero-shade{background:linear-gradient(90deg,rgba(9,30,24,.86),rgba(12,30,24,.48) 55%,rgba(10,25,20,.12))}.hero-content{position:relative;padding:50px 7%;width:100%}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;margin-bottom:22px}.hero h1{font-size:clamp(46px,5.6vw,86px);font-weight:600;letter-spacing:-.055em;line-height:1.08}.hero h1 span{color:var(--tchw-lime)}.hero-content>p:not(.eyebrow){font-size:18px;margin-top:27px;color:#e5eae3;line-height:1.7}.actions{display:flex;gap:30px;align-items:center;margin-top:32px}.hero-link{font-size:15px;border-bottom:1px solid #8b9b90;padding:12px 0}.hero-link span{margin-left:16px}.hero-bottom{position:absolute;bottom:25px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.08em;color:#e5eae3}.hero-bottom span:last-child{letter-spacing:0}.facts{padding:30px 7%;display:grid;grid-template-columns:.8fr 1.3fr 1.2fr .8fr;border-bottom:1px solid #dce1d8;gap:30px;align-items:center}.facts>div{display:flex;flex-direction:column;border-right:1px solid #dce1d8}.facts strong{font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-.04em}.facts span{font-size:13px;color:#69776c}.facts>a{font-size:14px;font-weight:700;display:flex;justify-content:space-between}.section{padding:90px 7%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:36px}.green{color:#507154}.section .eyebrow{margin-bottom:14px}h2{font-size:clamp(32px,3vw,46px);font-weight:600}.text-link{font-size:14px;font-weight:700;display:inline-block;border-bottom:1px solid #abb8aa;padding-bottom:5px}.news-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}.news{background:#e9eee4;border-radius:4px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.news:hover{transform:translateY(-5px)}.news-image{position:relative;height:210px}.news-image img{width:100%;height:100%;object-fit:cover}.pill{position:absolute;left:20px;top:20px;background:var(--tchw-paper);padding:5px 11px;border-radius:2px;font-size:10px;letter-spacing:.1em;font-weight:700}.news-body{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.news .date{font-size:11px;letter-spacing:.08em;margin-bottom:14px;color:#5d7063}.news h3{font-size:26px}.news p:not(.date){font-size:15px;line-height:1.65;margin:18px 0 26px}.news .text-link{margin-top:auto}.category{font-size:11px;font-weight:700;letter-spacing:.12em;border:1px solid #9dac9b;padding:5px 10px;margin-bottom:85px}.terra{background:#c16043;color:#fff}.terra .date{color:#f5dfd5}.terra .category,.terra .text-link{border-color:#e3a38a}.club{padding-top:15px;display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center}.club-photo{position:relative}.club-photo img{height:430px;width:100%;object-fit:cover;border-radius:3px}.club-photo span{position:absolute;bottom:20px;left:22px;color:white;font-size:14px;background:var(--tchw-green);padding:8px 14px}.club-copy>p:not(.eyebrow){color:#617065;margin-top:23px}.club-copy .text-link{margin-top:28px}.tennis{background:var(--tchw-green);color:#fff}.tennis .eyebrow{color:var(--tchw-lime)}.tennis .section-heading>p{font-size:15px;color:#c1cfc5}.team-links{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #557164;border-bottom:1px solid #557164;margin-top:42px}.team-links a{padding:30px 18px;border-right:1px solid #557164;font-size:22px;font-weight:500}.team-links a:first-child{padding-left:0}.team-links a:last-child{border:0}.team-links span{display:block;font-size:12px;color:#a0b79e;margin-bottom:20px}.team-links b{float:right;color:var(--tchw-lime);font-weight:400}.training{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:20px;padding:38px 0 30px}.training h3{font-size:20px}.training p,.training span{display:block;font-size:13px;color:#c1cfc5}.training strong{font-size:15px}.booking{display:flex;justify-content:space-between;gap:35px;border-top:1px solid #557164;padding-top:25px;font-size:13px;color:#c1cfc5}.booking a{text-decoration:underline}.events{display:grid;grid-template-columns:.9fr 1.4fr;gap:50px}.events .text-link{margin-top:30px}.event-list a{display:flex;align-items:center;gap:25px;padding:25px 0;border-bottom:1px solid #d2daca}.event-list a:first-child{padding-top:0}.event-list time{background:#e8eddf;min-width:78px;padding:12px 15px;text-align:center;font-size:11px;font-weight:700}.event-list time b{display:block;font-size:34px;line-height:1.25;font-weight:500}.event-list h3{font-size:21px;margin:6px 0}.event-list p{font-size:13px;color:#647467}.event-list div>span{font-size:10px;letter-spacing:.1em;color:#687e67}.event-list a>b{margin-left:auto;font-size:24px}.join{background:#b85236;color:white;display:flex;justify-content:space-between;gap:40px;align-items:center}.join h2{font-size:clamp(32px,3.5vw,50px)}.join p:not(.eyebrow){margin-top:23px;color:#f9e4dc;font-size:16px}.join-actions{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.join-actions>a:not(.button){font-size:14px;text-decoration:underline;text-underline-offset:5px}footer{padding:60px 7% 22px;background:#102e25;color:#d7e2d8}.footer-top{display:grid;grid-template-columns:1.15fr 1fr 1.1fr;gap:40px;padding-bottom:50px}.footer-top h3{font-family:'DM Sans',sans-serif;font-size:14px;letter-spacing:0;margin:10px 0 17px;color:#fff}.footer-top p,.footer-top>div>a:not(.brand){font-size:14px;margin-top:16px}.footer-top p{color:#abbeb1}.footer-bottom{display:flex;justify-content:space-between;padding-top:23px;border-top:1px solid #355246;font-size:12px;color:#abbeb1;gap:20px}.footer-bottom div{display:flex;gap:25px}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:10;background:#fff;padding:15px}a:focus-visible,button:focus-visible{outline:3px solid #b0c94e;outline-offset:5px}a:hover{filter:brightness(1.07)}
@media(min-width:1500px){body>header,.section,.facts,footer{padding-left:max(7%,calc((100vw - 1350px)/2));padding-right:max(7%,calc((100vw - 1350px)/2))}}@media(max-width:1100px){#site-navigation{gap:16px}body>header{padding:0 4%;height:88px}.brand span{font-size:15px}.brand img{width:46px;height:46px}#site-navigation>a{font-size:12px}.button.small{font-size:12px}.section{padding:65px 6%}.facts{padding:25px 6%;gap:20px}.facts strong{font-size:22px}.news-body{padding:22px}.news h3{font-size:23px}.club{gap:5%}.team-links a{font-size:19px;padding:25px 12px}.training{grid-template-columns:1fr 1fr}.join{gap:24px}.join-actions .button{font-size:13px;padding:15px}.footer-top{gap:25px}.footer-top>div>a:not(.brand){overflow-wrap:anywhere}}
@media(max-width:760px){body>header{height:80px;padding:0 6%;position:relative;z-index:5}.menu{display:block;background:transparent;border:1px solid #c4cfc1;padding:7px 11px;border-radius:3px;font-size:14px;color:var(--tchw-green)}#site-navigation{display:none;position:absolute;left:0;right:0;top:80px;background:var(--tchw-paper);padding:22px 6%;box-shadow:0 10px 20px #0002;align-items:stretch}#site-navigation.open{display:flex;flex-direction:column}#site-navigation>a{font-size:16px;padding:7px 0}.hero{height:660px;min-height:0;max-height:none}.hero-image{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#102e25d9,#102e2570)}.hero-content{padding:30px 6% 65px}.hero h1{font-size:49px}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.hero-content>p:not(.eyebrow){font-size:16px}.actions{align-items:flex-start;gap:15px;flex-direction:column}.hero-bottom{left:6%;bottom:23px;font-size:10px}.hero-bottom span:last-child{display:none}.facts{grid-template-columns:1fr 1fr;gap:22px;padding:28px 6%}.facts>div{border:0}.facts strong{font-size:22px}.facts span{font-size:12px}.facts>a{font-size:13px}.section{padding:55px 6%}.section-heading{align-items:flex-start;gap:24px;flex-direction:column}h2{font-size:34px}.news-grid{grid-template-columns:1fr}.news-image{height:230px}.news-body{padding:26px}.category{margin-bottom:28px}.news h3{font-size:27px}.club{grid-template-columns:1fr;padding-top:5px;gap:32px}.club-photo img{height:340px}.team-links{grid-template-columns:1fr}.team-links a,.team-links a:first-child{padding:19px 0;border-right:0;border-bottom:1px solid #557164;display:flex;align-items:center;gap:20px;font-size:21px}.team-links span{display:inline;margin:0}.team-links b{margin-left:auto}.training{grid-template-columns:1fr 1fr;gap:25px}.training>div:first-child{grid-column:1/-1}.booking{flex-direction:column;gap:18px}.events{grid-template-columns:1fr;gap:36px}.event-list a{gap:17px}.event-list h3{font-size:19px}.event-list time{min-width:65px}.join{flex-direction:column;align-items:flex-start}.join p br{display:none}.join-actions{width:100%}.join-actions .button{width:100%;font-size:14px}.footer-top{grid-template-columns:1fr;gap:20px}.footer-bottom{flex-direction:column}.footer-bottom div{flex-wrap:wrap;gap:15px}footer{padding:45px 6% 25px}.brand small{font-size:10px}.footer-top .brand span{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* WordPress content, plugin templates, and forms. */
.reading-content{max-width:1100px;margin:auto;min-height:50vh}.reading-content h1,.archive-content h1{font-size:clamp(34px,4.2vw,60px);overflow-wrap:anywhere}.entry-content{margin:35px 0;font-size:18px;line-height:1.8}.entry-content p,.entry-content ul,.entry-content ol,.entry-content table{margin:0 0 1.5em}.entry-content h2,.entry-content h3{margin:1.3em 0 .6em}.entry-content a,.comments-area a{text-decoration:underline;text-underline-offset:3px}.entry-content img{height:auto}.entry-content figure{max-width:100%;margin:24px 0}.entry-content table{width:100%;border-collapse:collapse}.entry-content td,.entry-content th{border:1px solid #c4cfc1;padding:12px}.entry-image{width:100%;height:auto;margin:30px 0}.entry-content iframe{max-width:100%}.entry-content .alignwide{width:100%}.entry-content pre{overflow:auto}.post-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:40px 0}.post-preview{min-width:0}.post-preview img{width:100%;height:220px;object-fit:cover;margin-bottom:20px}.post-preview h2{font-size:28px;margin:10px 0}.post-preview p{margin:16px 0}.post-preview .date{font-size:13px;color:#617065}.pagination,.post-navigation{margin:30px 0}nav.pagination,nav.post-navigation,nav.comment-navigation{display:block;position:static;background:transparent;padding:0;box-shadow:none;font-size:16px}.page-numbers{padding:8px 12px}.page-numbers.current{background:#183e32;color:#fff}.nav-links{display:flex;justify-content:space-between;gap:20px}.comments-area{margin-top:45px;padding-top:30px;border-top:1px solid #c4cfc1}.comments-area h2{font-size:28px}.comment-list{padding-left:22px}.comment-list .avatar{display:inline-block}.comment-body{margin:25px 0}.comment-form p{margin:15px 0}.comment-form label{display:block}input,textarea,select{font:inherit;max-width:100%;padding:12px;border:1px solid #a6b6a3;border-radius:3px;background:#fff;color:#18372f}textarea{width:100%}input[type=submit],button[type=submit]{background:#183e32;color:#fff;border:0;padding:12px 20px;cursor:pointer}.search-form{margin:25px 0;display:flex;flex-wrap:wrap;gap:10px}.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.event-empty p{margin:20px 0}.event-list .event-empty a{display:inline-block;border-bottom:1px solid #abb8aa;padding:0 0 5px}.entry-content .wp-block-button__link{color:#fff;background:#183e32}.news h3{overflow-wrap:anywhere}.archive-description{margin-top:24px}.brand small{font-size:12px;letter-spacing:.1em}.eyebrow,.pill,.category,.news .date,.event-list div>span{font-size:12px}.training p,.training span,.booking,.facts span,.event-list p,.footer-bottom{font-size:14px}@media(max-width:760px){.post-list{grid-template-columns:1fr}.brand small{font-size:10px}.hero .eyebrow{font-size:12px}.entry-content{font-size:17px}.entry-content table{display:block;overflow-x:auto}.hero h1{font-size:clamp(40px,12vw,49px)}}
#site-navigation .primary-menu{display:flex;align-items:center;gap:24px;list-style:none;padding:0;margin:0}#site-navigation li{position:relative;list-style:none}#site-navigation .sub-menu{position:absolute;top:100%;left:0;min-width:210px;background:var(--tchw-paper);padding:12px;box-shadow:0 10px 25px #0002;display:none;z-index:20}#site-navigation .sub-menu a{display:inline-block;padding:8px;white-space:normal}#site-navigation .submenu-open>.sub-menu{display:block}#site-navigation .sub-menu .sub-menu{position:static;box-shadow:none;padding-left:14px;min-width:0}.submenu-toggle{border:0;background:transparent;color:var(--tchw-green);padding:9px;cursor:pointer}#site-navigation [aria-current=page]{text-decoration:underline;text-underline-offset:6px}header{position:relative;z-index:30}@media(max-width:1100px){#site-navigation .primary-menu{gap:13px}}@media(max-width:760px){#site-navigation .primary-menu{display:block;width:100%}#site-navigation .primary-menu>li{padding:5px 0}#site-navigation .sub-menu{position:static;box-shadow:none;padding:0 15px}#site-navigation.open{max-height:calc(100vh - 80px);overflow:auto}}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/dm-sans-400.ttf) format('truetype');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/dm-sans-500.ttf) format('truetype');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/dm-sans-600.ttf) format('truetype');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/dm-sans-700.ttf) format('truetype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/manrope-400.ttf) format('truetype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/manrope-500.ttf) format('truetype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/manrope-600.ttf) format('truetype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/manrope-700.ttf) format('truetype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/manrope-800.ttf) format('truetype');
}

/* Größere Navigation und kompakter Titelbereich. */
body>header{height:112px;position:sticky;top:0;z-index:50;padding-left:4%;padding-right:4%;box-shadow:0 1px 0 #183e3215;transition:box-shadow .2s,background .2s}
body>header.is-scrolled{background:#f7f8f4f5;box-shadow:0 5px 25px #183e321a;backdrop-filter:blur(12px)}
body>header .brand img{width:62px;height:62px}body>header .brand span{font-size:19px}
body>header nav{gap:8px}body>header nav>a,body>header .primary-menu>li>a{position:relative;font-size:16px;font-weight:700;padding:13px 15px;border-radius:6px;transition:background .18s,color .18s,transform .18s}
body>header nav>a:not(.button):hover,body>header .primary-menu>li>a:hover{background:#e6ecdf;color:#183e32;transform:translateY(-2px)}
body>header nav a.is-active{background:#e6ecdf;color:#183e32}
body>header nav>a:not(.button)::after,body>header .primary-menu>li>a::after{content:'';position:absolute;left:15px;right:15px;bottom:7px;height:2px;background:#527444;transform:scaleX(0);transform-origin:left;transition:transform .2s}
body>header nav>a:not(.button):hover::after,body>header nav>a.is-active:not(.button)::after,body>header .primary-menu>li>a:hover::after,body>header .primary-menu>li>a.is-active::after{transform:scaleX(1)}
body>header nav .button.small{font-size:16px;padding:15px 20px;margin-left:10px;box-shadow:0 3px 0 #0b251b;transition:background .2s,transform .2s,box-shadow .2s}
body>header nav .button.small:hover{background:#28553f;transform:translateY(-2px);box-shadow:0 5px 0 #0b251b}
body>header nav a:active{transform:translateY(1px)!important}body>header .menu{font-size:16px;padding:10px 15px;transition:background .2s}body>header .menu:hover,body>header .menu[aria-expanded=true]{background:#e6ecdf}
.hero{height:540px;min-height:0;max-height:none}.hero-content{padding-top:35px;padding-bottom:65px}.hero h1{font-size:clamp(45px,5vw,72px)}.hero-content>p:not(.eyebrow){margin-top:20px}.actions{margin-top:25px}.hero-image{object-position:center 62%}
html{scroll-padding-top:136px}#site-navigation .primary-menu{gap:2px}.admin-bar>header{top:32px}
@media(max-width:1200px) and (min-width:981px){body>header{padding-left:3%;padding-right:3%;gap:15px}body>header .brand span{font-size:16px}body>header .brand img{width:50px;height:50px}body>header nav>a,body>header .primary-menu>li>a{font-size:15px;padding:12px 10px}body>header nav .button.small{font-size:15px;padding:13px;margin-left:3px}}
@media(max-width:980px){body>header{height:90px;padding:0 6%}body>header .brand img{width:52px;height:52px}body>header .brand span{font-size:17px}body>header .menu{display:block;background:transparent;border:1px solid #c4cfc1;border-radius:5px;color:var(--tchw-green)}body>header nav{display:none;position:absolute;left:0;right:0;top:90px;background:var(--tchw-paper);padding:18px 6%;box-shadow:0 12px 20px #0002;align-items:stretch;max-height:calc(100dvh - 125px);overflow:auto}body>header nav.open{display:flex;flex-direction:column;gap:7px}body>header nav>a,body>header .primary-menu>li>a{font-size:18px;padding:12px 15px;display:block}body>header nav .button.small{margin:8px 0 0;justify-content:space-between}#site-navigation .primary-menu{display:block;width:100%}#site-navigation .primary-menu>li{padding:3px 0}#site-navigation .sub-menu{position:static;box-shadow:none;padding:0 15px}#site-navigation .primary-menu>li>a{display:inline-block}.hero{height:510px}.hero h1{font-size:clamp(42px,6vw,62px)}html{scroll-padding-top:110px}}
@media(max-width:600px){body>header .brand img{width:46px;height:46px}body>header .brand span{font-size:15px}.hero{height:540px}.hero h1{font-size:43px}.hero-content{padding-top:25px;padding-bottom:50px}.hero-content .eyebrow{margin-bottom:18px}.hero-bottom{bottom:18px}.hero-content>p:not(.eyebrow){margin-top:18px}.actions{gap:10px;margin-top:22px}.hero-image{object-position:63% center}.admin-bar>header{top:46px}}
@media(prefers-reduced-motion:reduce){body>header,body>header nav a,body>header nav a::after{transition:none!important}}

/* News in zwei ausgewogenen Reihen. */
.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.news-grid .news{min-width:0}.news-grid .news:nth-child(n+4) .category{margin-bottom:32px}@media(max-width:760px){.news-grid{grid-template-columns:1fr}}

/* Vereinsfarben gegen gleichnamige Plugin-Variablen und globale Bildregeln abgrenzen. */
body.tchw-theme{--tchw-green:#183e32;--tchw-lime:#def29d;--tchw-paper:#f7f8f4;--tchw-ink:#18372f;--tchw-red:#b95439}
body.tchw-theme > header .brand img,body.tchw-theme > footer .brand img{box-sizing:border-box;background-color:#183e32;border:6px solid #183e32;border-radius:50%;padding:0;object-fit:contain}
body.tchw-theme #main > #tennis.tennis{background:#183e32;color:#fff}
body.tchw-theme #tennis h2,body.tchw-theme #tennis h3,body.tchw-theme #tennis .team-links a,body.tchw-theme #tennis .training strong{color:#fff}
body.tchw-theme #tennis .eyebrow,body.tchw-theme #tennis .team-links b{color:#def29d}
body.tchw-theme #tennis .section-heading>p,body.tchw-theme #tennis .training p,body.tchw-theme #tennis .training span,body.tchw-theme #tennis .booking{color:#c1cfc5}
body.tchw-theme #tennis .booking a{color:inherit}

/* Dropdowns: zusammenhängende Klickflächen, unabhängige Untermenü-Schalter. */
body.tchw-theme #site-navigation .primary-menu>li{display:flex;align-items:center;flex-wrap:wrap;gap:0}
body.tchw-theme #site-navigation .primary-menu>li>a{display:block;line-height:1.4}
body.tchw-theme #site-navigation .menu-item-has-children>a{padding-right:6px}
body.tchw-theme #site-navigation .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:44px;padding:0;border:0;border-radius:5px;background:transparent;color:#183e32;cursor:pointer;font-size:23px;line-height:1}
body.tchw-theme #site-navigation .submenu-toggle:hover,body.tchw-theme #site-navigation .submenu-toggle[aria-expanded=true]{background:#e6ecdf}
body.tchw-theme #site-navigation .submenu-toggle span{transition:transform .18s}
body.tchw-theme #site-navigation .submenu-toggle[aria-expanded=true] span{transform:rotate(180deg)}
body.tchw-theme #site-navigation .sub-menu{margin:0;list-style:none;border:1px solid #dce1d8;border-radius:6px;padding:8px;min-width:240px;max-width:min(320px,85vw);background:#f7f8f4;color:#183e32;box-shadow:0 12px 30px #102e2524;z-index:60}
body.tchw-theme #site-navigation .primary-menu>li:last-child>.sub-menu{left:auto;right:0}
body.tchw-theme #site-navigation .sub-menu>li{display:flex;align-items:center;flex-wrap:wrap}
body.tchw-theme #site-navigation .sub-menu>li>a{flex:1;min-width:0;padding:12px;font-size:16px;line-height:1.4;border-radius:4px;overflow-wrap:anywhere}
body.tchw-theme #site-navigation .sub-menu a:hover,body.tchw-theme #site-navigation .sub-menu a:focus-visible{background:#e6ecdf}
body.tchw-theme #site-navigation .sub-menu .sub-menu{position:static;flex-basis:100%;width:100%;min-width:0;max-width:100%;padding:0 0 0 12px;margin:2px 0 8px;border:0;border-left:2px solid #c3d2b6;border-radius:0;box-shadow:none}
@media(min-width:981px){body.tchw-theme #site-navigation{overflow:visible}body.tchw-theme #site-navigation .primary-menu>li{flex-wrap:nowrap}}
@media(max-width:980px){body.tchw-theme #site-navigation .primary-menu>li>a{flex:1}body.tchw-theme #site-navigation .sub-menu{position:static;flex-basis:100%;width:100%;max-width:100%;min-width:0;box-shadow:none;margin:4px 0 8px;padding:6px;background:#edf1e8}body.tchw-theme #site-navigation .submenu-toggle{width:48px;height:48px}}

/* Breite Inhaltsseiten auf Desktop; eigene Innenabstände statt Startseitenraster. */
@media(min-width:981px){
 body.tchw-theme main.reading-content{width:100%;max-width:1600px;margin-inline:auto;padding-inline:clamp(40px,4vw,64px)}
 body.tchw-theme main.reading-content .entry-content{--wp--style--global--content-size:1472px;--wp--style--global--wide-size:1472px}
}

/* Einheitliche Foto-Kacheln mit Platz für vollständige Teamfotos. */
.news-grid .news{background:#f0f3eb;color:#18372f;border:1px solid #dce3d6}.news-grid .news-image{height:auto;aspect-ratio:16/10;flex:none;background:#183e32;overflow:hidden}.news-grid .news-image img{display:block;width:100%;height:100%;object-fit:cover}.news-grid .news-image-contain img{object-fit:contain}.news-grid .news-body{padding:25px}.news-grid .news .category,.news-grid .news:nth-child(n+4) .category{margin:0 0 16px;border:0;padding:0;color:#507154;font-size:12px;letter-spacing:.1em}.news-grid .news .date{color:#617065}.news-grid .news h3{font-size:25px}.news-grid .news .text-link{color:#18372f;border-color:#abb8aa}

/* Originallogo auf hellem Tennisball-Rahmen statt dunkelgrüner Füllung. */
body>header .brand-mark{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:92px;height:92px;border-radius:50%;background:#fff;box-shadow:0 3px 12px #183e3210;isolation:isolate}
body>header .brand-mark .brand-ball-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#b2bd6c;stroke-width:1.4;z-index:-1}
body>header .brand-mark .brand-ball-lines path{stroke:#d6dcac;stroke-width:1.6}
body>header .brand .brand-mark img,body.tchw-theme>header .brand .brand-mark img{display:block;width:84%;height:auto;max-height:65%;object-fit:contain;object-position:center;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
@media(max-width:1200px){body>header .brand-mark{width:78px;height:78px}}
@media(max-width:980px){body>header .brand-mark{width:70px;height:70px}}
@media(max-width:600px){body>header .brand-mark{width:62px;height:62px}body>header .brand{gap:9px}body>header .brand>span:not(.brand-mark){font-size:14px}}

/* Ruhiger Bildwechsel im Header, Text und Layout bleiben stehen. */
.hero>.hero-image{opacity:0;transition:opacity 1.1s ease;pointer-events:none}.hero>.hero-image:first-of-type{opacity:1}.hero.hero-slider-ready>.hero-image{opacity:0}.hero.hero-slider-ready>.hero-image.is-current{opacity:1}
.hero-slider-controls{position:absolute;z-index:3;right:7%;bottom:58px;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid #ffffff50;border-radius:6px;background:#102e25d9;color:#fff}
.hero-slider-controls button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:3px;background:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer}.hero-slider-controls button:hover,.hero-slider-controls button:focus-visible{background:#ffffff25;outline:2px solid #def29d;outline-offset:1px}.hero-count{font-size:14px;min-width:40px;text-align:center;font-variant-numeric:tabular-nums}
@media(max-width:760px){.hero-slider-controls{right:6%;bottom:55px}.hero-slider-controls button{width:36px;height:36px}.hero-content{padding-bottom:100px}}
@media(max-width:480px){.hero-slider-controls{bottom:45px}.hero-slider-controls button{width:34px;height:34px}.hero-slider-controls{gap:2px}.hero-count{min-width:34px}}
@media(prefers-reduced-motion:reduce){.hero>.hero-image{transition:none}}

/* Compact header and quiet slider controls. */
@media(min-width:981px){.hero{height:490px}}
.hero-slider-controls{gap:2px;padding:3px;border-color:#ffffff30;border-radius:20px;background:#102e2570}
.hero-slider-controls button{width:30px;height:30px;font-size:16px;border-radius:50%}
.hero-count{font-size:11px;min-width:30px;color:#ffffffe0}
.hero-slider-controls:hover,.hero-slider-controls:focus-within{background:#102e25c0}
@media(pointer:coarse){.hero-slider-controls button{width:40px;height:40px}}
