*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:#333;background:#f5f5f5}a{color:#0073aa;text-decoration:none;transition:color .3s ease}a:hover{color:#005a87}img{max-width:100%;height:auto}.buurthuis-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.buurthuis-header{margin:0;padding:0}.buurthuis-header-image{height:300px;background-color:#0073aa;background-size:cover;background-position:center;background-repeat:no-repeat}.buurthuis-navigation{background:#333;position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px #0000001a}.buurthuis-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.buurthuis-menu li{margin:0}.buurthuis-menu a,.buurthuis-menu button{display:block;padding:1rem 1.5rem;color:#fff;text-decoration:none;transition:background .3s ease;font-size:1rem;background:none;border:none;cursor:pointer;font-family:inherit}.buurthuis-menu a:hover,.buurthuis-menu a.active,.buurthuis-menu button:hover{background:#0073aa;color:#fff}.buurthuis-menu .logout-link{background:#ffffff1a}.buurthuis-section{padding:3rem 0;background:#fff}.buurthuis-section:nth-child(2n){background:#f9f9f9}.buurthuis-layout-with-sidebar{display:grid;grid-template-columns:1fr 350px;gap:3rem;align-items:start}.buurthuis-home-layout{grid-template-columns:280px 1fr 350px}.buurthuis-main-content{min-width:0}.buurthuis-main-content h2{margin-top:0;color:#0073aa}.buurthuis-sidebar{position:sticky;top:80px}.buurthuis-sidebar-widget{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.buurthuis-sidebar-widget .widget-title{margin:0 0 1.5rem;font-size:1.3rem;color:#333;border-bottom:2px solid #0073aa;padding-bottom:.5rem}.buurthuis-sidebar-activiteiten{display:flex;flex-direction:column;gap:1rem}.buurthuis-sidebar-activiteit{display:flex;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #f0f0f0}.buurthuis-sidebar-activiteit:last-child{border-bottom:none;padding-bottom:0}.sidebar-activiteit-thumbnail{position:relative;width:80px;height:80px;flex-shrink:0;border-radius:6px;overflow:hidden}.sidebar-activiteit-thumbnail img{width:100%;height:100%;object-fit:cover}.sidebar-thumbnail-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#0073aa,#005a87);display:flex;align-items:center;justify-content:center}.sidebar-thumbnail-placeholder span{font-size:2.5rem}.sidebar-badge{position:absolute;top:4px;right:4px;background:#ff5722;color:#fff;padding:2px 6px;border-radius:3px;font-size:.7rem;font-weight:700;text-transform:uppercase}.sidebar-badge.badge-terugkerend{top:auto;bottom:4px;background:#7e57c2}.sidebar-activiteit-content{flex:1;min-width:0}.sidebar-activiteit-title{margin:0 0 .5rem;font-size:1rem;line-height:1.3}.sidebar-activiteit-title a{color:#333}.sidebar-activiteit-title a:hover{color:#0073aa}.sidebar-activiteit-meta{display:flex;flex-direction:column;gap:.25rem}.sidebar-meta-item{font-size:.85rem;color:#666}.sidebar-button-wrap{margin-top:1rem;text-align:center}.sidebar-no-activities{color:#666;font-style:italic;text-align:center}.buurthuis-sidebar-fotos{display:grid;gap:.75rem}.sidebar-foto-item{display:block;border-radius:6px;overflow:hidden;border:1px solid #efefef;background:#fff}.sidebar-foto-item img{width:100%;height:120px;object-fit:cover;display:block}.sidebar-foto-title{display:block;padding:.5rem .65rem;font-size:.9rem;color:#333}.buurthuis-welcome-content{margin-top:2rem}.buurthuis-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem;margin-top:1.5rem}.buurthuis-feature{text-align:center;padding:1rem;background:#f9f9f9;border-radius:8px;transition:transform .3s ease}.buurthuis-feature:hover{transform:translateY(-3px)}.buurthuis-feature .feature-icon{font-size:3rem;display:block;margin-bottom:.5rem}.buurthuis-feature h4{margin:.5rem 0;font-size:1.1rem;color:#0073aa}.buurthuis-feature p{margin:0;font-size:.9rem;color:#666}.buurthuis-page-header{text-align:center;padding:2rem 1rem;background:linear-gradient(135deg,#0073aa,#005a87);color:#fff;margin-bottom:2rem}.buurthuis-page-header h1{margin:0 0 .5rem}.buurthuis-page-header p{margin:0;opacity:.9}.buurthuis-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;justify-content:space-between;align-items:center}.buurthuis-filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.buurthuis-filter-btn{padding:.5rem 1rem;background:#f0f0f0;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.buurthuis-filter-btn:hover,.buurthuis-filter-btn.active{background:#0073aa;color:#fff}.buurthuis-search-input{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;min-width:250px;font-size:1rem}.buurthuis-activiteiten{display:grid;gap:2rem}.buurthuis-activiteit{display:grid;grid-template-columns:250px 1fr;gap:1.5rem;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:transform .3s ease,box-shadow .3s ease}.buurthuis-activiteit:hover{transform:translateY(-3px);box-shadow:0 4px 16px #0000001f}.buurthuis-activiteit-thumbnail{position:relative;height:200px;overflow:hidden}.buurthuis-activiteit-thumbnail img{width:100%;height:100%;object-fit:cover}.activiteit-thumbnail-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#0073aa,#005a87);display:flex;align-items:center;justify-content:center}.activiteit-thumbnail-placeholder span{font-size:4rem}.buurthuis-badge{position:absolute;top:10px;right:10px;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase}.buurthuis-badge-today{background:#ff5722;color:#fff}.buurthuis-badge-upcoming{background:#4caf50;color:#fff}.buurthuis-badge-past{background:#9e9e9e;color:#fff}.buurthuis-badge-recurring{top:auto;bottom:10px;background:#7e57c2;color:#fff}.buurthuis-activiteit-content{padding:1.5rem;display:flex;flex-direction:column}.buurthuis-activiteit-title{margin:0 0 .5rem;font-size:1.3rem}.buurthuis-activiteit-title a{color:#333}.buurthuis-activiteit-title a:hover{color:#0073aa}.buurthuis-activiteit-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;color:#666;font-size:.9rem}.buurthuis-activiteit-excerpt{flex:1;color:#666}.buurthuis-activiteit-link{display:inline-block;margin-top:1rem;color:#0073aa;font-weight:500}.buurthuis-single-activiteit{background:#fff;padding:2rem;border-radius:8px;margin:2rem 0}.back-link{display:inline-block;margin-bottom:1rem;color:#666}.back-link:hover{color:#0073aa}.activiteit-header h1{margin:0 0 1.5rem;color:#333}.activiteit-meta-large{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:#f9f9f9;border-radius:8px}.activiteit-meta-large .meta-item{display:flex;align-items:center;gap:.75rem}.activiteit-meta-large .meta-icon{font-size:1.5rem}.activiteit-meta-large .meta-item strong{display:block;font-size:.85rem;color:#666}.activiteit-recurring-notice{padding:.75rem 1rem;background:#e8f4fd;border-left:3px solid #0073aa;border-radius:4px;margin-bottom:1.5rem}.activiteit-featured-image{margin:1.5rem 0;border-radius:8px;overflow:hidden}.activiteit-featured-image img{width:100%;height:auto}.activiteit-gallery-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.activiteit-gallery-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:8px}.activiteit-content{line-height:1.8}.activiteit-cta{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #eee}.buurthuis-verenigingen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.buurthuis-vereniging-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:transform .3s ease}.buurthuis-vereniging-card:hover{transform:translateY(-3px)}.vereniging-thumbnail{height:200px;overflow:hidden}.vereniging-thumbnail img{width:100%;height:100%;object-fit:cover}.vereniging-thumbnail-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#0073aa,#005a87);display:flex;align-items:center;justify-content:center}.vereniging-thumbnail-placeholder span{font-size:4rem}.vereniging-content{padding:1.5rem}.vereniging-title{margin:0 0 .5rem}.vereniging-title a{color:#333}.vereniging-title a:hover{color:#0073aa}.vereniging-excerpt{color:#666;margin-bottom:1rem}.vereniging-meta{margin-bottom:1rem}.vereniging-meta .meta-item{display:block;font-size:.9rem;color:#666;margin-bottom:.25rem}.vereniging-link{color:#0073aa;font-weight:500}.buurthuis-single-vereniging{background:#fff;padding:2rem;border-radius:8px;margin:2rem 0}.vereniging-featured-image{margin:1.5rem 0;border-radius:8px;overflow:hidden;max-height:400px}.vereniging-featured-image img{width:100%;height:auto}.vereniging-contact-info{margin-top:2rem;padding:1.5rem;background:#f9f9f9;border-radius:8px}.vereniging-contact-info h3{margin-top:0}.vereniging-activities{margin-top:2rem}.mini-activities-list{display:flex;flex-direction:column;gap:.5rem}.mini-activity{display:flex;gap:1rem;padding:.75rem;background:#f9f9f9;border-radius:4px;color:#333}.mini-activity:hover{background:#e8f4fd}.mini-activity-date{color:#666;min-width:80px}.buurthuis-fotoalbum-section{background:#f9f9f9}.buurthuis-foto-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.buurthuis-foto-item{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease,box-shadow .3s ease;aspect-ratio:4/3;background:#fff;cursor:pointer}.buurthuis-foto-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.buurthuis-foto-item:hover{transform:translateY(-5px);box-shadow:0 4px 16px #0003}.buurthuis-foto-item:hover img{transform:scale(1.05)}.foto-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 50%,transparent 100%);color:#fff;padding:1.5rem 1rem 1rem;transform:translateY(100%);transition:transform .3s ease}.buurthuis-foto-item:hover .foto-overlay{transform:translateY(0)}.foto-overlay h4{margin:0 0 .5rem;font-size:1.1rem;color:#fff}.foto-overlay p{margin:0;font-size:.9rem;color:#ffffffe6}.foto-lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-content img{max-width:100%;max-height:80vh;border-radius:4px}.lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer}.lightbox-caption{text-align:center;color:#fff;padding:1rem 0}.lightbox-caption h3{margin:0 0 .5rem}.lightbox-caption p{margin:0;opacity:.8}.buurthuis-contact-section{padding:3rem 0}.buurthuis-contact-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}.buurthuis-contact-info h3{margin-top:0;color:#0073aa}.buurthuis-contact-item{display:flex;gap:1rem;margin-bottom:1.5rem}.contact-icon{font-size:1.5rem}.buurthuis-contact-item strong{display:block;color:#666;font-size:.9rem}.buurthuis-contact-item p{margin:.25rem 0 0}.buurthuis-contact-form-wrapper{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #00000014}.buurthuis-contact-form-wrapper h3{margin-top:0}.buurthuis-contact-form,.buurthuis-login-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group label{font-weight:500;color:#333}.form-group input,.form-group textarea{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#0073aa}.form-message{padding:1rem;border-radius:4px;margin-bottom:1rem}.form-message-success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.form-message-error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.buurthuis-button{display:inline-block;background:#0073aa;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .3s ease;text-decoration:none}.buurthuis-button:hover{background:#005a87;color:#fff}.buurthuis-button-small{display:inline-block;background:#0073aa;color:#fff;padding:.6rem 1.5rem;text-decoration:none;border-radius:4px;font-weight:500;transition:background .3s ease;font-size:.9rem}.buurthuis-button-small:hover{background:#005a87;color:#fff}.buurthuis-button-full{width:100%;text-align:center}.buurthuis-login-wrapper{display:flex;justify-content:center;padding:3rem 1rem}.buurthuis-login-box{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #00000014;width:100%;max-width:400px}.buurthuis-login-box h2{margin-top:0;text-align:center}.buurthuis-login-box>p{text-align:center;color:#666}.buurthuis-bestuur-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.bestuur-filter-btn{padding:.5rem 1rem;background:#f0f0f0;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease}.bestuur-filter-btn:hover,.bestuur-filter-btn.active{background:#0073aa;color:#fff}.buurthuis-bestuur-documenten{display:grid;gap:1rem}.bestuur-document-card{display:flex;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #00000014}.document-icon{font-size:2.5rem;flex-shrink:0}.document-content{flex:1}.document-meta{display:flex;gap:1rem;margin-bottom:.5rem}.document-categorie{background:#e8f4fd;color:#0073aa;padding:2px 8px;border-radius:3px;font-size:.85rem}.document-datum{color:#666;font-size:.85rem}.document-title{margin:0 0 .5rem}.document-beschrijving{color:#666;margin:.5rem 0}.document-download{display:inline-block;color:#0073aa;font-weight:500}.buurthuis-no-results{text-align:center;padding:3rem;background:#f9f9f9;border-radius:8px}.inline-link{background:none;border:none;color:#0073aa;cursor:pointer;font-size:inherit;padding:0;margin-left:.5rem}.inline-link:hover{text-decoration:underline}.buurthuis-footer{background:#333;color:#fff;padding:3rem 0 1rem;margin-top:3rem}.buurthuis-footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.buurthuis-footer-col h3{color:#fff;margin-top:0}.buurthuis-footer-col p{color:#fffc}.buurthuis-footer-col a{color:#90caf9}.buurthuis-footer-col a:hover{color:#fff}.buurthuis-social-links{display:flex;gap:1rem}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;border-radius:50%;color:#fff;transition:background .3s ease}.social-icon:hover{background:#0073aa;color:#fff}.social-icon svg{width:20px;height:20px}.buurthuis-footer-bottom{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.buurthuis-footer-bottom p{margin:0;color:#fff9;font-size:.9rem}@media (max-width: 992px){.buurthuis-home-layout,.buurthuis-layout-with-sidebar{grid-template-columns:1fr}.buurthuis-sidebar{position:static}.buurthuis-activiteit{grid-template-columns:1fr}.buurthuis-activiteit-thumbnail{height:250px}.buurthuis-contact-wrapper{grid-template-columns:1fr}}@media (max-width: 768px){.buurthuis-header-image{height:200px}.buurthuis-menu{flex-direction:column;align-items:stretch;text-align:center}.buurthuis-menu a,.buurthuis-menu button{padding:.75rem 1rem}.buurthuis-filters{flex-direction:column;align-items:stretch}.buurthuis-search-input{min-width:auto;width:100%}.activiteit-meta-large{flex-direction:column;gap:1rem}.buurthuis-foto-gallery{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
