/* Familieboek — warme kleuren, rustige typografie en ruimte voor verhalen. */
:root{--paper:#fcf8f0;--card:#fffdf8;--ink:#343b30;--muted:#686a5c;--leaf:#395b4b;--leaf-dark:#2c463a;--terra:#a34d38;--sage:#e8eddf;--peach:#f3e1cf;--line:#e6dfd0;--shadow:0 10px 32px #5b45360b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{max-width:none;width:100%;margin:0;padding:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.6}h1,h2,h3{color:var(--leaf);line-height:1.18;overflow-wrap:anywhere}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(32px,4vw,48px)}h2{font-size:30px}h3{font-size:21px;font-weight:650}p{color:var(--muted)}a{color:var(--terra);text-underline-offset:4px}img{max-width:100%}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b77939;outline-offset:4px}main{max-width:1180px;padding:32px 28px 0;margin:0 auto}section{border-radius:20px;background:transparent;padding:20px}article{border-bottom:0}main>section{margin-bottom:24px}.eyebrow,.teams-eyebrow,.books-eyebrow,.cms-eyebrow{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--terra);font-size:11px;line-height:1.5;font-weight:750;letter-spacing:.14em}.skip-link{position:fixed;left:12px;top:-100px;z-index:2000;background:var(--leaf);color:white;padding:12px 18px;border-radius:10px}.skip-link:focus{top:12px}
.site-navigation{background:var(--paper);border-bottom:1px solid var(--line)}.nav-shell{max-width:1420px;margin:0 auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:25px}.family-brand{display:inline-flex;align-items:center;gap:11px;color:var(--leaf);text-decoration:none;flex-shrink:0;font:500 25px/1.1 Georgia,serif;letter-spacing:-.03em}.family-brand img{flex-shrink:0;border-radius:13px}.family-brand small{display:block;margin-top:6px;font:400 10px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:.05em;color:var(--muted)}.navbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:15px;background:none;padding:0}.navbar a{font-size:13px;font-weight:550;line-height:1.5;color:var(--ink);padding:8px 0;white-space:nowrap}.navbar a:hover,.navbar a[aria-current=page]{color:var(--terra);text-decoration:none}.navbar a[aria-current=page]:not(.nav-login){box-shadow:0 1px 0 var(--terra)}.navbar .nav-login{padding:10px 16px;border-radius:99px;background:var(--leaf);color:white;display:flex;gap:14px}.navbar .nav-login:hover{background:var(--leaf-dark);color:white}.family-menu-button{display:none;background:var(--leaf);color:white;border:0;border-radius:99px;padding:10px 15px;cursor:pointer;font-size:14px}.family-menu-button span{margin-right:7px}
.hero.family-home-hero{height:auto;overflow:visible;max-width:1240px;margin:0 auto;padding:72px 48px 66px;display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center;text-align:left}.home-hero-copy h1{font-size:clamp(40px,4.7vw,66px);line-height:1.06;margin:22px 0;color:var(--leaf);letter-spacing:-.045em}.home-hero-copy>p{font-size:16px;line-height:1.8;max-width:440px}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:15px;margin-top:28px}.family-button,.primary-button,.store-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--terra);color:#fff;border:0;border-radius:99px;padding:14px 22px;font-weight:600;font-size:13px;line-height:1.4;text-decoration:none;cursor:pointer}.family-button:hover,.primary-button:hover,.store-button:hover{background:#843c2b;color:white;text-decoration:none}.family-text-link{font-size:13px;font-weight:650;color:var(--leaf);text-decoration:none}.family-text-link:hover{text-decoration:underline}.hero-footnote{display:flex;align-items:center;gap:10px;margin-top:34px;font-size:12px;color:var(--muted)}.hero-footnote span{font-size:21px;color:var(--terra)}.home-hero-visual{position:relative;min-width:0;padding:0 6px 10px}.family-illustration-frame,.family-photo-frame{background:var(--card);padding:12px 12px 14px;box-shadow:0 16px 40px #654c3716;border:1px solid var(--line);transform:rotate(3deg);border-radius:6px}.family-illustration-frame>img{display:block;width:100%;height:auto;border-radius:3px}.photo-frame-caption{font:italic 16px Georgia,serif;color:var(--leaf);text-align:center;margin:15px 4px 2px}.hero-sticker{position:absolute;bottom:-8px;right:-18px;display:grid;place-content:center;width:112px;height:112px;border-radius:50%;background:#f2cf96;color:var(--leaf);font:italic 19px/1.1 Georgia,serif;text-align:center;transform:rotate(-12deg);box-shadow:0 4px 12px #513b2310}.hero-sticker span{font-size:24px;margin-top:3px}.family-photo-frame .hero-gallery{height:365px;border-radius:3px;background:var(--sage)}.family-photo-frame .hero-gallery-track img{height:100%;width:410px}.family-photo-frame .hero-gallery-track{height:100%}.family-home-main{padding-top:0}.intro-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;margin:10px 0 64px;background:transparent}.news-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:28px}.family-intro-card{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.family-intro-card:nth-child(2){background:#f5eddf}.family-intro-card:nth-child(3){background:var(--sage)}.intro-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;font-size:27px;color:var(--terra);background:#f1e4d8}.family-intro-card:nth-child(2) .intro-icon{background:#ede0c8}.family-intro-card:nth-child(3) .intro-icon{background:#dce5d1;color:var(--leaf)}.family-intro-card h2{font-size:27px;margin:22px 0 10px}.family-intro-card p{font-size:14px;line-height:1.75;margin:0 0 15px}.read-more{color:var(--terra);font-size:13px;line-height:1.6;margin-top:12px}.family-intro-card .read-more{margin-top:auto;padding-top:12px}
.home-updates{display:grid;grid-template-columns:1.45fr 1fr;gap:36px;margin:0 0 64px}.home-updates>section{padding:0;margin:0;min-width:0}.family-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.family-section-heading h2,.home-agenda>h2{font-size:32px;margin:9px 0 0}.home-agenda>h2{margin-bottom:24px}.home-news-card h3,.home-empty-state h3{font:500 27px Georgia,serif;margin:10px 0}.news-date{font-size:12px;color:var(--muted);letter-spacing:.03em}.home-empty-state{min-height:255px;padding:32px;background:transparent;border-style:dashed}.home-empty-state>span{font-size:30px;color:var(--terra)}.home-empty-state p,.home-news-card>p{font-size:14px;line-height:1.8}.training{margin-top:0}.training-card{margin:0;border:1px solid #d7dfcc;background:var(--sage);box-shadow:none;border-radius:20px;min-height:255px;padding:28px}.training-card h3{font:500 26px Georgia,serif;margin:10px 0}.training-card p{font-size:14px;line-height:1.8;margin:10px 0}.training-card .agenda-date{color:var(--terra);font-size:12px;font-weight:700}.agenda-flower{display:block;color:#8a7044;font-size:38px;line-height:1.25}.family-birthdays{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:20px;background:#f8ebd3;border:1px solid #ead1a8;border-radius:20px;padding:28px 32px;margin-bottom:48px}.family-birthdays h2{font-size:30px;margin:8px 0}.family-birthdays .birthday-list{margin:0}.family-birthdays .birthday-list li{padding:9px 0;font-size:14px}.family-birthdays .birthday-note{grid-column:1/-1;font-size:11px;margin:0;color:var(--muted)}.family-invitation{background:#f0e4d6;text-align:center;border:1px solid #e4d5c3;border-radius:24px;padding:45px 26px;margin-bottom:0}.family-invitation h2{font-size:39px;margin:13px 0}.family-invitation p{max-width:510px;margin:0 auto 25px;font-size:15px;line-height:1.8}
.footer{background:var(--leaf);margin:65px 0 0;padding:44px 25px 30px;border-radius:48px 48px 0 0;color:#fff7e8}.footer-content{max-width:1000px}.footer-brand{color:#fff7e8;justify-content:center}.footer-brand small{color:#e2e7db;font-size:11px}.footer p{color:#e2e7db;font-size:13px}.footer .footer-brand img{outline:1px solid #87a18a}.footer-links{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:24px 0}.footer-links a{font-size:12px;color:#fff7e8;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer .copyright{padding-top:20px;margin-top:26px;border-top:1px solid #ffffff22;font-size:11px;color:#e2e7db;opacity:1}.family-subhero{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1124px;min-height:220px;height:auto;text-align:left;padding:36px;margin:28px auto 0;background:var(--sage);border:1px solid #d7dfcc;border-radius:24px}.family-subhero h1{font-size:40px;margin:13px 0}.family-subhero p{margin-bottom:0;font-size:15px}.subhero-mark{flex-shrink:0;transform:rotate(6deg)}.teams-page,.books-page,.content-page,.member-documents-page{margin:10px auto;padding:20px 0}.public-team-card,.teams-story,.book-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px}.public-player-card{background:#f3eee4;border-radius:16px;padding:18px 10px}.public-player-card img{border:4px solid var(--card);box-shadow:0 3px 12px #4d382414}.public-player-card h3{color:var(--leaf);font-size:16px}.teams-story p,.teams-intro{font-size:15px}.public-team-card header h2{font-size:29px}.login-page{padding:25px 0}.login-card{margin:0 auto 25px;padding:34px}.login-card h1{margin-top:0}.login-form input,.cms-form input,.cms-form textarea,.cms-form select{background:var(--card);border-color:#cecbbb;border-radius:10px}.secondary-button{border-color:#9aab94;color:var(--leaf);border-radius:99px;background:var(--card)}.cms-section,.cms-item,.cms-composer{border-color:var(--line);border-radius:14px;background:var(--card)}.cms-section{box-shadow:var(--shadow)}.cms-composer{background:#f3efe5}.news-ticker{border-radius:20px;background:var(--leaf)}.news-ticker h2,.news-ticker h3,.news-ticker p,.news-ticker .read-more{color:#fff7e8}.news-ticker-controls{background:#2c463a}.photo-grid{gap:18px}.gallery-photo,.gallery-video{border-radius:16px}.gallery-photo{box-shadow:var(--shadow)}.photo-lightbox-close{color:var(--leaf)}.photo-lightbox-caption{color:#fff}.content-page h1,.book-card h2,.teams-story h2{color:var(--leaf)}.form-error{color:#963b2c}.family-menu-button,.family-button,.nav-login{min-height:44px}
@media(max-width:1180px){.nav-shell{flex-wrap:wrap;padding:18px 25px}.family-menu-button{display:flex;align-items:center}.navbar{display:none;width:100%;align-items:stretch;flex-direction:column;gap:0;padding-top:8px}.navbar.show{display:flex}.navbar a{padding:12px 14px;font-size:15px;border-top:1px solid var(--line);white-space:normal}.navbar a[aria-current=page]:not(.nav-login){box-shadow:none;background:#eee9dc;border-radius:10px}.navbar .nav-login{margin-top:10px;align-self:flex-start;padding:12px 20px}.hero.family-home-hero{gap:35px;padding:48px 35px}.hero-sticker{right:-6px}.home-hero-copy h1{font-size:49px}.hero-actions .family-button{gap:12px;font-size:12px}.family-photo-frame .hero-gallery{height:330px}}
@media(max-width:760px){main{padding:25px 20px 0}section{padding:16px}.nav-shell{padding:16px 20px}.family-brand{font-size:23px}.hero.family-home-hero{grid-template-columns:1fr;gap:36px;padding:35px 24px 44px}.home-hero-copy h1{font-size:47px;margin:17px 0 18px}.home-hero-copy>p{font-size:15px;max-width:520px}.hero-actions{margin-top:22px;gap:17px}.hero-footnote{margin-top:22px}.home-hero-visual{max-width:440px;width:100%;justify-self:center;padding:0 12px 10px}.family-illustration-frame,.family-photo-frame{transform:rotate(2deg)}.hero-sticker{width:90px;height:90px;font-size:16px;right:0;bottom:-6px}.family-photo-frame .hero-gallery{height:300px}.photo-frame-caption{font-size:15px}.intro-cards{grid-template-columns:1fr;margin:8px 0 40px;gap:14px;padding:0}.intro-cards .family-intro-card{padding:24px}.family-intro-card h2{font-size:28px;margin:17px 0 10px}.family-intro-card p{font-size:15px}.home-updates{grid-template-columns:1fr;gap:30px;margin-bottom:38px}.family-section-heading{align-items:flex-end;gap:12px}.family-section-heading h2,.home-agenda>h2{font-size:31px}.family-section-heading>a{max-width:100px;text-align:right;font-size:12px}.home-empty-state,.training-card{min-height:0;padding:26px}.family-invitation{padding:33px 23px}.family-invitation h2{font-size:33px}.family-birthdays{grid-template-columns:1fr;padding:24px;gap:10px}.family-birthdays .birthday-note{grid-column:auto}.footer{border-radius:30px 30px 0 0;margin-top:42px}.footer-links{gap:13px 22px}.family-subhero{margin:20px 20px 0;min-height:0;padding:26px;gap:15px}.family-subhero h1{font-size:31px}.subhero-mark{width:55px;height:55px}.teams-page,.content-page,.books-page{padding:0}.news-card{padding:23px}.login-card{padding:26px}.app-download-card{flex-direction:column}.public-players-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.cms-fields-two,.cms-fields-three{grid-template-columns:1fr}.family-invitation .family-button{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-gallery-moving{animation:none}.book-card{transition:none}}
