/* Mop&Glory – Stylesheet (aus Entwurf b6 „Gildenaushang“, von Michael freigegeben)
   Look bitte nicht ändern: Papiertextur cover/fixed ohne Kacheln, Vignette, Bilder scharf. */

/* Schriften: selbst gehostet, Subsets latin + latin-ext, Lizenz: fonts/OFL-*.txt */
@font-face{font-family:"Alegreya";font-style:normal;font-weight:700 800;font-display:swap;src:url(../fonts/alegreya-700-800-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Alegreya";font-style:normal;font-weight:700 800;font-display:swap;src:url(../fonts/alegreya-700-800-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/alegreya-sans-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/alegreya-sans-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/alegreya-sans-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/alegreya-sans-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/alegreya-sans-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/alegreya-sans-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{--papier:#d3a562;--papier2:#c99a58;--seite:#e2bb80;--tinte:#2a1f17;--braun:#4a301c;--rot:#9c2f22;--stein:#2b2520;--gold:#e8a933}
*{box-sizing:border-box}
html{background:var(--papier)}
body{margin:0;background:transparent;color:var(--tinte);font:400 1.08rem/1.55 "Alegreya Sans",system-ui,sans-serif}
/* Altes Papier: eine Textur, fixiert und auf cover gestreckt (keine Kacheln) */
body::after{content:"";position:fixed;inset:0;z-index:-1;background:var(--papier) url(../img/papier-textur.jpg) center/cover no-repeat}
/* Dunklere, gealterte Ränder */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;background:radial-gradient(115% 85% at 50% 45%,#0000 50%,#8a521f55 78%,#3e200ab0 100%);mix-blend-mode:multiply}
img.px{image-rendering:pixelated}
a{color:inherit}
picture{display:contents}
.wrap{width:min(1120px,100% - 40px);margin:0 auto}

/* Kopfleiste */
.top{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:2px solid var(--tinte)}
.top b{font:800 1.2rem Alegreya,serif;letter-spacing:.02em}
.top a{font-weight:700;text-decoration:none;border-bottom:2px solid var(--rot)}
.top a.heim{border-bottom:0}

/* Hero: links Text, rechts das freigestellte Gewölbe */
.hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:56px 0 64px}
.stempel{display:inline-block;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rot);border:2px solid var(--rot);padding:4px 10px;transform:rotate(-2deg)}
h1{font:800 clamp(2.2rem,5.2vw,3.7rem)/1.03 Alegreya,Georgia,serif;margin:.35em 0 .25em}
.unter{font-size:1.25rem;color:var(--braun);margin:0 0 26px;max-width:32ch}

/* Formulare (Liste) */
form.liste{display:flex;flex-direction:column;align-items:stretch;gap:10px;max-width:500px}
.liste-zeile{display:flex;gap:10px;flex-wrap:wrap}
input:not([type=checkbox]):not([type=hidden]),textarea{flex:1 1 230px;min-height:52px;padding:0 14px;font:inherit;background:#e9c78e;color:var(--tinte);border:2px solid var(--tinte);border-radius:2px}
input:not([type=checkbox]):focus,textarea:focus,button:focus,.knopf:focus{outline:3px solid var(--gold);outline-offset:1px}
input::placeholder,textarea::placeholder{color:#6b5040}
button,.knopf{min-height:52px;padding:0 22px;font:700 1.05rem "Alegreya Sans",sans-serif;background:var(--tinte);color:var(--papier);border:0;border-radius:2px;cursor:pointer}
button:hover,.knopf:hover{background:var(--rot)}
button:disabled{opacity:.6;cursor:wait}
/* Für später: „Demo spielen“ als Link im Knopf-Look (noch nicht im HTML aktiv) */
.knopf{display:inline-flex;align-items:center;text-decoration:none}
.klein{font-size:.9rem;color:var(--braun);margin-top:10px}
.klein a{text-decoration:underline;text-decoration-color:var(--rot);text-underline-offset:2px}
.einwilligung{display:flex;align-items:flex-start;gap:10px}
.einwilligung input[type=checkbox]{-webkit-appearance:none;appearance:none;flex:none;width:24px;height:24px;min-height:0;margin:2px 0 0;padding:0;background:#e9c78e;border:2px solid var(--tinte);border-radius:2px;cursor:pointer;display:inline-grid;place-content:center}
.einwilligung input[type=checkbox]::after{content:"";width:12px;height:7px;border:solid var(--papier);border-width:0 0 2px 2px;transform:rotate(-45deg) translate(1px,-1px);opacity:0}
.einwilligung input[type=checkbox]:checked{background:var(--tinte)}
.einwilligung input[type=checkbox]:checked::after{opacity:1}
.einwilligung input[type=checkbox]:focus{outline:3px solid var(--gold);outline-offset:1px}
.einwilligung label{flex:1;font-size:.9rem;line-height:1.4;color:var(--braun);cursor:pointer}
.einwilligung a{text-decoration:underline;text-decoration-color:var(--rot);text-underline-offset:2px}
.liste-box p.liste-status,.schluss p.liste-status{font:700 1.1rem/1.4 "Alegreya Sans",sans-serif;color:var(--tinte);margin:0;padding:8px 0}
.liste-box p.liste-status.liste-fehler,.schluss p.liste-status.liste-fehler{font-weight:400;font-size:1rem;color:var(--rot)}
/* Honigtopf gegen Bots: für Menschen unsichtbar */
.hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.nur-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.logo{display:block;width:min(420px,100%);height:auto;margin:0 0 22px}
.druck img{display:block;width:100%;height:auto;image-rendering:auto}

/* Aushang-Zettel */
.zettel-reihe{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:8px 0 72px}
.zettel{background:linear-gradient(#f0d29a66,#f0d29a66),url(../img/papier-textur.jpg) center/cover;padding:22px 20px 20px;box-shadow:inset 0 0 30px #8a5a2440,0 2px 0 #0000001a,0 10px 24px #2a1f1714;position:relative}
.zettel:nth-child(1){transform:rotate(-1deg)}.zettel:nth-child(2){transform:rotate(.6deg)}.zettel:nth-child(3){transform:rotate(-.4deg)}
.zettel::before{content:"";position:absolute;top:-7px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--rot);box-shadow:inset -2px -2px 0 #0003}
.zettel img{height:72px;width:auto;display:block;margin:0 0 12px}
.zettel h2{font:800 1.3rem Alegreya,serif;margin:0 0 6px}
.zettel p{margin:0;color:var(--braun)}

/* Dunkles Band mit Video */
.band{background:var(--stein);color:var(--papier)}
.band .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;padding:64px 0}
.band h2{font:800 clamp(1.7rem,3.4vw,2.4rem)/1.1 Alegreya,serif;margin:0 0 12px}
.band p{color:#cdbb9a;margin:0}
.band video{width:100%;height:auto;display:block;border:4px solid #4a3f35}

/* Schluss mit zweitem Formular */
.schluss{text-align:left;padding:64px 0;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;border-bottom:2px solid var(--tinte)}
.schluss h2{font:800 clamp(1.7rem,3.4vw,2.4rem)/1.1 Alegreya,serif;margin:0 0 8px}
.schluss p{margin:0;color:var(--braun)}
.schluss p.klein{margin-top:10px}

footer{padding:26px 0 40px;font-size:.92rem;color:var(--braun);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 28px}
footer p{margin:0;max-width:64ch}
footer nav{display:flex;flex-wrap:wrap;gap:8px 20px;font-weight:700}

/* Unterseiten: Impressum, Datenschutz, Kontakt, 404 */
.recht{padding:48px 0 64px;max-width:72ch}
.recht h1{font-size:clamp(2rem,4.4vw,3rem);margin:.3em 0 .5em}
.recht h2{font:800 1.35rem/1.2 Alegreya,Georgia,serif;margin:1.8em 0 .4em}
.recht h3{font:700 1.05rem/1.3 "Alegreya Sans",sans-serif;margin:1.3em 0 .3em}
.recht h3{font:700 1.1rem/1.3 "Alegreya Sans",sans-serif;margin:1.3em 0 .3em}
.recht p,.recht li{color:var(--braun)}
.recht p{margin:0 0 .8em}
.recht address{font-style:normal;margin:0 0 .8em;color:var(--tinte)}
.recht a{text-decoration-color:var(--rot);text-underline-offset:2px}
.entwurf{border:2px solid var(--rot);color:var(--rot);font-weight:700;padding:12px 16px;margin:0 0 24px;transform:rotate(-.4deg)}
.platzhalter{background:#f0d29a;outline:2px dashed var(--rot);padding:0 4px;font-weight:700;color:var(--rot)}
form.kontakt{display:grid;gap:14px;max-width:560px;margin-top:20px}
form.kontakt .feld{display:grid;gap:6px}
form.kontakt label{font-weight:700}
form.kontakt label span{font-weight:400;color:var(--braun)}
form.kontakt input,form.kontakt textarea{width:100%}
form.kontakt textarea{min-height:180px;padding:12px 14px;resize:vertical}
form.kontakt button{justify-self:start}

@media (max-width:780px){
 .hero,.band .wrap,.schluss{grid-template-columns:1fr;gap:32px}
 .zettel-reihe{grid-template-columns:1fr}
 .hero{padding:32px 0 48px}
 .recht{padding:32px 0 48px}
}
.demo-knopf{margin:18px 0 22px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.demo-knopf span{color:var(--braun);font-size:.95rem}
.schluss .demo-knopf{margin:18px 0 0}
