
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/font-0.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/font-1.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/font-2.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/font-3.woff2) format('woff2');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/font-4.woff2) format('woff2');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/font-5.woff2) format('woff2');
}

:root{--ink:#211e1b;--cream:#fff9ef;--paper:#f1e6d4;--red:#ad3524;--gold:#eeb66f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}h1,h2,h3{font-family:Fraunces,Georgia,serif;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(3.2rem,5.2vw,5.8rem);margin:.25em 0;overflow-wrap:break-word}h2{font-size:clamp(2.3rem,4vw,4rem);margin:.2em 0 .5em}h3{font-size:1.5rem;margin:.2em 0}h2,h3{overflow-wrap:anywhere;hyphens:auto}p{margin:.6em 0 1.2em}a{color:inherit}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border:0;border-radius:3px;padding:12px 22px;background:var(--red);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}button:hover,.button:hover{background:#842519}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}header{background:var(--cream);position:sticky;top:0;z-index:10;border-bottom:1px solid #d9cbb8}.nav{max-width:1240px;margin:auto;min-height:74px;padding:0 24px;display:flex;align-items:center;gap:28px}.logo{font:700 1.65rem Fraunces,Georgia,serif;text-decoration:none;white-space:nowrap}.logo{display:inline-flex;align-items:center;gap:8px}.logo img{width:64.4px;height:59.8px;object-fit:contain;mix-blend-mode:multiply}.logo span{color:var(--red)}nav{display:flex;gap:24px;margin-left:auto}nav a{text-decoration:none;font-weight:700;font-size:.9rem}.nav .button{min-height:42px;padding:8px 16px}.hero{display:grid;grid-template-columns:48% 52%;min-height:660px;background:var(--ink);color:var(--cream)}.hero-copy{min-width:0;align-self:center;padding:clamp(36px,7vw,110px);padding-right:35px}.eyebrow{text-transform:uppercase;font-size:.83rem;letter-spacing:.15em;font-weight:700;color:var(--red)}.hero .eyebrow{color:var(--gold)}.hero p{font-size:1.15rem;max-width:550px}.hero .button{background:var(--gold);color:var(--ink);margin:12px 14px 0 0}.hero .secondary{color:var(--cream);border-color:var(--cream);background:transparent}.hero-image{background:url('crijn-martijn.jpg') center/cover;min-height:500px}.wrap{max-width:1240px;margin:auto;padding:96px 24px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.intro p{font-size:1.2rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}.card{background:#fff;border:1px solid #e5d8c6;padding:30px;min-height:260px}.card .num{font:700 2.7rem Fraunces;color:var(--red)}.dark{background:var(--ink);color:var(--cream)}.dark .wrap{padding-block:86px}.dark .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dark .card{background:#322d28;border:1px solid #554b43}.price{font:700 2rem Fraunces;color:var(--gold)}.small{font-size:.88rem;opacity:.8}.estimate{background:#f4e6d0}.estimate-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.estimate-panel{background:#fff;padding:34px;border:1px solid #d8c5ad;box-shadow:12px 12px 0 #e4c99f}.estimate-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.estimate-total{border-top:1px solid #d8c5ad;margin-top:22px;padding-top:20px}.estimate-total strong{display:block;font:700 clamp(2.3rem,4vw,4rem)/1.2 Fraunces,Georgia,serif;color:var(--red)}.estimate-total p{margin:4px 0 16px}.estimate-examples{font-size:.92rem}.estimate-note{font-size:.9rem}.photo-story{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#e8d7bd}.photo-story img{width:100%;height:480px;object-fit:cover}.photo-story>div{padding:clamp(30px,6vw,90px)}.photo-story h2{max-width:600px}.agenda{background:var(--paper)}.agenda-box{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.agenda-note{background:var(--cream);padding:32px;border-left:5px solid var(--red)}.booking{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.booking form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px;font-weight:700}.field.full,.booking form button,.form-note{grid-column:1/-1}input,select,textarea{border:1px solid #bdae9a;background:#fff;padding:12px;min-height:50px;border-radius:2px;width:100%;color:var(--ink)}textarea{min-height:110px;resize:vertical}.form-note{font-size:.85rem;margin:0}.contact{background:var(--red);color:white}.contact a{font-weight:700}.contact .wrap{padding-block:65px;display:flex;justify-content:space-between;align-items:center;gap:35px}footer{background:var(--ink);color:var(--cream);padding:24px;text-align:center;font-size:.9rem}@media(max-width:800px){.nav{flex-wrap:wrap;padding:14px 20px;gap:12px}.logo{font-size:1.3rem}nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:8px 18px}nav a{font-size:.8rem}.nav .button{margin-left:auto;font-size:.8rem;min-height:38px}.hero,.intro,.agenda-box,.booking,.photo-story,.estimate-layout{grid-template-columns:1fr}.estimate-panel{padding:24px}.estimate-fields{grid-template-columns:1fr}.photo-story img{height:300px}.hero{min-height:auto}.hero-copy{padding:55px 24px}.hero-image{min-height:360px;order:-1}.wrap{padding:70px 24px}.grid,.dark .grid{grid-template-columns:1fr}.card{min-height:auto}.contact .wrap{display:block}.booking form{grid-template-columns:1fr}.field{min-width:0}}@media(max-width:420px){nav a{font-size:.72rem}.hero .button{width:100%;margin:8px 0}}

/* Een zonnige trattoria: basilicum, tomaat en citroen. */
:root{--ink:#173e2c;--cream:#fffaf0;--paper:#dcefcf;--red:#b72f25;--gold:#ffd44f;--green:#147643}
body{background:var(--cream)}
header{border-bottom:2px solid var(--green);box-shadow:0 3px 0 rgba(20,118,67,.1)}
header::before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,var(--green) 0 33.333%,var(--cream) 33.333% 66.666%,var(--red) 66.666%)}
.nav{padding-top:7px}.logo span{color:var(--red)}nav a:hover{color:var(--red);text-decoration:underline;text-underline-offset:5px}
button,.button{border-radius:999px;background:var(--red)}button:hover,.button:hover{background:#90231c}
button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.hero{background:var(--green)}.hero-copy{position:relative}.hero h1{color:#fffdf5}.hero .eyebrow{color:var(--gold)}.hero .button{background:var(--gold);color:var(--ink)}.hero .button:hover{background:#ffe584}.hero .secondary{background:transparent;border:2px solid #fffdf5;color:#fffdf5}.hero .secondary:hover{background:#fffdf5;color:var(--green)}
.intro h2{color:var(--red)}.card{border:2px solid var(--green);border-radius:18px;background:#fffdf7;box-shadow:6px 6px 0 #d5e9c9}.card .num{color:var(--red)}
.dark{background:var(--red);color:#fffdf5;border-top:10px solid var(--gold)}.dark .card{background:#fffaf0;border-color:var(--gold);color:var(--ink);box-shadow:7px 7px 0 #8f2119}.dark .card h3{color:var(--red)}.price{color:var(--green)}
.estimate{background:#fff0ab;border-top:10px solid var(--green)}.estimate h2{color:var(--red)}.estimate-panel{border:2px solid var(--green);border-radius:18px;box-shadow:10px 10px 0 var(--green);background:#fffdf7}.estimate-total{border-color:#bfcdb8}.estimate-total strong{color:var(--red)}
.photo-story{background:#f8e0a1}.photo-story>div{border-left:10px solid var(--red)}.photo-story h2{color:var(--green)}
.reviews{background:#f8e0a1;border-top:10px solid var(--red)}.reviews-head{display:flex;align-items:end;justify-content:space-between;gap:32px;flex-wrap:wrap}.reviews h2{color:var(--green);max-width:700px}.review-score{font:700 clamp(2.5rem,5vw,4rem)/1 Fraunces,Georgia,serif;color:var(--red)}.review-stars{color:#a65b00;font-size:1.5rem;letter-spacing:.1em;white-space:nowrap}.review-count{font-weight:700;margin:.3em 0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:32px 0}.review-card{background:#fffdf7;border:2px solid var(--green);border-radius:18px;padding:26px;box-shadow:6px 6px 0 #d5e9c9;min-width:0}.review-card blockquote{font:600 clamp(1.3rem,2vw,1.7rem)/1.3 Fraunces,Georgia,serif;margin:18px 0 24px;overflow-wrap:anywhere}.review-card cite{font-style:normal;font-weight:700}.reviews .small{margin-top:18px}
.agenda{background:#dcefcf}.agenda-note{border-left:7px solid var(--red);border-radius:0 18px 18px 0;background:#fffdf7;box-shadow:6px 6px 0 #b5d5a9}
.booking h2{color:var(--red)}input,select,textarea{border:2px solid #87aa84;border-radius:8px;background:#fffdf7}
.contact{background:var(--green);border-top:10px solid var(--gold)}.contact .button:hover{background:#ffe584!important}footer{background:var(--red);color:#fffdf5}
@media(max-width:800px){.photo-story>div{border-left:0;border-top:8px solid var(--red)}}
@media(max-width:800px){.review-grid{grid-template-columns:1fr}.reviews-head{align-items:start}.review-card{padding:22px}}
@media(max-width:1100px){.nav{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;row-gap:8px;padding:14px 24px 12px;align-items:center}.nav .logo{grid-column:1;grid-row:1;min-width:0}.nav>.button{grid-column:2;grid-row:1;justify-self:end;margin:0;white-space:nowrap}nav{grid-column:1/-1;grid-row:2;margin:0;width:auto;justify-content:center;gap:12px 28px}}
@media(max-width:600px){header{position:relative}.nav{grid-template-columns:minmax(0,1fr);padding:14px 18px;row-gap:12px}.nav .logo{grid-column:1;grid-row:1;justify-self:center}nav{grid-column:1;grid-row:2;gap:8px 18px}.nav>.button{grid-column:1;grid-row:3;justify-self:stretch;white-space:normal}}
/* Rustiger beeld: kleurvlakken en zachte schaduw in plaats van omlijningen. */
header{border:0;box-shadow:0 2px 12px rgba(23,62,44,.08)}header::before{content:none}.nav{padding-top:0}
.dark,.estimate,.reviews,.contact{border:0}
.card,.dark .card,.review-card{border:0;box-shadow:0 8px 24px rgba(23,62,44,.1)}
.estimate-panel{border:0;box-shadow:0 10px 28px rgba(23,62,44,.13)}
.agenda-note{border:0;border-radius:18px;box-shadow:0 8px 24px rgba(23,62,44,.1)}
.photo-story>div{border:0}.hero .secondary{border:0;background:#fffdf5;color:var(--green)}
input,select,textarea{border:1px solid #aac3a8}
@media(max-width:800px){.photo-story>div{border:0}}
@media(max-width:1100px){.nav{padding-top:14px}}

.review-grid{display:block;max-width:720px;margin:32px auto 18px}.review-card{min-height:190px}.review-card[hidden],.review-controls[hidden]{display:none!important}.review-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin:0 0 30px}.review-controls button{min-height:42px;padding:8px 18px}.review-controls span{font-weight:700;min-width:5em;text-align:center}

/* Gastencitaten uit de eerdere Crijntje-site. */
.guest-voices{background:#9eb596;color:#fff;padding:68px 0 76px;overflow:hidden}.guest-voices .wrap{padding-top:0;padding-bottom:0}.guest-voices h2{color:#fff}.guest-voices .eyebrow{color:#fff6d3}.guest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}.guest-card{text-align:center;padding:12px 18px}.guest-face{display:block;width:150px;height:150px;margin:0 auto 22px;border-radius:50%;background-image:url('gasten-oude-site.png');background-size:1024px 640px;background-repeat:no-repeat;animation:guestFloat 5s ease-in-out infinite}.guest-card:nth-child(2) .guest-face{animation-delay:-1.6s}.guest-card:nth-child(3) .guest-face{animation-delay:-3.2s}.guest-face.meisje{background-position:-114px -385px}.guest-face.veenstra{background-position:-410px -385px}.guest-face.karen{background-image:url('gasten-zonder-pijltje.png');background-position:-730px -385px}.guest-card h3{font-family:'DM Sans',sans-serif;font-size:1.35rem;letter-spacing:0;margin:0 0 8px}.guest-card blockquote{font-size:1.08rem;line-height:1.5;margin:0 0 13px}.guest-card .stars{font-size:1.35rem;letter-spacing:.1em;color:#ffdb63}@keyframes guestFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(2deg)}}.social-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px}.social-links a{display:inline-flex;align-items:center;min-height:44px;padding:7px 15px;border:1px solid currentColor;border-radius:24px;text-decoration:none}.social-links a:hover{background:#fff;color:var(--red)}@media(max-width:800px){.guest-grid{grid-template-columns:1fr;gap:6px}.guest-voices{padding:55px 0}.guest-card{padding:12px 8px}.social-links{margin-bottom:24px}}@media(prefers-reduced-motion:reduce){.guest-face{animation:none}}
.moment-gallery{max-width:1240px;margin:auto;padding:64px 24px;display:grid;grid-template-columns:.84fr 1fr;gap:24px;align-items:stretch}.moment-oven{position:relative;overflow:hidden;border-radius:28px;min-width:0}.moment-oven img{display:block;position:absolute;width:104%;height:104%;left:-2%;top:-2%;object-fit:cover}.moment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;min-width:0}.moment-photo{aspect-ratio:1;border-radius:28px;overflow:hidden;background-image:url('crijntje-samen-op-locatie.png');background-repeat:no-repeat;background-size:245% 265%;background-color:var(--cream)}.moment-party{background-position:4% 4%}.moment-team{background-position:96% 4%}.moment-guests{background-position:10% 89%;aspect-ratio:.9}.moment-kids{background-size:230% auto;background-position:92% 100%;aspect-ratio:.9}@media(max-width:800px){.moment-gallery{grid-template-columns:1fr;padding:48px 24px;gap:20px}.moment-oven{aspect-ratio:1.1}.moment-grid{gap:16px}}
[hidden]{display:none!important}.availability-available{color:#173e2c}.availability-limited{color:#855200}.availability-full{color:#ad3524}.email-ready{grid-column:1/-1;background:#fffaf0;border:1px solid #dfd8c8;border-radius:20px;padding:24px}.email-ready h3{margin:0 0 8px}.email-ready p{font-weight:400;margin:0 0 18px}.email-actions{display:flex;flex-wrap:wrap;gap:12px}.email-actions .button{text-align:center}.booking form .email-edit{background:transparent;color:var(--green,#173e2c);border:0;padding:0;min-height:44px;font-size:14px;text-decoration:underline;margin:8px 0}.email-ready details{border-top:1px solid #dfd8c8;padding-top:16px}.email-ready summary{cursor:pointer;font-size:14px}.email-ready label{display:block;margin:16px 0 6px}.email-ready textarea{width:100%;min-height:180px;font-size:14px}.booking form .email-copy{min-height:40px;padding:8px 18px;font-size:14px;margin-top:10px}.email-ready #copyStatus{font-size:14px;margin:10px 0 0}@media(max-width:600px){.email-ready{padding:20px}.email-actions{flex-direction:column}.email-actions .button{width:100%}}.review-grid{max-width:920px}.review-card{padding:clamp(24px,4vw,44px);min-height:270px}.review-card blockquote{font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1.5;max-width:42ch}.review-card .small{font-size:14px;font-weight:400}.review-controls{flex-wrap:wrap}@media(max-width:600px){.review-card{min-height:260px}}.pizza-partners{background:#f8e0a1}.partners-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}.pizza-partners h2{color:var(--green);max-width:12ch}.partners-intro{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5;font-weight:600}.partners-card{background:#fffdf7;border-radius:28px;padding:clamp(24px,4vw,40px);box-shadow:0 8px 24px rgba(23,62,44,.1)}.partners-card h3{font-size:clamp(1.5rem,2.5vw,2rem);margin-top:0;color:var(--green)}.partners-card .button{margin-top:8px;text-align:center}.partners-card .partners-note{font-size:14px;line-height:1.5;margin:16px 0 0}@media(max-width:760px){.partners-layout{grid-template-columns:1fr}.pizza-partners h2{max-width:18ch}.partners-card .button{width:100%}}
/* Compact review layout, including narrow mobile screens. */
.reviews .wrap{padding-top:64px;padding-bottom:64px}
.reviews-head{gap:24px;align-items:center}
.review-score{display:flex;align-items:center;gap:14px;font-size:3rem}
.review-score .review-stars{font-size:1.25rem;letter-spacing:.06em}
.review-count{font-size:1rem;margin-top:10px}
.review-grid{max-width:760px;margin:28px auto 12px}
.review-card{min-height:0;padding:28px 32px;border-radius:22px}
.review-card>.review-stars{font-size:1rem;letter-spacing:.08em}
.review-card blockquote{font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.4;margin:16px 0 20px;max-width:none}
.review-card cite{display:block;font-size:1rem}
.review-card .small{margin:10px 0 0;line-height:1.5}
.review-controls{display:grid;grid-template-columns:auto 44px 1fr auto;gap:8px;max-width:760px;margin:0 auto 24px;align-items:center}
.review-controls button{background:transparent;color:var(--green);border:1px solid rgba(23,62,44,.25);border-radius:999px;min-height:44px;padding:8px 14px;font-size:.875rem;font-weight:600}
.review-controls button:hover{background:#fffdf7}
.review-controls #reviewPause{padding:0;font-size:1.1rem}
.review-controls span{font-size:.875rem;min-width:0;color:var(--green)}
.reviews .review-google-link{display:block;width:fit-content;margin:0 auto;color:var(--green);font-size:1rem;font-weight:700;text-underline-offset:4px;padding:10px 0;min-height:44px}
.reviews .review-source{max-width:760px;margin:10px auto 0;text-align:center;font-size:.875rem;line-height:1.5;opacity:.8}
@media(max-width:600px){.reviews .wrap{padding-top:40px;padding-bottom:40px}.reviews-head{gap:20px}.review-grid{margin-top:24px}.review-card{padding:24px;border-radius:20px;min-height:0}.review-controls{gap:6px}.review-controls button{padding:8px 12px}.reviews .review-source{font-size:.8125rem}.review-score{font-size:2.6rem}.review-count{font-size:.9375rem}}

/* Keep navigation visible while scrolling, with compact mobile spacing. */
:root{--header-offset:88px}
html{scroll-padding-top:var(--header-offset)}
header{position:sticky;top:0;z-index:100;background:var(--cream)}
@media(max-width:1100px){:root{--header-offset:140px}}
@media(max-width:600px){
:root{--header-offset:116px}
.nav{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:8px 16px;min-height:0}
.nav .logo{grid-column:1;grid-row:1;justify-self:start;font-size:1.1rem;gap:5px}
.nav .logo img{width:36px;height:36px}
.nav>.button{grid-column:2;grid-row:1;justify-self:end;min-height:40px;padding:8px 12px;font-size:.8125rem;white-space:nowrap}
.nav nav{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 8px}
.nav nav a{display:inline-flex;align-items:center;min-height:40px;font-size:.8125rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero-image{background:none;position:relative;overflow:hidden}.hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.guest-face.meisje,.guest-face.veenstra,.guest-face.karen{background:none;object-fit:cover}.moment-photo{display:block;width:100%;height:auto;object-fit:cover;background:none}.price-tiers{margin:24px 0}.price-tiers table{width:100%;border-collapse:collapse;margin:16px 0}.price-tiers caption{text-align:left;font-weight:700;margin-bottom:10px}.price-tiers th,.price-tiers td{padding:8px 12px;border-bottom:1px solid #aac3a8;text-align:left}.faq-item{padding:18px 0;border-bottom:1px solid #aac3a8;max-width:850px}.faq-item summary,.price-tiers summary{cursor:pointer;font-weight:700}.review-controls[hidden]{display:grid!important;visibility:hidden}.review-controls{min-height:44px}

/* Keep native iPhone date controls inside the available card width. */
.agenda-box>*,.agenda-note,.agenda-note .field{min-width:0}.agenda-note{width:100%;justify-self:center}.agenda-note .field{width:100%;align-items:stretch}input[type="date"]{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;-webkit-appearance:none;appearance:none}input[type="date"]::-webkit-date-and-time-value{min-height:1.5em;text-align:left}input[type="date"]::-webkit-datetime-edit{min-width:0;padding:0}

.catering-occasions .card h3 a{text-decoration:none}.occasion-heading{font-size:1.6rem;line-height:1.2}.occasion-price{background:var(--paper);border-radius:12px}.occasion-links{display:flex;flex-wrap:wrap;gap:16px 28px}.occasion-links a{text-underline-offset:4px}

/* Booking clarity and the separate collaboration page. */
.footer-partners{display:block;margin:12px auto;min-height:44px;padding:8px;text-underline-offset:4px}
.partners-layout h1{font-size:clamp(2.3rem,4vw,4rem);color:var(--green)}

.faq-heading{margin-top:64px}
