:root{
  --o:#FF6B3A;--l:#793A9B;--ink:#241531;--k:#111;--w:#fff;
  --s:56px;                                  --streifen:repeating-linear-gradient(135deg,var(--o) 0 var(--s),var(--l) var(--s) calc(var(--s)*2));
  --edge:clamp(24px,5vw,96px);
  --text:clamp(19px,1.2vw,26px);
  --text-klein:clamp(17px,1vw,22px);
  --luft:clamp(56px,6vw,96px);               }
*{margin:0;padding:0;box-sizing:border-box}
html{overflow-x:clip}
body{font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:var(--w);line-height:1.65;overflow-x:clip}
h1,h2,h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;color:var(--ink);line-height:1.12;letter-spacing:-.02em}
h1{font-size:clamp(36px,3.9vw,76px)}
h2{font-size:clamp(30px,2.9vw,52px);margin-bottom:20px}
h3{font-size:clamp(23px,1.5vw,30px);margin-bottom:12px}
p{font-size:var(--text)}
strong{font-weight:700}
.quote{font-weight:700}
img{max-width:100%;display:block}
.hero h1 br{display:none}
@media(min-width:1121px){.hero h1 br{display:inline}}

.mark{display:inline-block;color:var(--w);background:var(--l);border:3px solid var(--k);padding:0 .16em;margin:0 .08em;transform:rotate(-3deg);box-shadow:6px 6px 0 var(--k)}

.kasten-gross{background:var(--w);border:8px solid var(--k);box-shadow:16px 16px 0 var(--k);padding:48px}
.kasten{background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--k);padding:28px}

.btn{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:var(--text-klein);text-decoration:none;padding:14px 26px;border:3px solid var(--k);box-shadow:6px 6px 0 var(--k);transition:transform .12s,box-shadow .12s;margin-top:18px}
.btn-orange{background:var(--o);color:var(--ink)}
.btn-lila{background:var(--l);color:var(--w)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--k)}
.btn:active{transform:translate(6px,6px);box-shadow:0 0 0 var(--k)}
.btn:focus-visible{outline:3px solid var(--l);outline-offset:3px}

.pille{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(13px,.7vw,16px);letter-spacing:.08em;text-transform:uppercase;padding:5px 13px;border:2px solid var(--k);background:var(--o);color:var(--ink);margin-bottom:14px}
.pille.gratis{background:var(--l);color:var(--w)}
.sticker{position:absolute;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(14px,.85vw,19px);padding:8px 16px;background:var(--o);color:var(--ink);border:3px solid var(--k);box-shadow:4px 4px 0 var(--k);transform:rotate(-5deg);white-space:nowrap}
.stempel{position:absolute;top:18px;right:18px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(12px,.68vw,15px);letter-spacing:.1em;text-transform:uppercase;color:var(--l);border:3px solid var(--l);padding:5px 10px;transform:rotate(8deg)}
.herz{position:absolute;top:-30px;right:-18px;font-family:'Segoe UI Emoji',sans-serif;font-size:clamp(44px,3.6vw,72px);line-height:1;transform:rotate(14deg);z-index:2}

.top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px var(--edge);border-bottom:4px solid var(--k);background:var(--w)}
.top .marke{display:inline-flex;gap:.22em;line-height:1;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(30px,2.6vw,46px);letter-spacing:-.03em;color:var(--ink);text-decoration:none}
.schild{display:inline-flex;align-items:center;gap:10px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(14px,.9vw,19px);border:3px solid var(--k);padding:8px 16px;background:var(--w);box-shadow:4px 4px 0 var(--k);transform:rotate(-1.5deg);white-space:nowrap}
.schild .punkt{width:12px;height:12px;background:var(--o);border:2px solid var(--k)}
.nav{display:flex;gap:4px;flex-wrap:wrap}
.nav a{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:clamp(17px,1vw,24px);color:var(--ink);text-decoration:none;padding:8px 16px;border:3px solid transparent}
.nav a:hover{border-color:var(--k);background:var(--o)}

.hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:clamp(32px,4vw,80px);align-items:start}
.hero-kasten{position:relative}
.keks-line{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(19px,1.5vw,26px);color:var(--o);margin:18px 0 20px}
#keks{width:40px;height:40px;display:inline-block;vertical-align:middle;margin-left:6px}
.intro p{margin-top:12px;max-width:68ch}
.hero-fenster{position:relative}
.fenster{background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--k);overflow:hidden;padding-bottom:12px}
.fenster-leiste{display:flex;align-items:center;gap:9px;background:var(--o);border-bottom:4px solid var(--k);padding:12px 18px}
.fenster-leiste i{width:13px;height:13px;background:var(--w);border:2.5px solid var(--k)}
.fenster-leiste .datei{margin-left:auto;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(13px,.74vw,17px)}
.fenster svg{display:block;width:100%;height:auto}
.hero-fenster .sticker{position:relative;display:inline-block;margin:-26px 0 0 8%}
.krakel{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(17px,1.05vw,24px);color:var(--l);margin-top:28px;text-align:right;transform:rotate(-2deg)}

.band{height:32px;background:var(--streifen);border-top:4px solid var(--k);border-bottom:4px solid var(--k)}

