
.hero-copy .hero-detail{margin-top:0;max-width:560px;font-size:16px;line-height:1.7;color:#fff1d8}.hero-copy>p:first-of-type{margin-bottom:17px}.moments{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 6%;gap:18px;background:#e7d0a5;border-block:1px solid #b8955c}.moments>a{display:flex;align-items:center;gap:17px;padding:22px 20px;color:#000028;text-decoration:none;border:1px solid #b69b70;background:#fff7e7;box-shadow:3px 3px 0 #b8955c25}.moments>a:hover{background:#f4dfb1}.moment-number{font:700 36px/1 'Cafe',sans-serif;color:#9d7228}.moments strong{display:block;font:700 27px/1.1 'Cafe',sans-serif}.moments small{display:block;margin-top:8px;font-size:13px;line-height:1.5}.guest-stories{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;padding:70px 7%;background:#fff8e9}.reviews-intro p{max-width:360px}.review-all{display:inline-block;margin-top:8px;text-underline-offset:5px}.review-cards{display:grid;gap:18px}.guest-quote{margin:0;padding:27px 30px;border:1px solid #cdbb99;background:#f3e6cc;border-left:4px solid #d5a232}.review-rating{font-size:12px;font-weight:700;color:#76531e;line-height:1.6}.guest-quote blockquote{margin:18px 0 22px;font:italic 26px/1.45 Georgia,serif}.guest-quote figcaption{display:flex;gap:7px 16px;align-items:center;flex-wrap:wrap;font-size:12px}.guest-quote figcaption strong{font-size:14px}.guest-quote figcaption a{margin-left:auto;text-underline-offset:3px}.review-note{font-size:11px;line-height:1.6;color:#685a48;margin:0}.social-icons{display:flex;gap:12px}.social-icons a{margin:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #9d7b47;border-radius:50%;color:#000028}.social-icons svg{width:23px;height:23px}.social-icons a:hover{background:#fff5de}.social-icons a:focus-visible,.moments a:focus-visible{outline:3px solid #d5a232;outline-offset:4px}.zwolle-aerial{margin:0;position:relative;min-width:0;align-self:center}.zwolle-aerial img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}.zwolle-aerial figcaption{font:10px/1.5 Arial,sans-serif;color:#e8dbc1;padding:10px 15px;background:#000028}.zwolle-aerial figcaption a{color:inherit}.zwolle-feature{align-items:center}footer nav{gap:15px;justify-content:center}footer nav a{margin:0}@media(max-width:760px){.hero-copy .hero-detail{font-size:15px;line-height:1.65}.moments{grid-template-columns:1fr;padding:24px 7%;gap:12px}.moments>a{padding:19px}.moments strong{font-size:26px}.moment-number{width:35px;flex-shrink:0}.guest-stories{grid-template-columns:1fr;gap:28px;padding:45px 7%}.reviews-intro h2{margin-bottom:20px}.guest-quote{padding:24px}.guest-quote blockquote{font-size:24px}.guest-quote figcaption a{margin-left:0}.zwolle-aerial img{aspect-ratio:3/2;height:auto}.zwolle-aerial figcaption{font-size:9px}.social-icons{width:100%;justify-content:center}}/* Homepage: cafébeelden, gastenkaartjes en een ingepakte cadeaukaart. */
.moments{padding:46px 7% 55px;gap:28px;background:#fff8e9;border:0;align-items:start}.moments>a{display:block;padding:0;border:0;background:transparent;box-shadow:none;min-width:0}.moments>a:hover{background:transparent}.moment-art{height:245px;position:relative;overflow:hidden;background:#d5a232;border-radius:48% 48% 4px 4px}.moment-art>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.moment:hover .moment-art>img{transform:scale(1.04)}.moment-art>svg{width:185px;height:180px;position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);color:#000028}.moment-label{position:absolute;bottom:18px;left:20px;padding:7px 17px;background:#fff8e9;transform:rotate(-5deg);font:700 24px/1 'Cafe',sans-serif;text-transform:uppercase;letter-spacing:1px}.dinner-moment{margin-top:30px}.dinner-moment .moment-art{border-radius:4px 55px 4px 4px}.drinks-moment .moment-art{border-radius:4px 4px 48% 4px}.drinks-moment .moment-art>img{object-position:15% center}.drinks-moment .moment-art>svg{width:105px;height:105px;left:auto;right:0;top:8px;transform:rotate(12deg);color:#fff8e9;filter:drop-shadow(0 1px 3px #000)}.moment-copy{padding:22px 4px 0}.moments strong{font-size:34px}.moments small{font-size:15px}.guest-stories{background:#000028;color:#fff8e9;gap:7%;overflow:hidden}.reviews-intro .eyebrow{color:#d5a232}.reviews-intro h2{color:#fff8e9}.reviews-intro p{color:#fff8e9}.review-all{font-size:13px}.review-cards{padding:15px 10px;gap:32px}.guest-quote{position:relative;background:#fffdf8;color:#000028;border:0;border-radius:3px;padding:32px 30px 28px;transform:rotate(-2deg);box-shadow:8px 9px 0 #d5a232}.guest-quote:nth-child(2){transform:rotate(2deg);margin-left:25px;background:#f4e4bc;box-shadow:7px 8px 0 #ffffff25}.quote-mark{position:absolute;right:15px;top:-30px;color:#d5a232;font:120px/1 Georgia,serif;pointer-events:none}.guest-quote blockquote{position:relative;font-size:27px;line-height:1.35;max-width:490px}.review-rating{padding-right:30px;font-size:11px}.guest-quote figcaption{font-size:11px}.guest-quote figcaption strong{display:block;width:100%;font-size:15px}.review-note{color:#d8d3c5;font-size:10px;padding-top:5px}.gift-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding:85px 8%;background:#f2e4c7;color:#000028;overflow:hidden}.gift-art{height:350px;position:relative;min-width:0}.gift-card{position:absolute;width:86%;height:225px;top:75px;left:3%;border-radius:13px;background:#000028;transform:rotate(-9deg);box-shadow:12px 15px 0 #00002818;display:flex;flex-direction:column;justify-content:center;padding:30px;align-items:flex-start;overflow:hidden;border:1px solid #d5a232}.gift-card img{width:65%;height:auto}.gift-card>span{font:700 17px/1 'Cafe',sans-serif;letter-spacing:3px;color:#fff8e9;margin-top:20px}.gift-ribbon{position:absolute;right:19%;top:0;bottom:0;width:30px;background:#d5a232;box-shadow:inset 6px 0 0 #fff3}.gift-tag{position:absolute;right:0;bottom:3px;padding:24px 28px 24px 40px;background:#fffdf8;clip-path:polygon(16% 0,100% 0,100% 100%,16% 100%,0 50%);transform:rotate(12deg);font:italic 26px Georgia,serif}.gift-tag:before{content:'';position:absolute;left:15px;top:45%;width:7px;height:7px;background:#000028;border-radius:50%}.gift-loop{position:absolute;top:30px;left:55%;width:85px;height:52px;border:10px solid #d5a232;border-radius:70% 70% 10% 70%;transform:rotate(17deg)}.loop-left{left:39%;transform:rotate(195deg)}.gift-spark{position:absolute;color:#a1741b;font-size:43px}.spark-one{top:15px;left:3%;transform:rotate(10deg)}.spark-two{right:0;top:55px;font-size:27px}.gift-copy .eyebrow{color:#80591c}.gift-copy p{max-width:400px}.gift-copy .button{max-width:100%;text-align:center}
@media(max-width:760px){.moments{gap:28px;padding:32px 7% 42px}.moments>a{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:center;margin:0;padding:0}.moment-art{height:140px}.moment-art>svg{width:105px;height:110px;top:43%}.moment-label{font-size:18px;padding:6px 10px;bottom:9px;left:9px}.moment-copy{padding:0}.moments strong{font-size:28px}.moments small{font-size:13px;margin-top:6px}.drinks-moment .moment-art>svg{width:60px;height:60px;right:0;top:3px}.guest-stories{padding:44px 7% 52px;gap:18px}.reviews-intro h2{font-size:44px;margin:14px 0}.reviews-intro p{margin-bottom:5px}.review-cards{gap:30px;padding:16px 8px 0}.guest-quote{padding:27px 22px 23px}.guest-quote:nth-child(2){margin-left:8px}.guest-quote blockquote{font-size:25px;margin:16px 0 20px}.review-rating{font-size:10px;padding-right:0}.quote-mark{font-size:95px;top:-23px;right:12px}.review-note{margin-top:4px}.gift-feature{grid-template-columns:1fr;gap:12px;padding:34px 7% 48px}.gift-art{height:290px;max-width:430px;width:100%;margin:auto}.gift-card{height:195px;top:57px;padding:25px}.gift-card img{width:67%}.gift-loop{top:15px;width:70px;height:45px;border-width:8px}.gift-tag{bottom:0;font-size:23px;padding:20px 24px 20px 35px}.gift-copy h2{font-size:46px;margin:16px 0}.gift-copy p{font-size:15px}.gift-copy .button{font-size:18px;padding:16px 18px}.spark-one{font-size:32px;top:3px}.spark-two{top:40px}}
@media(prefers-reduced-motion:reduce){.moment-art>img{transition:none}}
.gift-collage[hidden],.gift-art[hidden]{display:none}.gift-collage{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;padding:12px 8px;min-width:0}.collage-item{display:block;aspect-ratio:1;min-width:0;background:#fffdf8;border:7px solid #fffdf8;box-shadow:5px 7px 0 #00002818;border-radius:5px;transform:rotate(-7deg);overflow:hidden}.collage-item:nth-child(2){transform:rotate(5deg);margin-top:20px}.collage-item:nth-child(3){transform:rotate(4deg)}.collage-item:nth-child(4){transform:rotate(-5deg);margin-top:12px}.collage-item img{display:block;width:100%;height:100%;object-fit:contain;background:white}.collage-item:focus-visible{outline:3px solid #000028;outline-offset:5px}.gift-collage[data-count="1"]{grid-template-columns:1fr;max-width:360px;margin:auto}.gift-collage[data-count="3"] .collage-item:last-child{grid-column:1/3;width:50%;justify-self:center}@media(max-width:760px){.gift-collage{gap:13px;padding:12px 8px 24px;width:100%;max-width:440px;margin:auto}.collage-item{border-width:5px}.gift-feature{gap:20px}}

/* Historische caféstempel: echte tekst met subtiele inktslijtage. */
.hero .stamp{width:138px;height:138px;background:transparent;color:#f3d38d;border:3px solid currentColor;border-radius:49% 51% 50% 48%;box-shadow:none;transform:rotate(-13deg);font:700 39px/1 'Cafe',Arial,sans-serif;text-shadow:0 1px 3px #0008;isolation:isolate;-webkit-mask-image:url('/assets/stamp-ink.svg');mask-image:url('/assets/stamp-ink.svg');mask-mode:luminance;-webkit-mask-size:100% 100%;mask-size:100% 100%}.hero .stamp:before{content:'';position:absolute;inset:6px;border:1px solid currentColor;border-radius:50%;pointer-events:none}.hero .stamp:after{content:'✦                    ✦';white-space:pre;position:absolute;left:8px;right:8px;top:62px;font:10px/1 Arial,sans-serif;letter-spacing:0;text-shadow:none;pointer-events:none}.hero .stamp small{font:700 12px/1.2 'Cafe',Arial,sans-serif;letter-spacing:2.5px;margin:0}.hero .stamp small:first-child{margin-bottom:7px}.hero .stamp small:last-child{margin-top:7px}

.zwolle-aerial.zwolle-marketingoost img{height:auto;aspect-ratio:auto;object-fit:contain}

