/* The replies sit beneath the fox, using the existing painted button artwork. */
.merchant-framing{position:absolute;inset:0;z-index:1;transform:scale(.78);transform-origin:52% 55%}
.dialogue-card{left:50%;right:auto;bottom:18px;width:min(850px,calc(100% - 48px));max-height:51svh;padding:18px 27px 14px;overflow:auto;overscroll-behavior:contain;border-radius:0;box-shadow:0 8px 45px #071f1859;transform:translate(-50%,18px);clip-path:polygon(.4% 1.5%,25% 0,62% .9%,99.5% 0,100% 98%,72% 100%,36% 99.1%,0 100%);scrollbar-color:#71503955 transparent}
body[data-view=close] .dialogue-card{transform:translate(-50%,0)}
.dialogue-heading{padding:0 3px 10px;gap:20px;border-bottom:1px solid #71503940}
.dialogue-heading .eyebrow{display:none}
.dialogue-heading h2{font-size:31px;letter-spacing:.015em;margin:0;-webkit-mask-image:url('/assets/lettering/hero-ink-v03.webp');mask-image:url('/assets/lettering/hero-ink-v03.webp');mask-size:520px}
.mood-label{max-width:none;font-size:13px;color:var(--forest)}
.dialogue-body{padding:10px 4px 8px;min-height:0;text-align:center}
.dialogue-text{font:18px/1.4 Georgia,serif;min-height:0}
.fact-source{margin-top:6px;font-size:10px}
.reply-prompt{margin:2px 0 1px;text-align:center;color:var(--blue);font:10px/1.3 system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.replies{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px}
.reply,.reply:last-child{position:relative;isolation:isolate;border:0;min-height:58px;padding:14px 24px;background:none;color:var(--paper);font:15px/1.3 Georgia,serif;gap:12px;text-align:left}
.reply::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--blue);-webkit-mask:url('/assets/painted-button-v2/01.webp') center/100% 100% no-repeat;mask:url('/assets/painted-button-v2/01.webp') center/100% 100% no-repeat;transition:background 180ms}
.reply:nth-child(2n)::before{-webkit-mask-image:url('/assets/painted-button-v2/02.webp');mask-image:url('/assets/painted-button-v2/02.webp')}
.reply:nth-child(3n)::before{-webkit-mask-image:url('/assets/painted-button-v2/03.webp');mask-image:url('/assets/painted-button-v2/03.webp')}
.reply:hover,.reply:focus-visible{color:var(--paper);background:none}
.reply:hover::before,.reply:focus-visible::before{background:var(--orange)}
.reply:focus-visible{outline:2px solid var(--orange);outline-offset:-4px}
.reply-number{display:none}
.reply-arrow{color:var(--paper);font-size:23px}
.dialogue-footer{margin:5px 4px 0;font-size:10px;opacity:.75}
.reward{margin:4px 4px 8px;padding:9px 13px}
.reward-code{padding:7px 0}
.return-button{background:var(--paper);color:var(--forest);border:0;clip-path:polygon(1% 3%,99% 0,100% 96%,0 100%)}
/* Reply columns stay generous for long Dutch labels. */
@media(min-width:1600px){.dialogue-card{width:940px}.dialogue-text{font-size:20px}.reply{font-size:17px;min-height:65px}}
@media(max-width:900px){.dialogue-card{width:calc(100% - 36px);padding:15px 21px 12px}.dialogue-heading h2{font-size:29px}.dialogue-text{font-size:17px}.reply{font-size:14px}}
@media(max-width:600px){
  .merchant-framing{transform:scale(.76);transform-origin:52% 42%}
  .dialogue-card{left:50%;right:auto;bottom:10px;width:calc(100% - 20px);max-height:55svh;padding:14px 15px 12px}
  .dialogue-heading{padding:0 3px 8px;gap:8px}.dialogue-heading h2{font-size:27px}.mood-label{font-size:11px;max-width:110px}
  .dialogue-body{padding:8px 4px}.dialogue-text{font-size:16px;line-height:1.35}
  .replies{grid-template-columns:1fr;gap:0}.reply,.reply:last-child{min-height:47px;padding:12px 23px;font-size:13px}
  .reply-prompt{font-size:9px}.dialogue-footer{font-size:9px}.dialogue-footer>span{display:none}
}
@media(max-height:720px) and (min-width:601px){.dialogue-card{padding:13px 22px 11px;bottom:12px}.dialogue-heading h2{font-size:27px}.dialogue-text{font-size:16px}.reply{min-height:52px;font-size:14px;padding:12px 23px}.dialogue-body{padding:8px 4px}.merchant-framing{transform:scale(.74)}}

/* Suggested arcade spot: the window corner beside the right end of the counter. */
.arcade-machine,.arcade-hotspot{position:absolute;left:76%;top:39%;width:22%;height:53%}
.arcade-machine{object-fit:contain;object-position:center bottom;user-select:none;pointer-events:none}
.arcade-hotspot{border:0;background:none;padding:0;pointer-events:auto;cursor:pointer}
.arcade-hotspot .hotspot-label{left:7%;top:77%;font:24px/1 VeluweDisplay,Impact,sans-serif;letter-spacing:.01em;padding:12px 18px;color:var(--blue);box-shadow:2px 3px 0 #123c3244}
.arcade-hotspot .hotspot-label span{font:19px Georgia,serif}
.arcade-hotspot:hover .hotspot-label{color:var(--orange)}
.arcade-hotspot:focus-visible{outline:0}.arcade-hotspot:focus-visible .hotspot-label{outline:3px solid var(--orange);outline-offset:4px}
.arcade-mobile-link{display:none}
.arcade-preview{width:min(840px,calc(100% - 32px));max-height:90svh;padding:30px 40px;border:0;background:var(--paper);color:var(--forest);box-shadow:0 20px 100px #071f1866;overflow:auto}
.arcade-preview::backdrop{background:#071f18b3;backdrop-filter:blur(4px)}
.arcade-preview__body{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px}
.arcade-preview img{display:block;width:100%;max-height:66svh;object-fit:contain}
.arcade-preview h2{font:normal clamp(38px,5vw,64px)/.95 VeluweDisplay,Impact,sans-serif;color:var(--blue);margin:12px 0 18px}
.arcade-preview p{font:18px/1.55 Georgia,serif;max-width:280px}
.arcade-preview__close{position:absolute;right:14px;top:10px;background:none;border:0;font:30px/1 Georgia,serif}
.arcade-preview__back{border:0;background:var(--orange);color:var(--paper);padding:13px 20px;margin-top:12px;clip-path:polygon(2% 6%,98% 0,100% 95%,0 100%);font:15px Georgia,serif}
@media(max-width:700px){.arcade-mobile-link{display:block;position:absolute;right:16px;top:88px;pointer-events:auto;background:var(--paper);border:0;color:var(--blue);padding:10px 14px;font:21px VeluweDisplay,Impact,sans-serif;transform:rotate(2deg)}.arcade-preview{padding:35px 22px 25px}.arcade-preview__body{grid-template-columns:1fr;gap:5px}.arcade-preview img{max-height:42svh}.arcade-preview h2{font-size:38px;margin:10px 0}.arcade-preview p{font-size:16px;max-width:none;margin:8px 0}}

/* Room for full replies inside the painted area, rather than along its thin edge. */
.dialogue-card{width:min(980px,calc(100% - 48px));max-height:58svh;padding:18px 28px 15px}
.dialogue-card .replies{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}
.dialogue-card .replies .reply{display:flex;align-items:center;justify-content:center;min-height:88px;padding:24px 58px 24px 42px;font:18px/1.35 Georgia,serif;text-align:center;gap:0}
.reply-label{display:block;flex:1;min-width:0;white-space:normal;overflow-wrap:break-word;hyphens:auto}
.dialogue-card .reply-arrow{position:absolute;right:30px;top:50%;transform:translateY(-50%);font-size:24px}
.dialogue-card .reply:hover .reply-arrow{transform:translate(3px,-50%)}
.dialogue-card .replies .reply:last-child:nth-child(odd){grid-column:1 / -1;width:calc(50% - 6px);justify-self:center}
.dialogue-footer{justify-content:center;margin-top:6px}.dialogue-footer>span{display:none}
.shop-header{justify-content:flex-end}
.fox-hotspot .hotspot-label,.arcade-hotspot .hotspot-label{opacity:0;visibility:hidden;transition:opacity 180ms ease,visibility 180ms}
.fox-hotspot:hover .hotspot-label,.fox-hotspot:focus-visible .hotspot-label,.arcade-hotspot:hover .hotspot-label,.arcade-hotspot:focus-visible .hotspot-label{opacity:1;visibility:visible}
.arcade-hotspot .hotspot-marker{right:17%;top:7%;width:48px;height:37px}
.arcade-hotspot:hover .hotspot-marker{transform:translateY(-4px) rotate(-5deg)}
.arcade-hotspot:focus-visible .hotspot-marker,.fox-hotspot:focus-visible .hotspot-marker{outline:3px solid var(--orange);outline-offset:5px}
@media(max-width:900px){.dialogue-card{width:calc(100% - 32px);padding:16px 19px 13px}.dialogue-card .replies .reply{font-size:17px;padding:23px 44px 23px 32px;min-height:86px}.dialogue-card .reply-arrow{right:24px}}
@media(max-width:600px){
  .dialogue-card{width:calc(100% - 20px);padding:14px 15px 12px;max-height:59svh}
  .dialogue-card .replies{grid-template-columns:1fr;gap:0}
  .dialogue-card .replies .reply{min-height:70px;padding:20px 46px 20px 30px;font-size:16px;line-height:1.35}
  .dialogue-card .replies .reply:last-child:nth-child(odd){grid-column:auto;width:100%}
  .arcade-mobile-link{display:grid;place-items:center;width:48px;height:37px;padding:0;border-radius:55% 50% 50% 15%;font:700 26px/1 Georgia,serif;color:var(--forest);transform:none;box-shadow:0 2px 0 #123c3238}
}
@media(prefers-reduced-motion:reduce){.arcade-hotspot:hover .hotspot-marker{transform:none}.fox-hotspot .hotspot-label,.arcade-hotspot .hotspot-label{transition:none}}

/* Reserve a clear gap before the arrow, including wrapped phone replies. */
.dialogue-card .replies .reply{padding-right:70px}
@media(max-width:600px){.dialogue-card .replies .reply{padding-right:62px}}
