/* =====================================================================
   Verlag Dr. Thomas Prüm — Ergänzungen zum pruem.one-Design (site.css)
   ===================================================================== */

/* Hero: drei Zeilen, Verlag statt PRÜM */
.hero .l1 span{display:block;}
.hero .l1 .o{color:transparent;-webkit-text-stroke:1.5px var(--wh);}
.hero .l2{font-size:clamp(96px,27vw,500px);}
.hero .claim .brand{font-size:clamp(40px,5vw,92px);}

/* ---------- Programm: große Buchzeilen ---------- */
.prog{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.prog>li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(24px,4vw,70px);align-items:center;
  padding:clamp(34px,6vw,90px) 0;border-bottom:1px solid var(--line);}
.prog>li:nth-child(even) .cv{order:2;}
.cv{position:relative;display:block;background:var(--bk2);}
.cv img{width:100%;height:auto;box-shadow:0 30px 60px -20px rgba(0,0,0,.9),0 0 0 1px rgba(243,239,230,.08);
  transition:transform .6s cubic-bezier(.2,.7,.2,1);}
a.cv:hover img{transform:translateY(-8px) rotate(-1deg);}
.cv .st{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  background:var(--red);color:var(--bk);padding:4px 8px;}
.bk .k{color:var(--red);margin:0 0 14px;}
.bk h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(46px,7vw,124px);line-height:.84;margin:0;}
.bk h3 span{display:block;}
.bk h3 span:nth-child(2){color:var(--red);}
.bk .sub{font-style:italic;font-size:clamp(22px,2.2vw,32px);line-height:1.15;margin:14px 0 18px;}
.bk p{margin:0 0 16px;max-width:620px;}
.spec{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px;padding:0;list-style:none;}
.spec li{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;border:1px solid var(--grey);padding:6px 10px;border-radius:999px;}
.spec li.isbn{border-color:var(--red);color:var(--red);}
.acts{display:flex;flex-wrap:wrap;gap:10px 26px;}
.acts a{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-bottom:2px solid var(--red);padding-bottom:4px;}
.acts a:hover{color:var(--red);}
.acts .plain{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);}
@media(max-width:820px){
  .prog>li{grid-template-columns:1fr;}
  .prog>li:nth-child(even) .cv{order:0;}
  .cv{max-width:440px;}
}

/* ---------- Familienbücher: Regal ---------- */
.shelf{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:clamp(26px,3vw,44px) clamp(14px,2vw,28px);}
.shelf li{display:flex;flex-direction:column;}
.shelf .cvs{position:relative;aspect-ratio:210/297;background:var(--bk2);overflow:hidden;box-shadow:0 0 0 1px var(--line);}
.shelf .cvs img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.shelf li:hover .cvs img{transform:scale(1.035);}
.shelf .bd{position:absolute;top:0;left:0;z-index:2;background:var(--bk);color:var(--wh);font-family:var(--disp);font-size:30px;line-height:1;padding:8px 12px 6px;}
.shelf .bd small{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--red);margin-bottom:3px;}
.shelf .bd.st{background:var(--red);color:var(--bk);font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:5px 8px;}
.shelf h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(28px,2.4vw,38px);line-height:.92;margin:16px 0 6px;}
.shelf .sub{font-style:italic;font-size:19px;line-height:1.2;margin:0 0 8px;}
.shelf .meta{color:var(--grey);font-size:11px;line-height:1.6;}
.shelf .meta a{color:var(--wh);border-bottom:1px solid var(--red);}
.shelf .meta a:hover{color:var(--red);}
/* Typo-Cover, wo kein Umschlag vorliegt */
.tcv{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:18px 16px;background:var(--bk);
  border:1.5px solid var(--red);}
.tcv b{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3vw,46px);line-height:.86;}
.tcv b span{display:block;color:var(--red);}
.tcv i{font-size:18px;line-height:1.15;}
.tcv .mono{color:var(--grey);font-size:10px;}

.shelfnote{color:var(--grey);font-style:italic;max-width:760px;margin:clamp(30px,4vw,50px) 0 0;}
.shelfnote a{color:var(--wh);border-bottom:1px solid var(--red);}

/* ---------- Verlag ---------- */
.about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:30px clamp(30px,5vw,90px);align-items:start;}
.about .lead{font-size:clamp(26px,3vw,46px);line-height:1.08;font-style:italic;margin:0;}
.about .lead em{color:var(--red);}
.about .col p{margin:0 0 16px;}
.facts{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--line);}
.facts li{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);}
.facts .mono{color:var(--red);padding-top:.35em;}
.facts a{border-bottom:1px solid var(--red);}
.facts a:hover{color:var(--red);}
@media(max-width:820px){.about{grid-template-columns:1fr;} .facts li{grid-template-columns:1fr;gap:2px;}}

/* Fuß */
.foot .big{font-size:clamp(70px,22vw,400px);}
.hero .l2{margin-top:.1em;line-height:.8;}
.shelf .cvs img.sq{object-fit:contain;background:#0d0d0d;}
.hero .l2{margin-top:.3em;}
@media(max-width:640px){
  .shelf{grid-template-columns:1fr 1fr;gap:26px 12px;}
  .shelf h3{font-size:24px;}
  .shelf .sub{font-size:16px;}
  .shelf .meta{font-size:10px;letter-spacing:.06em;}
  .shelf .bd{font-size:22px;padding:6px 9px 4px;}
  .tcv b{font-size:28px;}
}

/* Lese-Link im Programm */
.acts a.read{background:var(--red);color:var(--bk);border:0;padding:9px 14px 8px;}
.acts a.read:hover{background:var(--wh);color:var(--bk);}