.ueber{display:block}
.ueber::after{content:"";display:block;clear:both}
.ueber-bild{float:left;width:clamp(300px,36%,520px);margin:0 clamp(28px,4vw,64px) 12px 0}
.ueber h2{float:none}
.foto{position:relative;max-width:870px}
.foto img{border:5px solid var(--k);box-shadow:10px 10px 0 var(--k)}
.foto .sticker{right:-10px;bottom:-18px}
.ki-hinweis{display:block;margin-top:34px;font-size:clamp(13px,.72vw,16px);font-weight:600;color:#6b5a7a}
.prose p{margin-bottom:14px;max-width:none;hyphens:auto}
.zettel{display:flow-root;margin:22px 0;background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--o);padding:16px 20px;font-size:clamp(16px,.95vw,21px);font-weight:600;transform:rotate(-1.2deg);max-width:min(720px,100%)}
.zettel em{font-style:normal;font-weight:800;color:var(--l);font-family:'Plus Jakarta Sans',sans-serif}

.kopf p{max-width:80ch}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,2.8vw,48px);margin-top:40px;align-items:start}
.card{position:relative;background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--k);padding:28px;transition:transform .12s,box-shadow .12s}
.card:hover{transform:translate(-3px,-3px);box-shadow:13px 13px 0 var(--k)}
.card p{font-size:var(--text-klein);margin-bottom:12px;hyphens:auto}
.preis{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:32px;margin:14px 0 4px}
.preis small,.unten small{font-size:.6em;font-weight:600;color:#6b5a7a}

.regal-grid{display:flex;flex-wrap:wrap;gap:clamp(24px,2vw,40px);margin-top:40px}
.mini{flex:1 1 320px;position:relative;display:flex;flex-direction:column;gap:8px;background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--k);padding:24px;text-decoration:none;color:var(--ink);transition:transform .12s,box-shadow .12s}
.mini:nth-child(even){box-shadow:10px 10px 0 var(--l)}
.mini:nth-child(odd){box-shadow:10px 10px 0 var(--o)}
.mini:hover{transform:translate(-3px,-3px)}
.mini h3{margin:0}
.mini p{font-size:var(--text-klein);line-height:1.5}
.mini .pille{margin-bottom:4px;align-self:flex-start}
.unten{margin-top:auto;padding-top:8px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(20px,1.05vw,24px)}

.bald{display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,60px);align-items:center}
.bald-text{flex:1;min-width:260px;order:1}
.bald-text p{margin-bottom:14px;max-width:70ch}
.tuer{flex:0 0 auto;width:172px;transform:rotate(2deg);order:2}
.tuer svg{display:block;width:100%;height:auto}

.post{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:center}
.postkarte{position:relative;background:var(--w);border:5px solid var(--k);box-shadow:10px 10px 0 var(--k);padding:36px 36px 28px;transform:rotate(-2.4deg);max-width:620px;min-height:clamp(240px,20vw,340px)}
.postkarte::before{content:"";position:absolute;inset:10px;border:8px solid transparent;border-image:repeating-linear-gradient(45deg,var(--o) 0 14px,var(--w) 14px 26px,var(--l) 26px 40px,var(--w) 40px 52px) 8;pointer-events:none}
.marke-feld{position:absolute;top:30px;right:32px;width:64px;height:76px;background:var(--streifen);--s:10px;border:3px dashed var(--k)}
.adresse{margin:80px 0 18px;width:52%;min-width:180px}
.adresse .linie{height:8px;background:var(--ink);margin-bottom:14px;opacity:.85}
.adresse .l2{width:86%}.adresse .l3{width:64%;margin-bottom:0}
.gruss{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(16px,.9vw,20px);transform:rotate(-1deg);display:inline-block}
.post-text p{max-width:70ch}

footer{background:var(--w)}
.foot{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between}
.foot a{color:var(--ink);text-decoration:none;font-weight:600;font-size:var(--text-klein)}
.foot a:hover{color:var(--o)}
.foot-links{display:flex;flex-wrap:wrap;gap:22px}
.foot-note{font-size:clamp(15px,.9vw,20px);font-weight:600;color:#6b5a7a;text-align:center;flex:1 1 auto}
.foot-social{display:flex;gap:22px}
.foot-social a{width:36px;height:36px;display:grid;place-items:center}
.foot-social svg{width:100%;height:100%}

@media(max-width:1120px){
  .hero,.post{grid-template-columns:minmax(0,1fr)}
  .ueber-bild{float:none;width:auto;max-width:520px;margin:0 0 24px}
  .cards{grid-template-columns:minmax(0,1fr)}
  .hero-fenster{max-width:520px}
}
@media(max-width:640px){
  :root{--s:36px}
  .kasten-gross{border-width:6px;box-shadow:12px 12px 0 var(--k);padding:24px}
  .top .marke{font-size:28px}
  .nav{flex:1 0 100%;justify-content:center}
  .schild{font-size:12px;padding:6px 10px}
  h1{font-size:clamp(30px,8.6vw,42px);line-height:1.2}
  .herz{top:-24px;right:-10px}
  .card{padding:22px}
  .foot{flex-direction:column;text-align:center}
  .bald{display:block}
  .bald::after{content:"";display:block;clear:both}
  .tuer{float:right;width:120px;margin:0 0 8px 18px}
}

