/*
Theme Name: Love Care Sri Lanka
Theme URI: https://lovecaresrilanka.nl/
Author: Commpro
Description: Maatwerk thema voor Stichting Love Care Sri Lanka. Vereist de Love Care Content plugin.
Version: 3.6.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: love-care
*/

:root{--blue:#272C60;--green:#005F56;--burgundy:#941E32;--gold:#F7B718;--orange:#DF7500;--cream:#F8F5EF}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;}body{background:#f8f4ed;color:var(--blue);font-family:Georgia,serif}
.site-header{position:relative;width:100%;background:var(--cream);isolation:isolate;}
.header-inner{max-width:1320px;margin:0 auto;padding:7px 30px 5px;display:flex;align-items:center;gap:42px;min-height:106px;position:relative;z-index:2}
.brand{display:flex;flex:none;align-items:center;text-decoration:none}.brand img{display:block;width:94px;height:94px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:clamp(22px,3vw,48px);flex-wrap:wrap}
.main-nav a{color:var(--blue);font-size:clamp(17px,1.5vw,22px);font-weight:700;white-space:nowrap;text-decoration:none;transition:color .2s}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--burgundy)}
/* The SVG is an overlay ON TOP of the photograph, not below it. */
.wave{position:absolute;top:-1px;left:0;width:100%;height:clamp(54px,6vw,96px);display:block;z-index:10;pointer-events:none;overflow:visible}
.wave path.line{fill:none;stroke-linecap:round;stroke-linejoin:round}
.wave .green{stroke:var(--green);stroke-width:8}
.wave .blue{stroke:var(--blue);stroke-width:7}
.wave .burgundy{stroke:var(--burgundy);stroke-width:3.5}
.menu-toggle{display:none;border:1px solid #d6d6dc;border-radius:8px;padding:10px 13px;background:transparent;color:var(--blue);font:700 16px Arial,sans-serif;cursor:pointer}
.hero-photo{position:relative;width:100%;line-height:0;background:#fff;isolation:isolate}.hero-photo img{display:block;width:100%;height:auto;object-fit:cover}.bottom-wave{position:absolute;left:0;bottom:-1px;width:100%;height:clamp(40px,5.8vw,92px);z-index:11;display:block;pointer-events:none}
@media(max-width:780px){.header-inner{padding:7px 22px 6px;min-height:92px;justify-content:space-between;gap:12px}.brand img{width:78px;height:78px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:18px;right:18px;top:84px;padding:20px;background:var(--cream);border:1px solid #e4dfd6;border-radius:12px;box-shadow:0 14px 30px #272c601f;flex-direction:column;align-items:flex-start;gap:17px;z-index:5}.main-nav.is-open{display:flex}.main-nav a{font-size:19px}.wave{height:54px}}

/* Hero: tekst en jubileumlogo boven de bestaande foto, onder de golfranden */
.hero-photo{min-height:620px;overflow:hidden}
.hero-photo>img{width:100%;height:clamp(620px,55vw,850px);object-fit:cover;object-position:center center}
.hero-content{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:min(1320px,100%);margin:0 auto;padding:clamp(85px,9vw,135px) 30px 100px;left:0;right:0;line-height:normal;pointer-events:none}
.anniversary-mark{display:block;width:clamp(190px,23vw,300px);height:auto;object-fit:contain;object-position:left center;margin:0 0 12px -8px;filter:drop-shadow(0 2px 7px rgba(255,255,255,.25))}
.hero-copy{max-width:540px;pointer-events:auto}
.hero-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,5.4vw,82px);font-weight:700;letter-spacing:-.045em;line-height:.99;color:#272C60;margin:0 0 18px;text-wrap:balance}
.hero-copy p{font:400 clamp(16px,1.18vw,19px)/1.6 Arial,Helvetica,sans-serif;color:#20284d;max-width:470px;margin:0 0 24px;text-shadow:0 1px 18px rgba(255,255,255,.8)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 20px;border-radius:100px;font:700 15px/1.2 Arial,Helvetica,sans-serif;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s;min-height:48px}
.button:hover{transform:translateY(-2px)}.button-primary{background:#941E32;color:#fff;box-shadow:0 7px 18px #941e322b}.button-primary:hover{background:#792035}.button-secondary{border:1.5px solid #272C60;color:#272C60;background:#fffdf2c9}.button-secondary:hover{background:#fff}
@media(min-width:1000px){.hero-photo:before{content:'';position:absolute;inset:0 auto 0 0;width:58%;z-index:2;background:linear-gradient(90deg,rgba(255,252,240,.36),rgba(255,252,240,.08) 80%,transparent);pointer-events:none}}
@media(max-width:780px){.hero-photo>img{height:690px;object-position:62% center}.hero-content{justify-content:flex-start;padding:90px 22px 100px}.anniversary-mark{width:190px;margin-bottom:10px}.hero-copy{max-width:360px}.hero-copy h1{font-size:clamp(42px,8vw,62px)}.hero-copy p{font-size:15px;max-width:340px}.hero-actions{gap:9px}.button{padding:12px 15px;font-size:13px}}
@media(max-width:540px){.hero-photo>img{height:740px;object-position:64% center}.hero-content{padding-top:86px}.hero-copy{background:linear-gradient(90deg,rgba(248,245,239,.88),rgba(248,245,239,.58));border-radius:12px;padding:12px 10px 16px 0;max-width:315px}.hero-copy h1{font-size:43px}.hero-copy p{font-size:14px;line-height:1.5}.hero-actions{flex-direction:column;align-items:flex-start}.button{min-height:43px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

/* Verfijning: compacte header en bescheiden jubileumbeeldmerk */
.header-inner{min-height:78px;padding-top:2px;padding-bottom:2px;gap:34px}
.brand img{width:74px;height:74px}
.anniversary-mark{width:clamp(95px,10vw,135px);max-height:145px;margin:0 0 14px 0}
.hero-content{padding-top:clamp(64px,7vw,100px)}
@media(max-width:780px){
 .header-inner{min-height:70px;padding:3px 18px;gap:12px}
 .brand img{width:64px;height:64px}
 .main-nav{top:67px}
 .anniversary-mark{width:105px;max-height:115px;margin-bottom:10px}
 .hero-content{padding-top:76px}
}
@media(max-width:540px){.hero-content{padding-top:72px}.anniversary-mark{width:98px}}

/* Afstemming op het aangeleverde referentiebeeld: compact menu,
   ronde logo prominent en golven die echt over de foto lopen. */
.site-header{background:#F8F5EF;z-index:20}
.header-inner{max-width:1320px;min-height:138px;padding:8px 22px 4px;gap:52px}
.brand img{width:124px;height:124px}
.main-nav{gap:clamp(24px,3.1vw,52px);flex-wrap:nowrap}
.main-nav a{font-size:clamp(18px,1.75vw,26px)}
.hero-photo{margin-top:-2px}
.wave{height:clamp(68px,7.5vw,116px);top:-1px}
.hero-photo>img{height:clamp(650px,60vw,880px);object-position:center center}
.hero-content{width:min(1320px,100%);justify-content:flex-start;padding:clamp(170px,15vw,235px) 22px 110px}
.anniversary-mark{width:clamp(150px,17vw,250px);margin:0 0 18px -4px}
.hero-copy h1{font-size:clamp(48px,5.5vw,80px)}
@media(max-width:780px){
 .header-inner{min-height:92px;padding:6px 18px;gap:14px}
 .brand img{width:78px;height:78px}
 .main-nav{flex-wrap:nowrap}
 .wave{height:66px}
 .hero-photo>img{height:760px;object-position:61% center}
 .hero-content{padding:125px 22px 100px}
 .anniversary-mark{width:145px;margin-bottom:14px}
}
@media(max-width:540px){.hero-content{padding-top:110px}.anniversary-mark{width:125px}}

/* Header: 60px minder ruimte tussen navigatie en golfrand (desktop). */
@media (min-width: 781px) {
  .header-inner { min-height: 78px; padding-top: 0; padding-bottom: 0; }
  .brand img { width: 94px; height: 94px; }
}

/* Aanvullingen 2026 */
.qr-block{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.qr-block img{width:clamp(145px,17vw,210px);height:auto;background:white;padding:12px;border-radius:15px;box-shadow:0 8px 26px #0001}.qr-block p{flex:1;min-width:190px}.qr-mini{margin:26px 0 0;padding:24px;background:#fff;border:1px solid #e8e5df;border-radius:18px}.qr-mini img{width:145px}.social-icons{display:flex;gap:12px;align-items:center;margin-top:18px}.social-icons span{width:40px;height:40px;border:1px solid #ffffff70;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:white}.social-icons svg{width:21px;height:21px;fill:currentColor}.reports-table{width:100%;border-collapse:collapse;margin:24px 0 10px;font:16px/1.6 Arial,sans-serif}.reports-table th,.reports-table td{text-align:left;padding:17px 20px;border-bottom:1px solid #dadbe3}.reports-table th{background:#272C60;color:white}.reports-table td a{color:#941E32;font-weight:700;text-decoration:underline;text-underline-offset:3px}.reports-table tr:nth-child(even){background:#f8f4ed}.contact-links a{color:#941E32;font-weight:bold}.extra-project-image{width:100%;height:210px;object-fit:cover;border-radius:12px;margin:0 0 16px}.donate-aside{margin-top:30px;padding:24px;border-radius:16px;background:#f8f4ed}.donate-aside a{color:#941E32;font-weight:bold}@media(max-width:600px){.reports-table th,.reports-table td{padding:12px 8px;font-size:13px}.qr-block{justify-content:center}.qr-block p{min-width:100%}}

/* Hero content vertically centered within the photo, preserving wave clearance. */
@media (min-width: 781px) {
  .hero-photo .hero-content {
    justify-content: center;
    padding-top: 65px;
    padding-bottom: 65px;
  }
}

/* Fullscreen mobile navigation, accessible animated hamburger */
@media(max-width:780px){
 .site-header{z-index:1000;isolation:auto}
 .site-header .header-inner{position:relative;z-index:1002}
 .site-header .menu-toggle{display:flex!important;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid rgba(39,44,96,.18);border-radius:12px;background:#F8F4EE;color:#272C60;position:relative;z-index:1004;cursor:pointer}
 .menu-toggle .hamburger-lines{width:23px;height:18px;position:relative;display:block}
 .menu-toggle .hamburger-lines i{display:block;position:absolute;left:0;width:23px;height:2px;border-radius:3px;background:currentColor;transition:top .3s ease,transform .3s ease,opacity .18s ease}
 .menu-toggle .hamburger-lines i:nth-child(1){top:1px}.menu-toggle .hamburger-lines i:nth-child(2){top:8px}.menu-toggle .hamburger-lines i:nth-child(3){top:15px}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(1){top:8px;transform:rotate(45deg)}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(2){opacity:0;transform:scaleX(.2)}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(3){top:8px;transform:rotate(-45deg)}
 .site-header .main-nav,.site-header .main-nav.is-open{display:flex!important;position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:110px 24px 45px!important;background:#F8F4EE!important;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:1001!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:clamp(17px,3vh,30px)!important;overflow-y:auto!important;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-22px);transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1),visibility 0s linear .42s}
 .site-header .main-nav.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1),visibility 0s}
 .site-header .main-nav a{font-family:Lora,Georgia,serif!important;font-size:clamp(27px,6vw,39px)!important;line-height:1.15!important;font-weight:700!important;text-align:center!important;white-space:normal!important;opacity:0;transform:translateY(12px);transition:color .2s,opacity .28s,transform .32s}
 .site-header .main-nav.is-open a{opacity:1;transform:translateY(0)}
 .site-header .main-nav.is-open a:nth-child(1){transition-delay:.07s}.site-header .main-nav.is-open a:nth-child(2){transition-delay:.11s}.site-header .main-nav.is-open a:nth-child(3){transition-delay:.15s}.site-header .main-nav.is-open a:nth-child(4){transition-delay:.19s}.site-header .main-nav.is-open a:nth-child(5){transition-delay:.23s}.site-header .main-nav.is-open a:nth-child(6){transition-delay:.27s}
 .site-header .main-nav .nav-give{font-family:Arial,sans-serif!important;font-size:20px!important;padding:15px 36px!important;margin-top:8px!important}
 body.mobile-nav-open{overflow:hidden!important}
 .hero-copy{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}
@media(prefers-reduced-motion:reduce){.site-header .main-nav,.site-header .main-nav a,.menu-toggle .hamburger-lines i{transition:none!important}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Original supplied Love Care SVG waves: full-bleed, no image seams. */
.hero-photo > img.wave-art {position:absolute!important;left:0!important;right:0!important;width:100%!important;max-width:none!important;object-fit:fill!important;object-position:center!important;display:block!important;margin:0!important;padding:0!important;pointer-events:none!important;}
.hero-photo > img.wave-art.wave {top:-2px!important;bottom:auto!important;height:clamp(72px,7vw,120px)!important;z-index:15!important;}
.hero-photo > img.wave-art.bottom-wave {bottom:-2px!important;top:auto!important;height:clamp(72px,7vw,120px)!important;z-index:15!important;}
@media(max-width:780px){
.hero-photo > img.wave-art.wave,.hero-photo > img.wave-art.bottom-wave {height:clamp(65px,11vw,100px)!important;}
}

/* Full-viewport-width hero waves, independent of the 1320px content grid. */
.hero-photo {width:100vw!important;max-width:none!important;position:relative!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;margin-left:0!important;margin-right:0!important;overflow:hidden!important;}
.hero-photo > img.wave-art.wave,
.hero-photo > img.wave-art.bottom-wave {
  position:absolute!important;
  left:0!important;
  right:auto!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  transform:none!important;
  object-fit:fill!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
@supports (width: 100dvw) { .hero-photo {width:100dvw!important;} }

/* Compactere ruimte tussen het Love Care-logo en de bovenste hero-golf. */
@media (min-width:781px){
 .site-header .header-inner{min-height:116px!important;padding-top:2px!important;padding-bottom:2px!important;}
 .site-header .brand img{width:108px!important;height:108px!important;}
}
@media (max-width:780px){
 .site-header .header-inner{min-height:78px!important;padding-top:3px!important;padding-bottom:3px!important;}
 .site-header .brand img{width:72px!important;height:72px!important;}
}


/* Definitieve correctie jubileumbeeldmerk: originele SVG, onvervormd en klein */
.hero-content .anniversary-mark {
  display:block; flex:none; width:clamp(110px,11vw,155px) !important;
  max-width:155px !important; height:auto !important; max-height:none !important;
  aspect-ratio:575.237 / 443.431; object-fit:contain !important;
  object-position:left center; margin:0 0 14px 0 !important;
  transform:none !important; filter:none !important;
}
@media(max-width:780px){.hero-content .anniversary-mark{width:118px !important}}
@media(max-width:540px){.hero-content .anniversary-mark{width:104px !important}}

/* Header refinement: balanced proportions, understated menu, no excess gap. */
@media (min-width: 781px) {
  .site-header .header-inner {
    width: min(100% - 48px, 1320px);
    max-width: 1320px;
    min-height: 98px;
    padding: 4px 0;
    gap: 36px;
    align-items: center;
  }
  .site-header .brand img { width: 94px; height: 94px; }
  .site-header .main-nav { gap: clamp(23px, 2.5vw, 42px); flex-wrap: nowrap; }
  .site-header .main-nav a {
    font-size: clamp(16px, 1.13vw, 19px);
    font-weight: 700;
    letter-spacing: -0.015em;
    line-height: 1.2;
  }
  .hero-photo > .wave { height: clamp(52px, 5vw, 78px); }
}
@media (max-width: 780px) {
  .site-header .header-inner { min-height: 82px; padding: 4px 18px; }
  .site-header .brand img { width: 72px; height: 72px; }
  .hero-photo > .wave { height: 58px; }
}


/* Volledige homepage — vervolg op de goedgekeurde header en hero */
:root{--cream:#f8f4ed;--ink:#272C60;--forest:#005F56;--wine:#941E32;--yellow:#F7B718;--orange:#DF7500}
html{scroll-behavior:smooth;scroll-padding-top:24px}body{overflow-x:hidden}a:focus-visible,button:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.hero-copy h1{font-size:clamp(45px,5.1vw,75px)}
.content-wrap{width:min(1320px,calc(100% - 48px));margin-inline:auto}
.section{padding:clamp(76px,9vw,130px) 0}.eyebrow{font:800 12px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.19em;color:var(--forest);margin:0 0 20px}
.section h2,.cta-panel h2{font:700 clamp(38px,4.3vw,66px)/1.08 Georgia,serif;letter-spacing:-.04em;margin:0 0 25px;color:var(--ink)}
.section p,.footer-copy{font:400 17px/1.8 Arial,Helvetica,sans-serif}.lead{font:400 clamp(19px,2.1vw,26px)/1.6 Arial,sans-serif!important;color:#3d4368}
.intro-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,7vw,120px);align-items:center}
.intro-layout .intro-text{max-width:650px}.quote-art{position:relative;background:var(--forest);border-radius:52% 48% 49% 51% / 41% 55% 45% 59%;min-height:400px;display:flex;align-items:center;justify-content:center;padding:55px;transform:rotate(-2deg);box-shadow:22px 22px 0 #d9e6dd}
.quote-art blockquote{color:#fff;font:700 clamp(28px,3vw,43px)/1.25 Georgia,serif;letter-spacing:-.025em;margin:0;transform:rotate(2deg)}.quote-art span{color:var(--yellow)}
.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--wine);font:700 16px Arial,sans-serif;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:9px;margin-top:18px}
.section-projects{background:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.section-heading h2{margin-bottom:0;max-width:670px}.section-heading p{max-width:350px;margin:0;color:#4d5573}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{border:1px solid #e6e5e0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 15px 35px rgba(39,44,96,.055);display:flex;flex-direction:column;min-height:420px}
.card-art{height:190px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.card-art svg{width:100%;height:100%;position:absolute;inset:0}.card-art--green{background:#e3eee9}.card-art--gold{background:#fff2c6}.card-art--blue{background:#e6e8f0}.card-art .art-label{position:relative;font:700 60px Georgia,serif;color:rgba(39,44,96,.15)}
.project-card .card-content{padding:30px 28px 34px;display:flex;flex:1;flex-direction:column}.card-kicker{font:800 11px Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--forest)}.project-card h3{font:700 29px/1.2 Georgia,serif;letter-spacing:-.025em;margin:13px 0 12px}.project-card p{font-size:15px;line-height:1.7;color:#555a71;margin:0 0 20px}.project-card .text-link{margin-top:auto;font-size:14px;align-self:flex-start}
.jubilee{background:var(--ink);color:#fff;overflow:hidden}.jubilee-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:center}.jubilee-number{font:700 clamp(155px,20vw,290px)/.9 Georgia,serif;letter-spacing:-.09em;color:var(--yellow);position:relative}.jubilee-number:after{content:'JAAR';font:800 14px Arial,sans-serif;letter-spacing:.3em;position:absolute;left:15px;bottom:-16px;color:#fff}.jubilee h2{color:#fff}.jubilee .eyebrow{color:var(--yellow)}.jubilee p{color:#e4e6f3}.jubilee .button{margin-top:22px;background:var(--yellow);color:var(--ink);box-shadow:none}
.help-section{background:var(--cream)}.help-head{text-align:center;max-width:730px;margin:0 auto 50px}.help-head .eyebrow{margin-bottom:18px}.help-ways{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.help-way{padding:38px 32px;background:#fff;border-radius:16px;border-top:5px solid var(--forest)}.help-way:nth-child(2){border-color:var(--wine)}.help-way:nth-child(3){border-color:var(--orange)}.help-way .symbol{font:700 48px Georgia,serif;color:var(--ink);line-height:1}.help-way h3{font:700 26px Georgia,serif;margin:25px 0 10px}.help-way p{font-size:15px;color:#555a71;margin:0}.help-way .text-link{font-size:14px}
.newsletter-section{background:#eaf0ec}.newsletter-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.newsletter-note{background:#fff;padding:38px;border-radius:16px;border-left:6px solid var(--yellow);font:400 18px/1.7 Arial,sans-serif;color:#4b526e}.newsletter-note strong{display:block;color:var(--ink);font:700 25px Georgia,serif;margin-bottom:10px}
.transparency{background:#fff}.transparency-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.transparency-panel{padding:44px;border-radius:18px;background:var(--cream)}.transparency-panel h3{font:700 27px Georgia,serif;margin:0 0 15px}.transparency-panel p{margin:0;color:#535a73}
.contact-section{padding:85px 0;background:var(--forest);color:#fff}.contact-section h2{color:#fff}.contact-section .eyebrow{color:#d5e3c7}.contact-layout{display:flex;align-items:center;justify-content:space-between;gap:50px}.contact-layout>div{max-width:650px}.contact-layout p{color:#e6f2eb}.contact-section .button{background:var(--yellow);color:var(--ink);white-space:nowrap}
.site-footer{background:#20254f;color:#fff;padding:60px 0 30px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:75px;height:75px;background:#f8f4ed;border-radius:50%;padding:4px}.footer-brand strong{font:700 23px Georgia,serif}.site-footer p,.site-footer a{font:400 14px/1.8 Arial,sans-serif;color:#d7dbed}.site-footer h3{font:700 19px Georgia,serif;margin:0 0 17px}.site-footer a{display:block;text-decoration:none;margin:5px 0}.site-footer a:hover{text-decoration:underline}.footer-bottom{margin-top:48px;padding-top:25px;border-top:1px solid #ffffff30;display:flex;justify-content:space-between;gap:20px;color:#bec5e0;font:13px Arial,sans-serif}
@media(max-width:900px){.intro-layout,.jubilee-layout,.newsletter-layout,.transparency-grid{grid-template-columns:1fr;gap:38px}.quote-art{min-height:300px}.project-grid,.help-ways{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{display:block}.section-heading p{margin-top:20px}.footer-grid{grid-template-columns:1fr 1fr}.jubilee-number{font-size:180px}}
@media(max-width:600px){.content-wrap{width:min(100% - 36px,1320px)}.section{padding:70px 0}.project-grid,.help-ways,.footer-grid{grid-template-columns:1fr}.contact-layout{display:block}.contact-layout .button{margin-top:22px}.footer-bottom{flex-direction:column}.quote-art{min-height:280px;padding:35px}.project-card{min-height:0}.newsletter-note,.transparency-panel{padding:28px}.hero-copy h1{font-size:clamp(38px,10vw,52px)}.section h2{font-size:clamp(35px,10vw,48px)}}


/* Consistent 1320px grid for header, hero and page sections. */
:root { --layout-width:1320px; --layout-gutter:24px; }
.site-header .header-inner { width:min(calc(100% - 2 * var(--layout-gutter)), var(--layout-width)); max-width:none; margin-inline:auto; padding-inline:0; display:flex; align-items:center; gap:34px; }
.site-header .brand { height:100px; display:flex; align-items:center; flex:0 0 auto; }
.site-header .brand img { width:118px; height:118px; max-width:none; object-fit:contain; }
.site-header .main-nav { margin-left:auto; display:flex; align-items:center; justify-content:flex-end; gap:clamp(17px,2.2vw,36px); }
.site-header .main-nav a { font-size:clamp(15px,1.1vw,18px); }
.site-header .main-nav .nav-give { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:13px 22px; background:#941E32; border-radius:999px; color:#fff; font:700 16px/1.2 Arial,Helvetica,sans-serif; transition:background .2s,transform .2s; }
.site-header .main-nav .nav-give:hover { color:#fff; background:#792033; transform:translateY(-1px); }
.hero-photo { width:100%; max-width:none; margin:0; overflow:hidden; border:0; }
.hero-photo > img { display:block; width:100%; max-width:none; }
.hero-photo > .wave { width:100%; left:0; right:0; overflow:hidden; }
.hero-photo .hero-content { width:min(calc(100% - 2 * var(--layout-gutter)),var(--layout-width)); max-width:none; left:50%; right:auto; transform:translateX(-50%); margin:0; padding-left:0; padding-right:0; box-sizing:border-box; }
.hero-photo .bottom-wave { position:absolute; display:block; left:0; right:0; bottom:-1px; width:100%; height:clamp(50px,6vw,100px); margin:0; padding:0; border:0; overflow:hidden; }
.content-wrap { width:min(calc(100% - 2 * var(--layout-gutter)),var(--layout-width)); max-width:none; margin-inline:auto; }
@media(max-width:780px){
  :root { --layout-gutter:18px; }
  .site-header .header-inner { min-height:92px; padding-block:0; justify-content:space-between; }
  .site-header .brand { height:84px; }
  .site-header .brand img { width:94px; height:94px; }
  .site-header .main-nav { display:none; margin-left:0; justify-content:flex-start; gap:15px; }
  .site-header .main-nav.is-open { display:flex; }
  .site-header .main-nav .nav-give { margin-top:6px; }
  .hero-photo .hero-content { padding-left:0; padding-right:0; }
}


/* Logo iets lager plaatsen zonder de hoogte van de header te wijzigen. */
@media (min-width: 781px) {
  .site-header .brand img { transform: translateY(9px); }
}


.contact-details{font-size:.86rem;line-height:1.7;margin-top:1.5rem;opacity:.8}


/* Jubileum: aangeleverd origineel oranje beeldmerk, zonder vervorming. */
.jubilee-number{display:flex;align-items:center;justify-content:center;min-width:0;line-height:normal}
.jubilee-orange-logo{display:block;width:min(100%,340px);max-height:340px;height:auto;object-fit:contain}
@media(max-width:900px){.jubilee-number{justify-content:flex-start}.jubilee-orange-logo{width:min(60vw,260px)}}
/* Hero schaalt mee met de beschikbare schermhoogte: ondergolf zichtbaar op 900px. */
@media(min-width:781px){
 .hero-photo{height:clamp(580px,calc(100svh - 135px),850px);min-height:0}
 .hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:center center}
 .hero-photo .hero-content{height:100%;min-height:0;padding-top:clamp(92px,14vh,190px);padding-bottom:85px;justify-content:flex-start}
}
@media(min-width:781px) and (max-height:950px){
 .hero-photo .hero-content{padding-top:clamp(78px,10vh,110px);padding-bottom:70px}
 .hero-content .anniversary-mark{width:clamp(105px,11vw,150px)!important;max-height:155px!important;margin-bottom:12px!important}
 .hero-copy h1{font-size:clamp(46px,4.3vw,68px);margin-bottom:12px}
 .hero-copy p{margin-bottom:17px}
}
@media(max-width:780px){
 .hero-photo{height:auto;min-height:0}
 .hero-photo>img{height:clamp(670px,100svh,790px)}
}


/* Verberg het oude witte label onder het originele oranje jubileumlogo. */
.jubilee-number::after{content:none!important;display:none!important}
/* Bescheiden, rechts uitgelijnde verwijzing naar het volledige projectenoverzicht. */
.projects-all-action{display:flex;justify-content:flex-end;margin-top:27px}
.projects-all-link{display:inline-flex;align-items:center;gap:15px;color:var(--wine);font-size:15px;font-weight:700;text-decoration:none;border-bottom:2px solid currentColor;padding:8px 0 10px;transition:gap .2s ease,color .2s ease}
.projects-all-link:hover,.projects-all-link:focus-visible{gap:22px;color:var(--ink)}
.projects-all-link span{font-size:20px;font-weight:400;line-height:1}
@media(max-width:600px){.projects-all-action{margin-top:22px}.projects-all-link{font-size:14px}}


/* Fotografie in de drie uitgelichte projecten */
.project-card .card-art--photo{height:235px;background:#e9ede7;display:block;overflow:hidden}
.project-card .card-art--photo img{position:relative;display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .5s ease}
.project-card:hover .card-art--photo img{transform:scale(1.035)}
@media(max-width:600px){.project-card .card-art--photo{height:220px}}
@media(prefers-reduced-motion:reduce){.project-card .card-art--photo img{transition:none}}


/* Multi-page site */
.site-header .header-inner{max-width:1320px}
.page-hero{background:#f8f4ed;padding:92px 0 75px;position:relative;overflow:hidden}
.page-hero .eyebrow{color:#005f56}
.page-hero h1{font-family:Georgia,serif;font-size:clamp(48px,5.2vw,78px);line-height:1.06;color:#272c60;max-width:920px;margin:18px 0 24px;letter-spacing:-.035em}
.page-hero p.page-intro{font-size:20px;line-height:1.75;max-width:800px;color:#454d6a}
.page-hero:after{content:'';position:absolute;bottom:0;left:0;right:0;height:7px;background:linear-gradient(90deg,#005f56 0%,#272c60 65%,#941e32 100%)}
.inner-section{padding:85px 0;background:white}
.inner-section.alt{background:#f8f4ed}
.inner-section h2{font-family:Georgia,serif;color:#272c60;font-size:clamp(34px,3.6vw,52px);line-height:1.15;margin:0 0 22px}
.inner-section h3{color:#272c60;font-family:Georgia,serif;font-size:27px;margin:0 0 15px}
.inner-section p,.inner-section li{line-height:1.85;color:#444c68;font-size:17px}
.inner-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,100px);align-items:center}
.inner-grid img{width:100%;border-radius:20px;display:block;object-fit:cover;max-height:460px}
.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.project-detail{border:1px solid #e6e2dc;border-radius:18px;overflow:hidden;background:white;box-shadow:0 14px 40px #2222440a}
.project-detail img{width:100%;height:300px;object-fit:cover;display:block}
.project-detail .body{padding:30px}
.project-detail p{margin:0 0 22px}
.soft-box{background:#f8f4ed;border-radius:20px;padding:34px}
.action-box{background:#272c60;color:white;padding:55px 0}
.action-box .content-wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}
.action-box h2{font:700 clamp(30px,3vw,46px)/1.1 Georgia,serif;margin:0 0 12px;color:white}
.action-box p{color:#e6e8f3;line-height:1.6;margin:0;max-width:740px}
.action-box .button{white-space:nowrap}
.links-stack{display:grid;gap:16px;margin-top:28px}
.links-stack a{display:block;padding:19px 23px;border:1px solid #dedfe8;border-radius:12px;color:#272c60;text-decoration:none;font-weight:700;background:white}
.embed-placeholder{border:2px dashed #b8b9ca;border-radius:16px;padding:32px;background:#f8f4ed;color:#4c5370}
.contact-form label{display:block;margin:14px 0 7px;font-weight:700;color:#272c60}
.contact-form input,.contact-form textarea{width:100%;padding:14px;border:1px solid #d4d4dc;border-radius:8px;font:inherit}
.contact-form textarea{min-height:140px}
@media(max-width:760px){.page-hero{padding:62px 0 55px}.inner-grid,.project-list{grid-template-columns:1fr}.inner-section{padding:58px 0}.action-box .content-wrap{display:block}.action-box .button{margin-top:25px}}


/* Verfijningen oktober 2026 */
.action-box{background:#005F56!important}
.action-box p{color:#eef9f5!important}
.site-footer{background:#272C60!important}
.footer-contact{display:flex;flex-direction:column;gap:10px;margin-top:22px;font:400 15px/1.5 Arial,sans-serif}
.footer-contact a{display:inline!important;margin:0!important;color:#fff!important;overflow-wrap:anywhere}
.footer-contact .contact-row{display:flex;gap:12px;align-items:center}
.footer-contact .contact-label{color:#cbd5e5;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.anbi-emblem{display:block;width:min(240px,100%);height:auto;margin:0 auto 20px;border-radius:14px}
.anbi-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.anbi-year{background:#fff;border:1px solid #e1e3e0;border-radius:17px;padding:24px;box-shadow:0 10px 28px #272c6010}
.anbi-year h3{margin:0 0 15px;color:#272C60;font:700 28px Georgia,serif}
.anbi-file{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-top:1px solid #e6e7e8;text-decoration:none;color:#272C60;font:600 15px/1.4 Arial,sans-serif}
.anbi-file:hover{color:#941E32}.anbi-file small{font-size:11px;font-weight:700;color:#005F56;white-space:nowrap}
.contact-form-wrap{background:#fff;border:1px solid #e2e4e4;border-radius:22px;padding:clamp(24px,4vw,48px);box-shadow:0 16px 40px #272c6010}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form .wide{grid-column:1/-1}.contact-form label{display:block;font:700 14px Arial,sans-serif;color:#272C60;margin-bottom:8px}
.contact-form input,.contact-form select,.contact-form textarea{box-sizing:border-box;width:100%;padding:15px 16px;border:1px solid #cbd1d0;border-radius:9px;font:16px Arial,sans-serif;background:#fff;color:#272C60}
.contact-form textarea{min-height:160px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #005F56;outline-offset:2px}
.contact-form button{border:0;cursor:pointer}.form-note{font:14px/1.6 Arial,sans-serif;color:#505978;margin-top:15px}
@media(max-width:680px){.anbi-documents,.contact-form{grid-template-columns:1fr}.contact-form .wide{grid-column:auto}}


/* Definitieve full-bleed SVG-golven: de SVG zelf rekt ook horizontaal mee. */
.hero-photo { width:100%!important; max-width:none!important; left:auto!important; right:auto!important; transform:none!important; margin-inline:0!important; overflow:hidden!important; }
.hero-photo > img.wave-art.wave,
.hero-photo > img.wave-art.bottom-wave { position:absolute!important; left:0!important; right:0!important; width:100%!important; min-width:100%!important; max-width:100%!important; object-fit:fill!important; object-position:center!important; transform:none!important; margin:0!important; padding:0!important; }
.hero-photo > img.wave-art.wave { top:-2px!important; bottom:auto!important; }
.hero-photo > img.wave-art.bottom-wave { bottom:-2px!important; top:auto!important; }


/* Move the full hero, including its top wave, 65px closer to the logo. */
body:has(.hero-photo) .hero-photo { margin-top:-65px!important; z-index:21!important; }
body:has(.hero-photo) .site-header { z-index:20!important; }
/* Keep the two original arrow styles identical on iOS and all other devices. */
.hero-actions .button-arrow-svg { width:19px;height:19px;display:inline-block;flex:0 0 19px;vertical-align:middle; }
@media(max-width:780px) { body:has(.hero-photo) .hero-photo { margin-top:-65px!important; } }


/* The raised hero wave must remain behind the complete header navigation.
   A transparent header allows the wave to sit 65px higher without covering the logo. */
body:has(.hero-photo) .site-header { position:relative!important; z-index:100!important; background:transparent!important; isolation:isolate; }
body:has(.hero-photo) .site-header .header-inner { position:relative!important; z-index:101!important; }
body:has(.hero-photo) .hero-photo { position:relative!important; z-index:1!important; }
body:has(.hero-photo) { background:#F8F4EE; }


:root{--blue:#272C60;--green:#005F56;--burgundy:#941E32;--gold:#F7B718;--orange:#DF7500;--cream:#F8F5EF}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;}body{background:#f8f4ed;color:var(--blue);font-family:Georgia,serif}
.site-header{position:relative;width:100%;background:var(--cream);isolation:isolate;}
.header-inner{max-width:1320px;margin:0 auto;padding:7px 30px 5px;display:flex;align-items:center;gap:42px;min-height:106px;position:relative;z-index:2}
.brand{display:flex;flex:none;align-items:center;text-decoration:none}.brand img{display:block;width:94px;height:94px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:clamp(22px,3vw,48px);flex-wrap:wrap}
.main-nav a{color:var(--blue);font-size:clamp(17px,1.5vw,22px);font-weight:700;white-space:nowrap;text-decoration:none;transition:color .2s}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--burgundy)}
/* The SVG is an overlay ON TOP of the photograph, not below it. */
.wave{position:absolute;top:-1px;left:0;width:100%;height:clamp(54px,6vw,96px);display:block;z-index:10;pointer-events:none;overflow:visible}
.wave path.line{fill:none;stroke-linecap:round;stroke-linejoin:round}
.wave .green{stroke:var(--green);stroke-width:8}
.wave .blue{stroke:var(--blue);stroke-width:7}
.wave .burgundy{stroke:var(--burgundy);stroke-width:3.5}
.menu-toggle{display:none;border:1px solid #d6d6dc;border-radius:8px;padding:10px 13px;background:transparent;color:var(--blue);font:700 16px Arial,sans-serif;cursor:pointer}
.hero-photo{position:relative;width:100%;line-height:0;background:#fff;isolation:isolate}.hero-photo img{display:block;width:100%;height:auto;object-fit:cover}.bottom-wave{position:absolute;left:0;bottom:-1px;width:100%;height:clamp(40px,5.8vw,92px);z-index:11;display:block;pointer-events:none}
@media(max-width:780px){.header-inner{padding:7px 22px 6px;min-height:92px;justify-content:space-between;gap:12px}.brand img{width:78px;height:78px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:18px;right:18px;top:84px;padding:20px;background:var(--cream);border:1px solid #e4dfd6;border-radius:12px;box-shadow:0 14px 30px #272c601f;flex-direction:column;align-items:flex-start;gap:17px;z-index:5}.main-nav.is-open{display:flex}.main-nav a{font-size:19px}.wave{height:54px}}

/* Hero: tekst en jubileumlogo boven de bestaande foto, onder de golfranden */
.hero-photo{min-height:620px;overflow:hidden}
.hero-photo>img{width:100%;height:clamp(620px,55vw,850px);object-fit:cover;object-position:center center}
.hero-content{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:min(1320px,100%);margin:0 auto;padding:clamp(85px,9vw,135px) 30px 100px;left:0;right:0;line-height:normal;pointer-events:none}
.anniversary-mark{display:block;width:clamp(190px,23vw,300px);height:auto;object-fit:contain;object-position:left center;margin:0 0 12px -8px;filter:drop-shadow(0 2px 7px rgba(255,255,255,.25))}
.hero-copy{max-width:540px;pointer-events:auto}
.hero-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,5.4vw,82px);font-weight:700;letter-spacing:-.045em;line-height:.99;color:#272C60;margin:0 0 18px;text-wrap:balance}
.hero-copy p{font:400 clamp(16px,1.18vw,19px)/1.6 Arial,Helvetica,sans-serif;color:#20284d;max-width:470px;margin:0 0 24px;text-shadow:0 1px 18px rgba(255,255,255,.8)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 20px;border-radius:100px;font:700 15px/1.2 Arial,Helvetica,sans-serif;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s;min-height:48px}
.button:hover{transform:translateY(-2px)}.button-primary{background:#941E32;color:#fff;box-shadow:0 7px 18px #941e322b}.button-primary:hover{background:#792035}.button-secondary{border:1.5px solid #272C60;color:#272C60;background:#fffdf2c9}.button-secondary:hover{background:#fff}
@media(min-width:1000px){.hero-photo:before{content:'';position:absolute;inset:0 auto 0 0;width:58%;z-index:2;background:linear-gradient(90deg,rgba(255,252,240,.36),rgba(255,252,240,.08) 80%,transparent);pointer-events:none}}
@media(max-width:780px){.hero-photo>img{height:690px;object-position:62% center}.hero-content{justify-content:flex-start;padding:90px 22px 100px}.anniversary-mark{width:190px;margin-bottom:10px}.hero-copy{max-width:360px}.hero-copy h1{font-size:clamp(42px,8vw,62px)}.hero-copy p{font-size:15px;max-width:340px}.hero-actions{gap:9px}.button{padding:12px 15px;font-size:13px}}
@media(max-width:540px){.hero-photo>img{height:740px;object-position:64% center}.hero-content{padding-top:86px}.hero-copy{background:linear-gradient(90deg,rgba(248,245,239,.88),rgba(248,245,239,.58));border-radius:12px;padding:12px 10px 16px 0;max-width:315px}.hero-copy h1{font-size:43px}.hero-copy p{font-size:14px;line-height:1.5}.hero-actions{flex-direction:column;align-items:flex-start}.button{min-height:43px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

/* Verfijning: compacte header en bescheiden jubileumbeeldmerk */
.header-inner{min-height:78px;padding-top:2px;padding-bottom:2px;gap:34px}
.brand img{width:74px;height:74px}
.anniversary-mark{width:clamp(95px,10vw,135px);max-height:145px;margin:0 0 14px 0}
.hero-content{padding-top:clamp(64px,7vw,100px)}
@media(max-width:780px){
 .header-inner{min-height:70px;padding:3px 18px;gap:12px}
 .brand img{width:64px;height:64px}
 .main-nav{top:67px}
 .anniversary-mark{width:105px;max-height:115px;margin-bottom:10px}
 .hero-content{padding-top:76px}
}
@media(max-width:540px){.hero-content{padding-top:72px}.anniversary-mark{width:98px}}

/* Afstemming op het aangeleverde referentiebeeld: compact menu,
   ronde logo prominent en golven die echt over de foto lopen. */
.site-header{background:#F8F5EF;z-index:20}
.header-inner{max-width:1320px;min-height:138px;padding:8px 22px 4px;gap:52px}
.brand img{width:124px;height:124px}
.main-nav{gap:clamp(24px,3.1vw,52px);flex-wrap:nowrap}
.main-nav a{font-size:clamp(18px,1.75vw,26px)}
.hero-photo{margin-top:-2px}
.wave{height:clamp(68px,7.5vw,116px);top:-1px}
.hero-photo>img{height:clamp(650px,60vw,880px);object-position:center center}
.hero-content{width:min(1320px,100%);justify-content:flex-start;padding:clamp(170px,15vw,235px) 22px 110px}
.anniversary-mark{width:clamp(150px,17vw,250px);margin:0 0 18px -4px}
.hero-copy h1{font-size:clamp(48px,5.5vw,80px)}
@media(max-width:780px){
 .header-inner{min-height:92px;padding:6px 18px;gap:14px}
 .brand img{width:78px;height:78px}
 .main-nav{flex-wrap:nowrap}
 .wave{height:66px}
 .hero-photo>img{height:760px;object-position:61% center}
 .hero-content{padding:125px 22px 100px}
 .anniversary-mark{width:145px;margin-bottom:14px}
}
@media(max-width:540px){.hero-content{padding-top:110px}.anniversary-mark{width:125px}}

/* Header: 60px minder ruimte tussen navigatie en golfrand (desktop). */
@media (min-width: 781px) {
  .header-inner { min-height: 78px; padding-top: 0; padding-bottom: 0; }
  .brand img { width: 94px; height: 94px; }
}

/* Aanvullingen 2026 */
.qr-block{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.qr-block img{width:clamp(145px,17vw,210px);height:auto;background:white;padding:12px;border-radius:15px;box-shadow:0 8px 26px #0001}.qr-block p{flex:1;min-width:190px}.qr-mini{margin:26px 0 0;padding:24px;background:#fff;border:1px solid #e8e5df;border-radius:18px}.qr-mini img{width:145px}.social-icons{display:flex;gap:12px;align-items:center;margin-top:18px}.social-icons span{width:40px;height:40px;border:1px solid #ffffff70;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:white}.social-icons svg{width:21px;height:21px;fill:currentColor}.reports-table{width:100%;border-collapse:collapse;margin:24px 0 10px;font:16px/1.6 Arial,sans-serif}.reports-table th,.reports-table td{text-align:left;padding:17px 20px;border-bottom:1px solid #dadbe3}.reports-table th{background:#272C60;color:white}.reports-table td a{color:#941E32;font-weight:700;text-decoration:underline;text-underline-offset:3px}.reports-table tr:nth-child(even){background:#f8f4ed}.contact-links a{color:#941E32;font-weight:bold}.extra-project-image{width:100%;height:210px;object-fit:cover;border-radius:12px;margin:0 0 16px}.donate-aside{margin-top:30px;padding:24px;border-radius:16px;background:#f8f4ed}.donate-aside a{color:#941E32;font-weight:bold}@media(max-width:600px){.reports-table th,.reports-table td{padding:12px 8px;font-size:13px}.qr-block{justify-content:center}.qr-block p{min-width:100%}}

/* Fullscreen mobile navigation, accessible animated hamburger */
@media(max-width:780px){
 .site-header{z-index:1000;isolation:auto}
 .site-header .header-inner{position:relative;z-index:1002}
 .site-header .menu-toggle{display:flex!important;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid rgba(39,44,96,.18);border-radius:12px;background:#F8F4EE;color:#272C60;position:relative;z-index:1004;cursor:pointer}
 .menu-toggle .hamburger-lines{width:23px;height:18px;position:relative;display:block}
 .menu-toggle .hamburger-lines i{display:block;position:absolute;left:0;width:23px;height:2px;border-radius:3px;background:currentColor;transition:top .3s ease,transform .3s ease,opacity .18s ease}
 .menu-toggle .hamburger-lines i:nth-child(1){top:1px}.menu-toggle .hamburger-lines i:nth-child(2){top:8px}.menu-toggle .hamburger-lines i:nth-child(3){top:15px}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(1){top:8px;transform:rotate(45deg)}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(2){opacity:0;transform:scaleX(.2)}
 .menu-toggle[aria-expanded="true"] .hamburger-lines i:nth-child(3){top:8px;transform:rotate(-45deg)}
 .site-header .main-nav,.site-header .main-nav.is-open{display:flex!important;position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:110px 24px 45px!important;background:#F8F4EE!important;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:1001!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:clamp(17px,3vh,30px)!important;overflow-y:auto!important;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-22px);transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1),visibility 0s linear .42s}
 .site-header .main-nav.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1),visibility 0s}
 .site-header .main-nav a{font-family:Lora,Georgia,serif!important;font-size:clamp(27px,6vw,39px)!important;line-height:1.15!important;font-weight:700!important;text-align:center!important;white-space:normal!important;opacity:0;transform:translateY(12px);transition:color .2s,opacity .28s,transform .32s}
 .site-header .main-nav.is-open a{opacity:1;transform:translateY(0)}
 .site-header .main-nav.is-open a:nth-child(1){transition-delay:.07s}.site-header .main-nav.is-open a:nth-child(2){transition-delay:.11s}.site-header .main-nav.is-open a:nth-child(3){transition-delay:.15s}.site-header .main-nav.is-open a:nth-child(4){transition-delay:.19s}.site-header .main-nav.is-open a:nth-child(5){transition-delay:.23s}.site-header .main-nav.is-open a:nth-child(6){transition-delay:.27s}
 .site-header .main-nav .nav-give{font-family:Arial,sans-serif!important;font-size:20px!important;padding:15px 36px!important;margin-top:8px!important}
 body.mobile-nav-open{overflow:hidden!important}
 .hero-copy{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}
@media(prefers-reduced-motion:reduce){.site-header .main-nav,.site-header .main-nav a,.menu-toggle .hamburger-lines i{transition:none!important}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Compactere ruimte tussen het Love Care-logo en de bovenste hero-golf. */
@media (min-width:781px){
 .site-header .header-inner{min-height:116px!important;padding-top:2px!important;padding-bottom:2px!important;}
 .site-header .brand img{width:108px!important;height:108px!important;}
}
@media (max-width:780px){
 .site-header .header-inner{min-height:78px!important;padding-top:3px!important;padding-bottom:3px!important;}
 .site-header .brand img{width:72px!important;height:72px!important;}
}


.project-story{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,75px);align-items:center}.project-story img{display:block;width:100%;height:clamp(290px,35vw,470px);object-fit:cover;border-radius:20px}.project-prose{font:17px/1.85 Georgia,serif}.project-prose p{margin:0 0 19px}.project-prose h2{font-size:clamp(30px,3.2vw,46px);line-height:1.13;margin:0 0 22px;color:#272C60}.gallery-heading{margin:0 0 12px;font-size:clamp(29px,3vw,42px)}.gallery-note{font:16px/1.7 Arial,sans-serif;opacity:.8;margin:0 0 28px}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.photo-placeholder{aspect-ratio:4/3;border:2px dashed #a4b6b0;border-radius:18px;background:linear-gradient(145deg,#e7eee9,#f8f5ef);display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;color:#005F56;font:600 15px/1.5 Arial,sans-serif}.project-back{display:inline-block;margin-top:34px;color:#941E32;font:700 15px Arial,sans-serif;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:8px}@media(max-width:760px){.project-story{grid-template-columns:1fr}.project-gallery{grid-template-columns:1fr 1fr}}@media(max-width:480px){.project-gallery{grid-template-columns:1fr}}

/* WordPress admin bar & layout */
.admin-bar .site-header{top:0}
.wp-block-image img{height:auto}
.lc-content-editable{display:contents}

/* Love Care ANBI-documenten: jaarkaarten beheerd door de afzonderlijke plugin. */
.lc-anbi-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.lc-anbi-documents .anbi-year{min-width:0;transition:transform .2s ease,box-shadow .2s ease}
.lc-anbi-documents .anbi-year:hover{transform:translateY(-3px);box-shadow:0 16px 35px #272c601a}
.lc-anbi-documents .anbi-file{overflow-wrap:anywhere}
.lc-anbi-documents .anbi-file:focus-visible{outline:3px solid #DF7500;outline-offset:4px}
@media(max-width:680px){.lc-anbi-documents{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.lc-anbi-documents .anbi-year{transition:none}.lc-anbi-documents .anbi-year:hover{transform:none}}

/* 2.0: compact laptop hero (including 13-inch MacBook Pro) */
.hero-photo { width:100%; max-width:none; overflow:hidden; }
.hero-photo > img.hero-background {display:block;width:100%;object-fit:cover;}
.hero-photo .wave-art {width:100%;max-width:none;object-fit:fill;}
@media (min-width:781px) and (max-width:1440px) {
 .hero-photo {min-height:0;}
 .hero-photo > img.hero-background {height:clamp(500px,calc(100svh - 118px),720px);object-position:60% center;}
 .hero-photo .hero-content {inset:0;justify-content:center;padding:clamp(78px,9vh,110px) clamp(28px,4vw,60px) clamp(72px,9vh,100px);}
 .hero-photo .anniversary-mark {width:clamp(108px,10vw,160px);max-height:135px;margin-bottom:12px;}
 .hero-photo .hero-copy {max-width:min(490px,48vw);}
 .hero-photo .hero-copy h1 {font-size:clamp(43px,4.5vw,64px);line-height:1.05;margin-bottom:13px;}
 .hero-photo .hero-copy p {font-size:clamp(15px,1.3vw,17px);line-height:1.52;margin-bottom:18px;}
 .hero-photo .hero-actions {gap:10px;}
 .hero-photo .button {padding:13px 17px;font-size:13px;gap:11px;}
}
@media (min-width:781px) and (max-height:760px) {
 .hero-photo > img.hero-background {height:clamp(475px,calc(100svh - 110px),630px);}
 .hero-photo .hero-content {padding-top:70px;padding-bottom:62px;}
 .hero-photo .anniversary-mark {width:108px;max-height:108px;margin-bottom:8px;}
 .hero-photo .hero-copy h1 {font-size:clamp(40px,4vw,58px);}
}
@media (max-width:780px) {
 .hero-photo > img.hero-background {height:clamp(600px,90svh,760px);object-position:64% center;}
 .hero-photo .hero-content {padding:clamp(84px,12vh,125px) 22px 85px;justify-content:flex-start;}
 .hero-photo .hero-copy {background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;}
}
@media (max-width:390px) {
 .hero-photo .hero-copy h1 {font-size:clamp(36px,10vw,43px);}
 .hero-photo .hero-copy p {font-size:14px;}
 .hero-photo .button {font-size:12px;}
}
/* Gutenberg blocks inherit the original front-end layout without unwanted margins. */
.love-care-wordpress .wp-block-image {margin:0;min-width:0;}
.love-care-wordpress .wp-block-image img {display:block;max-width:100%;}
.love-care-wordpress .wp-block-image:has(> img) {display:contents;}
.love-care-wordpress .wp-block-image img {width:100%;height:auto;}
.love-care-wordpress .hero-photo .wp-block-image {display:block;}

/* 2.1 – Hero composition matched to the approved reference screenshot.
   The reference JPEG is NOT used as a flattened website background: text and media remain editable. */
:root{--cream:#F8F4EE}
.site-header{background:#F8F4EE;z-index:1000}
.site-header .header-inner{max-width:1510px;box-sizing:border-box}
.hero-photo{width:100%;max-width:none;margin:0;overflow:hidden;background:#F8F4EE}
.hero-photo>img.wave-art{left:0!important;right:0!important;width:100%!important;max-width:none!important;object-fit:fill!important}
.hero-photo .hero-content{width:min(1510px,100%);box-sizing:border-box}
.hero-photo .hero-copy{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(min-width:1025px){
 .site-header .header-inner{min-height:128px!important;padding:8px 30px!important}
 .site-header .brand img{width:118px!important;height:118px!important}
 .hero-photo>img.hero-background{height:clamp(590px,calc(100svh - 140px),790px);object-position:center center}
 .hero-photo .hero-content{padding:clamp(70px,8vh,100px) 30px clamp(55px,7vh,85px);justify-content:center}
 .hero-photo .hero-copy{max-width:660px}
 .hero-photo .hero-copy h1{font-size:clamp(50px,5.2vw,78px);line-height:1.06}
 .hero-photo .anniversary-mark{width:clamp(120px,12vw,170px);max-height:145px}
}
@media(min-width:781px) and (max-width:1024px){
 .site-header .header-inner{min-height:100px!important}
 .hero-photo>img.hero-background{height:clamp(540px,calc(100svh - 110px),690px)}
 .hero-photo .hero-content{padding:75px 26px 70px;justify-content:center}
 .hero-photo .hero-copy{max-width:51vw}
 .hero-photo .hero-copy h1{font-size:clamp(43px,5vw,58px)}
}
@media(max-width:780px){.hero-photo .hero-content{width:100%;padding-left:22px;padding-right:22px}}

/* WordPress menu item assigned CSS class nav-give */
.main-nav .nav-give > a{display:inline-flex;align-items:center;justify-content:center;background:#941E32;color:#fff!important;border-radius:999px;padding:14px 26px;text-decoration:none}
.main-nav .nav-give > a:hover{background:#7e1728}
/* Hero photo explicit class; waves must not be affected by background sizing */
.hero-photo > img.hero-background{position:relative;width:100%;height:clamp(600px,57vw,850px);object-fit:cover;object-position:center center}
@media(max-width:780px){.hero-photo > img.hero-background{height:740px;object-position:62% center}}
.main-nav > .menu-item{list-style:none;margin:0;padding:0}
.main-nav > .menu-item > a{display:inline-flex;align-items:center}
@media(max-width:780px){.site-header .main-nav > .menu-item{width:auto;text-align:center}.site-header .main-nav > .menu-item > a{justify-content:center}}

/* v2.2: responsive hero repair. Keep all editable content visible at every width.
   Earlier breakpoint rules and absolute positioning could conceal the whole copy. */
.hero-photo{position:relative!important;isolation:isolate;overflow:hidden;min-height:0}
.hero-photo>img.hero-background{display:block;width:100%;height:clamp(610px,58vw,810px);object-fit:cover;object-position:62% center;position:relative;z-index:0}
.hero-photo>.wave-art{z-index:5;pointer-events:none}
.hero-photo>.hero-content{
 position:absolute!important;inset:0!important;left:50%!important;right:auto!important;
 transform:translateX(-50%)!important;z-index:6!important;
 display:flex!important;visibility:visible!important;opacity:1!important;
 flex-direction:column;align-items:flex-start;justify-content:center!important;
 width:min(100% - 48px,1320px)!important;max-width:1320px!important;
 height:100%!important;min-height:0!important;box-sizing:border-box!important;
 padding:65px 0 65px!important;margin:0!important;overflow:visible!important;
 pointer-events:none;
}
.hero-photo .hero-content>.anniversary-mark{display:block!important;visibility:visible!important;opacity:1!important;flex:none;width:clamp(105px,10vw,155px)!important;margin:0 0 14px!important}
.hero-photo .hero-content>.hero-copy{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:7;flex:none;max-width:min(590px,51vw)!important;width:100%;pointer-events:auto;background:transparent!important}
.hero-photo .hero-copy h1{display:block!important;visibility:visible!important;opacity:1!important;font-size:clamp(40px,4.8vw,72px);line-height:1.04;margin:0 0 14px}
.hero-photo .hero-copy p{display:block!important;visibility:visible!important;opacity:1!important;font-size:clamp(15px,1.25vw,18px);line-height:1.55;margin:0 0 22px}
.hero-photo .hero-actions{display:flex!important;visibility:visible!important;opacity:1!important;flex-wrap:wrap;gap:12px}
@media(max-width:1100px){
 .hero-photo>img.hero-background{height:clamp(570px,68vw,740px);object-position:65% center}
 .hero-photo>.hero-content{padding:70px 0 60px!important;width:calc(100% - 44px)!important}
 .hero-photo .hero-content>.hero-copy{max-width:min(520px,54vw)!important}
 .hero-photo .hero-copy h1{font-size:clamp(40px,4.6vw,56px)}
 .hero-photo .hero-copy p{font-size:15px}
}
@media(max-width:780px){
 .hero-photo>img.hero-background{height:clamp(700px,105svh,850px);object-position:67% center}
 .hero-photo>.hero-content{width:calc(100% - 36px)!important;padding:85px 0 100px!important;justify-content:flex-start!important}
 .hero-photo .hero-content>.hero-copy{max-width:min(420px,85%)!important}
 .hero-photo .hero-copy h1{font-size:clamp(36px,7.5vw,52px)}
 .hero-photo .hero-copy p{font-size:clamp(14px,2.4vw,16px)}
}
@media(max-width:480px){
 .hero-photo>img.hero-background{height:780px;object-position:68% center}
 .hero-photo>.hero-content{padding:76px 0 90px!important}
 .hero-photo .hero-content>.hero-copy{max-width:95%!important}
 .hero-photo .hero-copy h1{font-size:clamp(34px,9vw,43px)}
 .hero-photo .hero-copy p{font-size:14px;line-height:1.48}
 .hero-photo .hero-actions{flex-direction:column;align-items:flex-start;gap:10px}
 .hero-photo .hero-actions .button{font-size:12px;padding:12px 15px}
}

/* ANBI logo: never exceed 280px, including legacy images and block editor markup */
body .anbi-logo,body img[src*="anbi-logo"],body img[alt*="ANBI" i],body .wp-block-image img[src*="anbi"]{max-width:min(280px,100%)!important;width:auto!important;height:auto!important;}
/* Gutenberg block theme wrappers: retain full-width waves/hero */
.wp-site-blocks{overflow-x:clip}.wp-site-blocks > .wp-block-shortcode{margin-block:0}.wp-site-blocks > .wp-block-template-part{margin-block:0}
.wp-block-post-content{margin-block-start:0!important}.wp-block-post-content > .alignfull{width:100%;max-width:none}

/* v3.1: At narrower viewport widths the entire hero must start BELOW the
   logo, rather than sliding the upper wave across it. The desktop layout
   remains unchanged. The wave stays full-bleed inside the hero. */
@media (max-width: 1250px) {
  body:has(.hero-photo) .site-header {
    background: #F8F4EE !important;
    position: relative !important;
    z-index: 100 !important;
  }
  body:has(.hero-photo) .hero-photo {
    margin-top: 0 !important;
    position: relative !important;
    z-index: 1 !important;
  }
  body:has(.hero-photo) .site-header .header-inner {
    min-height: 136px !important;
    box-sizing: border-box;
    padding-top: 8px !important;
    padding-bottom: 12px !important;
  }
  body:has(.hero-photo) .site-header .brand,
  body:has(.hero-photo) .site-header .brand img {
    transform: none !important;
  }
}
@media (max-width: 780px) {
  body:has(.hero-photo) .site-header .header-inner {
    min-height: 112px !important;
    padding-top: 7px !important;
    padding-bottom: 12px !important;
  }
  body:has(.hero-photo) .site-header .brand img {
    width: 94px !important;
    height: 94px !important;
  }
}

/* v3.2: Smoothly reduce hero overlap as viewport narrows.
   At 1250px+: -65px (approved desktop position); at 780px: -5px.
   Header remains compact; the upper wave never crosses the logo. */
body:has(.hero-photo) .site-header .header-inner {
  min-height:106px !important;
  padding-top:7px !important;
  padding-bottom:5px !important;
}
body:has(.hero-photo) .site-header {
  background:#F8F4EE !important;
  position:relative !important;
  z-index:100 !important;
}
body:has(.hero-photo) .hero-photo {
  margin-top:clamp(-65px, calc(94.57px - 12.766vw), -5px) !important;
  z-index:1 !important;
}
@media (max-width:780px) {
  body:has(.hero-photo) .site-header .header-inner {
    min-height:106px !important;
    padding-top:7px !important;
    padding-bottom:5px !important;
  }
  body:has(.hero-photo) .hero-photo { margin-top:-5px !important; }
}


/* v3.4 - DEFINITIEVE HEADER/HERO-SCHEIDING.
   Geen negatieve hero-marges of logo-transforms. De header reserveert de
   werkelijke hoogte van het logo; de bovenste golf blijft in de hero.
   Werkt vloeiend, zonder sprongen bij media-query breakpoints. */
body:has(.hero-photo) .site-header {
  position:relative !important;
  z-index:100 !important;
  background:#F8F4EE !important;
  overflow:visible !important;
}
body:has(.hero-photo) .site-header .header-inner {
  min-height:0 !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding-top:clamp(7px, 1vw, 12px) !important;
  padding-bottom:clamp(7px, 1vw, 12px) !important;
}
body:has(.hero-photo) .site-header .brand {
  height:auto !important;
  min-height:0 !important;
  flex-shrink:0 !important;
}
body:has(.hero-photo) .site-header .brand img {
  display:block !important;
  width:clamp(94px, 8.2vw, 118px) !important;
  height:clamp(94px, 8.2vw, 118px) !important;
  transform:none !important;
  margin:0 !important;
}
body:has(.hero-photo) .hero-photo {
  margin-top:0 !important;
  margin-bottom:0 !important;
  position:relative !important;
  z-index:1 !important;
  transform:none !important;
  left:auto !important;
  right:auto !important;
}
/* SVG top is part of the hero, never allowed to protrude into the header. */
body:has(.hero-photo) .hero-photo > img.wave-art.wave {
  top:0 !important;
  bottom:auto !important;
  transform:none !important;
}
@media(max-width:780px) {
  body:has(.hero-photo) .site-header .header-inner {
    padding-top:7px !important;
    padding-bottom:7px !important;
  }
  body:has(.hero-photo) .site-header .brand img {
    width:clamp(78px, 19vw, 94px) !important;
    height:clamp(78px, 19vw, 94px) !important;
  }
}


/* v3.5: logo and upper wave are separated by a measured, compact gap.
   The header/hero relationship is calculated from the rendered logo position,
   rather than assuming one header height for every viewport. */
body:has(.hero-photo) .site-header {padding-block:0!important;margin-block:0!important;}
body:has(.hero-photo) .site-header .header-inner {
  min-height:0!important;height:auto!important;
  padding-top:clamp(4px,.65vw,9px)!important;
  padding-bottom:clamp(3px,.45vw,6px)!important;
}
body:has(.hero-photo) .site-header .brand {height:auto!important;min-height:0!important;transform:none!important;}
body:has(.hero-photo) .site-header .brand img {transform:none!important;margin:0!important;}
body:has(.hero-photo) .hero-photo {
  margin-top:calc(-1 * var(--lc-safe-hero-lift, 0px))!important;
  position:relative!important;
  z-index:1!important;
}
body:has(.hero-photo) .hero-photo > img.wave-art.wave {top:0!important;}

/* v3.6: restore full-width sections after conversion to block theme.
   Previously the front-page post-content was constrained to 1100px and
   page/single templates wrapped all content in a constrained group. */
:root { --wp--style--global--content-size:1320px; --wp--style--global--wide-size:1510px; }
body .wp-site-blocks,body .wp-site-blocks > main,
body .wp-site-blocks > .wp-block-group.lc-page-main,
body .lc-page-main > .wp-block-post-content,
body .lc-page-main > .wp-block-post-content > .wp-block-group.alignfull {
  width:100%; max-width:none; margin-inline:0;
}
body .lc-page-main { padding:0; }
/* Full-bleed section backgrounds; the original .content-wrap retains
   the 1320px readable inner layout. */
body .lc-page-main .wp-block-post-content > .wp-block-group,
body .lc-page-main .wp-block-post-content > .wp-block-cover,
body .lc-page-main .wp-block-post-content > .wp-block-columns {
  max-width:none; box-sizing:border-box;
}
body .lc-page-main .wp-block-post-content > .wp-block-group.alignfull,
body .lc-page-main .wp-block-post-content > .alignfull { width:100%; }
/* Avoid constraining nested content-wrap wrappers inside a section. */
body .lc-page-main .content-wrap { width:min(1320px,calc(100% - 48px));max-width:none;margin-inline:auto; }
@media(max-width:600px){body .lc-page-main .content-wrap{width:calc(100% - 36px)}}
