/*
Theme Name: RCMC Ibbenbüren
Author: RCMC Website
Description: Bearbeitbares Vereinsdesign mit Hell-/Dunkelmodus und Rennsport-Startseite.
Version: 1.3.16
Requires at least: 6.2
Text Domain: rcmc
*/
:root{color-scheme:light;--bg:#f4f6f8;--surface:#fff;--text:#15202b;--muted:#526273;--line:#d9e0e7;--accent:#0865b5;--accent-text:#fff}html[data-theme=dark]{color-scheme:dark;--bg:#101820;--surface:#1c2833;--text:#f3f7fb;--muted:#b6c6d3;--line:#394857;--accent:#56a7ef;--accent-text:#081522}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.6}a{color:var(--accent)}.wrap{max-width:1180px;margin:auto;padding:0 22px}.site-header{background:var(--surface);border-bottom:1px solid var(--line);position:relative;z-index:2}.header-inner{display:flex;align-items:center;gap:20px;min-height:85px}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:800;font-size:1.15rem}.brand img{width:66px;height:54px;object-fit:contain;background:#fff;border-radius:5px}.main-nav{margin-left:auto}.main-nav ul{display:flex;gap:17px;align-items:center;list-style:none;margin:0;padding:0}.main-nav a{color:var(--text);text-decoration:none;font-weight:650;font-size:.92rem}.main-nav a:hover{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:9px}.icon-button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:8px 10px;cursor:pointer}.button{display:inline-block;background:var(--accent);color:var(--accent-text);padding:10px 18px;border-radius:8px;font-weight:750;text-decoration:none;border:0}.button:hover{filter:brightness(.92)}.button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--line)}.wa{background:#168a4c;color:white}.hero{min-height:440px;background:linear-gradient(90deg,rgba(5,13,22,.84),rgba(5,13,22,.25)),var(--hero) center/cover;display:flex;align-items:center;color:#fff}.hero h1{font-size:clamp(2.1rem,5vw,4rem);line-height:1.13;margin:0 0 14px;max-width:760px}.hero p{max-width:650px;font-size:1.2rem}.hero .button{margin-right:10px;margin-top:10px}.section{padding:48px 0}.section h2{font-size:1.8rem;margin:0 0 22px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px;overflow:hidden}.card h3{margin:0 0 10px}.card p{color:var(--muted)}.card .meta{font-size:.85rem;color:var(--muted)}.page-content{background:var(--surface);padding:32px;border-radius:12px;margin:35px auto;min-height:220px}.page-content h1{margin-top:0}.site-footer{background:var(--surface);border-top:1px solid var(--line);margin-top:40px;padding:36px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-links a{color:var(--text)}.archive-list{display:grid;gap:16px}.archive-list article{padding:20px;background:var(--surface);border-radius:10px;border:1px solid var(--line)}.nav-toggle{display:none}.screen-reader-text{position:absolute;left:-10000px}.pagination{margin-top:24px}.entry-image{max-width:100%;height:auto;border-radius:10px}@media(max-width:900px){.header-inner{flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.nav-toggle{display:block}.main-nav{display:none;order:3;width:100%;margin-left:0}.main-nav.open{display:block}.main-nav ul{display:block}.main-nav li{padding:8px 0}.header-actions{margin-left:auto}.wa-label{display:none}.grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.grid{grid-template-columns:1fr}.hero{min-height:390px}.brand span{font-size:.95rem}.brand img{width:48px;height:44px}.page-content{padding:20px}}

/* RCMC 1.1: adaptive home layout */
:root{--soft:rgba(10,35,55,.035)}html[data-theme=dark]{--soft:rgba(255,255,255,.035)}
.wrap{max-width:1480px;padding-inline:clamp(20px,3.2vw,52px)}.header-inner{min-height:82px;gap:clamp(12px,1.4vw,24px)}
.brand{flex-shrink:0;gap:12px}.brand img{width:94px;height:56px;object-fit:contain;background:transparent;border-radius:0}.brand .logo-light{display:none}html[data-theme=dark] .brand .logo-dark{display:none}html[data-theme=dark] .brand .logo-light{display:block}
.main-nav ul{gap:clamp(10px,1.1vw,21px)}.main-nav a{white-space:nowrap;font-size:.9rem}.wa{white-space:nowrap;font-size:.86rem;padding:9px 12px}
.hero{min-height:clamp(400px,31vw,540px);background-position:center center}.hero-content{width:100%}.hero-copy{max-width:750px}.eyebrow{font-weight:750;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:#d8e9f8}.hero h1{font-size:clamp(2.5rem,4.2vw,4.6rem);max-width:780px;margin-top:12px}.hero p{font-size:clamp(1.05rem,1.35vw,1.3rem)}.hero-secondary{background:rgba(15,27,41,.55)!important;color:white!important;border-color:rgba(255,255,255,.45)!important}
.home-dashboard{padding-top:36px}.home-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.home-panel{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:clamp(18px,2vw,28px);min-width:0}.panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-heading h2{font-size:clamp(1.2rem,1.5vw,1.6rem);margin:0}.panel-heading>a{font-size:.87rem;white-space:nowrap}.home-event-list{display:grid;gap:12px}.home-event-list>.card{padding:15px 18px;border-radius:10px;background:var(--soft)}.home-event-list .card h3{font-size:1.07rem}.home-event-list .card p{margin:7px 0}.home-event-list .card .button{padding:6px 11px;font-size:.84rem}.home-news-list{display:grid;gap:16px}.news-item{display:flex;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--line)}.news-item:last-child{padding-bottom:0;border-bottom:0}.news-thumb{flex:0 0 100px}.news-thumb img{width:100px;height:86px;object-fit:cover;border-radius:8px}.news-item h3{font-size:1.07rem;margin:1px 0 4px}.news-item h3 a{color:var(--text);text-decoration:none}.news-item p{margin:0 0 4px;font-size:.91rem;color:var(--muted)}.news-item .meta{font-size:.78rem;color:var(--muted)}.text-link{font-size:.87rem}
.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.quick-link{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:150px;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:20px 14px;color:var(--text);text-decoration:none;transition:transform .15s,border-color .15s}.quick-link:hover{transform:translateY(-2px);border-color:var(--accent)}.quick-icon{font-size:1.9rem;line-height:1.2;color:var(--accent);margin-bottom:10px}.quick-link strong{font-size:1.05rem}.quick-link small{color:var(--muted);margin-top:5px;font-size:.82rem}.home-about{margin-top:24px}.about-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center}.about-row img{width:100%;height:260px;object-fit:cover;border-radius:10px}.about-row h3{margin-top:0}.about-row p{color:var(--muted)}
@media(min-width:1900px){.wrap{max-width:1640px}.hero{min-height:530px}.home-columns{gap:30px}.home-dashboard{padding-top:44px}.home-panel{padding:30px}}
@media(max-width:1150px){.brand span{font-size:1rem}.brand img{width:72px}.main-nav ul{gap:11px}.main-nav a{font-size:.82rem}.wa-label{display:none}}
@media(max-width:900px){.home-columns{grid-template-columns:1fr}.quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.header-inner{flex-wrap:wrap}.main-nav{order:4}.about-row{grid-template-columns:1fr}.about-row img{height:250px}}
@media(max-width:600px){.hero{min-height:420px}.hero h1{font-size:clamp(2.15rem,9vw,3.1rem)}.hero .button{padding:10px 12px}.panel-heading{align-items:flex-start}.panel-heading>a{font-size:.77rem}.quick-links{gap:10px}.quick-link{min-height:132px;padding:14px 8px}.quick-link small{font-size:.73rem}.brand img{width:66px;height:43px}.brand span{font-size:.85rem}.home-dashboard{padding-top:20px}.home-panel{padding:17px}}

