/*
 * SAM-PRO Typography System v331
 * Zentrales, seitenübergreifendes Schriftgrößenraster.
 */

:root{
  --sampro-type-page-title:clamp(34px,3.25vw,48px);
  --sampro-type-section-title:clamp(26px,2.25vw,34px);
  --sampro-type-subtitle:clamp(21px,1.7vw,26px);
  --sampro-type-card-title:18px;
  --sampro-type-body:16px;
  --sampro-type-lead:18px;
  --sampro-type-small:14px;
  --sampro-type-label:12px;
  --sampro-line-title:1.1;
  --sampro-line-section:1.16;
  --sampro-line-body:1.65;
}

/* Allgemeine Seiten und Standardinhalte */
body:not(.wp-admin) main h1,
body:not(.wp-admin) .entry-title,
body:not(.wp-admin) .hero h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
  letter-spacing:-.03em !important;
}

body:not(.wp-admin) main h2,
body:not(.wp-admin) .section h2,
body:not(.wp-admin) .cta-band h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
  letter-spacing:-.025em !important;
}

body:not(.wp-admin) main h3,
body:not(.wp-admin) .card h3{
  font-size:var(--sampro-type-subtitle) !important;
  line-height:1.22 !important;
  letter-spacing:-.015em !important;
}

body:not(.wp-admin) main p,
body:not(.wp-admin) main li,
body:not(.wp-admin) .lead{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

/* Startseite */
body.home .sp-home-hero-v202__copy h1,
body.front-page .sp-home-hero-v202__copy h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

body.home .sp-home-hero-v202__lead,
body.front-page .sp-home-hero-v202__lead{
  font-size:var(--sampro-type-lead) !important;
  line-height:1.58 !important;
}

body.home .v7-section h2,
body.front-page .v7-section h2,
body.home .v7-benefits h2,
body.front-page .v7-benefits h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

body.home .v7-section h3,
body.front-page .v7-section h3,
body.home .v7-quote-footer h3,
body.front-page .v7-quote-footer h3{
  font-size:var(--sampro-type-subtitle) !important;
  line-height:1.22 !important;
}

/* Consulting-Übersicht */
.consulting-hero-v57 h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.consulting-hero-v57 p:not(.consulting-kicker){
  font-size:var(--sampro-type-lead) !important;
  line-height:1.6 !important;
}

.consulting-section > .container > h2,
.consulting-modules-html-v269__head h2,
.consulting-cta h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.consulting-card-image__body h3,
.consulting-modules-html-v269__card h3,
.consulting-modules-html-v269__phase-copy h3{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.consulting-kicker,
.consulting-modules-html-v269__badge{
  font-size:var(--sampro-type-label) !important;
}

/* Consulting-Themenseiten */
.sampro-topic-v271 h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.sampro-topic-v271 h2,
.sampro-topic-v271__flow-title-block h3,
.sampro-topic-v271__overview-head h3,
.sampro-topic-v271__result-card--lead h3,
.sampro-topic-v313__optimization-title,
.sampro-topic-v321__audit-head h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
  letter-spacing:-.025em !important;
}

.sampro-topic-v271__lead,
.sampro-topic-v271__section-head > p,
.sampro-topic-v271__flow-title-block > p,
.sampro-topic-v321__audit-head > p:not(.sampro-topic-v271__eyebrow){
  font-size:var(--sampro-type-lead) !important;
  line-height:1.6 !important;
}

.sampro-topic-v271__focus-card h4,
.sampro-topic-v271__result-mini-card h4,
.sampro-topic-v271__flow-step h4,
.sampro-topic-v326__benefit-card strong,
.sampro-topic-v326__usecase-item strong,
.sampro-topic-v321__practice-case h3,
.sampro-topic-v321__pitfall-item strong,
.sampro-topic-v321__support-step strong{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.sampro-topic-v271 p,
.sampro-topic-v271 li,
.sampro-topic-v271__focus-card p,
.sampro-topic-v271__result-mini-card p,
.sampro-topic-v271__flow-step p,
.sampro-topic-v321__pitfall-item span,
.sampro-topic-v321__support-step span,
.sampro-topic-v326__benefit-card span:last-child,
.sampro-topic-v326__usecase-item span:last-child{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

.sampro-topic-v271__kicker,
.sampro-topic-v271__eyebrow,
.sampro-topic-v321__practice-kicker,
.sampro-topic-v321__audit-card-head{
  font-size:var(--sampro-type-label) !important;
}

.sampro-topic-v271__quicknav a,
.sampro-topic-v271__hero-media figcaption p,
.sampro-topic-v271__faq p,
.sampro-topic-v326__usecases-note,
.sampro-topic-v321__practice-note{
  font-size:var(--sampro-type-small) !important;
}

.sampro-topic-v271__faq summary{
  font-size:var(--sampro-type-body) !important;
  line-height:1.45 !important;
}

/* LMaaS / Service */
.lmaas-premium-hero-v143 h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.lmaas-premium-hero-v143__lead{
  font-size:var(--sampro-type-lead) !important;
  line-height:1.6 !important;
}

.lmaas-section h2,
.lmaas-section-head h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.lmaas-card h3,
.lmaas-step__top h3{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.lmaas-page-v140 p,
.lmaas-page-v140 li{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

/* Seminarübersicht */
.seminar-hero-v58 h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.seminar-hero-v58 p{
  font-size:var(--sampro-type-lead) !important;
  line-height:1.6 !important;
}

.seminar-v58 section h2,
.seminar-v58 .seminar-trainer-v58 h2,
.seminar-v58 .seminar-cta-v58 h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.seminar-v58 section h3,
.seminar-event-card-v58 h3{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.seminar-v58 p,
.seminar-v58 li{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

/* Seminar-Detailseiten */
.seminar-single-v63 h1,
.seminar-single .entry-title{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.seminar-single-v63 section h2,
.seminar-single-v63 .seminar-trainer-premium-v77 h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.seminar-single-v63 section h3,
.seminar-benefit-copy-v76 h3,
.seminar-day-titles-v76 h3{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.seminar-single-v63 p,
.seminar-single-v63 li,
.seminar-single p,
.seminar-single li{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

.seminar-kicker-v63,
.seminar-label-v63,
.seminar-day-titles-v76 small{
  font-size:var(--sampro-type-label) !important;
}

/* Über mich */
.about-v174 h1,
.about-v174-hero h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.about-v174 h2,
.about-v173-cv h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.about-v174 h3,
.about-v173-card h3{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.about-v174 p,
.about-v174 li{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

/* Kontakt */
.contact-v182-hero h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.contact-v182-lead,
.contact-v187-visual-lead{
  font-size:var(--sampro-type-lead) !important;
  line-height:1.6 !important;
}

.contact-v182 h2,
.contact-v182-sectionhead h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.contact-v182 h3,
.contact-v182-visual-item strong{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.contact-v182 p,
.contact-v182 li,
.contact-v182 label{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

.contact-v182-kicker,
.contact-v187-side-kicker{
  font-size:var(--sampro-type-label) !important;
}

/* Rechtstexte */
.legal-page-v190 h1{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.legal-page-v190 h2{
  font-size:var(--sampro-type-section-title) !important;
  line-height:var(--sampro-line-section) !important;
}

.legal-page-v190 h3{
  font-size:var(--sampro-type-subtitle) !important;
  line-height:1.22 !important;
}

.legal-page-v190 p,
.legal-page-v190 li{
  font-size:var(--sampro-type-body) !important;
  line-height:1.7 !important;
}

/* Veranstaltungsliste und allgemeine Eventseiten */
.events-grid h1,
.archive .section h1,
.single-sampro_event .entry-title{
  font-size:var(--sampro-type-page-title) !important;
  line-height:var(--sampro-line-title) !important;
}

.events-grid .event h3,
.events-grid .event h4{
  font-size:var(--sampro-type-card-title) !important;
  line-height:1.24 !important;
}

.events-grid p,
.events-grid li{
  font-size:var(--sampro-type-body) !important;
  line-height:var(--sampro-line-body) !important;
}

/* Einheitliche UI-Texte */
body:not(.wp-admin) .btn,
body:not(.wp-admin) button,
body:not(.wp-admin) input[type="submit"],
body:not(.wp-admin) .sampro-topic-v271__btn{
  font-size:15px !important;
  line-height:1.2 !important;
}

/* Mobile Typografie: dieselben Stufen, nur kompakter */
@media (max-width:720px){
  :root{
    --sampro-type-page-title:clamp(30px,8vw,38px);
    --sampro-type-section-title:clamp(24px,6.5vw,30px);
    --sampro-type-subtitle:clamp(19px,5vw,23px);
    --sampro-type-card-title:17px;
    --sampro-type-body:15px;
    --sampro-type-lead:16px;
    --sampro-type-small:13.5px;
    --sampro-type-label:11px;
  }
}
