/* Erdpracht — Handgemacht-Direction · gemeinsame Styles (Demo) */
:root{
  --paper:#F7F0E1; --kraft:#E2E8D2; --kraft-2:#D4DFC0;
  --teal:#1C6576; --teal-d:#134C58; --teal-l:#2E86A0;
  --moss:#5E7C33; --moss-d:#495f27;
  --ochre:#DDA23A; --terra:#C4623E; --terra-d:#A44E2F;
  --ink:#3C2E20; --ink-2:#6a5844;
  --hand:"Shantell Sans",system-ui,cursive;
  --scribble:"Caveat",cursive;
  --body:"Nunito Sans",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:110px}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.6;
  background-image:radial-gradient(rgba(60,46,32,.035) 1.5px,transparent 1.5px);background-size:22px 22px}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1160px;margin:0 auto;padding:0 26px}
h1,h2,h3{font-family:var(--hand);font-weight:800;line-height:1.05}
.scribble{font-family:var(--scribble);font-weight:700}
.hash{font-family:var(--hand);font-weight:800;color:var(--terra)}
.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--hand);font-weight:700;font-size:1rem;
  padding:.68em 1.3em;border:2.5px solid var(--ink);background:var(--ochre);color:var(--ink);cursor:pointer;
  border-radius:16px 20px 16px 22px/20px 16px 22px 16px;box-shadow:3px 3px 0 var(--ink);transition:.15s}
.btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn-teal{background:var(--teal);color:#fff}
.btn-terra{background:var(--terra);color:#fff}
.btn-w{background:#fff}
.tape{position:absolute;width:100px;height:26px;background:rgba(221,162,58,.5);border:1px dashed rgba(60,46,32,.3)}

/* header */
header{position:sticky;top:0;z-index:40;background:rgba(247,240,225,.92);backdrop-filter:blur(6px);border-bottom:2px solid var(--ink)}
/* Markise unter der Nav (wie Donau Cafe v0) */
.awning{position:relative;height:13px;z-index:60;
  background:repeating-linear-gradient(90deg, var(--terra) 0 30px, var(--paper) 30px 60px);
  border-top:2px solid var(--ink)}
.awning::before{content:"";position:absolute;top:100%;left:0;right:0;height:15px;
  background:var(--ink);
  -webkit-mask:radial-gradient(14.5px at 15px 1px, #000 97%, #0000) 0 -1px / 30px 15px repeat-x;
  mask:radial-gradient(14.5px at 15px 1px, #000 97%, #0000) 0 -1px / 30px 15px repeat-x}
.awning::after{content:"";position:absolute;top:100%;left:0;right:0;height:13px;
  background:repeating-linear-gradient(90deg, var(--terra) 0 30px, var(--paper) 30px 60px);
  -webkit-mask:radial-gradient(13px at 15px 0, #000 97%, #0000) 0 0 / 30px 13px repeat-x;
  mask:radial-gradient(13px at 15px 0, #000 97%, #0000) 0 0 / 30px 13px repeat-x;
  filter:drop-shadow(0 2px 0 rgba(60,46,32,.25))}
.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:82px;padding:8px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:58px;width:auto;display:block}
.brand .tag{font-family:var(--scribble);font-weight:700;font-size:1.25rem;color:var(--teal);line-height:1;border-left:2px solid rgba(60,46,32,.25);padding-left:12px}
.navlinks{display:flex;gap:1.4rem;font-weight:700;font-size:.96rem}
.navlinks a{position:relative;padding:2px 0}
.navlinks a:hover,.navlinks a.active{color:var(--terra)}
.navlinks a:hover::after,.navlinks a.active::after{content:"";position:absolute;left:-2px;right:-2px;bottom:-3px;height:6px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='6'%3E%3Cpath d='M1 3c15-4 30 4 45 0s25-3 33 1' stroke='%23C4623E' stroke-width='2' fill='none'/%3E%3C/svg%3E")}
.nav-right{display:flex;align-items:center;gap:1rem}
.langswitch{display:flex;align-items:center;border:1.5px solid var(--teal);border-radius:20px;overflow:hidden;font-family:var(--hand);font-weight:700;font-size:.78rem}
.langswitch button{background:none;border:0;padding:5px 11px;cursor:pointer;color:var(--teal);line-height:1}
.langswitch button.on{background:var(--teal);color:#fff}
.cart{position:relative;display:flex;align-items:center;gap:.4rem;cursor:pointer;font-weight:700;color:var(--teal)}
.cart .badge{background:var(--terra);color:#fff;font-family:var(--hand);font-size:.7rem;font-weight:800;min-width:20px;height:20px;border-radius:20px;display:grid;place-items:center;padding:0 5px}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer}
.burger span{width:24px;height:2.5px;background:var(--ink);border-radius:2px}

/* hero (home) */
.hero{position:relative;padding:52px 0 26px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:30px;align-items:center}
.hero .kick{font-family:var(--scribble);font-size:1.7rem;color:var(--terra);transform:rotate(-3deg);display:inline-block;margin-bottom:.1rem}
.hero h1{font-size:clamp(2.7rem,6vw,4.7rem);letter-spacing:-.01em}
.hero h1 .t{color:var(--teal)}
.hero h1 .u{background:linear-gradient(transparent 62%, rgba(221,162,58,.55) 62%)}
.hero p.lead{font-size:1.18rem;margin:1.1rem 0 1.5rem;max-width:42ch;color:var(--ink-2)}
.hero p.lead b{color:var(--ink)}
.hero .cta{display:flex;gap:.8rem;flex-wrap:wrap}
.hero .chips{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.5rem}
.chip{font-family:var(--hand);font-weight:600;font-size:.85rem;background:#fff;border:2px solid var(--ink);
  padding:.25em .8em;border-radius:20px;transform:rotate(-1.5deg);box-shadow:2px 2px 0 rgba(60,46,32,.25)}
.chip:nth-child(2){transform:rotate(2deg)}
.chip:nth-child(3){transform:rotate(-1deg)}
.tree-watermark{position:absolute;left:-6%;top:-10%;width:680px;height:680px;max-width:75%;opacity:.07;pointer-events:none;transform:rotate(6deg) scaleX(-1);z-index:0;overflow:hidden;border-radius:50%}
.tree-watermark img{width:361.4%;max-width:none;height:auto;position:absolute;left:-56.06%;top:-43.43%}
.hero-grid{position:relative;z-index:1}
.hero-art{position:relative;min-height:330px;display:grid;place-items:center}
.bbubble{position:absolute;background:var(--kraft);border:2.5px solid var(--ink);border-radius:50%;display:grid;place-items:center;line-height:1;
  box-shadow:2px 2px 0 rgba(60,46,32,.25);z-index:2}
.bbubble.b1{width:36px;height:36px;font-size:1.1rem;left:26px;bottom:-62px;z-index:1}
.bbubble.b2{width:21px;height:21px;font-size:.7rem;left:6px;bottom:-86px}
.bbubble.b3{width:11px;height:11px;left:-8px;bottom:-102px;background:#fff}
.art-card{background:var(--kraft);border:2.5px solid var(--ink);border-radius:20px;padding:26px 24px 30px;
  transform:rotate(-3deg);box-shadow:6px 8px 0 rgba(60,46,32,.32);position:relative;width:min(340px,92%);text-align:center}
.art-card .stampbig{font-family:var(--hand);font-weight:800;font-size:clamp(1.7rem,4.2vw,2.05rem);color:var(--terra);line-height:1;white-space:nowrap}
.art-card .cap{font-family:var(--scribble);font-size:1.5rem;color:var(--ink-2);margin-top:.4rem}
.art-card.speechbubble{width:min(400px,96%);padding:34px 30px 40px;border-radius:46% 48% 44% 46%/58% 54% 60% 56%}
.art-card.speechbubble .stampbig{font-size:clamp(1.95rem,4.8vw,2.4rem)}
.art-card.speechbubble .cap{font-size:1.65rem}
.art-card.speechbubble::after{content:"";position:absolute;left:58px;bottom:-22px;width:46px;height:46px;background:var(--kraft);
  border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);border-radius:0 0 60% 0;transform:rotate(45deg) skew(6deg,6deg)}
.art-badge{position:absolute;right:-16px;top:-18px;background:var(--teal);color:#fff;font-family:var(--hand);font-weight:800;
  width:78px;height:78px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:.78rem;line-height:1.05;transform:rotate(9deg);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}
.shop-deco{position:absolute;opacity:.9}

/* page head (shop / legal) */
.pagehead{background:var(--kraft);border-bottom:2px dashed rgba(60,46,32,.28);padding:46px 0 40px;position:relative;overflow:hidden}
.pagehead .crumb{font-family:var(--scribble);font-size:1.4rem;color:var(--terra);transform:rotate(-2deg);display:inline-block}
.pagehead h1{font-size:clamp(2.3rem,5vw,3.4rem);margin-top:.2rem}
.pagehead h1 .t{color:var(--teal)}
.pagehead p{color:var(--ink-2);margin-top:.5rem;max-width:60ch}

/* wavy dividers */
.wave{display:block;width:100%;height:56px}
section{padding:54px 0}
.sec-head{text-align:center;margin-bottom:32px}
.sec-head .scribble{font-size:1.6rem;color:var(--terra);display:block;transform:rotate(-2deg)}
.sec-head h2{font-size:clamp(2rem,4.4vw,3rem)}
.sec-head h2 .t{color:var(--teal)}

/* shop */
.shopbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.shopbar .count{font-family:var(--scribble);font-size:1.3rem;color:var(--ink-2)}
.shopbar .chips{display:flex;gap:.5rem;flex-wrap:wrap}
.fchip{font-family:var(--hand);font-weight:700;font-size:.82rem;border:2px solid var(--ink);padding:.25em .8em;border-radius:20px;cursor:pointer;background:#fff;transform:rotate(-1deg)}
.fchip.on{background:var(--teal);color:#fff}
.shopbar select{font-family:var(--hand);border:2px solid var(--ink);border-radius:12px;padding:.4em .7em;background:#fff;font-size:.85rem}
.offer{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 22px}
.veg{background:#fff;border:2.5px dashed var(--ink);border-radius:18px;padding:18px;position:relative;text-align:center;
  box-shadow:4px 5px 0 rgba(60,46,32,.2);transition:.18s;display:flex;flex-direction:column}
.veg:nth-child(odd){transform:rotate(-1.3deg)}
.veg:nth-child(even){transform:rotate(1.3deg)}
.veg:hover{transform:rotate(0) translateY(-4px);box-shadow:6px 8px 0 rgba(60,46,32,.28)}
.veg .em{font-size:2.9rem;line-height:1}
.veg h3{font-family:var(--body);font-weight:800;font-size:1.2rem;margin:.3rem 0 .05rem;letter-spacing:-.005em}
.veg .from{font-family:var(--scribble);font-size:1.12rem;color:var(--ink-2);margin-bottom:.5rem}
.veg .pricetag{display:inline-block;background:var(--ochre);border:2px solid var(--ink);
  font-family:var(--hand);font-weight:800;font-size:.95rem;padding:.15em .6em;border-radius:8px;transform:rotate(-2deg);margin-bottom:.7rem}
.veg .lbl{position:absolute;top:-11px;left:14px;font-family:var(--hand);font-weight:700;font-size:.64rem;
  text-transform:uppercase;letter-spacing:.04em;padding:.2em .55em;border-radius:20px;border:2px solid var(--ink)}
.lbl.oz{background:var(--moss);color:#fff}
.lbl.klein{background:var(--ochre);color:var(--ink)}
.lbl.b{background:var(--terra);color:#fff}
.veg .lbl.kinder{left:auto;right:14px;text-transform:none;letter-spacing:0}
.lbl.kinder{background:#fff;color:var(--terra-d);border-color:var(--terra)}
.veg .add{margin-top:auto;font-family:var(--hand);font-weight:700;font-size:.82rem;border:2px solid var(--teal);background:#fff;color:var(--teal);
  padding:.4em .7em;border-radius:10px;cursor:pointer}
.veg .add:hover{background:var(--teal);color:#fff}
.offer-note{text-align:center;font-family:var(--scribble);font-size:1.5rem;color:var(--terra-d);margin-top:28px;transform:rotate(-1deg)}
.shop-hints{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.hint{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:16px 18px;transform:rotate(-.6deg);box-shadow:3px 3px 0 rgba(60,46,32,.18)}
.hint:nth-child(2){transform:rotate(.7deg)}
.hint b{font-family:var(--hand);display:block;margin-bottom:.15rem}
.hint span{font-size:.88rem;color:var(--ink-2)}
.center-cta{text-align:center;margin-top:32px}

/* news */
.news{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ncard{background:#fff;border:2.5px solid var(--ink);border-radius:16px;overflow:hidden;box-shadow:4px 5px 0 rgba(60,46,32,.2);transition:.18s}
.ncard:hover{transform:translateY(-4px)}
.ncard .top{padding:12px 18px;border-bottom:2px solid var(--ink);font-family:var(--hand);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--terra);background:var(--kraft)}
.ncard .cb{padding:18px}
.ncard h3{font-size:1.3rem;margin-bottom:.3rem}
.ncard p{font-size:.92rem;color:var(--ink-2)}
.ncard a{font-family:var(--hand);font-weight:700;color:var(--teal);font-size:.9rem;display:inline-block;margin-top:.7rem}

/* about */
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center}
.about-art{position:relative;display:grid;place-items:center;min-height:320px}
.about-art .blob{background:var(--paper);border:2.5px solid var(--ink);border-radius:42% 58% 60% 40%/48% 40% 60% 52%;width:min(330px,88%);aspect-ratio:1;display:grid;place-items:center;box-shadow:6px 8px 0 rgba(60,46,32,.25)}
.about-art .blob img{width:78%}
.about-art .photo{width:min(420px,94%)}
.about-art .quote{position:absolute;bottom:-9%;right:-4%;background:#fff;border:2.5px solid var(--ink);border-radius:14px;
  padding:.6rem 1rem;font-family:var(--scribble);font-size:1.15rem;color:var(--teal);transform:rotate(3deg);box-shadow:3px 3px 0 var(--ink);max-width:240px;line-height:1.15}
.about h2{font-size:clamp(2rem,4vw,2.9rem);margin-bottom:1rem}
.about h2 .t{color:var(--teal)}
.about p{color:var(--ink-2);margin-bottom:1rem}
.about b{color:var(--ink)}
.vals{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:1.3rem}
.val{display:flex;gap:.7rem;align-items:flex-start}
.val .vi{width:42px;height:42px;border-radius:12px;background:#fff;border:2px solid var(--ink);display:grid;place-items:center;font-size:1.2rem;flex:none}
.val h4{font-family:var(--hand);font-size:1rem;font-weight:700}
.val p{font-size:.85rem;margin:0}

/* wusstest du */
.wd-head h2{font-size:clamp(2.7rem,6.6vw,4.4rem)}
.wusstest{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center}
.wusstest-art{position:relative;padding-bottom:30px}
.bubble-rect{position:relative;background:#fff;border:2.5px solid var(--ink);border-radius:18px;
  box-shadow:6px 8px 0 rgba(60,46,32,.28);transform:rotate(-1.2deg);padding:16px 16px 26px}
.bubble-rect img{display:block;width:100%}
.bubble-rect::after{content:"";position:absolute;left:54px;bottom:-20px;width:38px;height:38px;background:#fff;
  border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);border-radius:0 0 60% 0;
  transform:rotate(45deg) skew(6deg,6deg)}
/* Thema des aktuellen Beitrags — steht in der Sprechblase */
.wusstest .bubble-topic{font-family:var(--hand);font-weight:800;line-height:1.14;color:var(--teal);
  font-size:clamp(1.4rem,2.7vw,1.95rem);text-align:center;padding:22px 14px 26px;margin:0}
.wusstest h2{font-size:clamp(2rem,4vw,2.9rem);margin-bottom:1rem}
.wusstest h2 .t{color:var(--teal)}
.wusstest p{color:var(--ink-2);margin-bottom:1rem}
.wusstest ul{list-style:none;margin:0 0 1rem}
.wusstest li{padding:.3rem 0 .3rem 30px;font-weight:600;position:relative}
.wusstest li::before{content:"🌿";position:absolute;left:0;top:.25rem;font-size:.9rem}
.wusstest .source{font-size:.82rem;color:var(--ink-2);font-style:italic}

/* Verweis aus dem Fließtext auf die Rubrik — blüht beim Hover in Ocker auf */
.wd-link{display:inline-block;font-family:var(--hand);font-weight:800;color:var(--teal);
  text-decoration:underline wavy var(--ochre);text-underline-offset:4px;text-decoration-thickness:2px;
  padding:.02em .3em;border-radius:9px;transition:.18s}
.wd-link:hover,.wd-link:focus-visible{background:var(--ochre);color:var(--ink);
  text-decoration-color:transparent;transform:rotate(-1.6deg) scale(1.05);box-shadow:2px 2px 0 var(--ink)}

/* Hinweis, solange noch kein Sortiment gemeldet ist */
.offer.is-empty{display:block}
.shop-empty{background:#fff;border:2.5px dashed var(--ink);border-radius:20px;
  box-shadow:6px 8px 0 rgba(60,46,32,.2);padding:40px 30px;text-align:center;
  max-width:640px;margin:0 auto;transform:rotate(-.5deg)}
.shop-empty .big{font-size:3rem;line-height:1;margin-bottom:.5rem}
.shop-empty h3{font-size:clamp(1.5rem,3.4vw,2.1rem);margin-bottom:.6rem}
.shop-empty p{color:var(--ink-2);max-width:46ch;margin:0 auto .8rem}
.shop-empty .market{background:var(--kraft);border-radius:12px;padding:12px 16px;
  display:inline-block;color:var(--ink);margin-bottom:.4rem}
.shop-empty .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:1.2rem}

/* geklebter Schnappschuss */
.photo{position:relative;background:#fff;border:2.5px solid var(--ink);border-radius:14px;
  padding:11px 11px 13px;box-shadow:7px 9px 0 rgba(60,46,32,.24);transform:rotate(-1.5deg);margin:0}
.photo img{display:block;width:100%;height:auto;border-radius:8px}
.photo .tape{left:50%;top:-13px;transform:translateX(-50%) rotate(-3deg)}
.photo figcaption{font-family:var(--scribble);font-size:1.2rem;color:var(--ink-2);
  text-align:center;margin-top:.45rem;line-height:1.2}
.photo-wide{max-width:660px;margin:2.2rem auto 2.8rem;transform:rotate(1deg)}

/* Fließtext-Seiten (über uns) */
.prose{max-width:820px;margin-inline:auto}
.prose h2{font-family:var(--hand);font-size:clamp(1.6rem,3.6vw,2.2rem);color:var(--teal);margin:2.4rem 0 .7rem}
.prose p{color:var(--ink-2);margin-bottom:.9rem}
.prose b{color:var(--ink)}
.prose .lead-in{font-family:var(--hand);font-weight:800;font-size:clamp(1.3rem,3vw,1.7rem);
  color:var(--ink);margin:.4rem 0 1rem}
.prose .pullquote{font-family:var(--scribble);font-size:clamp(1.5rem,3.4vw,2rem);color:var(--teal);
  line-height:1.25;background:#fff;border:2.5px solid var(--ink);border-left:10px solid var(--ochre);
  border-radius:16px;padding:22px 26px;margin:2.2rem 0;box-shadow:5px 6px 0 rgba(60,46,32,.2);
  transform:rotate(-.6deg)}
.prose .closing{font-family:var(--hand);font-weight:800;font-size:clamp(1.35rem,3.2vw,1.9rem);
  text-align:center;color:var(--ink);margin:2.8rem 0 .6rem;line-height:1.2}
.prose .hint{margin-top:2rem}

/* geschenk */
.postcard{background:var(--kraft);border:2.5px solid var(--ink);border-radius:22px;box-shadow:8px 10px 0 rgba(60,46,32,.3);
  padding:44px;display:grid;grid-template-columns:1.15fr 1fr;gap:34px;align-items:center;position:relative;transform:rotate(-.5deg)}
.postcard h2{font-size:clamp(1.9rem,3.6vw,2.6rem);color:var(--terra-d)}
.postcard ul{list-style:none;margin:1rem 0}
.postcard li{padding:.35rem 0 .35rem 30px;font-weight:600;position:relative}
.postcard li::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:22px;height:22px;background:url("korb-icon.png") no-repeat center/contain}
.pc-form{background:#fff;border:2px dashed var(--ink);border-radius:16px;padding:24px}
.pc-form label{font-family:var(--hand);font-weight:700;font-size:.9rem;display:block;margin:.55rem 0 .25rem}
.pc-form input,.pc-form textarea{width:100%;border:2px solid var(--ink);border-radius:10px;padding:.55rem .7rem;font-family:var(--body);font-size:.94rem;background:var(--paper)}
.pc-form textarea{min-height:70px;resize:vertical}
.stampcircle{position:absolute;right:26px;top:-24px;background:var(--teal);color:#fff;width:88px;height:88px;border-radius:50%;
  display:grid;place-items:center;text-align:center;font-family:var(--hand);font-weight:800;font-size:.72rem;line-height:1.05;
  border:2.5px solid var(--ink);transform:rotate(-12deg);box-shadow:3px 3px 0 var(--ink)}

/* kontakt */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:44px}
.contact h2{font-size:clamp(2rem,4vw,2.9rem);margin-bottom:.8rem}
.contact h2 .t{color:var(--teal)}
.cinfo div{display:flex;gap:.6rem;margin-bottom:.9rem;align-items:flex-start;font-weight:600}
.cinfo .ic{font-size:1.2rem}
.cform label{font-family:var(--hand);font-weight:700;font-size:.9rem;display:block;margin:.55rem 0 .25rem}
.cform input,.cform textarea{width:100%;border:2.5px solid var(--ink);border-radius:12px;padding:.6rem .8rem;font-family:var(--body);font-size:.94rem;background:#fff}
.cform textarea{min-height:90px;resize:vertical}
.imp{font-size:.85rem;color:var(--ink-2);margin-top:.6rem}

/* legal pages */
.legal{max-width:820px;margin:0 auto;padding:52px 26px 60px}
.legal .draftnote{background:#fff;border:2px dashed var(--terra);border-radius:14px;padding:16px 20px;margin-bottom:34px;font-size:.92rem;color:var(--ink-2)}
.legal .draftnote b{color:var(--terra-d);font-family:var(--hand)}
.legal h2{font-family:var(--hand);font-size:1.5rem;color:var(--teal);margin:2rem 0 .6rem}
.legal h3{font-family:var(--hand);font-size:1.15rem;margin:1.3rem 0 .4rem}
.legal p{margin-bottom:.9rem;color:var(--ink)}
.legal ul{margin:.4rem 0 1rem 1.3rem}
.legal li{margin-bottom:.35rem}
.legal .ph{background:var(--kraft-2);border-radius:4px;padding:.05em .4em;font-family:var(--hand);font-size:.9em}
.legal a{color:var(--teal);text-decoration:underline}

/* footer */
footer{background:var(--ink);color:#e9ddca;padding:50px 0 26px}
.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:32px;padding-bottom:26px;border-bottom:2px dashed rgba(233,221,202,.25)}
footer .fimg{height:76px;background:#fff;padding:8px 12px;border-radius:14px;display:inline-block}
footer h4{font-family:var(--hand);color:var(--kraft);margin-bottom:.6rem;font-size:1rem}
footer p,footer a{font-size:.94rem;line-height:1.75}
footer a:hover{color:#fff}
.fbtm{display:flex;justify-content:space-between;padding-top:18px;font-size:.85rem;color:#bcae95;flex-wrap:wrap;gap:8px}
.fbtm .hash{color:var(--terra)}
.fbtm a{color:#bcae95}.fbtm a:hover{color:#fff}

.flag-demo{position:fixed;left:14px;bottom:14px;z-index:60;background:var(--terra);color:#fff;font-family:var(--hand);font-weight:800;font-size:.75rem;padding:.45rem .85rem;border-radius:14px;border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}

/* urlaubs-popup */
.vac-overlay{position:fixed;inset:0;z-index:100;background:rgba(60,46,32,.55);backdrop-filter:blur(3px);display:none;place-items:center;padding:20px}
.vac-overlay.show{display:grid}
.vac-modal{position:relative;background:var(--kraft);border:2.5px solid var(--ink);border-radius:26px;box-shadow:8px 10px 0 rgba(60,46,32,.32);
  padding:38px 34px 32px;max-width:380px;width:100%;text-align:center;transform:rotate(-.6deg)}
.vac-badge{width:64px;height:64px;margin:0 auto .8rem;background:#fff;border:2.5px solid var(--ink);border-radius:50%;
  display:grid;place-items:center;font-size:2rem;box-shadow:3px 3px 0 rgba(60,46,32,.25)}
.vac-modal h3{font-size:1.6rem;color:var(--terra-d);margin-bottom:.6rem}
.vac-modal p{color:var(--ink-2);font-size:.96rem}
.vac-close{position:absolute;right:14px;top:14px;width:30px;height:30px;border-radius:50%;border:2px solid var(--ink);background:#fff;
  cursor:pointer;font-weight:800;color:var(--ink);line-height:1;display:grid;place-items:center}
.vac-close:hover{background:var(--terra);color:#fff;border-color:var(--terra)}

@media(max-width:900px){
  .hero-grid,.about,.postcard,.contact,.wusstest{grid-template-columns:1fr;gap:28px}
  .offer{grid-template-columns:1fr 1fr}
  .news,.shop-hints{grid-template-columns:1fr}
  .about-art{margin-bottom:84px}
  .wusstest-art{padding-bottom:0;margin-bottom:30px}
  .about-art .quote{left:50%;right:auto;bottom:-40px;transform:translateX(-50%) rotate(-2deg);max-width:220px;text-align:center}
  .navlinks{display:none}
  .burger{display:flex}
  .fgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){.offer{grid-template-columns:1fr 1fr}.brand .tag{display:none}.fgrid{grid-template-columns:1fr}}

/* ---- Produkt-Detail (PDP) ---- */
.veglink{display:block;color:inherit}
.pdp{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start;margin-top:6px}
.pdp-visual{background:var(--kraft);border:2.5px solid var(--ink);border-radius:22px;box-shadow:6px 8px 0 rgba(60,46,32,.28);
  aspect-ratio:1;display:grid;place-items:center;position:relative;transform:rotate(-1deg)}
.pdp-visual .em{font-size:8rem;line-height:1}
.pdp-visual .lbl{position:absolute;top:18px;left:18px;font-family:var(--hand);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;padding:.25em .7em;border-radius:20px;border:2px solid var(--ink)}
.pdp-info .crumb{font-family:var(--scribble);font-size:1.3rem;color:var(--terra);transform:rotate(-2deg);display:inline-block}
.pdp-info h1{font-family:var(--body);font-weight:800;font-size:clamp(1.8rem,4vw,2.6rem);margin:.2rem 0 .3rem;letter-spacing:-.005em}
.pdp-info .price{font-family:var(--hand);font-weight:800;font-size:2rem;color:var(--teal);margin:.4rem 0}
.pdp-info .price small{font-size:1rem;color:var(--ink-2)}
.pdp-info .desc{color:var(--ink-2);margin:.6rem 0 1rem}
.pdp-info .bullets{list-style:none;margin:1rem 0}
.pdp-info .bullets li{padding:.25rem 0;font-weight:600}
.pdp-info .bullets li::before{content:"🌿  "}
.pdp-buy{display:flex;gap:12px;align-items:center;margin:1.4rem 0 1rem;flex-wrap:wrap}
.qty{display:inline-flex;align-items:center;border:2.5px solid var(--ink);border-radius:12px;overflow:hidden;background:#fff}
.qty button{width:40px;height:44px;border:0;background:#fff;font-family:var(--hand);font-weight:800;font-size:1.3rem;cursor:pointer;color:var(--teal)}
.qty button:hover{background:var(--kraft)}
.qty span{min-width:44px;text-align:center;font-family:var(--hand);font-weight:700;font-size:1.1rem}
.pdp-meta{border-top:2px dashed rgba(60,46,32,.25);margin-top:1.2rem;padding-top:1rem;font-size:.92rem;color:var(--ink-2)}
.pdp-meta b{color:var(--ink);font-family:var(--hand)}

/* ---- Warenkorb / Kassa ---- */
.cartwrap{display:grid;grid-template-columns:1.4fr .9fr;gap:34px;align-items:start;margin-top:6px}
.citems{display:flex;flex-direction:column;gap:16px}
.citem{display:grid;grid-template-columns:auto 1fr auto auto;gap:16px;align-items:center;background:#fff;border:2.5px dashed var(--ink);border-radius:16px;padding:14px 18px;box-shadow:3px 4px 0 rgba(60,46,32,.16)}
.citem .cem{font-size:2.4rem;line-height:1}
.citem h3{font-family:var(--body);font-weight:800;font-size:1.1rem}
.citem .cfrom{font-family:var(--scribble);font-size:1rem;color:var(--ink-2)}
.citem .cprice{font-family:var(--hand);font-weight:800;color:var(--teal);white-space:nowrap}
.citem .cremove{background:none;border:0;cursor:pointer;font-size:1.1rem;color:var(--terra);font-family:var(--hand);font-weight:800}
.qty.small button{width:34px;height:38px;font-size:1.1rem}
.qty.small span{min-width:36px;font-size:1rem}
.cart-empty{text-align:center;padding:50px 20px;background:#fff;border:2.5px dashed var(--ink);border-radius:18px}
.cart-empty .big{font-size:3rem}
.summary{background:var(--kraft);border:2.5px solid var(--ink);border-radius:18px;padding:26px;box-shadow:6px 8px 0 rgba(60,46,32,.26);position:sticky;top:100px}
.summary h3{font-family:var(--hand);font-size:1.5rem;margin-bottom:1rem}
.sline{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.98rem}
.sline.total{border-top:2px dashed rgba(60,46,32,.3);margin-top:.5rem;padding-top:.7rem;font-family:var(--hand);font-weight:800;font-size:1.3rem;color:var(--teal)}
.opt{display:block;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:.7rem .9rem;margin:.5rem 0;cursor:pointer;font-weight:600;display:flex;gap:.6rem;align-items:center}
.opt input{accent-color:var(--teal);width:18px;height:18px}
.opt.sel{background:var(--paper);box-shadow:2px 2px 0 rgba(60,46,32,.2)}
.opt small{display:block;font-weight:400;color:var(--ink-2);font-size:.82rem}
.choice{display:flex;gap:8px;margin:.4rem 0 1rem}
.choice .fchip{flex:1;text-align:center}
.agb{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem;margin:1rem 0;background:#fff;border:2px solid var(--ink);border-radius:10px;padding:.7rem}
.agb input{accent-color:var(--teal);width:18px;height:18px;margin-top:2px;flex:none}
.paynote{font-size:.84rem;color:var(--ink-2);margin-top:.6rem}
.fld{margin:.5rem 0}
.fld label{display:block;font-weight:700;font-size:.88rem;margin-bottom:.3rem}
.fld input,.fld textarea{width:100%;background:#fff;border:2px solid var(--ink);border-radius:10px;padding:.6rem .8rem;font-family:var(--body);font-size:1rem;color:var(--ink)}
.fld input:focus,.fld textarea:focus{outline:2px solid var(--teal);outline-offset:1px}
.fld textarea{min-height:80px;resize:vertical}
.fld input[type=file]{border:2px dashed var(--ink);background:var(--paper);padding:.5rem .7rem;cursor:pointer}
.fld .hinttxt{display:block;font-weight:400;font-size:.8rem;color:var(--ink-2);margin-top:.25rem}
.sendnote{font-size:.85rem;margin-top:.6rem;display:none}
.sendnote.err{display:block;color:var(--terra-d);font-family:var(--body);font-weight:400}
.sendnote.ok{display:block;color:var(--moss-d)}
.cart-success{background:#fff;border:2.5px solid var(--moss);border-radius:18px;padding:34px;text-align:center;box-shadow:6px 8px 0 rgba(60,46,32,.2)}
.cart-success .big{font-size:3rem}
.cart-success h2{color:var(--moss-d);margin:.4rem 0}
.err{color:var(--terra-d);font-family:var(--hand);font-weight:700;font-size:.9rem;margin-top:.4rem;display:none}

@media(max-width:900px){.pdp{grid-template-columns:1fr}.cartwrap{grid-template-columns:1fr}.summary{position:static}}
@media(max-width:560px){.citem{grid-template-columns:auto 1fr;row-gap:8px}}

/* ---- Sortiment melden (interne Produkt-Einreichung) ---- */
.pblock{background:#fff;border:2.5px dashed var(--ink);border-radius:18px;padding:24px 26px;margin:1.4rem 0;position:relative;box-shadow:4px 5px 0 rgba(60,46,32,.16)}
.pblock-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem;gap:1rem}
.pblock-head h3{font-family:var(--hand);font-size:1.3rem;color:var(--teal)}
.pblock-remove{background:none;border:2px solid var(--terra);color:var(--terra-d);font-family:var(--hand);font-weight:700;font-size:.78rem;padding:.3em .8em;border-radius:12px;cursor:pointer;white-space:nowrap}
.pblock-remove:hover{background:var(--terra);color:#fff}
.prow{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.catchips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .1rem}
.ccheck{position:relative;cursor:pointer}
.ccheck input{position:absolute;opacity:0;width:0;height:0}
.ccheck span{font-family:var(--hand);font-weight:700;font-size:.82rem;border:2px solid var(--ink);padding:.32em .9em;border-radius:20px;background:#fff;display:inline-block;transition:.12s}
.ccheck input:checked + span{background:var(--teal);color:#fff}
.optrow{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .1rem}
.optrow .opt{margin:0;flex:1 1 150px}
.pblock-add{display:flex;margin:.2rem auto 1.8rem;justify-self:center}
.addwrap{text-align:center}
.subnote{font-size:.85rem;color:var(--ink-2);margin:.3rem 0 1rem}
@media(max-width:640px){.prow{grid-template-columns:1fr}}

.lbl.bio{background:var(--teal);color:#fff}

/* Rückmeldung der Formulare */
.formnote{margin-top:.7rem;font-size:.88rem;line-height:1.45}
.formnote.err{color:var(--terra-d);font-weight:600}
.formnote a{color:var(--teal);text-decoration:underline}
.formdanke{text-align:center;padding:14px 4px}
.formdanke .big{font-size:2.4rem;line-height:1;margin-bottom:.4rem}
.formdanke b{font-family:var(--hand);font-size:1.25rem;display:block}
.formdanke span{display:block;color:var(--ink-2);font-size:.92rem;margin-top:.25rem}
