/* Friedemann Hauck Bad Oldesloe — Libre Caslon/Rubik, Ivory/Waldgrün/Messing, framed, ziffern */
:root{--ivory:#f2efe4;--ivory2:#e9e4d2;--forest:#1f3d2b;--forest2:#2c5238;--brass:#9c7b2d;--brass2:#bfa14e;--grey:#5f6b58;--hair:rgba(31,61,43,.18);--brass-hair:rgba(156,123,45,.4);--pad:clamp(1.25rem,4.5vw,3.5rem);--luft:clamp(5rem,10.5vw,9.5rem)}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:"Rubik","Segoe UI",sans-serif;background:var(--ivory);color:var(--forest);line-height:1.68;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--brass2);color:var(--forest)}img{display:block;max-width:100%}a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 var(--pad)}.sec{padding-block:var(--luft)}.sec.mid{padding-block:clamp(3.2rem,7vw,5.5rem)}
.h-lc{font-family:"Libre Caslon Text",Georgia,serif;font-weight:700;font-size:clamp(1.85rem,4vw,3rem);line-height:1.18;max-width:22ch}
.stand{margin-top:1rem;font-size:1.08rem;color:var(--grey);max-width:54ch}.prose{max-width:58ch}.prose p+p{margin-top:1.05rem}
.kick{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.26em;color:var(--brass)}
.framed{position:relative;border:1px solid var(--hair);padding:.8rem}.framed::after{content:"";position:absolute;inset:.8rem;border:1px solid var(--hair);pointer-events:none}.framed img{width:100%;aspect-ratio:16/7.5;object-fit:cover}
.zif{display:flex;align-items:baseline;gap:clamp(1rem,3vw,2rem);margin-bottom:clamp(1.5rem,4vw,2.4rem)}.zif .no{font-family:"Libre Caslon Text",serif;font-weight:700;font-size:clamp(2.4rem,5.5vw,4.2rem);line-height:1;color:var(--brass)}.zif h2{font-family:"Libre Caslon Text",serif;font-weight:700;font-size:clamp(1.45rem,3.1vw,2.3rem);line-height:1.22;max-width:20ch}
.hc-list{border-top:2px solid var(--forest)}.hc-list>div{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:.35rem clamp(1.4rem,4vw,3.5rem);padding:1.1rem 0;border-bottom:1px solid var(--hair);align-items:baseline}
.hc-list dt{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--brass)}.hc-list dd{font-weight:500}
.hc-crisis{background:var(--forest);color:var(--ivory);padding:clamp(2rem,5vw,3rem);margin-top:clamp(2.8rem,6vw,4.4rem);margin-inline:var(--pad)}.hc-crisis h2{font-family:"Libre Caslon Text",serif;font-weight:700;font-size:1.3rem;margin-bottom:.8rem}.hc-crisis p{color:rgba(242,239,228,.8);font-size:.97rem}.hc-crisis strong{color:#fff}.hc-crisis a{color:var(--brass2);font-weight:600;text-decoration:none}.hc-crisis a:hover{text-decoration:underline}
.hc-foot{background:var(--forest2);padding:var(--luft) var(--pad) clamp(2.5rem,6vw,4rem)}.hc-foot .kick{color:var(--brass2);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.26em}.hc-foot .huge{font-family:"Libre Caslon Text",serif;font-weight:700;font-size:clamp(1.85rem,5.2vw,3.9rem);line-height:1.2;max-width:21ch;color:var(--ivory);margin-top:1rem}.hc-foot .huge a{color:var(--brass2);text-decoration:none;border-bottom:2px solid var(--brass-hair);white-space:nowrap;transition:color .2s,border-color .2s}.hc-foot .huge a:hover{color:var(--ivory);border-color:var(--ivory)}
.hc-base{background:var(--forest2);color:rgba(242,239,228,.62);padding:0 var(--pad) 2.4rem;display:flex;flex-wrap:wrap;gap:.8rem 2.2rem;justify-content:space-between;font-size:.88rem}.hc-base nav{display:flex;flex-wrap:wrap;gap:1.3rem}.hc-base a{color:rgba(242,239,228,.62);text-decoration:none}.hc-base a:hover{color:var(--ivory)}
.fnote{font-size:.85rem;color:var(--grey);padding:1.3rem 0;max-width:70ch}.hc-foot .fnote{color:rgba(242,239,228,.62)}sup.star{color:var(--brass);font-weight:600}.hc-foot sup.star{color:var(--brass2)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:880px){.hc-list>div{grid-template-columns:1fr;gap:.2rem}}@media(max-width:700px){header[style] nav{display:none}}
.wrap.prose{max-width:none}.wrap.prose>*{max-width:60ch}