/* RCMC 1.2: Logo und kompakter WhatsApp-Kontakt */
.brand img{width:118px;height:66px;object-fit:contain;background:transparent}
.wa{display:inline-flex;align-items:center;gap:7px;background:#168a4c;color:#fff}
.wa-icon{width:19px;height:19px;display:block;flex:none}
@media(max-width:1150px){.brand img{width:92px;height:56px}}
@media(max-width:900px){.wa{padding:8px 10px}.wa-label{display:none}}
@media(max-width:600px){.brand img{width:76px;height:47px}}

.rcmc-food{font-weight:600;margin:.7rem 0}.rcmc-detail .rcmc-back{margin-top:1.5rem}

/* RCMC 1.3.2: Unser Verein – clear, editable content sections */
.rcmc-club-page{background:transparent;padding:0;margin-top:36px}
.rcmc-club-page>h1{margin:0 0 25px;font-size:clamp(2rem,3vw,2.6rem)}
.rcmc-club-content{display:grid;gap:24px}
.rcmc-club-section{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:clamp(22px,3vw,38px);box-shadow:0 5px 20px rgba(0,0,0,.045);min-width:0}
.rcmc-club-section h2{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.35;margin:0 0 22px;padding:0 0 15px;border-bottom:1px solid var(--line);position:relative}
.rcmc-club-section h2:after{content:'';position:absolute;bottom:-2px;left:0;width:60px;height:3px;background:var(--line);border-radius:4px}
.rcmc-club-section p{margin:0 0 17px;line-height:1.8;max-width:100ch}
.rcmc-club-section p:last-child{margin-bottom:0}
.rcmc-club-about{background:var(--surface)}
.rcmc-club-track{background:var(--surface)}
.rcmc-club-documents{background:linear-gradient(135deg,rgba(86,167,239,.045),transparent 65%),var(--surface)}
.rcmc-club-documents .rcmc-documents,.rcmc-club-documents .rcmc-document-grid{margin-top:16px}
@media(max-width:600px){.rcmc-club-content{gap:15px}.rcmc-club-section{padding:20px}.rcmc-club-page{margin-top:22px}.rcmc-club-section h2{margin-bottom:17px}}

/* RCMC 1.3.3: neutral dividers and independent document card */
.rcmc-club-section h2:after{display:none}
.rcmc-club-about,.rcmc-club-track,.rcmc-club-documents{background:var(--surface)}
.rcmc-club-section h2{border-bottom-color:var(--line)}
.rcmc-club-track>.rcmc-documents,.rcmc-club-track>.rcmc-document-grid{margin-top:25px}

/* RCMC 1.3.4: document shortcode is a separate sibling card */
.rcmc-club-content > .rcmc-club-documents.rcmc-club-section{margin:0;padding:clamp(22px,3vw,38px)}

/* RCMC 1.3.6: track facts and independent arrival card */
.rcmc-track-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:25px 0 30px}
.rcmc-track-facts>div{background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:19px 15px;display:flex;flex-direction:column;gap:4px}
.rcmc-track-facts strong{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.3;color:var(--text)}
.rcmc-track-facts span,.rcmc-track-equipment span{font-size:.91rem;color:var(--muted)}
.rcmc-club-track h3,.rcmc-club-arrival h3{font-size:1.13rem;margin:20px 0 14px}
.rcmc-track-equipment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 24px}
.rcmc-track-equipment>div{display:flex;flex-direction:column;gap:2px;padding:0 0 12px;border-bottom:1px solid var(--line)}
.rcmc-arrival-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.rcmc-arrival-grid>div{min-width:0}
.rcmc-arrival-grid h3{margin-top:0}
.rcmc-arrival-grid .button{margin-top:7px}
@media(max-width:760px){.rcmc-track-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.rcmc-arrival-grid{grid-template-columns:1fr;gap:26px}}
@media(max-width:500px){.rcmc-track-equipment{grid-template-columns:1fr}.rcmc-track-facts>div{padding:14px 12px}.rcmc-arrival-grid .button{font-size:.88rem}}

