:root{--violet:#7735ef;--violet-deep:#2c145b;--blue:#4565db;--ink:#14111d;--paper:#fbfaff;--mist:#efeafa;--white:#fff;--muted:#6a6475;--line:rgba(61,35,104,.18);font-family:Arial,"Helvetica Neue",sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;min-width:320px;background:var(--paper);color:var(--ink)}
button,summary,[role="button"]{font:inherit}
button,summary,[role="button"]{cursor:pointer}
button{border:0}
[hidden]{display:none!important}
.check-canvas{min-height:100vh;overflow:clip;background:var(--paper)}
.check-rail{position:absolute;top:0;left:0;right:0;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(18px,5vw,76px);pointer-events:none}
.check-wordmark,.check-minor{pointer-events:auto}
.check-wordmark{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.18rem;letter-spacing:-.02em;color:#20152d}
.check-wordmark img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(75,39,128,.2))}
.check-minor{padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.84);border:1px solid var(--line);color:var(--ink);font-weight:750;box-shadow:0 8px 24px rgba(40,21,76,.08)}
.check-scene{position:relative;min-height:100svh;display:grid;align-items:end;padding:104px clamp(18px,5vw,76px) clamp(28px,6vh,64px);background:url('/images/bumsplatz-background.webp') center/cover no-repeat;isolation:isolate;outline:0}
.check-scene:focus-visible{box-shadow:inset 0 0 0 4px var(--violet)}
.check-wash{position:absolute;inset:0;z-index:-1;background:linear-gradient(92deg,rgba(251,250,255,.96) 0%,rgba(251,250,255,.86) 36%,rgba(251,250,255,.18) 70%,rgba(251,250,255,.06) 100%)}
.check-ticket{position:relative;width:min(680px,92vw);display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;background:rgba(255,255,255,.9);border:1px solid rgba(85,52,142,.16);border-radius:12px 44px 12px 44px;padding:clamp(22px,3vw,38px);box-shadow:0 30px 70px rgba(48,25,83,.18)}
.check-ticket:after{content:"";position:absolute;right:-12px;bottom:26px;width:24px;height:72px;background:var(--violet);border-radius:12px;box-shadow:0 8px 20px rgba(119,53,239,.3)}
.check-number{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:linear-gradient(140deg,var(--violet),var(--blue));color:#fff;font-weight:900;font-size:1.35rem;box-shadow:0 12px 28px rgba(94,55,212,.28)}
.check-eyebrow{margin:2px 0 10px;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:900;color:var(--violet)}
.check-ticket h1{margin:0 0 14px;font-size:clamp(2rem,4.2vw,4rem);line-height:1;letter-spacing:-.045em;max-width:14ch;text-wrap:balance}
.check-lead{font-size:clamp(.98rem,1.5vw,1.13rem);line-height:1.55;color:#3d3747;max-width:51ch;margin:0 0 20px}
.check-actions{display:flex;gap:11px;flex-wrap:wrap;align-items:center}
.check-primary{padding:14px 22px;border-radius:10px 24px 10px 24px;background:linear-gradient(135deg,var(--violet),#5c7cf0);color:#fff;font-weight:850;box-shadow:0 12px 26px rgba(93,61,215,.25);transition:transform .2s,box-shadow .2s}
.check-primary:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(93,61,215,.34)}
.check-secondary{padding:13px 19px;border-radius:10px 22px 10px 22px;background:#fff;color:#3f3152;border:1px solid var(--line);font-weight:750}
.check-fineprint{margin:18px 0 0;color:var(--muted);font-size:.75rem;line-height:1.5;max-width:62ch}
.check-notes{background:linear-gradient(180deg,#f3effb,#fff)}
.check-notes summary{list-style:none;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:26px clamp(20px,6vw,90px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:850;color:#2a173e;background:rgba(255,255,255,.62)}
.check-notes summary::-webkit-details-marker{display:none}
.check-notes summary:after{content:"＋";grid-column:2;grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#e6dcfb;color:var(--violet);font-size:1.5rem}
.check-notes[open] summary:after{content:"−"}
.check-notes summary em{font-style:normal;color:var(--muted);font-size:.76rem;font-weight:500}
.check-article{width:min(1020px,calc(100% - 36px));margin:auto;padding:58px 0 84px;font-family:Georgia,"Times New Roman",serif;color:#302b38;font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.78}
.check-article h2{clear:both;margin:2.1em 0 .65em;font-family:Arial,"Helvetica Neue",sans-serif;color:#241334;font-size:clamp(1.55rem,3vw,2.55rem);line-height:1.12;letter-spacing:-.03em;max-width:23ch}
.check-article h2:first-child{margin-top:0}
.check-article p{max-width:76ch;margin:0 0 1.2em}
.check-visual{float:left;width:min(38%,350px);margin:8px 38px 30px 0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:46px 14px 46px 14px;box-shadow:0 24px 55px rgba(67,37,100,.14);transition:transform .25s}
.check-visual:hover{transform:translateY(-4px) rotate(-.7deg)}
.check-visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:36px 10px 32px 10px}
.check-visual:nth-of-type(even){float:right;margin:8px 0 30px 38px}
.check-visual:nth-of-type(even) img{aspect-ratio:1/1}
.check-visual figcaption{padding:10px 6px 4px;font-family:Arial,"Helvetica Neue",sans-serif;font-size:.75rem;color:var(--muted);text-align:center}
.check-lastcall{clear:both;margin-top:54px;padding:28px 30px;border-radius:16px 42px 16px 42px;background:linear-gradient(135deg,#2b1654,#7043dd);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:22px;font-family:Arial,"Helvetica Neue",sans-serif}
.check-lastcall div{display:grid;gap:5px}.check-lastcall strong{font-size:1.15rem}.check-lastcall span{font-size:.82rem;color:#ddd4f3}
.check-lastcall .check-primary{background:#fff;color:#3e216f;box-shadow:none;flex:0 0 auto}
.check-footer{display:flex;justify-content:space-between;gap:22px;padding:24px clamp(20px,6vw,90px);background:#1b102b;color:#c8bfd4;font-size:.75rem}
.check-footer span:first-child{color:#bda0ff;font-weight:900}
.check-age,.check-popup{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px}
.check-ageback{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(246,244,251,.18),rgba(246,244,251,.34)),url('/images/bumsplatz-background.webp');background-position:center;background-size:cover}
.check-agepanel{position:relative;width:min(530px,100%);padding:clamp(28px,5vw,48px);background:rgba(255,255,255,.96);border:1px solid rgba(80,48,130,.17);border-radius:16px 52px 16px 52px;box-shadow:0 40px 100px rgba(37,18,65,.34);text-align:left}
.check-seal{position:absolute;right:34px;top:-42px;width:84px;height:84px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px rgba(44,22,79,.18)}
.check-seal img{width:70px;height:70px;object-fit:contain}
.check-agepanel h2,.check-popupbody h2{font-size:clamp(1.9rem,5vw,3.1rem);line-height:1.03;letter-spacing:-.04em;margin:0 0 16px;max-width:12ch}
.check-agepanel>p:not(.check-eyebrow),.check-popupbody>p:not(.check-eyebrow){color:var(--muted);line-height:1.55;margin:0 0 24px;max-width:46ch}
.check-agebuttons{display:flex;gap:10px;flex-wrap:wrap}
.check-popup{z-index:45;background:rgba(27,16,43,.42)}
.check-popupbody{position:relative;width:min(430px,100%);padding:38px;background:#fff;border-radius:42px 14px 42px 14px;box-shadow:0 36px 100px rgba(29,14,53,.42);text-align:center}
.check-popupbody h2{max-width:none}.check-popupbody>p:not(.check-eyebrow){margin-inline:auto}
.check-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border-radius:12px;background:#eee8f8;color:#4b2d71;font-size:1.45rem}
.check-popicon{width:68px;height:68px;margin:0 auto 13px}.check-popicon img{width:100%;height:100%;object-fit:contain}
.check-textbutton{display:block;margin:13px auto 0;padding:6px;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.check-rail{padding:12px 14px}.check-wordmark{font-size:1rem}.check-wordmark img{width:36px;height:36px}.check-minor{font-size:.75rem;padding:8px 12px}.check-scene{min-height:100svh;padding:82px 12px 18px;background-size:100% auto;background-position:center top;background-color:#fff}.check-wash{background:linear-gradient(0deg,#fbfaff 0%,rgba(251,250,255,.96) 52%,rgba(251,250,255,.04) 100%)}.check-ticket{grid-template-columns:1fr;gap:12px;width:100%;padding:21px;border-radius:10px 34px 10px 34px}.check-number{width:52px;height:52px;font-size:1rem}.check-ticket h1{font-size:clamp(1.8rem,9vw,2.75rem);max-width:13ch}.check-actions{align-items:stretch;flex-direction:column}.check-actions button{width:100%}.check-notes summary{padding:20px 16px}.check-notes summary em{display:none}.check-article{width:calc(100% - 30px);padding-top:42px}.check-visual,.check-visual:nth-of-type(even){float:none;width:min(100%,360px);margin:20px auto 32px}.check-lastcall{align-items:stretch;flex-direction:column;padding:24px}.check-footer{flex-direction:column;padding:22px 16px}.check-age,.check-popup{align-items:end;padding:10px}.check-ageback{background-size:100% auto;background-position:center top;background-color:#fff}.check-agepanel,.check-popupbody{padding:28px 20px 22px;border-radius:34px 12px 28px 12px}.check-seal{right:22px;top:-34px;width:68px;height:68px}.check-seal img{width:56px;height:56px}.check-agepanel h2{padding-right:62px}.check-agebuttons{display:grid}.check-agebuttons button{width:100%}}
@media(min-width:761px) and (max-width:1024px){.check-scene{padding-inline:28px}.check-ticket{width:min(620px,76vw)}.check-wash{background:linear-gradient(90deg,rgba(251,250,255,.96),rgba(251,250,255,.72) 55%,rgba(251,250,255,.1))}}
.dialog-label{margin:0 0 14px;font-size:clamp(1.55rem,4vw,2.2rem);font-weight:800;line-height:1.1}
