
:root{--cream:#fcf8f3;--ink:#191717;--cap:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:#111}a{color:inherit}
.slideshow{position:fixed;inset:0;z-index:0;background:#000;overflow:hidden}.slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0}.slide.active{opacity:1}.blink{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none;z-index:3}.blink.on{opacity:1}
.home{min-height:100svh;display:grid;place-items:center;overflow:hidden}
.home-card{position:relative;z-index:5;width:min(40vw,590px);aspect-ratio:336.323/208.764;background:var(--cream);transform:translateY(-2.3vh);--cap:clamp(9px,.90vw,13px);--brand-size:clamp(13px,1.24vw,19px);--contact-size:clamp(13px,1.24vw,19px)}
/* Optical geometry: 2 cap heights above title and below CONTACT; 1 cap height after title. */
.brand{position:absolute;top:calc(2 * var(--cap));left:0;right:0;text-align:center;font-size:var(--brand-size);font-weight:700;letter-spacing:.135em;line-height:1}
.island{position:absolute;top:calc(3 * var(--cap) + var(--brand-size));left:50%;transform:translateX(-50%);width:15%;height:15%;object-fit:contain;object-position:center top}
.contact-button{position:absolute;bottom:calc(2 * var(--cap));left:0;right:0;text-align:center;font-size:var(--contact-size);font-weight:700;line-height:1;text-decoration:none;letter-spacing:.015em}.contact-button:hover{text-decoration:underline}
.middle{position:absolute;top:calc(3 * var(--cap) + var(--brand-size) + 15%);bottom:calc(2 * var(--cap) + var(--contact-size));left:0;right:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--cap)}
.claim{font-size:clamp(11px,1.10vw,17px);line-height:1.2;text-align:center;margin:0}.symbols{width:13%;height:calc(2 * var(--cap));object-fit:contain}
.legal{min-height:100vh;overflow:auto}.legal-bg:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.25)}
.legal-wrap{position:relative;z-index:5;width:min(860px,calc(100% - 32px));margin:6vh auto;background:var(--cream);padding:clamp(24px,6vw,75px)}
.legal-top{text-align:center}.legal-home{display:block;text-decoration:none;font-weight:700;letter-spacing:.14em;font-size:19px}.legal-island{display:block;width:65px;height:45px;object-fit:contain;margin:14px auto 25px}.legal-top h1{font-size:22px;letter-spacing:.1em;margin:0 0 22px}.legal-top p{font-size:17px;line-height:1.55;margin:20px 0}.legal-top p a{font-weight:700;text-decoration:none}.legal-jump{font-size:13px;font-weight:700;letter-spacing:.08em;margin:38px 0 32px}.legal-jump a{text-decoration:none}.legal-content{border-top:1px solid #bbb;padding-top:30px}.legal-content .legal-heading{font-size:16px;font-weight:700;margin:26px 0 10px}.legal-content .legal-main{font-size:22px;margin:55px 0 25px}.legal-content .legal-chapter{font-size:18px;margin:32px 0 18px}.legal-content .copy{font-size:15px;line-height:1.58;overflow-wrap:anywhere;letter-spacing:normal;word-spacing:normal}.legal-content .source{font-size:12px}.back-link{display:block;text-align:center;margin:35px 0 0;font-size:13px;font-weight:700;text-decoration:none;letter-spacing:.1em}
@media(max-width:700px){.home-card{width:min(78vw,380px);aspect-ratio:208.764/336.323;max-height:78svh;transform:translateY(-2.5vh);--cap:clamp(10px,2.7vw,13px);--brand-size:clamp(13px,3.8vw,18px);--contact-size:clamp(13px,3.8vw,18px)}.island{width:26%;height:13%}.middle{top:calc(3 * var(--cap) + var(--brand-size) + 13%);bottom:calc(2 * var(--cap) + var(--contact-size));gap:var(--cap)}.claim{font-size:clamp(12px,3.1vw,16px)}.symbols{width:23%;height:calc(2.2 * var(--cap))}.legal-wrap{margin:20px auto;padding:25px 22px}.legal-content .copy{font-size:14px}}
@media(prefers-reduced-motion:reduce){.blink{display:none}}

/* YAPA BOOKS — einheitliche Typografie auf der Kontakt-/Rechtsseite.
   Alle Versal-Überschriften haben dieselbe Schriftgröße und Laufweite. */
.legal{--legal-title-size:16px;--legal-title-tracking:.055em}
.legal .legal-home,
.legal .legal-top h1,
.legal .legal-jump,
.legal .legal-content .legal-heading,
.legal .legal-content .legal-main,
.legal .legal-content .legal-chapter,
.legal .back-link{font-size:var(--legal-title-size);letter-spacing:var(--legal-title-tracking);font-weight:700;line-height:1.4}
.legal .legal-content .legal-heading{text-transform:none}
.legal .legal-content .legal-main,
.legal .legal-content .legal-chapter{text-transform:uppercase}
.legal .legal-top h1{margin-bottom:22px}
.legal .legal-content .copy{font-size:15px;line-height:1.58}
.legal .legal-content .source{font-size:12px}
@media(max-width:700px){.legal{--legal-title-size:15px}.legal .legal-content .copy{font-size:14px}}

/* Schädel & Stern zwischen Kontakt-E-Mail und Rechtsnavigation */
.legal .legal-symbols{display:block;width:78px;height:auto;max-height:44px;object-fit:contain;margin:30px auto 0}
.legal .legal-jump{margin-top:28px}
@media(max-width:700px){.legal .legal-symbols{width:70px;margin-top:26px}.legal .legal-jump{margin-top:24px}}

/* Exakt dieselben gerenderten Bildabmessungen auf HOME und CONTACT. */
:root{--yapa-card-width:min(40vw, 590px);--yapa-card-height:calc(var(--yapa-card-width) * 208.764 / 336.323);--yapa-cap:clamp(9px, .90vw, 13px)}
.home .island,.legal .legal-island{width:calc(var(--yapa-card-width) * .15);height:calc(var(--yapa-card-height) * .15);object-fit:contain;object-position:center top}
.home .symbols,.legal .legal-symbols{width:calc(var(--yapa-card-width) * .13);height:calc(2 * var(--yapa-cap));max-height:none;object-fit:contain}
.legal .legal-island{margin:14px auto 25px}
.legal .legal-symbols{margin:30px auto 0}
@media(max-width:700px){
 :root{--yapa-card-width:min(78vw, 380px);--yapa-card-height:calc(var(--yapa-card-width) * 336.323 / 208.764);--yapa-cap:clamp(10px, 2.7vw, 13px)}
 .home .island,.legal .legal-island{width:calc(var(--yapa-card-width) * .26);height:calc(var(--yapa-card-height) * .13)}
 .home .symbols,.legal .legal-symbols{width:calc(var(--yapa-card-width) * .23);height:calc(2.2 * var(--yapa-cap))}
 .legal .legal-symbols{margin-top:26px}
}

/* Final: einheitliche Kontakt- und Rechtstypografie */
.legal{--legal-body-size:15px;--legal-title-size:16px}
.legal .legal-top p{font-size:var(--legal-body-size);line-height:1.58;letter-spacing:normal}
.legal .legal-top p a{font-size:var(--legal-title-size);line-height:1.4;font-weight:700}
.legal .legal-content .copy{font-size:var(--legal-body-size)}
.legal .legal-content .copy > strong{font-size:var(--legal-title-size);letter-spacing:var(--legal-title-tracking);font-weight:700}
@media(max-width:700px){.legal{--legal-body-size:14px;--legal-title-size:15px}.legal .legal-top p{font-size:var(--legal-body-size)}.legal .legal-content .copy{font-size:var(--legal-body-size)}}