/* RCMC 1.3.7 – kompakte Smartphone-Darstellung */
@media (max-width:900px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;min-height:68px;padding-block:9px;flex-wrap:nowrap}
 .brand{min-width:0;gap:7px;overflow:hidden}.brand img{width:56px;height:42px;flex:none}.brand span{font-size:clamp(.76rem,2.7vw,1rem);line-height:1.15;overflow-wrap:normal}
 .nav-toggle{display:block;grid-column:4;grid-row:1;padding:7px 10px;min-width:40px;min-height:40px}
 .header-actions{grid-column:2 / 4;grid-row:1;display:flex;gap:6px;margin:0}
 .header-actions .wa{min-width:40px;min-height:40px;padding:8px;justify-content:center}
 .header-actions .wa-icon{width:21px;height:21px}
 .header-actions .icon-button{min-width:40px;min-height:40px}
 .main-nav{grid-column:1 / -1;grid-row:2;order:unset;width:100%;margin:0}
 .main-nav.open{display:block;padding:8px 0 4px;border-top:1px solid var(--line)}
 .main-nav ul{display:block}.main-nav li{padding:0}.main-nav a{display:block;padding:10px 6px;font-size:1rem;white-space:normal}
}
@media (max-width:600px){
 .wrap{padding-inline:16px}
 .brand img{width:48px;height:38px}.brand span{font-size:clamp(.72rem,3.3vw,.95rem)}
 .hero{min-height:unset;padding:48px 0 55px;background-position:center}
 .hero h1{font-size:clamp(1.95rem,8vw,2.65rem);line-height:1.13;overflow-wrap:break-word}
 .hero p{font-size:1rem;line-height:1.55;margin:14px 0}
 .eyebrow{font-size:.68rem;letter-spacing:.07em}
 .hero-actions{display:flex;flex-wrap:wrap;gap:9px}
 .hero .button{margin:0;padding:10px 13px;font-size:.9rem;text-align:center}
 .section{padding-block:24px}.home-dashboard{padding-top:20px}
 .home-panel{padding:17px}.panel-heading{gap:10px;flex-wrap:wrap;margin-bottom:14px}
 .panel-heading h2{font-size:1.2rem;line-height:1.3}.panel-heading>a{font-size:.82rem}
 .home-event-list>.card{padding:14px}
 .rcmc-club-section{padding:18px}
 /* Filter und Veranstaltungsdetails ohne übergroße Zwischenräume */
 .rcmc-events .card,.rcmc-event-list .card{padding:15px}
 .rcmc-events a,.rcmc-event-list a{overflow-wrap:anywhere}
 .rcmc-events .button,.rcmc-event-list .button{font-size:.9rem}
}
@media(max-width:370px){.brand img{width:39px}.brand span{font-size:.7rem}.header-inner{gap:5px}.header-actions{gap:4px}.header-actions .wa,.header-actions .icon-button,.nav-toggle{min-width:36px;min-height:36px;padding:6px}}

