/* Festive and professional direction: neutral base, confident type, energetic accents. */
:root { --event-ink: #262a30; --event-blue: #4b7189; --event-orange: #e6a34e; }
body { background: #fcfbf8; color: var(--event-ink); }
.nav { border-bottom-color: #ece9e1; }
.links { color: #31363c; }
.links a:not(.btn):hover { color: #4b7189; }
.btn { background: #26343f; border-color: #26343f; border-radius: 9px; }
.btn:hover { background: #38546a; border-color: #38546a; }

.memory-hero { background: linear-gradient(110deg,#faf7ef 0%,#f4efe4 51%,#e5edf1 100%); border: 1px solid #e7e6df; border-radius: 21px; }
.memory-hero .hero-copy { padding-top: 110px; }
.memory-hero h1 { font-family: 'Outfit','DM Sans',sans-serif; font-weight: 800; letter-spacing: -3px; font-size: clamp(48px,4.15vw,61px); line-height: 1.08; color: #26323a; }
.memory-hero h1 em { font-style: normal; font-weight: 800; color: #4d7891; }
.memory-hero .eyebrow { font-size: 11px; font-weight: 800; color: #94714c; }
.memory-hero .eyebrow:before { background: #e6a34e; }
.memory-hero .hero-copy > p { color: #5b6269; font-size: 17px; }
.memory-hero .hero-copy:after { background: #e0a95e; }
.memory-hero .promise-strip span { background: #fff; border: 1px solid #d8e2e5; color: #425766; font-weight: 700; }
.memory-showcase:before { background: #d9e6eb; right: -45px; width: 480px; height: 480px; }
.memory-showcase:after { background: #f3d7a7; width: 290px; height: 290px; }
.memory-photo { border: 1px solid #edeae3; box-shadow: 0 21px 38px #33485b28; }
.memory-photo.main { transform: rotate(3deg); }
.memory-photo.detail { transform: rotate(-6deg); }
.memory-label { width: 142px; height: 125px; border-radius: 15px; background: #f2b352; border: 5px solid #fffaf1; color: #26343d; transform: rotate(7deg); gap: 1px; }
.memory-label strong { font-family: 'Outfit','DM Sans',sans-serif; font-weight: 800; font-size: 28px; font-style: normal; }
.memory-label span { font-size: 12px; font-weight: 800; }
.memory-sparkle { color: #e7a54a; text-shadow: none; }
.memory-hero:before { color: #e7a54a; }

.ribbon { background: #263640; border-radius: 10px; transform: none; box-shadow: 0 12px 24px #2a3c481b; }
.ribbon:after { border-color: #d4a76455; }
.ribbon span:before { color: #f4c679; }
.section h2,.moment-head h2,.future h2,.banner h2 { font-family: 'Outfit','DM Sans',sans-serif; letter-spacing: -2.2px; font-weight: 750; line-height: 1.08; }
.eyebrow { color: #8a6b4d; }
.eyebrow:before { background: #dfa04a; }
.moment.wedding { background: #f6e8d3; }
.moment.home { background: #e3edf0; }
.moment.business { background: #eeece3; }
.moment-grid .moment:nth-child(2),.moment-grid .moment:nth-child(2):hover { transform: none; }
.moment { border: 1px solid #e3e3df; border-radius: 17px 17px 48px 17px; }
.moment .visual { background: #fffefa99; border: 2px solid #ffffffa3; color: #597486; filter: none; box-shadow: 0 10px 22px #34485824; }
.moment h3,.step h3,.package h3 { font-family: 'Outfit','DM Sans',sans-serif; font-weight: 700; letter-spacing: -1.2px; }
.moment h3 { font-size: clamp(25px,2.5vw,34px); }
.moment:after { border-color: #79919a42; }
#hoe-werkt-het .step:nth-child(1) { background: #f8f1e6; }
#hoe-werkt-het .step:nth-child(2) { background: #edf2f3; }
#hoe-werkt-het .step:nth-child(3) { background: #f8efe0; }
#hoe-werkt-het .step { border-color: #e6e5df; }
#hoe-werkt-het .step .number { font-family: 'Outfit',sans-serif; font-weight: 700; font-size: 31px; background: #ffffffc9; color: #597486; box-shadow: 0 9px 21px #34485822; }
.step:after { color: #e1a854; }
#pakketten .section-head { border-top-color: #d7dee0; }
#pakketten .package { border-color: #e1e3e0; }
#pakketten .package.featured { background: linear-gradient(145deg,#41657b,#304b5e); }
.package:before { background: linear-gradient(90deg,#e7ae63,#95afbc,#e7ae63); }
.package.featured:before { background: linear-gradient(90deg,#f6c778,#e9d9b3,#f6c778); }
.package .tag { background: #edf2f2; color: #456374; }
.package-tags .popular-tag,#pakketten .package-tags .popular-tag { background: #f2bc6b; color: #433323; }
.package .price { color: #53798f; }
.package.featured .price { color: #f6d5a5; }
.package li:before { color: #7b9bac; }
.package li:last-child { background: #edf4f4; border-color: #d3e3e5; color: #466a7c; }
.package.featured li:last-child { background: #55788b; border-color: #8eabb6; color: #fff; }
.banner { background: #f3d6a6; border-color: #e8c589; border-radius: 15px; }
.future { background: #e8eef0; color: #2d414e; border: 1px solid #d9e4e7; border-radius: 17px; }
.future h2 em { color: #537990; }
.future p { color: #64757e; }
.future:after { color: #95b4c2; }
.future .future-chip { color: #395769; background: #fff; border-color: #bad0d9; }
.faq details[open] { background: #edf2f2; }
.legal { background: #f1f0ea; }

@media (max-width: 900px) {
  .memory-hero .hero-copy { padding-top: 64px; }
}
@media (max-width: 600px) {
  .memory-hero h1 { font-size: clamp(46px,10vw,68px); letter-spacing: -2.5px; }
  .memory-label { width: 104px; height: 100px; }
  .memory-label strong { font-size: 20px; }
  .memory-label span { font-size: 9px; }
}
