/* Lindl Photography — einheitliches Premium-Typografie-System */
:root{
  --lp-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --lp-text:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --lp-ink:#24211e;
  --lp-muted:#6f685f;
  --lp-accent:#ae8955;
  --lp-reading:68ch;
}

html{font-size:16px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{font-family:var(--lp-text);font-weight:400;color:var(--lp-ink);letter-spacing:-.006em}
button,input,textarea,select{font:inherit}

/* Grundhierarchie */
h1,h2,h3,h4,h5,h6{
  font-family:var(--lp-display);
  color:inherit;
  text-wrap:balance;
  overflow-wrap:normal;
  hyphens:auto;
  letter-spacing:-.025em;
}
h1{font-weight:600;line-height:.94}
h2{font-weight:500;line-height:1.02}
h3{font-weight:500;line-height:1.08}
h4,h5,h6{font-weight:600;line-height:1.2}
p,li{line-height:1.72}
.eyebrow,.meta,.header-tagline,.package-time,.testimonial-name,.experience-number,.caption,.gift-small,.microcopy{
  font-family:var(--lp-text);
  font-weight:600;
  letter-spacing:.13em;
}
.btn,.nav-cta,.contact-link,.home-link,.read-more,.sticky-booking a{
  font-family:var(--lp-text);
  font-weight:650;
  letter-spacing:.025em;
}

/* Startseite */
.page-home .site-header{font-family:var(--lp-text)}
.page-home .site-header nav a{font-size:12px;line-height:1.2;letter-spacing:.075em;font-weight:600}
.page-home .site-header .brand strong{font-family:var(--lp-display);font-weight:600;letter-spacing:.105em}
.page-home .hero-content{max-width:820px}
.page-home .hero-name,
.page-home .hero-statement .hero-main{
  font-family:var(--lp-display);
  font-size:clamp(52px,6.4vw,96px);
  font-weight:600;
  line-height:.86;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.page-home .hero-kicker{font-family:var(--lp-display);font-weight:500;letter-spacing:-.02em;line-height:1}
.page-home .hero-location{font-size:clamp(11px,.85vw,13px);line-height:1.4;letter-spacing:.18em;text-transform:uppercase}
.page-home .hero-content>p:not(.eyebrow):not(.hero-trust){max-width:650px;font-size:clamp(16px,1.35vw,19px);line-height:1.65;letter-spacing:-.01em}
.page-home .hero-trust{max-width:640px;font-size:clamp(14px,1.1vw,17px);line-height:1.55;font-weight:500}
.page-home .section-head{max-width:900px;margin-inline:auto}
.page-home .section-head h2,
.page-home section>h2,
.page-home .legal-card h1{
  font-size:clamp(42px,5.1vw,72px);
  line-height:.98;
  letter-spacing:-.035em;
}
.page-home .section-head .subline{max-width:680px;font-size:clamp(16px,1.25vw,19px);line-height:1.72}
.page-home .section p:not(.eyebrow):not(.price):not(.experience-number):not(.testimonial-stars):not(.testimonial-name){font-size:clamp(15.5px,1.05vw,17px);line-height:1.75}
.page-home .section .eyebrow{font-size:11px;line-height:1.4;letter-spacing:.19em;text-transform:uppercase}
.page-home .about h2{font-size:clamp(46px,5vw,72px);line-height:.98}
.page-home .about p{max-width:62ch}
.page-home .about-emphasis{font-family:var(--lp-display);font-size:clamp(25px,2.2vw,34px)!important;line-height:1.16!important;font-weight:500;letter-spacing:-.018em}
.page-home .experience-values,.page-home .experience-closing{font-family:var(--lp-display);font-size:clamp(23px,2vw,31px)!important;line-height:1.25!important}
.page-home .cards h3,.page-home .testimonial-card h3,.page-home .faq-grid h3,.page-home .blog-grid h3{font-size:clamp(28px,2.25vw,38px);line-height:1.06}
.page-home .price-card h3{font-size:clamp(29px,2.35vw,39px)!important;line-height:1.02!important}
.page-home .price-card .price{font-family:var(--lp-display);font-weight:600;letter-spacing:-.04em}
.page-home .price-card li{line-height:1.55!important}
.page-home .testimonial-card blockquote,.page-home .testimonial-card>p:not(.testimonial-stars):not(.testimonial-name){font-family:var(--lp-display);font-size:clamp(20px,1.55vw,25px)!important;line-height:1.48!important;letter-spacing:-.012em}
.page-home .contact h2{font-size:clamp(44px,5vw,70px);line-height:.98}
.page-home footer{font-size:12px;line-height:1.55;letter-spacing:.025em}

/* Blogübersicht */
.page-blog-index{font-family:var(--lp-text)}
.page-blog-index h1{font-size:clamp(52px,7vw,92px);line-height:.92;letter-spacing:-.045em}
.page-blog-index .lead{max-width:760px;font-family:var(--lp-display);font-size:clamp(21px,2vw,28px);line-height:1.48;letter-spacing:-.015em}
.page-blog-index .eyebrow{font-size:10.5px;line-height:1.4;letter-spacing:.19em;text-transform:uppercase}
.page-blog-index .blog-card h2{font-size:clamp(31px,3vw,46px);line-height:1.03;letter-spacing:-.03em}
.page-blog-index .blog-card p:not(.eyebrow){font-size:15.5px;line-height:1.72;color:var(--lp-muted)}
.page-blog-index .read-more{font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.page-blog-index footer{font-size:12px;line-height:1.6;letter-spacing:.02em}

/* Einzelne Hochzeitsreportagen */
.page-blog-article{font-family:var(--lp-text);font-size:16px;line-height:1.75}
.page-blog-article .brand{font-family:var(--lp-display);font-weight:600;letter-spacing:.15em}
.page-blog-article .brand small{font-family:var(--lp-text);font-weight:600;letter-spacing:.27em}
.page-blog-article .eyebrow,.page-blog-article .meta{font-size:10.5px;line-height:1.45;letter-spacing:.19em;text-transform:uppercase}
.page-blog-article .hero-copy h1{max-width:980px;font-size:clamp(50px,6.6vw,92px);font-weight:500;line-height:.94;letter-spacing:-.04em}
.page-blog-article .hero-subline{max-width:780px;margin-inline:auto;font-family:var(--lp-display);font-size:clamp(20px,2vw,28px);font-weight:400;line-height:1.42;letter-spacing:-.012em}
.page-blog-article .article h2{max-width:900px;font-size:clamp(40px,4.7vw,64px);font-weight:500;line-height:1.02;letter-spacing:-.035em}
.page-blog-article .article h3{font-size:clamp(29px,2.8vw,40px);font-weight:500;line-height:1.08;letter-spacing:-.025em}
.page-blog-article .lead{max-width:var(--lp-reading);font-family:var(--lp-display);font-size:clamp(21px,1.9vw,27px);line-height:1.52;letter-spacing:-.012em}
.page-blog-article .story{max-width:740px}
.page-blog-article .story p,.page-blog-article .intro p{font-size:clamp(15.5px,1vw,17px);line-height:1.82;letter-spacing:-.004em}
.page-blog-article .story p+p{margin-top:1.25em}
.page-blog-article .location-note{font-size:13.5px;line-height:1.75}
.page-blog-article .location-note strong{font-family:var(--lp-display);font-size:24px;font-weight:500;letter-spacing:-.015em}
.page-blog-article .quote{font-family:var(--lp-display);font-size:clamp(29px,3.7vw,45px);font-weight:500;line-height:1.34;letter-spacing:-.018em}
.page-blog-article .closing p{font-family:var(--lp-display);font-size:clamp(20px,1.7vw,24px);line-height:1.55}
.page-blog-article .caption{font-size:11.5px;line-height:1.55;letter-spacing:.035em}
.page-blog-article .site-footer{font-size:12px;line-height:1.6}

/* Rechtliche Seiten */
.page-legal .legal-card{max-width:940px;margin-inline:auto}
.page-legal .legal-card h1{font-size:clamp(44px,5vw,68px);font-weight:600;line-height:.96;letter-spacing:-.035em}
.page-legal .legal-card h2{font-size:clamp(29px,3vw,40px);font-weight:500;line-height:1.08;letter-spacing:-.025em}
.page-legal .legal-card h3{font-size:clamp(23px,2.2vw,31px);line-height:1.14}
.page-legal .legal-card p,.page-legal .legal-card li{max-width:var(--lp-reading);font-size:15.5px;line-height:1.78}

@media(max-width:768px){
  html{font-size:15.5px}
  .page-home .hero-name,.page-home .hero-statement .hero-main{font-size:clamp(40px,12vw,58px);line-height:.9}
  .page-home .hero-content>p:not(.eyebrow):not(.hero-trust){font-size:14.5px!important;line-height:1.55!important}
  .page-home .section-head h2,.page-home section>h2{font-size:clamp(38px,11vw,54px);line-height:1}
  .page-home .section p:not(.eyebrow):not(.price):not(.experience-number):not(.testimonial-stars):not(.testimonial-name){font-size:15.5px;line-height:1.72}
  .page-blog-index h1{font-size:clamp(45px,13vw,65px)}
  .page-blog-index .blog-card h2{font-size:clamp(30px,9vw,40px)}
  .page-blog-article .hero-copy h1{font-size:clamp(36px,10.5vw,50px)!important;line-height:1!important}
  .page-blog-article .hero-subline{font-size:17px!important;line-height:1.48!important}
  .page-blog-article .article h2{font-size:clamp(36px,10vw,48px);line-height:1.03}
  .page-blog-article .article h3{font-size:clamp(28px,8.5vw,37px)}
  .page-blog-article .story p,.page-blog-article .intro p{font-size:15.5px;line-height:1.78}
}