/* RCMC 1.3.8 – Terminfilter auf schmalen Displays immer einreihig */
@media (max-width:600px){
 .rcmc-events-filter .rcmc-event-filter-buttons{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);
  gap:6px;flex-wrap:nowrap;margin-bottom:16px;width:100%;
 }
 .rcmc-events-filter .rcmc-event-filter-buttons .rcmc-filter-button{
  box-sizing:border-box;min-width:0;width:100%;padding:9px 4px;
  font-size:clamp(.72rem,3.15vw,.9rem);line-height:1.25;
  white-space:nowrap;text-align:center;border-radius:8px;
 }
}

/* RCMC 1.3.9 – larger brand, clearer hero and news thumbnails */
@media(min-width:901px){.brand img{width:145px;height:78px}.header-inner{min-height:94px}}
@media(min-width:601px) and (max-width:900px){.brand img{width:72px;height:52px}}
@media(max-width:600px){.brand img{width:57px;height:43px}.brand{gap:5px}}
@media(max-width:370px){.brand img{width:44px;height:36px}}
.hero{background-image:linear-gradient(90deg,rgba(5,13,22,.69),rgba(5,13,22,.12)),var(--hero)}
@media(max-width:600px){.hero{background-image:linear-gradient(90deg,rgba(5,13,22,.73),rgba(5,13,22,.26)),var(--hero)}}
.home-news-list .news-thumb{flex:0 0 112px;display:block}
.home-news-list .news-thumb img{display:block;width:112px;height:90px;object-fit:cover;border-radius:9px}
.home-news-list .news-item>div{min-width:0;flex:1}
@media(max-width:600px){.home-news-list .news-thumb{flex-basis:86px}.home-news-list .news-thumb img{width:86px;height:78px}.home-news-list .news-item{gap:11px}}
.rcmc-social-button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-width:150px;min-height:46px;padding:10px 17px!important;border-radius:9px!important;color:#fff!important;font-weight:700;text-decoration:none!important;line-height:1.3}
.rcmc-social-button svg{width:22px;height:22px;display:block;flex:none;fill:currentColor}
.rcmc-social-whatsapp{background:#168a4c!important}
.rcmc-social-facebook{background:#1877f2!important}
.rcmc-social-button:hover{filter:brightness(1.1)}

/* RCMC 1.3.10 – besser sichtbares Vereinslogo und helleres Titelbild */
.hero{background-image:linear-gradient(90deg,rgba(5,13,22,.52),rgba(5,13,22,.06)),var(--hero)}
@media(max-width:900px){
 .brand img{width:78px;height:57px;max-width:none;object-fit:contain}
 .header-inner{min-height:76px}
}
@media(max-width:600px){
 .brand img{width:78px;height:57px}
 .brand{gap:6px}
 .brand span{font-size:clamp(.69rem,3vw,.9rem)}
 .hero{background-image:linear-gradient(90deg,rgba(5,13,22,.52),rgba(5,13,22,.12)),var(--hero)}
}
@media(max-width:370px){
 .brand img{width:62px;height:48px}
 .brand span{font-size:.69rem}
}

/* RCMC 1.3.12 – mobiles Logo gross, Vereinsname darunter */
@media (max-width:600px){
 .header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:0;padding-top:12px;padding-bottom:12px}
 .header-inner .brand{display:flex;flex:1 1 0;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;margin:0}
 .header-inner .brand img{display:block;width:clamp(125px,35vw,165px);height:65px;max-width:100%;object-fit:contain;object-position:left center;background:transparent;border-radius:0}
 .header-inner .brand span{display:block;font-size:clamp(.77rem,3.2vw,1rem);line-height:1.25;white-space:nowrap;letter-spacing:-.02em}
 .header-inner .header-actions{display:flex;order:1;margin-left:auto;gap:6px;flex:0 0 auto}
 .header-inner .nav-toggle{display:block;order:2;flex:0 0 auto}
 .header-inner .main-nav{order:3;flex:0 0 100%;width:100%;margin:0}
 .header-inner .header-actions .wa,.header-inner .header-actions .icon-button,.header-inner .nav-toggle{min-width:40px;min-height:42px;padding:8px}
}
@media(max-width:370px){
 .header-inner{gap:4px}
 .header-inner .brand img{width:115px;height:55px}
 .header-inner .brand span{font-size:.7rem}
 .header-inner .header-actions{gap:4px}
 .header-inner .header-actions .wa,.header-inner .header-actions .icon-button,.header-inner .nav-toggle{min-width:34px;min-height:38px;padding:6px}
}

/* RCMC 1.3.12 – mobil nur grosses Logo, keine doppelte Namenszeile */
@media (max-width:600px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:6px;row-gap:0;padding-block:10px;min-height:86px}
 .header-inner .brand{display:flex;grid-column:1;grid-row:1;flex-direction:row;align-items:center;min-width:0;width:100%;margin:0;overflow:visible}
 .header-inner .brand span{display:none!important}
 .header-inner .brand img{width:100%;max-width:240px;height:78px;object-fit:contain;object-position:left center;flex:0 1 auto}
 .header-inner .header-actions{grid-column:2;grid-row:1;order:unset;margin:0;gap:5px}
 .header-inner .nav-toggle{grid-column:3;grid-row:1;order:unset;margin:0}
 .header-inner .main-nav{grid-column:1 / -1;grid-row:2;order:unset;width:100%}
 .header-inner .header-actions .wa,.header-inner .header-actions .icon-button,.header-inner .nav-toggle{min-width:39px;min-height:42px;padding:7px}
}
@media(max-width:370px){
 .header-inner{column-gap:4px}
 .header-inner .brand img{width:100%;height:66px;max-width:210px}
 .header-inner .header-actions{gap:4px}
 .header-inner .header-actions .wa,.header-inner .header-actions .icon-button,.header-inner .nav-toggle{min-width:34px;min-height:38px;padding:6px}
}

