/*
Theme Name: Kawa No Mura
Description: Een modern clubthema met bewerkbare WordPress-blokken, clubfoto’s en een eenvoudige startinrichting.
Version: 2.12.2
Author: Kawa No Mura
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: kawa-no-mura
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--knm-wine:#490617;--knm-orange:#f5a055;--knm-paper:#faf8f4;--knm-ink:#211d1e;--knm-soft:#71696b;--knm-line:#e2d9d4;--knm-sand:#f0ebe5}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--knm-paper);color:var(--knm-ink);font-family:Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%;height:auto}
a{color:var(--knm-wine);text-underline-offset:4px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #b65813;outline-offset:5px}
button{font:inherit;cursor:pointer}
.wp-site-blocks{padding:0;overflow:clip}
.wp-site-blocks>*,.knm-page-content,.knm-site-header,.knm-site-footer{margin-block:0}
.knm-wrap{width:min(100%,1180px);max-width:1180px;margin-inline:auto!important;padding-inline:44px}
.knm-wrap>.wp-block-columns{margin-block:0}
h1,h2,h3{color:inherit;text-wrap:balance}
h1{font-size:clamp(2.7rem,5vw,4.7rem)}
h2{font-size:clamp(1.9rem,3.5vw,2.7rem);font-weight:750;line-height:1.12;letter-spacing:-.04em;margin-block:16px 20px}
h3{font-size:1.35rem;line-height:1.25;letter-spacing:-.025em}
p{margin-block:0 18px}
.wp-block-image{margin:0}
.wp-block-buttons{gap:14px;align-items:center}
.wp-block-button .wp-block-button__link{font-size:13px;line-height:1.4;font-weight:700;border:1px solid transparent;border-radius:4px;background:var(--knm-orange);color:var(--knm-wine);padding:14px 20px;text-decoration:none;transition:transform .18s,background .18s}
.wp-block-button .wp-block-button__link:hover{background:#ffb46f;transform:translateY(-2px)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--knm-wine);border:0;border-bottom:1px solid #c4b3ad;border-radius:0;padding:10px 0}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:transparent;border-color:var(--knm-wine)}
.knm-eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.7;text-transform:uppercase;margin-bottom:12px}
.knm-eyebrow::before{content:'';width:25px;height:2px;background:var(--knm-orange);flex-shrink:0}
.knm-topbar{background:var(--knm-wine);color:#fff3e6;text-align:center;padding:8px 20px}
.knm-topbar p{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;line-height:1.5;margin:0}
.knm-header-inner{display:flex;justify-content:space-between;align-items:center;gap:28px;min-height:100px;padding-block:15px}
.knm-identity{display:flex;align-items:center;gap:13px;flex-shrink:0}
.knm-identity>*{margin:0!important}
.knm-identity .wp-block-site-logo img{width:62px;height:62px;border-radius:50%;object-fit:contain;background:var(--knm-wine)}
.knm-brand-name>*{margin:0!important}
.knm-brand-name .wp-block-site-title{font-size:17px;line-height:1.25;text-transform:uppercase;letter-spacing:-.4px;font-weight:700}
.knm-brand-name .wp-block-site-title a{text-decoration:none;color:var(--knm-ink)}
.knm-brand-subtitle{font-size:9px;color:var(--knm-soft);text-transform:uppercase;letter-spacing:1.8px;margin-top:4px!important}
.knm-header-actions{display:flex;gap:24px;align-items:center}
.knm-header-actions>*{margin:0!important}
.knm-navigation{font-size:12px;font-weight:600}
.knm-navigation .wp-block-navigation__container{gap:23px}
.knm-navigation .wp-block-navigation-item__content{padding-block:8px;text-decoration:none;border-bottom:2px solid transparent}
.knm-navigation .wp-block-navigation-item__content:hover,.knm-navigation .current-menu-item>.wp-block-navigation-item__content{border-color:var(--knm-wine)}
.knm-hero{background:var(--knm-wine);color:#fff}
.knm-hero-grid.wp-block-columns{gap:0;min-height:540px;align-items:stretch!important;margin:0 auto!important;padding-right:0}
.knm-hero-grid>.wp-block-column{min-width:0;flex-basis:50%;margin:0!important;display:flex}
.knm-hero-copy{padding:60px 25px 60px 0;align-self:center;width:100%}
.knm-hero-copy h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:clamp(3.4rem,6.8vw,5.375rem);font-weight:400;letter-spacing:.2px;line-height:.98;text-transform:uppercase;margin:24px 0;max-width:100%}
.knm-hero-copy h1 em{font-style:normal;color:var(--knm-orange)}
.knm-hero-intro{font-size:14px;color:#ead9dd;max-width:340px;margin-bottom:28px}
.knm-hero-copy .wp-block-buttons{gap:18px}
.knm-hero-copy .is-style-outline .wp-block-button__link{color:#fff;border-color:#b7929c;font-size:12px}
.knm-hero-copy .is-style-outline .wp-block-button__link:hover{color:var(--knm-orange);border-color:var(--knm-orange)}
.knm-hero-photos{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:540px;margin:0!important;background:#350611}
.knm-hero-photos>.wp-block-image{position:absolute;inset:0;width:100%;height:100%;margin:0!important}
.knm-hero-photos>.wp-block-image img{display:block;object-fit:cover;width:100%;height:100%;object-position:center}
.knm-hero-photos>.wp-block-image~.wp-block-image{display:none}
.knm-hero-photos.knm-slider-ready>.knm-current-photo{display:block}
.knm-hero-photos>.wp-block-image[hidden]{display:none!important}
.knm-hero-photos::after{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,var(--knm-wine),transparent 32%),linear-gradient(0deg,#230510a6,transparent 45%);pointer-events:none}
.knm-photo-controls{position:absolute;z-index:2;right:28px;bottom:28px;display:flex;gap:10px;align-items:center;color:#fff}
.knm-photo-controls button{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #ffffffaa;background:#49061780;color:#fff}
.knm-photo-controls button:hover{background:#fff;color:var(--knm-wine)}
.knm-photo-controls button:focus-visible{outline-color:var(--knm-orange)}
.knm-photo-status{font-size:11px;letter-spacing:2px;min-width:40px;text-align:center}
.knm-values{border-bottom:1px solid var(--knm-line)}
.knm-values-inner{display:flex;justify-content:space-between;gap:18px;padding-block:21px;flex-wrap:wrap}
.knm-values-inner p{margin:0!important;font-size:11px;font-weight:700;letter-spacing:1.2px;color:var(--knm-wine);text-transform:uppercase}
.knm-club{padding-block:78px}
.knm-club-columns{align-items:center!important;gap:64px}
.knm-club-copy p:not(.knm-eyebrow){font-size:14px;color:var(--knm-soft)}
.knm-club-image{position:relative}
.knm-club-image img{display:block;object-fit:cover;height:300px;width:100%;border-radius:3px}
.knm-club-image::before{content:'';position:absolute;bottom:-12px;left:-12px;width:42%;height:48%;border-left:4px solid var(--knm-orange);border-bottom:4px solid var(--knm-orange)}
.knm-training{background:var(--knm-sand);padding-block:65px}
.knm-training-columns{gap:65px}
.knm-training-copy>p:not(.knm-eyebrow){color:var(--knm-soft);font-size:14px;max-width:300px}
.knm-training-options{margin:0}
.knm-training-options details{margin:0 0 8px;background:var(--knm-paper);border-radius:4px}
.knm-training-options summary{padding:18px 22px;font-weight:700;font-size:16px;color:var(--knm-wine);cursor:pointer;border-radius:4px}
.knm-training-options details[open]>summary{background:var(--knm-wine);color:#fff}
.knm-training-options details>h3,.knm-training-options details>p,.knm-training-options details>.wp-block-buttons{margin-left:24px;margin-right:24px}
.knm-training-options details>h3{margin-top:24px}
.knm-training-options details>p{color:var(--knm-soft);font-size:14px}
.knm-training-options details>.wp-block-buttons{padding-bottom:23px;margin-top:0}
.knm-moments,.knm-news{padding-block:65px}
.knm-news{border-top:1px solid var(--knm-line)}
.knm-section-head{position:relative;margin-bottom:30px}
.knm-section-head>.wp-block-buttons{position:absolute;bottom:0;right:0}
.knm-section-head h2{padding-right:200px}
.knm-moment-columns{gap:24px}
.knm-moment-columns figure img{display:block;width:100%;height:190px;object-fit:cover;object-position:center 60%;border-radius:3px;transition:transform .3s}
.knm-moment-columns figure{overflow:hidden;border-radius:3px}
.knm-moment-columns figure:hover img{transform:scale(1.025)}
.knm-moment-columns .knm-eyebrow{margin-top:18px;color:#8a4c39;font-size:9px;letter-spacing:1.5px}
.knm-moment-columns .knm-eyebrow::before{display:none}
.knm-moment-columns h3{margin-top:6px;font-size:18px}
.knm-news-query .wp-block-post-template{gap:24px;padding:0}
.knm-news-card{height:100%;padding-bottom:20px}
.knm-news-card .wp-block-post-featured-image{margin:0 0 18px;overflow:hidden;border-radius:3px}
.knm-news-card .wp-block-post-featured-image img{object-fit:cover;transition:transform .3s}
.knm-news-card .wp-block-post-featured-image a:hover img{transform:scale(1.025)}
.knm-news-card .wp-block-post-date{font-size:10px;color:#8a4c39;text-transform:uppercase;letter-spacing:1.2px;margin-block:0 10px}
.knm-news-card .wp-block-post-title{font-size:21px;margin-block:0 13px}
.knm-news-card .wp-block-post-title a{text-decoration:none}
.knm-news-card .wp-block-post-title a:hover{text-decoration:underline}
.knm-news-card .wp-block-post-excerpt{font-size:14px;color:var(--knm-soft);margin:0}
.knm-news-card .wp-block-post-excerpt__more-link{font-size:12px;color:var(--knm-wine);font-weight:700}
.knm-news-query .wp-block-query-no-results{color:var(--knm-soft);font-size:14px}
.knm-news-query .wp-block-query-pagination{margin-block:30px 0}
.knm-join{background:var(--knm-wine);color:#fff;padding-block:46px}
.knm-join-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.knm-join-inner>*{margin:0!important}
.knm-join h2{font-size:clamp(1.8rem,3.3vw,2.3rem);margin:0 0 10px}
.knm-join p{color:#ead9dd;font-size:13px;margin:0}
.knm-join .wp-block-buttons{flex-shrink:0}
.knm-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-block:35px;font-size:12px;color:var(--knm-soft)}
.knm-footer-inner>*{margin:0!important}
.knm-footer-brand h3{font-size:14px;color:var(--knm-wine);letter-spacing:.4px;margin:0 0 3px}
.knm-footer-brand p{font-size:11px;margin:0}
.knm-footer-inner a{color:var(--knm-soft)}
.knm-footer-inner .wp-block-button__link{font-size:11px}
.knm-page-heading{padding-block:65px 45px;border-bottom:1px solid var(--knm-line)}
.knm-page-heading h1{max-width:820px;margin-block:16px 22px;font-weight:750;letter-spacing:-.045em;line-height:1.05}
.knm-intro{font-size:17px;color:var(--knm-soft);max-width:660px;margin:0;line-height:1.65}
.knm-content-section,.knm-contact-section{padding-block:60px 75px}
.knm-content-section>.wp-block-columns,.knm-contact-section>.wp-block-columns{gap:55px;align-items:center!important}
.knm-content-section>.wp-block-columns img{display:block;border-radius:4px;width:100%;object-fit:cover}
.knm-content-section>h2:not(:first-child){margin-top:42px}
.knm-content-section details{padding:15px 0;border-bottom:1px solid var(--knm-line);margin:0}
.knm-content-section details summary{cursor:pointer;font-weight:700}
.knm-content-section details p{margin-block:15px 0;color:var(--knm-soft)}
.knm-values-cards{padding-block:0 75px}
.knm-values-cards .wp-block-columns{gap:40px}
.knm-values-cards p:not(.knm-eyebrow){font-size:14px;color:var(--knm-soft)}
.knm-contact-section .wp-block-column:last-child{padding:35px;background:var(--knm-sand);border-radius:4px}
.knm-archive,.knm-article,.knm-not-found{padding-block:60px 75px;min-height:50vh}
.knm-archive>h1,.knm-article>h1,.knm-not-found>h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.1;margin:0 0 28px}
.knm-article{max-width:1000px}
.knm-article>.wp-block-post-date{font-size:12px;color:var(--knm-soft);margin-bottom:30px}
.knm-article>.wp-block-post-featured-image{margin-bottom:35px}
.knm-article>.wp-block-buttons{margin-top:40px}
.wp-block-post-content{overflow-wrap:anywhere}
.wp-block-table table{border-collapse:collapse}
.wp-block-table td,.wp-block-table th{border:1px solid var(--knm-line);padding:12px 15px;text-align:left}
.wp-block-table thead{background:var(--knm-wine);color:#fff}
.wp-block-search__input{border:1px solid #b4a4a8;border-radius:4px;padding:12px;min-width:0}
.wp-block-search__button{border:0;border-radius:4px;background:var(--knm-wine);color:#fff;padding:12px 20px}
.wp-block-gallery img{border-radius:3px}
@media(min-width:1180px){.knm-hero-grid{max-width:1180px}.knm-hero{background:linear-gradient(to right,#490617 65%,#350611 65%)}}
@media(max-width:1050px){.knm-header-actions{gap:16px}.knm-navigation .wp-block-navigation__container{gap:15px}.knm-header-actions>.wp-block-buttons{display:none}.knm-hero-copy h1{font-size:clamp(3.3rem,7vw,5rem)}.knm-hero-copy .wp-block-buttons{align-items:flex-start}.knm-club-columns,.knm-training-columns{gap:40px}}
@media(max-width:850px){.knm-wrap{padding-inline:25px}.knm-hero-grid{padding-right:0}.knm-hero-copy{padding-right:20px}.knm-brand-name .wp-block-site-title{font-size:15px}.knm-identity .wp-block-site-logo img{width:50px;height:50px}.knm-header-inner{min-height:88px}.knm-moment-columns figure img{height:155px}.knm-section-head>.wp-block-buttons{position:static;margin-top:15px}.knm-section-head h2{padding-right:0}}
@media(max-width:781px){.knm-hero-grid.wp-block-columns{display:block;min-height:0;padding:0}.knm-hero-grid>.wp-block-column{display:block}.knm-hero-copy{padding:42px 25px;width:100%}.knm-hero-copy h1{font-size:clamp(3.3rem,10vw,5rem)}.knm-hero-intro{max-width:420px}.knm-hero-photos{height:320px;min-height:0}.knm-hero-photos::after{background:linear-gradient(0deg,#230510a6,transparent 70%)}.knm-club{padding-block:48px}.knm-club-columns{gap:36px}.knm-club-image img{height:auto;max-height:360px}.knm-training{padding-block:45px}.knm-training-columns{gap:25px}.knm-training-copy>p:not(.knm-eyebrow){max-width:none}.knm-moments,.knm-news{padding-block:45px}.knm-moment-columns{gap:30px}.knm-moment-columns figure img{height:240px}.knm-news-query .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}.knm-join-inner{align-items:flex-start;flex-direction:column}.knm-page-heading{padding-block:45px 35px}.knm-content-section,.knm-contact-section{padding-block:40px 50px}.knm-content-section>.wp-block-columns,.knm-contact-section>.wp-block-columns{gap:35px}.knm-values-cards{padding-block:0 45px}.knm-values-cards .wp-block-columns{gap:25px}}
@media(max-width:599px){.knm-header-inner{gap:12px}.knm-header-actions{margin:0}.knm-brand-subtitle{font-size:8px}.knm-topbar p{font-size:9px;letter-spacing:1px}.knm-navigation .wp-block-navigation__responsive-container.is-menu-open{padding:30px 25px;background:var(--knm-paper);color:var(--knm-wine)}.knm-navigation .is-menu-open .wp-block-navigation__container{gap:14px;font-size:21px;align-items:flex-start}.knm-navigation .is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start;padding-top:55px}.knm-values-inner{justify-content:flex-start;gap:12px 20px;padding-block:18px}.knm-values-inner p{font-size:9px;letter-spacing:.9px}.knm-hero-copy h1{font-size:clamp(3.1rem,12.5vw,4.3rem)}.knm-hero-photos{height:265px}.knm-photo-controls{right:20px;bottom:20px}.knm-news-query .wp-block-post-template{grid-template-columns:1fr}.knm-footer-inner{align-items:flex-start;flex-direction:column;gap:18px}.knm-footer-inner>.wp-block-buttons{margin:0}.knm-intro{font-size:15px}.knm-contact-section .wp-block-column:last-child{padding:25px}.knm-article,.knm-archive,.knm-not-found{padding-block:40px 50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* The editor shows all hero images so replacing or reordering them is straightforward. */
.editor-styles-wrapper .knm-hero-photos{display:grid;gap:12px;min-height:0;padding:20px}
.editor-styles-wrapper .knm-hero-photos>.wp-block-image{position:static;display:block!important;height:auto}
.editor-styles-wrapper .knm-hero-photos>.wp-block-image img{height:180px;object-fit:cover}
.editor-styles-wrapper .knm-hero-photos::after{display:none}
.editor-styles-wrapper .knm-hero-grid>.wp-block-column{display:block}
/* Club pages added in 1.1. */
.knm-navigation .wp-block-navigation__submenu-container{background:var(--knm-paper);color:var(--knm-wine);border:1px solid var(--knm-line);border-radius:4px;min-width:190px;padding:8px}
.knm-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:8px 12px}
.knm-navigation .wp-block-navigation-submenu__toggle{padding-inline:4px}
.knm-people .wp-block-columns{align-items:stretch!important;gap:28px}
.knm-person{height:100%;background:var(--knm-sand);border-radius:5px;padding:24px}
.knm-person>.wp-block-image img{display:block;width:100%;height:240px;object-fit:cover;object-position:center 25%;border-radius:3px}
.knm-person>.knm-eyebrow{font-size:9px;letter-spacing:1.3px;margin-top:24px}
.knm-person h3{font-size:23px;line-height:1.18;margin-top:12px}
.knm-person p:not(.knm-eyebrow){font-size:14px;color:var(--knm-soft)}
.knm-person a{overflow-wrap:anywhere}
.knm-person-phone a{font-weight:700;text-decoration:none}
.knm-vcp{border-top:1px solid var(--knm-line)}
.knm-vcp .knm-person{background:var(--knm-paper);border:1px solid var(--knm-line)}
.knm-vcp .knm-person>.wp-block-image img{height:285px;object-fit:contain;background:var(--knm-sand)}
.knm-schedule-note{padding:20px 24px;background:var(--knm-sand);border-left:4px solid var(--knm-orange);border-radius:3px;font-size:14px}
.knm-schedule .wp-block-table{overflow-x:auto;margin-block:20px 35px}
.knm-schedule .wp-block-table table{min-width:560px;font-size:14px}
.knm-footer-links{padding-bottom:30px}
.knm-footer-links .wp-block-buttons{gap:16px 30px;flex-wrap:wrap}
.knm-footer-links .wp-block-button__link{font-size:11px}
.knm-registration{margin-top:30px}
.knm-registration-frame{display:block;width:100%;border:0;min-height:640px;border-radius:4px;background:var(--knm-paper)}
.knm-form-fallback{font-size:13px;color:var(--knm-soft);margin-top:16px}
.knm-signup>.wp-block-shortcode{padding:20px;background:var(--knm-sand);border-radius:4px}
@media(max-width:1050px){.knm-header-actions>.wp-block-buttons{display:flex}.knm-header-actions{gap:15px}.knm-header-actions>.wp-block-buttons .wp-block-button__link{padding:11px 13px}.knm-navigation .wp-block-navigation__container{gap:12px}}
@media(max-width:900px) and (min-width:600px){.knm-header-inner{flex-wrap:wrap;gap:15px}.knm-header-actions{flex:1 0 100%;justify-content:space-between;padding-block:8px}.knm-header-inner{padding-block:15px}.knm-navigation .wp-block-navigation__container{gap:22px}}
@media(max-width:781px){.knm-person>.wp-block-image img{height:300px;object-fit:contain}.knm-people .wp-block-columns{gap:22px}.knm-vcp .knm-person>.wp-block-image img{height:280px}}
@media(max-width:599px){.knm-header-actions{gap:12px}.knm-header-actions>.wp-block-buttons .wp-block-button__link{font-size:11px;padding:10px 12px}.knm-brand-name .wp-block-site-title{font-size:13px}.knm-identity{gap:9px}.knm-identity .wp-block-site-logo img{width:42px;height:42px}.knm-header-inner{padding-inline:18px;gap:8px}.knm-navigation .wp-block-navigation__submenu-container{border:0;background:transparent;padding:0 0 0 12px}.knm-person{padding:20px}.knm-person>.wp-block-image img{height:260px}.knm-footer-links .wp-block-buttons{gap:12px 24px}}
/* Automatically maintained board and instructor cards. */
.knm-board>h2{font-size:30px;letter-spacing:-.6px;margin:0 0 24px}
.knm-board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-bottom:40px;align-items:stretch}
.knm-board-grid:last-child{margin-bottom:0}
.knm-board-person{min-width:0}
.knm-board-person .wp-block-image{margin:0 0 22px}
.knm-board-person>.knm-eyebrow:first-child{margin-top:0}
.knm-board-person h3{margin-bottom:18px;overflow-wrap:anywhere}
.knm-board-person p{line-height:1.6}
.knm-board-person p:last-child{margin-bottom:0}
.knm-board-person .knm-person-email{font-size:12px}
.knm-board-committees{display:flex;gap:7px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 18px}
.knm-board-committees li{font-size:10px;line-height:1.5;background:#e8dce0;color:var(--knm-wine);border-radius:3px;padding:5px 8px;max-width:100%;overflow-wrap:anywhere}
@media(max-width:900px){.knm-board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:599px){.knm-board-grid{grid-template-columns:1fr;gap:18px}.knm-board>h2{font-size:26px}}
/* Membership fees and separate JBN membership. */
.knm-membership-details{padding-block:0 35px;display:grid;grid-template-columns:1.15fr 1fr;gap:25px;align-items:start}
.knm-fees-panel,.knm-jbn-panel{padding:30px;border-radius:5px;border:1px solid var(--knm-line);background:#fff;min-width:0}
.knm-fees-panel{background:var(--knm-sand)}
.knm-membership-details h2{font-size:29px;line-height:1.18;letter-spacing:-.6px;margin:10px 0 20px}
.knm-membership-details p{font-size:14px;line-height:1.65}
.knm-membership-details .knm-eyebrow{font-size:9px;line-height:1.4;margin:0}
.knm-fees-table-wrap{overflow-x:auto;margin:22px 0}
.knm-fees-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
.knm-fees-table th,.knm-fees-table td{padding:12px 8px;border-bottom:1px solid #d8cec6;vertical-align:top;line-height:1.5}
.knm-fees-table th:first-child,.knm-fees-table td:first-child{padding-left:0}
.knm-fees-table thead th{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--knm-soft)}
.knm-fees-table tbody th{font-weight:500;min-width:95px}
.knm-fees-table td:nth-child(2){font-weight:700;white-space:nowrap;color:var(--knm-wine)}
.knm-fees-table td:nth-child(3){font-size:11px;color:var(--knm-soft)}
.knm-jbn-links{display:flex;align-items:flex-start;flex-direction:column;gap:15px;margin-top:24px}
@media(max-width:900px){.knm-membership-details{grid-template-columns:1fr}.knm-fees-panel,.knm-jbn-panel{padding:24px}}
@media(max-width:420px){.knm-fees-panel,.knm-jbn-panel{padding:20px}.knm-membership-details h2{font-size:25px}.knm-fees-table{font-size:12px}.knm-fees-table th,.knm-fees-table td{padding:10px 5px}}
/* Club channels and support. */
.knm-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;padding:10px max(25px,calc((100vw - 1092px)/2));flex-wrap:wrap}
.knm-topbar p{margin:0!important}
.knm-topbar .knm-topbar-support{color:var(--knm-orange);font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}
.knm-topbar .knm-topbar-support:hover{text-decoration:underline}
.knm-social-home{padding-block:58px}
.knm-social-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}
.knm-social-heading h2{font-size:38px;margin:8px 0 0}
.knm-social-heading .knm-eyebrow{margin:0}
.knm-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.knm-social-grid--single{grid-template-columns:minmax(0,1fr);max-width:560px;margin-inline:auto}
.knm-albums{padding-block:42px 64px}
.knm-albums h2{margin:22px 0;font-size:clamp(26px,4vw,42px)}
.knm-album-filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 32px}
.knm-album-filters a,.knm-album-categories a{display:inline-block;padding:10px 16px;border:1px solid var(--knm-line);border-radius:24px;text-decoration:none;font-size:13px}
.knm-album-filters a[aria-current],.knm-album-filters a:hover{color:#fff;background:var(--knm-wine);border-color:var(--knm-wine)}
.knm-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.knm-album-card{border:1px solid var(--knm-line);border-radius:6px;overflow:hidden;background:#fff;min-width:0}
.knm-album-card>a{display:block;text-decoration:none;color:inherit;height:100%}
.knm-album-card>a:hover h3{text-decoration:underline}
.knm-album-cover{aspect-ratio:4/3;display:grid;place-items:center;background:var(--knm-sand);overflow:hidden}
.knm-album-cover img{width:100%;height:100%;object-fit:cover}
.knm-album-cover span{font-size:18px;color:var(--knm-wine)}
.knm-album-card-copy{padding:22px}
.knm-album-card-copy h3{margin:0 0 10px;font-size:22px;overflow-wrap:anywhere}
.knm-album-card-copy p{margin:0;font-size:14px;color:var(--knm-soft)}
.knm-album-description{max-width:780px;line-height:1.7}
.knm-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-block:24px}
.knm-photo-grid figure{margin:0;min-width:0}
.knm-photo-grid a{display:block;overflow:hidden;border-radius:5px}
.knm-photo-grid img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.knm-photo-grid figcaption{font-size:13px;line-height:1.5;margin-top:8px}
.knm-album-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:32px}
.knm-album-pagination>*{padding:9px 14px;border:1px solid var(--knm-line);border-radius:4px}
.knm-album-pagination .current{background:var(--knm-wine);color:#fff}
.knm-photo-dialog{border:0;border-radius:8px;padding:20px;width:min(1000px,92vw);max-width:92vw;max-height:92vh;background:var(--knm-paper);color:var(--knm-ink)}
.knm-photo-dialog::backdrop{background:rgba(0,0,0,.84)}
.knm-photo-dialog>img{display:block;width:100%;height:min(62vh,700px);object-fit:contain;margin-block:15px}
.knm-photo-dialog>p{margin:10px 0;line-height:1.5}
.knm-photo-dialog button{padding:10px 18px;border:1px solid var(--knm-line);border-radius:5px;background:#fff;color:var(--knm-wine);cursor:pointer}
.knm-photo-close{display:block;margin-left:auto}
.knm-photo-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px}
@media(max-width:760px){.knm-album-grid,.knm-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.knm-album-card-copy{padding:16px}.knm-album-card-copy h3{font-size:18px}}
@media(max-width:440px){.knm-album-grid{grid-template-columns:1fr}.knm-album-filters a{font-size:12px;padding:9px 12px}.knm-photo-dialog{padding:12px}.knm-photo-dialog button{padding:9px 12px}}
.knm-social-card{background:#fff;border:1px solid var(--knm-line);border-radius:5px;padding:24px;min-width:0}
.knm-social-card h3{display:flex;align-items:center;gap:10px;font-size:18px;margin:0 0 22px}
.knm-social-card h3 svg,.knm-social-link svg{width:23px;height:23px;flex-shrink:0}
.knm-social-controls{padding:22px;background:var(--knm-sand);border-radius:4px;margin-bottom:20px}
.knm-social-controls p{font-size:14px;line-height:1.5;margin:0 0 16px}
.knm-social-controls .knm-social-disclosure{font-size:11px;color:var(--knm-soft);margin:12px 0 0}
.knm-social-load{background:var(--knm-wine);color:#fff;font-size:12px;font-weight:700;border:0;border-radius:4px;padding:12px 18px}
.knm-social-load[hidden],.knm-social-frame[hidden]{display:none}
.knm-social-frame{margin:0 auto 20px;max-width:500px;min-width:0;background:#fff}
.knm-social-frame iframe{display:block;border:0;width:100%;height:620px;max-width:100%}
.knm-social-direct{display:inline-block;margin-top:3px}
.knm-support-home{background:var(--knm-wine);color:var(--knm-paper);padding-block:44px}
.knm-support-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}
.knm-support-home .knm-eyebrow{color:var(--knm-orange);margin:0 0 10px}
.knm-support-home h2{font-size:38px;margin:0 0 18px}
.knm-support-home p:last-child{font-size:14px;line-height:1.5;margin-bottom:0;max-width:440px;color:#e6d7d9}
.knm-support-button{display:inline-block;background:var(--knm-orange);color:var(--knm-wine);text-decoration:none;padding:15px 22px;border-radius:4px;font-size:13px;font-weight:700;white-space:nowrap}
.knm-support-button:hover{background:#ffb46f}
.knm-channels-footer{border-top:1px solid var(--knm-line);padding-block:22px;background:var(--knm-paper)}
.knm-channels-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.knm-footer-support{font-size:12px;color:var(--knm-wine);text-decoration:none;line-height:1.6}
.knm-footer-support strong{display:block;font-size:14px}
.knm-social-links{display:flex;gap:12px;flex-wrap:wrap}
.knm-social-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:1px solid #cdbdc0;border-radius:30px;padding:10px 15px;color:var(--knm-wine);font-size:12px;font-weight:700;text-decoration:none}
.knm-social-link:hover{color:var(--knm-paper);background:var(--knm-wine);border-color:var(--knm-wine)}
.knm-album-link{padding-block:40px 55px;border-top:1px solid var(--knm-line)}
.knm-album-link h2{font-size:32px}
.knm-album-link p{max-width:600px;font-size:15px;line-height:1.6}
@media(max-width:700px){.knm-social-grid{grid-template-columns:1fr}.knm-social-heading{align-items:flex-start;flex-direction:column;gap:18px}.knm-social-heading h2,.knm-support-home h2{font-size:31px}.knm-support-inner{align-items:flex-start;flex-direction:column;gap:24px}.knm-social-home{padding-block:38px}.knm-social-card{padding:20px}.knm-topbar{justify-content:center;gap:5px;text-align:center}.knm-topbar .knm-topbar-support{font-size:10px}}
/* Sponsor banner. Native list stays readable without JavaScript. */
.knm-sponsors{background:#f0ece5;border-top:1px solid var(--knm-line);padding-block:38px 42px;color:var(--knm-wine)}
.knm-sponsors-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.knm-sponsors-heading .knm-eyebrow{margin:0 0 8px}
.knm-sponsors-heading h2{font-size:32px;letter-spacing:-.8px;margin:0;line-height:1.15}
.knm-sponsors-toggle{font:inherit;font-size:12px;color:var(--knm-wine);background:transparent;border:1px solid #b9a4a8;border-radius:30px;padding:9px 17px;cursor:pointer}
.knm-sponsors-toggle:hover{background:var(--knm-wine);color:var(--knm-paper)}
.knm-sponsors-toggle[hidden]{display:none}
.knm-sponsors-viewport{overflow-x:auto;scrollbar-width:thin;padding:3px}
.knm-sponsors-track{list-style:none;display:flex;align-items:stretch;gap:20px;margin:0;padding:0;width:max-content;min-width:100%}
.knm-sponsors-track>.knm-sponsor-card{flex:0 0 230px;box-sizing:border-box;width:230px;min-height:126px;background:#fff;border:1px solid #e4ded6;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:12px}
.knm-sponsors-track>.knm-sponsor-card:only-child{margin-inline:auto;flex-basis:310px;width:310px}
.knm-sponsor-logo{display:flex;align-items:center;justify-content:center;width:100%;min-height:62px;text-decoration:none;color:var(--knm-wine)}
.knm-sponsor-logo img{max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain;display:block}
.knm-sponsor-logo:focus-visible,.knm-sponsors-toggle:focus-visible{outline:3px solid var(--knm-wine);outline-offset:4px}
.knm-sponsor-name{font-size:20px;font-weight:700;text-align:center}
.knm-sponsor-example{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#746761}
.knm-sponsors.is-moving .knm-sponsors-viewport{overflow:hidden}
.knm-sponsors.is-moving .knm-sponsors-track{animation:knm-sponsor-scroll var(--knm-sponsor-duration,35s) linear infinite;will-change:transform}
.knm-sponsors.is-moving.is-paused .knm-sponsors-track,.knm-sponsors.is-moving:hover .knm-sponsors-track{animation-play-state:paused}
.knm-sponsors.is-moving:focus-within .knm-sponsors-track{animation:none;transform:none}
.knm-sponsors.is-moving:focus-within .knm-sponsors-viewport{overflow-x:auto}
@keyframes knm-sponsor-scroll{to{transform:translateX(calc(-1 * var(--knm-sponsor-distance,0px)))}}
@media(prefers-reduced-motion:reduce){.knm-sponsors.is-moving .knm-sponsors-track{animation:none;transform:none}.knm-sponsors.is-moving .knm-sponsors-viewport{overflow-x:auto}.knm-sponsors [data-knm-sponsor-clone]{display:none}}
@media(max-width:599px){.knm-sponsors{padding-block:28px 32px}.knm-sponsors-heading h2{font-size:27px}.knm-sponsors-track>.knm-sponsor-card{width:200px;flex-basis:200px;min-height:115px;padding:20px}.knm-sponsors-track>.knm-sponsor-card:only-child{width:min(310px,100%);flex-basis:auto;flex-grow:1}.knm-sponsors-toggle{font-size:11px;padding:8px 12px}}
/* Complete site, version 2. */
.knm-quick-links{padding-block:30px;border-bottom:1px solid var(--knm-line)}
.knm-quick-columns{gap:35px}
.knm-quick-columns>.wp-block-column:not(:last-child){border-right:1px solid var(--knm-line);padding-right:30px}
.knm-quick-columns h3{font-size:20px;margin-block:8px 12px}
.knm-quick-columns .knm-eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:6px}
.knm-quick-columns .wp-block-button__link{font-size:12px}
.knm-next-event{padding-block:45px;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center;border-bottom:1px solid var(--knm-line)}
.knm-next-heading h2{font-size:35px;margin:12px 0 18px}
.knm-plain-link{font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #c4b3ad;padding-bottom:5px}
.knm-event-card{display:grid;grid-template-columns:80px 1fr 38px;align-items:center;gap:24px;background:var(--knm-sand);border:1px solid var(--knm-line);border-radius:5px;padding:26px;color:var(--knm-ink)}
.knm-event-card .knm-event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--knm-wine);color:var(--knm-paper);width:80px;height:92px;border-radius:4px;line-height:1.1}
.knm-event-date strong{font-size:36px;letter-spacing:-1px}
.knm-event-date span{font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-top:6px}
.knm-event-kind{font-size:9px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#8a4c39;margin:0 0 8px}
.knm-event-card h2,.knm-event-card h3{font-size:24px;line-height:1.15;letter-spacing:-.6px;margin:0 0 12px}
.knm-event-card h2 a,.knm-event-card h3 a{color:var(--knm-wine);text-decoration:none}
.knm-event-card h2 a:hover,.knm-event-card h3 a:hover{text-decoration:underline}
.knm-event-when,.knm-event-location{font-size:12px;color:var(--knm-soft);margin:0 0 5px;line-height:1.5}
.knm-event-open{display:grid;place-items:center;border:1px solid #bca6a9;border-radius:50%;width:36px;height:36px;text-decoration:none;font-size:20px}
.knm-event-open:hover{background:var(--knm-wine);color:var(--knm-paper)}
.knm-event-empty{padding:30px;background:var(--knm-sand);border-radius:4px;font-size:14px;color:var(--knm-soft)}
.knm-event-empty h2{font-size:27px;color:var(--knm-wine)}
.knm-event-empty p:last-child{margin:0}
.knm-agenda-list{display:grid;gap:20px}
.knm-agenda-list .knm-event-card{background:transparent;grid-template-columns:80px 1fr 38px}
.knm-agenda-pagination{display:flex;gap:10px;margin-top:30px;flex-wrap:wrap}
.knm-agenda-pagination a{display:grid;place-items:center;min-width:36px;min-height:36px;border:1px solid var(--knm-line);border-radius:3px;text-decoration:none}
.knm-agenda-pagination a[aria-current=page]{background:var(--knm-wine);color:#fff}
.knm-event-details{display:flex;gap:35px;flex-wrap:wrap;padding:24px;background:var(--knm-sand);border-radius:4px;margin-bottom:30px;font-size:15px}
.knm-event-details p{margin:0}
.knm-event-details strong{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;display:inline-block;margin-bottom:8px;color:#8a4c39}
.knm-event-article .knm-event-details{margin-top:30px}
.knm-training-cta{padding-block:0 70px}
.knm-footer-complete{padding-block:50px;border-top:1px solid var(--knm-line);font-size:12px}
.knm-footer-complete>.wp-block-columns{gap:30px}
.knm-footer-complete h3{font-size:13px;letter-spacing:.3px;color:var(--knm-wine);margin:0 0 15px}
.knm-footer-complete p{font-size:11px;color:var(--knm-soft);line-height:2}
.knm-footer-complete a{color:var(--knm-soft);text-decoration:none}
.knm-footer-complete a:hover{text-decoration:underline;color:var(--knm-wine)}
.knm-footer-complete .wp-block-column:first-child{flex-basis:34%}
@media(max-width:950px){.knm-next-event{grid-template-columns:1fr;gap:25px}.knm-quick-columns h3{font-size:18px}.knm-quick-columns{gap:20px}.knm-quick-columns>.wp-block-column:not(:last-child){padding-right:15px}}
@media(max-width:781px){.knm-quick-links{padding-block:20px}.knm-quick-columns{gap:20px}.knm-quick-columns>.wp-block-column:not(:last-child){padding-right:0;padding-bottom:20px;border-right:0;border-bottom:1px solid var(--knm-line)}.knm-next-event{padding-block:35px}.knm-footer-complete>.wp-block-columns{gap:24px}.knm-footer-complete{padding-block:35px}.knm-footer-complete .wp-block-column{margin:0!important}.knm-footer-complete h3{margin-bottom:8px}.knm-footer-complete p{margin:0}}
@media(max-width:599px){.knm-event-card,.knm-agenda-list .knm-event-card{grid-template-columns:60px 1fr;gap:16px;padding:20px}.knm-event-card .knm-event-date{width:60px;height:76px}.knm-event-date strong{font-size:30px}.knm-event-date span{font-size:9px}.knm-event-card h2,.knm-event-card h3{font-size:20px}.knm-event-open{display:none}.knm-next-heading h2{font-size:31px}.knm-event-when,.knm-event-location{font-size:11px}.knm-event-details{padding:20px;gap:20px}}

/* Training absence: local message preparation, then WhatsApp on phone or computer. */
.knm-absence{padding-block:32px 64px}
.knm-absence-card{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;padding:40px;background:var(--knm-sand);border:1px solid var(--knm-line);border-radius:12px}
.knm-absence-intro h2{font-size:clamp(1.8rem,3vw,2.6rem)}
.knm-absence-small{font-size:13px;line-height:1.6;color:var(--knm-soft);margin-block:12px}
.knm-absence-form label{display:block;font-size:14px;font-weight:700;line-height:1.5}
.knm-absence-form label span{font-size:12px;font-weight:400}
.knm-absence-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;margin-bottom:20px}
.knm-absence-form input,.knm-absence-form select,.knm-absence-form textarea{display:block;width:100%;min-width:0;max-width:100%;font:inherit;font-size:16px;font-weight:400;color:var(--knm-ink);background:#fff;border:1px solid #b4a6a1;border-radius:4px;padding:12px;margin-top:6px}
.knm-absence-form textarea{resize:vertical;line-height:1.6;min-height:150px}
.knm-absence-form select:focus-visible,.knm-absence-form textarea:focus-visible{outline:3px solid #b65813;outline-offset:3px}
.knm-absence-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 18px;border:1px solid var(--knm-wine);border-radius:4px;color:#fff;background:var(--knm-wine);font:inherit;font-size:14px;font-weight:700;text-decoration:none;line-height:1.5}
.knm-absence-button:hover{background:#6b0c26;color:#fff}
.knm-absence-button:disabled{opacity:.55;cursor:default}
.knm-absence-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:16px}
.knm-absence-copy{border:0;background:transparent;color:var(--knm-wine);text-decoration:underline;text-underline-offset:4px;padding:12px 0;font-size:14px}
.knm-absence-message{margin-top:24px;padding-top:20px;border-top:1px solid #c9bcb5}
.knm-absence-message[hidden]{display:none}
.knm-absence-status{font-size:13px;line-height:1.6;margin:14px 0 0}
.knm-absence-status:empty{display:none}
@media(max-width:800px){.knm-absence-card{grid-template-columns:1fr;gap:26px;padding:28px}.knm-absence{padding-block:24px 44px}}
@media(max-width:480px){.knm-absence-card{padding:22px 18px}.knm-absence-fields{grid-template-columns:1fr}.knm-absence-actions{align-items:stretch;flex-direction:column}}

.knm-absence [hidden]{display:none!important}

.knm-absence-fields{grid-template-columns:1fr}.knm-absence [data-send]{min-width:160px}

.knm-hero-copy .knm-absence-banner{margin-top:18px}.knm-absence-banner .wp-block-button__link{background:#fff;color:var(--knm-wine);border-color:#fff}.knm-absence-banner .wp-block-button__link:hover{background:var(--knm-orange);border-color:var(--knm-orange)}.knm-absence{scroll-margin-top:24px}

.knm-faq details{border-bottom:1px solid var(--knm-line);padding:20px 0}.knm-faq summary{cursor:pointer;font-weight:700;font-size:18px;line-height:1.5;color:var(--knm-wine)}.knm-faq details[open] summary{margin-bottom:16px}.knm-faq details p{line-height:1.8;max-width:820px}
.knm-utility-links{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:18px;font-size:13px}.knm-utility-links a{color:inherit}
.knm-event-calendar{margin-top:15px;font-size:13px;line-height:1.6}.knm-event-calendar summary{display:list-item;width:fit-content;cursor:pointer;font-weight:700;color:var(--knm-wine);text-underline-offset:4px}.knm-event-calendar summary:focus-visible{outline:3px solid #b65813;outline-offset:4px}.knm-event-calendar>div{padding-top:10px}.knm-event-calendar a{display:block;width:fit-content;padding:6px 0}.knm-event-calendar p{max-width:420px;font-size:12px;color:var(--knm-soft);margin-top:8px}

.knm-member-area{padding-block:50px;min-height:50vh}.knm-member-area form{max-width:480px}.knm-member-area label{display:block;font-weight:600}.knm-member-area input:not([type=hidden]){display:block;width:100%;padding:12px;border:1px solid var(--knm-line);border-radius:6px;font:inherit;margin-top:8px}.knm-member-area button{background:var(--knm-wine);color:white;padding:13px 24px;border:0;border-radius:6px}.knm-member-notice{padding:18px;background:var(--knm-sand);border-left:4px solid var(--knm-wine)}.knm-member-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.knm-album-login{text-align:right}
