/* Lindl Photography – bereinigte gemeinsame Unterseiten-CSS
   Ziel:
   - gemeinsames Design für Unterseiten erhalten
   - Hero-Bereiche von Blogs und Reportagen NICHT mehr dunkel überschreiben
   - Hero: Kicker/eyebrow Gold, Haupttitel Weiß, Beschreibung Weiß
   - Startseite wird nicht verändert, sofern diese Datei dort nicht eingebunden ist
*/

:root{
  --richi-bg:#f7f3ec;
  --richi-paper:#fffdf9;
  --richi-ink:#29241f;
  --richi-muted:#746c63;
  --richi-green:#596d53;
  --richi-gold:#b48852;
  --richi-line:#ded6ca;
  --richi-display:'Fraunces',Georgia,serif;
  --richi-sans:'Manrope',Arial,sans-serif;
}

html{scroll-behavior:smooth}

body{
  background:var(--richi-bg)!important;
  color:var(--richi-ink)!important;
  font-family:var(--richi-sans)!important;
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
}

/* Allgemeine Überschriften – bewusst NICHT innerhalb von Hero-Bereichen */
h1:not(.hero h1):not(.reportage-hero h1),
h2,h3,h4,.display,.headline{
  font-family:var(--richi-display)!important;
  color:var(--richi-ink);
  font-weight:500!important;
  letter-spacing:-.025em;
}

h1{
  font-size:clamp(3rem,6.3vw,6.2rem)!important;
  line-height:.98!important;
  max-width:1100px;
}

h2{
  font-size:clamp(2.15rem,4.4vw,4.5rem)!important;
  line-height:1.03!important;
}

h3{
  font-size:clamp(1.55rem,2.5vw,2.45rem)!important;
  line-height:1.12!important;
}

p,li{
  font-size:clamp(1rem,1.15vw,1.12rem);
  color:var(--richi-muted);
}

strong{color:var(--richi-ink)}

/* Header */
.site-header{
  background:rgba(247,243,236,.95)!important;
  border-bottom:1px solid var(--richi-line)!important;
  backdrop-filter:blur(12px);
}

.site-header nav a{
  font-family:var(--richi-sans)!important;
  font-weight:650!important;
  letter-spacing:.015em;
}

/* =========================================================
   HERO – BLOGS
   ========================================================= */

body.page-blog-article .hero{
  background:#1e1b18!important;
}

body.page-blog-article .hero .hero-copy{
  color:#fff!important;
}

body.page-blog-article .hero .hero-copy h1{
  font-family:var(--richi-display)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:500!important;
  letter-spacing:-.025em;
  opacity:1!important;
}

body.page-blog-article .hero .hero-copy .eyebrow,
body.page-blog-article .hero .hero-copy .kicker,
body.page-blog-article .hero .hero-copy .overline{
  font-family:var(--richi-sans)!important;
  text-transform:uppercase;
  letter-spacing:.14em!important;
  font-size:.76rem!important;
  font-weight:700!important;
  color:var(--richi-gold)!important;
  -webkit-text-fill-color:var(--richi-gold)!important;
  opacity:1!important;
}

body.page-blog-article .hero .hero-copy .hero-subline,
body.page-blog-article .hero .hero-copy p:not(.eyebrow):not(.kicker):not(.overline){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}

/* =========================================================
   HERO – REPORTAGEN
   ========================================================= */

.reportage-hero{
  background:#1e1b18!important;
}

.reportage-hero .hero-copy{
  color:#fff!important;
}

.reportage-hero .hero-copy h1{
  font-family:var(--richi-display)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:500!important;
  letter-spacing:-.025em;
  opacity:1!important;
}

.reportage-hero .hero-copy .kicker,
.reportage-hero .hero-copy .eyebrow,
.reportage-hero .hero-copy .overline{
  font-family:var(--richi-sans)!important;
  text-transform:uppercase;
  letter-spacing:.14em!important;
  font-size:.76rem!important;
  font-weight:700!important;
  color:var(--richi-gold)!important;
  -webkit-text-fill-color:var(--richi-gold)!important;
  opacity:1!important;
}

.reportage-hero .hero-copy p{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}