/* 1.3.13: getrennte transparente Logos, passend zum gewählten Farbschema.
   Diese Regeln stehen zuletzt, um ältere mobile display:block-Regeln zu überschreiben. */
.brand img.rcmc-logo{width:150px;height:auto;max-height:62px;object-fit:contain;object-position:left center;background:transparent;border:0;border-radius:0}
.brand img.rcmc-logo-for-light{display:block}
.brand img.rcmc-logo-for-dark{display:none}
html[data-theme="dark"] .brand img.rcmc-logo-for-light{display:none}
html[data-theme="dark"] .brand img.rcmc-logo-for-dark{display:block}
@media(max-width:600px){
 .header-inner .brand img.rcmc-logo{width:100%;max-width:260px;height:auto;max-height:85px;object-fit:contain;object-position:left center}
 .header-inner .brand img.rcmc-logo-for-light{display:block}
 .header-inner .brand img.rcmc-logo-for-dark{display:none}
 html[data-theme="dark"] .header-inner .brand img.rcmc-logo-for-light{display:none}
 html[data-theme="dark"] .header-inner .brand img.rcmc-logo-for-dark{display:block}
}

/* 1.3.14: Logo allein im Header, ohne doppelte Beschriftung. */
.brand{min-width:0}
.brand img.rcmc-logo{max-width:220px}
@media(max-width:600px){.header-inner .brand img.rcmc-logo{max-width:260px}}

/* 1.3.16: Footer bei kurzen Seiten am unteren Fensterrand halten. */
html{min-height:100%}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
#content{flex:1 0 auto;width:100%}
.site-footer{flex-shrink:0}
