:root{--cream:#faf1e2;--cream2:#fffaf0;--forest:#29301c;--forest2:#3e4729;--leaf:#7d824c;--sage:#a7a77a;--line:#d8cdb5;--ink:#2b2b24;--muted:#716d61;--white:#fffdf8;--shadow:0 18px 55px rgba(42,47,28,.10);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fbf5e9 0,#f7efdf 55%,#f4ead8 100%);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;background-image:radial-gradient(#7d824c 0.7px,transparent .7px);background-size:22px 22px;mask-image:linear-gradient(to bottom,#000,transparent 42%)}a{color:inherit}.topbar{position:sticky;top:0;z-index:5;min-height:190px;display:grid;grid-template-columns:180px minmax(260px,1fr) 260px;align-items:center;gap:28px;padding:22px max(4vw,32px);background:#faf1e2;backdrop-filter:blur(14px);border-bottom:1px solid rgba(62,71,41,.16);box-shadow:0 8px 32px rgba(50,46,30,.05)}.brand-logo{height:145px;display:flex;align-items:center;justify-content:center}.brand-logo img{width:165px;height:145px;object-fit:contain;display:block;mix-blend-mode:multiply}.site-title strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,60px);line-height:.98;text-transform:uppercase;letter-spacing:.045em;color:var(--forest)}.site-title span{display:block;margin-top:12px;color:var(--leaf);font-size:13px;font-weight:800;letter-spacing:.34em;text-transform:uppercase}.weather{text-align:right;padding:16px 0}.weather span,.weather small{display:block;color:var(--muted);font-size:13px}.weather strong{display:block;margin:3px 0;font-family:Georgia,serif;font-size:25px;color:var(--forest)}.shell{position:relative;z-index:1;display:grid;grid-template-columns:220px minmax(0,1fr);max-width:1500px;margin:0 auto;min-height:calc(100vh - 250px)}.sidebar{padding:42px 20px 42px 28px}.sidebar nav{position:sticky;top:28px;display:grid;gap:7px}.sidebar a{position:relative;display:flex;align-items:center;min-height:50px;padding:12px 18px;border-radius:14px;color:var(--forest);text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;transition:.2s ease}.sidebar a:before{content:"";width:7px;height:7px;border-radius:50%;margin-right:12px;background:var(--sage);transition:.2s}.sidebar a:hover,.sidebar a.active{color:#fff;background:var(--forest);transform:translateX(4px);box-shadow:0 10px 28px rgba(41,48,28,.18)}.sidebar a:hover:before,.sidebar a.active:before{background:#d9d39f}.content{padding:48px clamp(28px,5vw,72px) 80px;max-width:1240px;width:100%}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--leaf);font-size:12px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.eyebrow:before{content:"";width:34px;height:1px;background:var(--leaf)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--forest);line-height:1.12}h1{font-size:clamp(42px,6vw,76px);margin:10px 0 22px;letter-spacing:-.035em}h2{font-size:clamp(28px,3.2vw,42px);margin:38px 0 22px}h3{font-size:24px}.hero{position:relative;overflow:hidden;padding:clamp(34px,5vw,66px);border:1px solid rgba(62,71,41,.13);border-radius:32px;background:linear-gradient(135deg,rgba(255,253,248,.95),rgba(245,237,217,.86));box-shadow:var(--shadow);font-size:18px;line-height:1.85}.hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-110px;background:radial-gradient(circle,rgba(125,130,76,.24),transparent 68%)}.hero h1{max-width:850px}.hero p{max-width:850px;color:#555247}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:50px}.section-head h2{margin-bottom:8px}.section-head a{color:var(--forest);font-weight:800;text-decoration:none;border-bottom:1px solid var(--leaf)}.photo-grid,.photo-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.photo-grid .card:first-child{grid-column:span 2}.photo-grid .card:first-child>img{height:520px}.card{overflow:hidden;border:1px solid rgba(62,71,41,.12);border-radius:var(--radius);background:rgba(255,253,248,.94);box-shadow:0 12px 38px rgba(50,46,30,.08);transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(50,46,30,.13)}.card>img{width:100%;height:310px;object-fit:cover;display:block}.card-body{padding:22px 24px 25px}.card-body h2,.card-body h3{margin:0 0 9px}.card-body p{margin:0;color:#666154}.photo-post{grid-column:1/-1}.post-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px}.post-gallery:has(.photo-thumb:only-child){grid-template-columns:1fr}.photo-thumb{padding:0;border:0;background:none;overflow:hidden;border-radius:16px;cursor:zoom-in;min-height:220px}.photo-thumb img{width:100%;height:100%;min-height:270px;max-height:460px;object-fit:cover;display:block;transition:transform .35s}.photo-thumb:hover img{transform:scale(1.025)}.sponsor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.sponsor-card{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:center;padding:28px}.sponsor-card a{display:flex;align-items:center;justify-content:center;min-height:130px;padding:15px;border-radius:16px;background:#fff}.sponsor-card img{max-width:100%;max-height:120px;object-fit:contain}.sponsor-card p{margin:0;color:#625f55}.content>form{max-width:760px;padding:32px;border-radius:var(--radius);background:rgba(255,253,248,.92);border:1px solid rgba(62,71,41,.13);box-shadow:var(--shadow)}label{display:block;color:var(--forest);font-weight:750}input,textarea,select{width:100%;padding:13px 14px;margin:7px 0 17px;border:1px solid #cec3aa;border-radius:12px;background:#fffdf8;color:var(--ink);font:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--leaf);box-shadow:0 0 0 4px rgba(125,130,76,.12)}textarea{min-height:170px;resize:vertical}.btn,button{appearance:none;background:var(--forest);color:#fff;border:0;border-radius:12px;padding:12px 18px;cursor:pointer;text-decoration:none;display:inline-block;font:inherit;font-weight:800;transition:.2s}.btn:hover,button:hover{background:var(--forest2);transform:translateY(-1px)}.notice{padding:14px 18px;border-radius:12px;background:#e9edda;border:1px solid #bcc396;margin-bottom:20px}.error{background:#f7e3df;border-color:#d7a8a0}.list-card,.admin-user{margin:12px 0;padding:16px 18px;display:flex;gap:18px;align-items:center;justify-content:space-between;border-radius:14px;background:var(--white);border:1px solid var(--line)}.inline-form{display:flex;gap:8px;align-items:center;margin-left:auto}.inline-form input{margin:0}.badge{font-size:12px;padding:4px 8px;background:var(--leaf);color:white;border-radius:999px}.danger-link{color:#7b211b}.login-box{max-width:520px;margin:50px auto;padding:35px;border-radius:26px;background:var(--white);box-shadow:var(--shadow)}.login-logo{max-width:260px;max-height:240px;object-fit:contain;display:block;margin:auto}.admin-top{min-height:125px;grid-template-columns:150px 1fr auto}.admin-top .brand-logo,.admin-top .brand-logo img{height:105px}.admin-top .brand-logo img{width:130px}.lightbox[hidden]{display:none}.lightbox{position:fixed;z-index:9999;inset:0;background:rgba(14,17,10,.94);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}.lightbox img{max-width:88vw;max-height:88vh;object-fit:contain;border-radius:8px}.lb-close,.lb-prev,.lb-next{position:absolute;background:rgba(255,255,255,.13);font-size:40px;border-radius:999px}.lb-close{right:25px;top:20px}.lb-prev{left:20px}.lb-next{right:20px}#lbCount{position:absolute;bottom:18px;color:white}.no-scroll{overflow:hidden}.rich-editor{min-height:300px;padding:14px;margin:6px 0 16px;border:1px solid var(--line);border-radius:12px;background:#fff;line-height:1.6}.editor-toolbar{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.editor-toolbar button{padding:7px 11px}.danger{background:#7b211b}.table-wrap{overflow:auto;border-radius:16px}table{width:100%;border-collapse:collapse;background:var(--white)}th,td{padding:11px;border:1px solid var(--line);text-align:left;vertical-align:top}footer{position:relative;z-index:2;text-align:center;padding:32px;border-top:1px solid rgba(62,71,41,.14);color:var(--muted);font-size:13px;background:rgba(255,250,240,.55)}@media(max-width:900px){.topbar{grid-template-columns:125px 1fr;padding:16px 22px}.brand-logo{height:110px}.brand-logo img{width:120px;height:110px}.weather{grid-column:1/-1;text-align:left;padding:8px 0 0}.shell{grid-template-columns:1fr}.sidebar{padding:10px 16px;border-bottom:1px solid var(--line)}.sidebar nav{position:static;display:flex;overflow:auto;gap:4px}.sidebar a{white-space:nowrap;min-height:44px}.content{padding:32px 20px 60px}.photo-grid,.photo-feed,.sponsor-grid{grid-template-columns:1fr}.photo-grid .card:first-child{grid-column:auto}.photo-grid .card:first-child>img,.card>img{height:300px}.post-gallery{grid-template-columns:repeat(2,1fr)}.sponsor-card{grid-template-columns:1fr}.admin-top{grid-template-columns:90px 1fr}.admin-top>.btn{grid-column:1/-1;text-align:center}.list-card,.admin-user{align-items:stretch;flex-direction:column}.inline-form{margin:0;flex-direction:column;align-items:stretch}}@media(max-width:560px){.topbar{grid-template-columns:88px 1fr;gap:14px}.brand-logo,.brand-logo img{width:88px;height:88px}.site-title strong{font-size:28px}.site-title span{font-size:10px;letter-spacing:.24em}.sidebar a{padding:10px 12px;font-size:11px}.sidebar a:before{display:none}.hero{padding:28px 23px;border-radius:22px}h1{font-size:42px}.post-gallery{grid-template-columns:1fr}.photo-thumb img{min-height:230px}.content>form{padding:22px}}
/* v7 layout refinements */
.sponsor-list{display:grid;grid-template-columns:1fr;gap:22px;max-width:980px}.sponsor-list .sponsor-card{grid-template-columns:190px minmax(0,1fr)}
.home-intro{margin-top:0}.home-intro .hero-copy{font-size:18px}.home-intro .hero-copy h2{font-size:clamp(28px,3vw,42px)}
.admin-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.admin-page-head h1{margin-bottom:8px}.admin-page-head p{margin:0;color:var(--muted)}
.admin-form-panel{max-width:820px;margin:0 0 30px;padding:28px;border:1px solid rgba(62,71,41,.13);border-radius:var(--radius);background:rgba(255,253,248,.94);box-shadow:var(--shadow)}.admin-form-panel h2{margin-top:0}.admin-form-panel form{max-width:none;padding:0;border:0;background:none;box-shadow:none}
.form-actions{display:flex;gap:10px;align-items:center;margin-top:10px}.btn.secondary{background:#e8e1d0;color:var(--forest)}.btn.small,button.small{padding:8px 11px;border-radius:9px;font-size:13px}.actions{white-space:nowrap}.actions .inline-form{display:inline-flex;margin-left:6px}.admin-table th{background:#f0eadc;color:var(--forest);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.admin-table td{background:#fffdf8}.table-thumb{width:76px;height:54px;object-fit:cover;border-radius:8px;display:block}.checkline{display:flex;gap:10px;align-items:center;margin:5px 0 15px}.checkline input{width:auto;margin:0}.rich-form .form-actions{margin-top:18px}.rich-form>button{margin-top:12px}
@media(max-width:900px){.admin-page-head{align-items:flex-start;flex-direction:column}.sponsor-list .sponsor-card{grid-template-columns:1fr}.actions{white-space:normal}}

.admin-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.admin-page-head h1{margin-bottom:6px}.admin-page-head p{margin:0;color:var(--muted)}.admin-form-panel{padding:28px;margin-bottom:28px;border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.admin-form-panel form{max-width:780px}.form-actions,.actions{display:flex;gap:8px;align-items:center}.secondary{background:var(--leaf)}.small{padding:8px 12px;font-size:13px}.table-thumb{width:90px;height:62px;object-fit:cover;border-radius:8px}.sponsor-thumb{object-fit:contain;background:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin:34px 0}.latest-single{grid-template-columns:1fr}.latest-single .card:first-child{grid-column:auto}.latest-single .card:first-child>img{height:min(56vh,560px)}

/* v9 fixed navigation + compact header */
.topbar{transition:min-height .25s ease,padding .25s ease;position:sticky;top:0;z-index:100}
.brand-logo,.brand-logo img,.site-title strong,.site-title span,.weather{transition:all .25s ease}
.sidebar{position:sticky;top:190px;align-self:start;height:calc(100vh - 190px);overflow-y:auto;transition:top .25s ease,height .25s ease}
.sidebar nav{position:static}
body.header-compact .topbar{min-height:95px;padding-top:8px;padding-bottom:8px}
body.header-compact .brand-logo{height:72px}
body.header-compact .brand-logo img{width:88px;height:72px}
body.header-compact .site-title strong{font-size:clamp(27px,3vw,42px)}
body.header-compact .site-title span{margin-top:5px}
body.header-compact .sidebar{top:95px;height:calc(100vh - 95px)}
.admin-top{background:#faf1e2}
body.header-compact .admin-top{min-height:64px}
body.header-compact .admin-top .brand-logo,body.header-compact .admin-top .brand-logo img{height:52px}
body.header-compact .admin-top .brand-logo img{width:68px}
body.header-compact .admin-top+.shell .sidebar{top:64px;height:calc(100vh - 64px)}
.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.admin-page-head h1{margin-bottom:8px}
.admin-page-head p{margin:0}
.form-actions{display:flex;gap:10px;margin-top:18px}
.save-top{white-space:nowrap;margin-bottom:8px}
@media(max-width:900px){.sidebar{position:relative;top:auto!important;height:auto!important;overflow:visible}.topbar{position:sticky}.admin-page-head{align-items:flex-start;flex-direction:column}}

footer a{color:var(--forest);font-weight:700;text-decoration:none}footer a:hover{text-decoration:underline}

/* v14 Nature Speurder palette + modern refinement */
:root{
 --cream:#FAF3E3;--cream2:#FAF3E3;--forest:#4f522b;--forest2:#969449;
 --leaf:#969449;--sage:#969449;--line:#D9CDB7;--ink:#303126;--muted:#706d60;
 --white:#fffdf8;--button:#797B3B;--hover:#969449;
 --shadow:0 14px 42px rgba(75,72,45,.10);--radius:20px
}
html,body{background:#FAF3E3}
body:before{opacity:.08;background-image:radial-gradient(#969449 .65px,transparent .65px)}
a{color:var(--hover)}a:hover{color:#797B3B}
.topbar,.admin-top{background:#FAF3E3!important;border-bottom:1px solid #D9CDB7;box-shadow:0 8px 28px rgba(89,83,55,.07)}
.brand-logo img{mix-blend-mode:normal}
.site-title strong,h1,h2,h3,label{color:#4f522b}.site-title span,.eyebrow{color:#969449}.eyebrow:before{background:#969449}
.shell{background:#FAF3E3}
.sidebar{background:#FAF3E3;border-right:1px solid rgba(217,205,183,.72)}
.sidebar a{color:#4f522b;border:1px solid transparent}
.sidebar a:before{background:#969449}
.sidebar a:hover,.sidebar a.active{background:#797B3B;color:#fff;border-color:#797B3B;box-shadow:0 10px 26px rgba(121,123,59,.20)}
.sidebar a:hover:before,.sidebar a.active:before{background:#FAF3E3}
.hero,.card,.content>form,.admin-form-panel,.list-card,.admin-user,.login-box,table{border-color:#D9CDB7;background:rgba(255,253,248,.88);box-shadow:var(--shadow)}
.hero{background:linear-gradient(145deg,rgba(255,253,248,.94),rgba(250,243,227,.94));border:1px solid #D9CDB7}
.hero:after{background:radial-gradient(circle,rgba(150,148,73,.20),transparent 68%)}
.card{border:1px solid #D9CDB7}.card:hover{box-shadow:0 20px 48px rgba(121,123,59,.15)}
.section-head a,footer a{color:#969449;border-color:#969449}.section-head a:hover,footer a:hover{color:#797B3B}
.btn,button{background:#797B3B;color:#fff;box-shadow:0 7px 18px rgba(121,123,59,.16)}
.btn:hover,button:hover{background:#969449;color:#fff;box-shadow:0 9px 22px rgba(150,148,73,.22)}
.btn.secondary,.secondary{background:#969449;color:#fff}.btn.secondary:hover,.secondary:hover{background:#797B3B}
input,textarea,select,.rich-editor{border-color:#D9CDB7;background:#fffdf8}
input:focus,textarea:focus,select:focus{border-color:#969449;box-shadow:0 0 0 4px rgba(150,148,73,.13)}
.table-wrap{border:1px solid #D9CDB7;box-shadow:0 10px 30px rgba(75,72,45,.07)}
th,td{border-color:#D9CDB7}.admin-table th{background:#f4ead7;color:#4f522b}.admin-table td{background:#fffdf8}
.badge{background:#797B3B}.notice{background:#f0f0df;border-color:#D9CDB7}
footer{background:#FAF3E3;border-top:1px solid #D9CDB7}
.sponsor-card a{border:1px solid #D9CDB7;background:#fffdf8}
.pagination .btn{min-width:110px;text-align:center}
@media(max-width:900px){.sidebar{border-right:0;border-bottom:1px solid #D9CDB7}}

.current-images{margin:1.25rem 0;padding:1rem;border:1px solid #D9CDB7;border-radius:16px;background:#fff}
.current-images .help{margin-top:-.25rem;color:#666}
.image-order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem}
.image-order-card{border:1px solid #D9CDB7;border-radius:14px;padding:.75rem;background:#FAF3E3}
.image-order-card img{width:100%;height:130px;object-fit:cover;border-radius:10px;display:block;margin-bottom:.65rem}
.image-order-card label{display:block;margin:.4rem 0}
.image-order-card .order-number{width:80px}
.remove-check{font-size:.9rem}

.image-order-card{cursor:grab;touch-action:none;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}
.image-order-card:active{cursor:grabbing}
.image-order-card.dragging,.image-order-card.dragging-touch{opacity:.55;box-shadow:0 10px 30px rgba(0,0,0,.18);transform:scale(.98)}
.drag-handle{display:flex;align-items:center;gap:.45rem;margin:.35rem 0;padding:.5rem .65rem;border:1px solid #D9CDB7;border-radius:9px;background:#fff;color:#797B3B;font-weight:700;cursor:grab;user-select:none}
.order-label{font-size:.88rem;color:#666;margin:.35rem 0}

.drag-handle{touch-action:none}
.sorting-photos{user-select:none}
.image-order-card.is-moving{opacity:.35}
.image-order-placeholder{border:2px dashed #969449;border-radius:14px;background:rgba(150,148,73,.10);min-height:160px}
.remove-photo-btn{border:0;background:transparent;color:#797B3B;text-decoration:underline;font-weight:700;cursor:pointer;padding:.35rem 0}
.remove-photo-btn:hover{color:#969449}
.new-photo-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:1rem}
.upload-preview-card{border:1px solid #D9CDB7;border-radius:14px;padding:.7rem;background:#FAF3E3}
.upload-preview-card img{width:100%;height:120px;object-fit:cover;border-radius:9px;display:block}
.upload-preview-meta{font-size:.85rem;font-weight:700;margin:.5rem 0 .15rem;color:#797B3B}

.image-order-card{overflow:hidden}
.image-order-card .drag-handle{
 display:flex!important;align-items:center;justify-content:center;gap:.55rem;
 width:100%;box-sizing:border-box;margin:0 0 .7rem 0;padding:.7rem .8rem;
 background:#797B3B!important;color:#fff!important;border:0!important;border-radius:9px;
 font-weight:700;cursor:grab!important;touch-action:none!important;
}
.image-order-card .drag-handle:active{cursor:grabbing!important;background:#969449!important}
.grip-dots{font-size:1.35rem;line-height:1}
.image-order-card img{pointer-events:none}

.sortable-ghost{opacity:.25!important}
.sortable-chosen{box-shadow:0 8px 28px rgba(0,0,0,.18)!important}
.sortable-drag{opacity:.95!important;transform:rotate(1deg)}
.sortable-fallback{opacity:.95!important;z-index:99999!important}
.drag-handle{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none!important}

.image-order-card{touch-action:none!important;cursor:grab!important;-webkit-user-select:none!important;user-select:none!important}
.image-order-card:active{cursor:grabbing!important}
.image-order-card.photo-drag-source{opacity:.22!important}
.photo-drag-ghost{position:fixed!important;z-index:2147483647!important;pointer-events:none!important;opacity:.92!important;box-shadow:0 18px 50px rgba(0,0,0,.3)!important;transform:scale(1.02);background:#FAF3E3;border:2px solid #969449;border-radius:14px;overflow:hidden}
.photo-drag-ghost .remove-photo-btn{display:none!important}

.image-position-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem}
.image-position-card{border:1px solid #D9CDB7;border-radius:14px;padding:.75rem;background:#FAF3E3}
.image-position-card img{width:100%;height:130px;object-fit:cover;border-radius:10px;display:block;margin-bottom:.65rem}
.image-position-card label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-weight:700}
.image-position-card .position-input{width:72px;text-align:center}

/* v22: compacte fotovoorvertoning in Admin > Foto's > Bewerken */
.image-position-grid{
  grid-template-columns:repeat(auto-fill,minmax(125px,150px))!important;
  justify-content:start;
}
.image-position-card{
  width:150px!important;
  max-width:150px!important;
  box-sizing:border-box;
}
.image-position-card img{
  width:100%!important;
  height:95px!important;
  max-height:95px!important;
  object-fit:cover!important;
}
.new-photo-previews{
  grid-template-columns:repeat(auto-fill,minmax(125px,150px))!important;
  justify-content:start;
}
.upload-preview-card{
  width:150px!important;
  max-width:150px!important;
  box-sizing:border-box;
}
.upload-preview-card img{
  width:100%!important;
  height:95px!important;
  max-height:95px!important;
  object-fit:cover!important;
}

/* v23 publieke foto-slider: altijd één foto zichtbaar */
.public-slider{width:100%}
.public-slider-stage{position:relative;width:100%;overflow:hidden;background:#FAF3E3}
.public-slide{display:none!important;width:100%!important;height:auto!important;max-height:680px;object-fit:contain;margin:0 auto;cursor:default!important}
.public-slide.active{display:block!important}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:0;border-radius:50%;background:rgba(121,123,59,.88);color:#fff;font-size:32px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.slider-arrow:hover{background:#969449}
.slider-prev{left:14px}.slider-next{right:14px}
.slider-count{position:absolute;right:14px;bottom:12px;background:rgba(0,0,0,.58);color:#fff;padding:5px 9px;border-radius:20px;font-size:13px}
@media(max-width:700px){.slider-arrow{width:38px;height:38px;font-size:27px}.slider-prev{left:8px}.slider-next{right:8px}}

/* v24: slider houdt exact dezelfde kaart/foto-weergave als een reeks met één foto */
.photo-post .public-slider-stage{
  position:relative;
  width:100%;
  overflow:hidden;
  background:transparent!important;
  border-radius:inherit;
}
.photo-post .public-slide{
  display:none!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:initial!important;
  margin:0!important;
  border-radius:inherit;
}
.photo-post .public-slide.active{display:block!important}
.photo-post .slider-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  z-index:5;width:46px;height:46px;padding:0;border:0;border-radius:50%;
  background:rgba(121,123,59,.88);color:#fff;font-size:34px;line-height:46px;
  text-align:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18)
}
.photo-post .slider-prev{left:16px}.photo-post .slider-next{right:16px}
.photo-post .slider-count{display:none!important}
@media(max-width:700px){
 .photo-post .slider-arrow{width:40px;height:40px;font-size:30px;line-height:40px}
 .photo-post .slider-prev{left:8px}.photo-post .slider-next{right:8px}
}

/* v25: publieke fotokaart behoudt vaste liggende hoogte; nooit hoger door bronafbeelding */
.photo-post .public-slider-stage{
  aspect-ratio: 16 / 7!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
.photo-post .public-slide,
.photo-post .public-slide.active{
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media(max-width:700px){
 .photo-post .public-slider-stage{aspect-ratio:16 / 9!important}
}

/* v26: exact één IMG-element per fotoreeks. Hoogte terug naar voorbeeldweergave. */
.single-photo-viewer{
 position:relative;
 width:100%;
 height:440px;
 overflow:hidden;
 background:#FAF3E3;
 border-radius:14px 14px 0 0;
}
.single-photo-image{
 display:block!important;
 width:100%!important;
 height:100%!important;
 object-fit:cover!important;
 object-position:center!important;
 margin:0!important;
 cursor:default!important;
}
.photo-arrow{
 position:absolute;top:50%;transform:translateY(-50%);z-index:4;
 width:46px;height:46px;padding:0;border:0;border-radius:50%;
 background:rgba(121,123,59,.90);color:#fff;font-size:34px;line-height:42px;
 text-align:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.22)
}
.photo-arrow:hover{background:#969449}
.photo-prev{left:14px}.photo-next{right:14px}
@media(max-width:900px){.single-photo-viewer{height:400px}}
@media(max-width:700px){
 .single-photo-viewer{height:260px}
 .photo-arrow{width:40px;height:40px;font-size:29px;line-height:36px}
 .photo-prev{left:8px}.photo-next{right:8px}
}

/* v27: volledige foto zichtbaar, zonder crop/zoom */
.single-photo-viewer{
 height:auto!important;
 min-height:0!important;
 background:#FAF3E3!important;
}
.single-photo-image{
 width:100%!important;
 height:auto!important;
 max-height:none!important;
 object-fit:contain!important;
 object-position:center!important;
}

/* v29 eenvoudige klassieke slideshow */
.simple-slideshow{position:relative;width:100%;overflow:hidden;background:#FAF3E3}
.slideshow-image{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;margin:0!important;cursor:default!important}
.slideshow-prev,.slideshow-next{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:100!important;width:48px!important;height:48px!important;border:0!important;border-radius:50%!important;background:rgba(121,123,59,.92)!important;color:white!important;font-size:34px!important;line-height:1!important;cursor:pointer!important;pointer-events:auto!important;display:flex!important;align-items:center!important;justify-content:center!important}
.slideshow-prev{left:14px!important}.slideshow-next{right:14px!important}
.slideshow-prev:hover,.slideshow-next:hover{background:#969449!important}

/* v30: slideshow behoudt vaste hoogte van de oorspronkelijke fotokaart */
.simple-slideshow{
 position:relative!important;
 width:100%!important;
 height:440px!important;
 overflow:hidden!important;
 background:#FAF3E3!important;
}
.simple-slideshow .slideshow-image{
 display:block!important;
 width:100%!important;
 height:100%!important;
 max-height:440px!important;
 object-fit:cover!important;
 object-position:center!important;
 margin:0!important;
}
@media(max-width:900px){
 .simple-slideshow{height:400px!important}
 .simple-slideshow .slideshow-image{max-height:400px!important}
}
@media(max-width:700px){
 .simple-slideshow{height:260px!important}
 .simple-slideshow .slideshow-image{max-height:260px!important}
}

/* v31 FINAL publieke slideshow */
.photo-post.card{
  overflow:hidden!important;
}
.photo-post .simple-slideshow{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:440px!important;
  min-height:440px!important;
  max-height:440px!important;
  overflow:hidden!important;
  background:#e9e1d1!important;
}
.photo-post .simple-slideshow .slideshow-image{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  cursor:default!important;
}
.photo-post .simple-slideshow .slideshow-prev,
.photo-post .simple-slideshow .slideshow-next{
  position:absolute!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  z-index:9999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  margin:0!important;
  padding:0 0 4px 0!important;
  border:0!important;
  border-radius:50%!important;
  background:rgba(121,123,59,.92)!important;
  color:#fff!important;
  font:normal 36px/1 Arial,sans-serif!important;
  box-shadow:0 2px 10px rgba(0,0,0,.28)!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.photo-post .simple-slideshow .slideshow-prev{left:16px!important;right:auto!important}
.photo-post .simple-slideshow .slideshow-next{right:16px!important;left:auto!important}
.photo-post .simple-slideshow .slideshow-prev:hover,
.photo-post .simple-slideshow .slideshow-next:hover{background:#969449!important}

@media (max-width:900px){
  .photo-post .simple-slideshow{
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
  }
}
@media (max-width:700px){
  .photo-post .simple-slideshow{
    height:250px!important;
    min-height:250px!important;
    max-height:250px!important;
  }
  .photo-post .simple-slideshow .slideshow-prev,
  .photo-post .simple-slideshow .slideshow-next{
    width:40px!important;height:40px!important;font-size:31px!important;
  }
  .photo-post .simple-slideshow .slideshow-prev{left:8px!important}
  .photo-post .simple-slideshow .slideshow-next{right:8px!important}
}

/* v33 mobiele header + vaste navigatie onderaan */
.mobile-bottom-nav{display:none}
@media(max-width:700px){
  body{padding-bottom:74px!important}
  .topbar{
    position:sticky!important;top:0!important;z-index:1000!important;
    height:78px!important;min-height:78px!important;
    padding:7px 12px!important;
    display:flex!important;align-items:center!important;
    justify-content:space-between!important;gap:10px!important;
    background:#FAF3E3!important;
  }
  .topbar .brand-logo{display:block!important;flex:0 0 auto!important}
  .topbar .brand-logo img{
    display:block!important;width:auto!important;height:64px!important;
    max-width:150px!important;object-fit:contain!important;
  }
  .topbar .site-title{display:none!important}
  .topbar .weather{
    margin-left:auto!important;display:flex!important;flex-direction:column!important;
    align-items:flex-end!important;justify-content:center!important;
    text-align:right!important;min-width:0!important;max-width:62vw!important;
  }
  .topbar .weather strong{font-size:20px!important;line-height:1.05!important;white-space:nowrap!important}
  .topbar .weather small{font-size:11px!important;line-height:1.2!important;margin-top:4px!important;max-width:220px!important}
  .sidebar{display:none!important}
  .shell{display:block!important;margin:0!important;padding:0!important}
  .content{margin:0!important;padding:16px 12px 20px!important;width:auto!important;max-width:none!important}
  body>footer{display:none!important}
  .mobile-bottom-nav{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;
    z-index:10000!important;height:70px!important;
    display:grid!important;grid-template-columns:repeat(6,1fr)!important;
    background:#FAF3E3!important;border-top:1px solid #D9CDB7!important;
    box-shadow:0 -3px 12px rgba(0,0,0,.10)!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
  }
  .mobile-bottom-nav a{
    min-width:0!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:3px!important;
    color:#797B3B!important;text-decoration:none!important;font-size:9px!important;
    line-height:1!important;font-weight:700!important;letter-spacing:.15px!important;
    padding:6px 2px 5px!important;
  }
  .mobile-bottom-nav a.active{background:rgba(150,148,73,.12)!important;color:#969449!important}
  .mobile-nav-icon{display:block!important;width:23px!important;height:23px!important}
  .mobile-nav-icon svg{display:block!important;width:23px!important;height:23px!important;fill:currentColor!important}
}

/* v34: mobiele UI UITSLUITEND op telefoons. iPad/tablet/desktop = normale site. */
@media (min-width:601px){
  .mobile-bottom-nav{display:none!important}
  body{padding-bottom:0!important}
  .sidebar{display:block!important}
  body>footer{display:block!important}
}
@media (min-width:601px) and (max-width:700px){
  .topbar{
    height:auto!important;min-height:0!important;
    padding:initial!important;
    display:flex!important;
  }
  .topbar .brand-logo img{width:auto!important;height:auto!important;max-width:none!important}
  .topbar .site-title{display:flex!important}
  .topbar .weather{max-width:none!important}
  .shell{display:flex!important}
  .content{width:100%!important}
}
/* Definitieve telefoongrens */
@media (min-width:601px){
  .mobile-bottom-nav,.mobile-nav-icon{display:none!important}
}

/* v35 harde tablet/desktop beveiliging: mobiele navigatie bestaat alleen op telefoon */
@media (min-width:601px){
  nav.mobile-bottom-nav,
  nav.mobile-bottom-nav *,
  nav.mobile-bottom-nav svg,
  nav.mobile-bottom-nav path{
    display:none!important;
    width:0!important;height:0!important;
    max-width:0!important;max-height:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
  }
}

/* v36: alleen telefoon - Recent gespot compacter */
@media(max-width:600px){
  .latest-single{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
  }
  .latest-single .card{
    width:88%!important;
    max-width:360px!important;
    margin:0 auto!important;
  }
  .latest-single .card>img{
    display:block!important;
    width:100%!important;
    height:210px!important;
    max-height:210px!important;
    object-fit:cover!important;
    object-position:center!important;
  }
}

/* v37: telefoon - volledige Recent gespot foto zichtbaar, geen afgesneden snavel/staart */
@media(max-width:600px){
  .latest-single .card>img{
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#FAF3E3!important;
  }
}

/* v38 definitieve fix: Home > Recent gespot op telefoon = volledige bronafbeelding */
@media screen and (max-width:600px){
  body .content .photo-grid.latest-single{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body .content .photo-grid.latest-single article.card{
    display:block!important;
    width:88%!important;
    max-width:360px!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    overflow:visible!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body .content .photo-grid.latest-single article.card > img{
    position:static!important;
    inset:auto!important;
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:50% 50%!important;
    transform:none!important;
    clip-path:none!important;
    margin:0!important;
    padding:0!important;
  }
}


/* v39: donatiepagina en beheer */
.donation-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:30px;align-items:start;padding:clamp(28px,5vw,54px);border:1px solid #D9CDB7;border-radius:28px;background:rgba(255,253,248,.92);box-shadow:var(--shadow)}
.donation-icon{display:flex;align-items:center;justify-content:center;width:96px;height:96px;border-radius:50%;background:#f0edda;font-size:46px}
.donation-text{font-size:18px;line-height:1.8;color:#555247;margin-bottom:24px}.donation-stats{font-size:18px;margin-bottom:10px;color:#4f522b}.donation-progress{height:18px;overflow:hidden;border-radius:999px;background:#e7dfcd;border:1px solid #D9CDB7}.donation-progress span{display:block;height:100%;min-width:0;background:#797B3B;border-radius:999px;transition:width .3s ease}.donation-percent{margin-top:8px;color:#706d60;font-size:14px}.donation-button{margin-top:25px;font-size:17px;padding:14px 22px}.donation-note{font-size:12px!important;color:#706d60!important;margin:12px 0 0!important}.home-donation{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:42px;padding:28px 32px;border:1px solid #D9CDB7;border-radius:22px;background:rgba(255,253,248,.88);box-shadow:var(--shadow)}.home-donation h2{margin:6px 0 8px;font-size:30px}.home-donation p{margin:0;max-width:720px;color:#666154}.home-donation .btn{flex:0 0 auto}.donation-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.toggle-row{display:flex;align-items:center;gap:10px;margin-bottom:22px}.toggle-row input{width:auto;margin:0}.help{color:#706d60;font-size:14px}
@media(max-width:700px){.donation-card{grid-template-columns:1fr;gap:18px;padding:24px 20px}.donation-icon{width:72px;height:72px;font-size:34px}.home-donation{align-items:flex-start;flex-direction:column;padding:24px 20px}.home-donation .btn{width:100%;text-align:center}.donation-admin-grid{grid-template-columns:1fr}}

/* v40 - officiële Steunactie widget */
.donation-card-widget{align-items:start}.donation-goal-label{margin:0 0 18px;color:#4f522b;font-size:16px}.donation-widget-wrap{width:100%;max-width:100%;overflow:hidden}.donation-widget-wrap .steunactie-widget{max-width:100%}.donation-widget-small{max-width:360px}.donation-widget-medium{max-width:560px}.donation-widget-big{max-width:760px}.donation-admin-grid select{width:100%}
@media(max-width:700px){.donation-widget-small,.donation-widget-medium,.donation-widget-big{max-width:100%}}

/* v42 - Steunactie widget volledige hoogte zichtbaar */
.donation-card-widget,
.donation-copy,
.donation-widget-wrap,
.donation-widget-wrap .steunactie-widget{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.donation-widget-wrap iframe,
.donation-widget-wrap .steunactie-widget iframe{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  border:0!important;
  overflow:visible!important;
}
/* De Steunactie-widget bouwt zijn inhoud extern op. Reserveer voldoende hoogte
   per officieel widgetformaat zodat de kaart niet wordt afgesneden. */
.donation-widget-small{min-height:430px}
.donation-widget-medium{min-height:590px}
.donation-widget-big{min-height:780px}
.donation-widget-small .steunactie-widget,.donation-widget-small iframe{min-height:430px!important}
.donation-widget-medium .steunactie-widget,.donation-widget-medium iframe{min-height:590px!important}
.donation-widget-big .steunactie-widget,.donation-widget-big iframe{min-height:780px!important}
@media(max-width:700px){
  .donation-widget-small{min-height:470px}
  .donation-widget-medium{min-height:650px}
  .donation-widget-big{min-height:900px}
  .donation-widget-small .steunactie-widget,.donation-widget-small iframe{min-height:470px!important}
  .donation-widget-medium .steunactie-widget,.donation-widget-medium iframe{min-height:650px!important}
  .donation-widget-big .steunactie-widget,.donation-widget-big iframe{min-height:900px!important}
}

/* v44 - mobiele Info navigatie + juridische informatie */
.mobile-nav-euro{font-size:25px!important;font-weight:900!important;line-height:23px!important;text-align:center}
.info-hero{margin-bottom:20px}
.info-jump{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.info-jump a{display:inline-block;padding:10px 14px;border-radius:999px;background:#f0edda;color:var(--forest);font-weight:800;text-decoration:none;border:1px solid #D9CDB7}
.info-card{scroll-margin-top:24px;margin:0 0 22px;padding:28px 30px;border:1px solid #D9CDB7;border-radius:22px;background:rgba(255,253,248,.92);box-shadow:var(--shadow)}
.info-card h2{margin-top:0}.info-card p:last-child{margin-bottom:0}
@media(max-width:600px){.info-jump{gap:7px}.info-jump a{font-size:12px;padding:9px 11px}.info-card{padding:22px 18px;border-radius:18px}}

/* v45: mobiele logo-uitlijning + bewerkbare Steunactie widgetcodes */
@media (max-width:600px){
  .topbar .brand-logo{
    height:64px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:center!important;
    margin:0!important;
    padding:0!important;
  }
  .topbar .brand-logo img{
    display:block!important;
    margin:auto 0!important;
    align-self:center!important;
  }
}
.widget-code-field{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:13px;line-height:1.45;min-height:105px}


/* v46: Info-knoppen als echte tabbladen; geen lege witte balk */
.info-jump a.active{background:var(--forest)!important;color:#fff!important;border-color:var(--forest)!important}
.info-panels{margin:0;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}
.info-card[hidden]{display:none!important}
.info-panels .info-card{margin-top:0!important}

/* v48: Info navigatie altijd zichtbaar */
.info-jump{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:2!important;background:transparent!important;padding:0!important;min-height:42px!important}
.info-jump a{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important}


/* v49: Info-inhoud altijd zichtbaar en server-side geselecteerd */
.info-card-visible{display:block!important;visibility:visible!important;opacity:1!important;min-height:140px!important}
.info-card-visible h2{display:block!important}

/* v50 bezoekersteller */
.sidebar-visitor-counter{margin:24px 18px 0;padding:18px 8px 0;border-top:1px solid #D9CDB7;text-align:center;color:#797B3B}.sidebar-visitor-counter strong{display:block;font-size:28px;line-height:1;font-weight:800}.sidebar-visitor-counter span{display:block;margin-top:6px;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;font-weight:700}.visitor-stats{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:18px;margin-top:24px}.visitor-stats h2{font-size:36px;margin:8px 0 0}.visitor-counter-settings{max-width:650px;margin-top:24px}.visitor-toggle{display:flex;align-items:center;gap:12px;font-weight:700;margin:16px 0}.visitor-toggle input{width:20px;height:20px}.muted{color:#6f6b60}@media(max-width:600px){.sidebar-visitor-counter{display:none!important}.visitor-stats{grid-template-columns:1fr}}

/* v51: Android mobiele ondernavigatie - altijd 5 knoppen op één rij */
@media screen and (max-width:600px){
  .mobile-bottom-nav{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-auto-flow:column!important;
    width:100%!important;
    max-width:100vw!important;
    box-sizing:border-box!important;
    gap:0!important;
    flex-wrap:nowrap!important;
    overflow:hidden!important;
  }
  .mobile-bottom-nav>a{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding-left:2px!important;
    padding-right:2px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    font-size:clamp(8px,2.45vw,11px)!important;
  }
  .mobile-bottom-nav .mobile-nav-icon{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* v52 Android: Steunactie-widget en pagina volledig naar beneden scrollbaar */
@media screen and (max-width:600px){
  html,body{
    min-height:100%!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  body .shell,
  body .content{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body .content{
    padding-bottom:110px!important; /* ruimte boven vaste mobiele navigatie */
  }
  body .donation-card,
  body .donation-card-widget,
  body .donation-copy,
  body .donation-widget-wrap,
  body .donation-widget-wrap .steunactie-widget{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body .donation-widget-small{min-height:600px!important}
  body .donation-widget-medium{min-height:800px!important}
  body .donation-widget-big{min-height:1150px!important}
  body .donation-widget-small .steunactie-widget,
  body .donation-widget-small iframe{min-height:600px!important;height:600px!important;max-height:none!important}
  body .donation-widget-medium .steunactie-widget,
  body .donation-widget-medium iframe{min-height:800px!important;height:800px!important;max-height:none!important}
  body .donation-widget-big .steunactie-widget,
  body .donation-widget-big iframe{min-height:1150px!important;height:1150px!important;max-height:none!important}
}