/* iPhone / Safari Schutz */
.hero .hero-copy,
.hero .hero-copy *,
.reportage-hero .hero-copy,
.reportage-hero .hero-copy *{
  mix-blend-mode:normal!important;
}

/* allgemeine Labels außerhalb von Hero */
.eyebrow,.kicker,.label,.meta,.overline{
  font-family:var(--richi-sans)!important;
  text-transform:uppercase;
  letter-spacing:.14em!important;
  font-size:.76rem!important;
  font-weight:700!important;
  color:var(--richi-gold)!important;
}

/* Inhalt */
main,.article{overflow:hidden}

main section,.article section{
  padding-top:clamp(4rem,7vw,7.5rem)!important;
  padding-bottom:clamp(4rem,7vw,7.5rem)!important;
}

main section+section{
  border-top:1px solid rgba(222,214,202,.65);
}

main section>*,
.article section>*{
  max-width:1080px;
  margin-left:auto!important;
  margin-right:auto!important;
}

main section>p,
.article section>p{
  max-width:760px;
}

img{height:auto}

.article img,
.story img,
main figure img{
  display:block;
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  border-radius:2px!important;
}

figure{
  margin-top:2.25rem!important;
  margin-bottom:2.25rem!important;
}

figcaption,.caption,.image-caption{
  font-family:var(--richi-sans)!important;
  font-size:.86rem!important;
  color:var(--richi-muted)!important;
  text-align:center;
  margin-top:.8rem;
}

.btn,.button,a.cta,.cta a,[class*='button'],[class*='btn']{
  border-radius:999px!important;
  font-family:var(--richi-sans)!important;
  font-weight:700!important;
}

.btn-primary,.primary,.cta-primary{
  background:var(--richi-green)!important;
  color:white!important;
}

.intro,.premium-intro{
  background:var(--richi-paper)!important;
}

.intro h2,.premium-intro h2{
  max-width:900px;
}

.story:nth-of-type(even){
  background:rgba(255,253,249,.45);
}

blockquote{
  font-family:var(--richi-display)!important;
  font-size:clamp(1.6rem,3vw,2.7rem)!important;
  line-height:1.18;
  border-left:2px solid var(--richi-gold)!important;
  padding-left:1.4rem;
  color:var(--richi-ink)!important;
}

.faq-section details{
  border-top:1px solid var(--richi-line)!important;
  background:transparent!important;
  border-radius:0!important;
}

.faq-section details:last-child{
  border-bottom:1px solid var(--richi-line)!important;
}

.faq-section summary{
  font-family:var(--richi-display)!important;
  font-size:1.35rem!important;
}

.site-footer{
  background:#2d302a!important;
  color:#f8f4ed!important;
}

.site-footer p,
.site-footer a{
  color:#e8e2d8!important;
}

/* Blog-Übersicht */
.blog-grid,.posts-grid,.cards,.grid{
  gap:clamp(1.4rem,3vw,3rem)!important;
}

.blog-card,.post-card,.card{
  background:var(--richi-paper)!important;
  border:1px solid var(--richi-line)!important;
  border-radius:2px!important;
  box-shadow:none!important;
  overflow:hidden;
}

.blog-card h2,.post-card h2,.card h2{
  font-size:clamp(1.7rem,2.5vw,2.5rem)!important;
}

.blog-card img,.post-card img,.card img{
  border-radius:0!important;
}

/* lange Leseseiten */
.article p+img,
.article p+figure,
.story p+img,
.story p+figure{
  margin-top:2.2rem!important;
}

.article img+p,
.article figure+p,
.story img+p,
.story figure+p{
  margin-top:2rem!important;
}

@media(max-width:800px){
  .site-header{backdrop-filter:none}

  h1{
    font-size:clamp(2.7rem,13vw,4.5rem)!important;
  }

  h2{
    font-size:clamp(2rem,10vw,3.5rem)!important;
  }

  main section,.article section{
    padding:3.6rem 1.25rem!important;
  }

  /* keine seitlichen Hero-Paddings erzwingen */
  body.page-blog-article .hero,
  .reportage-hero{
    padding-left:0!important;
    padding-right:0!important;
  }

  .article img,
  .story img,
  main figure img{
    max-width:100%;
  }

  .site-header nav{
    font-size:.9rem;
  }
}
