body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
:root {
  --lk-navy: #21293f;
  --lk-blue: #2f6794;
  --lk-blue-dark: #234f75;
  --lk-green: #789843;
  --lk-red: #b6424c;
  --lk-gold: #bda052;
  --lk-ink: #28323a;
  --lk-muted: #68747d;
  --lk-surface: #f3f4ef;
  --lk-surface-soft: #f8f9f6;
  --lk-line: #d9ddd8;
  --lk-white: #ffffff;
  --lk-content-width: 1180px;
  --lk-radius: 10px;
  --lk-shadow: 0 8px 30px rgb(33 41 63 / 8%);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--lk-white);
  color: var(--lk-ink);
  font-family: "Source Sans 3", "Source Sans Pro", "Avenir Next", "Segoe UI", system-ui, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--lk-blue-dark);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

a:hover {
  color: var(--lk-blue);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgb(47 103 148 / 35%);
  outline-offset: 3px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 0.65em;
  color: var(--lk-navy);
  font-weight: 700;
  line-height: 1.2;
  text-wrap: balance;
}

h1 {
  font-size: clamp(2.35rem, 5vw, 4.35rem);
  letter-spacing: -0.035em;
}

h2 {
  font-size: clamp(1.85rem, 3.4vw, 2.8rem);
  letter-spacing: -0.025em;
}

h3 {
  font-size: clamp(1.3rem, 2.1vw, 1.7rem);
}

p {
  margin: 0 0 1.15em;
}

img {
  max-width: 100%;
  height: auto;
}

#wrapper {
  min-height: 100vh;
  overflow: clip;
}

#header {
  position: sticky;
  z-index: 100;
  top: 0;
  background: rgb(255 255 255 / 96%);
  border-bottom: 1px solid var(--lk-line);
  box-shadow: 0 3px 18px rgb(33 41 63 / 5%);
  backdrop-filter: blur(12px);
}

#header .inside {
  display: flex;
  align-items: center;
  width: min(100%, var(--lk-content-width));
  min-height: 104px;
  margin: 0 auto;
  padding: 14px 30px;
  gap: 34px;
}

#header .mod_html {
  flex: 0 0 auto;
  margin: 0;
}

.site-logo {
  display: block;
  line-height: 0;
}

.site-logo img {
  display: block;
  width: 245px;
  max-height: 76px;
  object-fit: contain;
  object-position: left center;
}

#header .mod_navigation {
  flex: 1 1 auto;
  min-width: 0;
  margin-left: auto;
}

#header .mod_navigation ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  gap: 8px 25px;
  list-style: none;
}

#header .mod_navigation li {
  margin: 0;
  padding: 0;
}

#header .mod_navigation a,
#header .mod_navigation strong {
  position: relative;
  display: block;
  padding: 13px 0 11px;
  color: #5d6268;
  font-size: 0.94rem;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

#header .mod_navigation a::after,
#header .mod_navigation strong::after {
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 3px;
  background: var(--lk-blue);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 180ms ease;
}

#header .mod_navigation a:hover,
#header .mod_navigation a:focus-visible,
#header .mod_navigation strong,
#header .mod_navigation .active {
  color: var(--lk-navy);
}

#header .mod_navigation a:hover::after,
#header .mod_navigation a:focus-visible::after,
#header .mod_navigation strong::after,
#header .mod_navigation .active::after {
  transform: scaleX(1);
}

#container {
  min-height: 48vh;
}

#main .inside {
  width: min(100%, var(--lk-content-width));
  margin: 0 auto;
  padding: clamp(54px, 8vw, 96px) 30px;
}

#main .ce_text,
#main .ce_headline,
#main .ce_image,
#main .ce_hyperlink,
#main .ce_list {
  max-width: 860px;
}

#main .button,
#main a.button,
#main .ce_hyperlink a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 11px 20px;
  color: var(--lk-white);
  background: var(--lk-blue-dark);
  border: 1px solid var(--lk-blue-dark);
  border-radius: 6px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

#main .button:hover,
#main a.button:hover,
#main .ce_hyperlink a:hover {
  color: var(--lk-white);
  background: var(--lk-blue);
  border-color: var(--lk-blue);
  transform: translateY(-1px);
}

#footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--lk-ink);
  background: linear-gradient(180deg, #fbfcfa 0%, #f1f4ee 100%);
  border-top: 1px solid var(--lk-line);
}

#footer::after {
  position: absolute;
  z-index: -1;
  top: -210px;
  right: 4%;
  width: 520px;
  height: 520px;
  background: radial-gradient(circle, rgb(120 152 67 / 11%) 0 7%, rgb(120 152 67 / 4%) 17%, transparent 61%);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

#footer .inside {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-areas:
    "brand contact action"
    "legal legal legal";
  grid-template-columns: minmax(250px, 1.15fr) minmax(210px, 0.85fr) minmax(250px, 0.9fr);
  align-items: start;
  width: min(100%, var(--lk-content-width));
  margin: 0 auto;
  padding: 88px 30px 28px;
  gap: 48px 64px;
}

#footer .mod_html {
  margin: 0;
}

.footer-network {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 96px;
  pointer-events: none;
}

.footer-network__svg {
  display: block;
  width: 100%;
  height: 96px;
  overflow: visible;
}

.footer-network__svg--mobile {
  display: none;
}

.footer-network__lines line {
  stroke: rgb(47 103 148 / 24%);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
}

.footer-network__points circle {
  fill: var(--lk-blue);
  opacity: 0.65;
}

.footer-network__points .footer-network__point--light {
  fill: var(--lk-gold);
  opacity: 0.9;
}

.footer-network__points .footer-network__point-halo {
  fill: rgb(120 152 67 / 11%);
  opacity: 1;
}

.footer-network__points .footer-network__point--clear {
  fill: var(--lk-green);
  opacity: 1;
}

@media (max-width: 700px) {
  .footer-network {
    height: 76px;
  }

  .footer-network__svg--desktop {
    display: none;
  }

  .footer-network__svg--mobile {
    display: block;
    height: 76px;
  }
}

.footer-brand {
  grid-area: brand;
}

.footer-brand img {
  display: block;
  width: min(220px, 100%);
}

.footer-brand__claim {
  max-width: 290px;
  margin: 15px 0 0;
  color: var(--lk-muted);
  font-size: 0.94rem;
  line-height: 1.55;
}

.footer-contact {
  grid-area: contact;
  color: var(--lk-muted);
  font-style: normal;
  line-height: 1.7;
}

.footer-kicker {
  display: inline-block;
  margin: 0 0 10px;
  color: var(--lk-navy);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.footer-contact a {
  color: var(--lk-navy);
  text-decoration: none;
}

.footer-contact a:hover {
  color: var(--lk-blue);
  text-decoration: underline;
}

.footer-action {
  grid-area: action;
  justify-self: end;
  max-width: 290px;
}

.footer-action__link {
  display: block;
  padding: 20px 22px;
  color: var(--lk-navy);
  background: rgb(255 255 255 / 82%);
  border: 1px solid rgb(33 41 63 / 13%);
  border-radius: var(--lk-radius);
  box-shadow: var(--lk-shadow);
  text-decoration: none;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.footer-action__link::before {
  display: inline-block;
  width: 9px;
  height: 9px;
  margin: 0 10px 1px 0;
  background: var(--lk-green);
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgb(120 152 67 / 12%);
  content: "";
}

.footer-action__link strong {
  color: inherit;
  font-size: 1.03rem;
}

.footer-action__link span {
  display: block;
  margin: 8px 0 0 19px;
  color: var(--lk-muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.footer-action__link:hover {
  color: var(--lk-blue-dark);
  border-color: rgb(47 103 148 / 34%);
  box-shadow: 0 12px 34px rgb(33 41 63 / 11%);
  transform: translateY(-2px);
}

.footer-legal {
  grid-area: legal;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 24px;
  border-top: 1px solid rgb(33 41 63 / 12%);
  gap: 10px 22px;
  flex-wrap: wrap;
}

.footer-copyright {
  color: var(--lk-muted);
  font-size: 0.86rem;
}

.footer-legal__links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px 22px;
  flex-wrap: wrap;
}

.footer-legal a {
  color: var(--lk-muted);
  font-size: 0.92rem;
  text-decoration: none;
}

.footer-legal a:hover {
  color: var(--lk-navy);
  text-decoration: underline;
}

@media (max-width: 1050px) {
  #header .inside {
    align-items: flex-start;
    flex-direction: column;
    min-height: auto;
    gap: 10px;
  }

  .site-logo img {
    width: 220px;
    max-height: 68px;
  }

  #header .mod_navigation {
    width: 100%;
    margin: 0;
  }

  #header .mod_navigation ul {
    justify-content: flex-start;
    gap: 5px 20px;
    flex-wrap: wrap;
  }

  #header .mod_navigation a,
  #header .mod_navigation strong {
    padding-top: 8px;
    font-size: 0.87rem;
  }

  #footer .inside {
    grid-template-areas:
      "brand contact"
      "action action"
      "legal legal";
    grid-template-columns: minmax(240px, 1fr) minmax(220px, 1fr);
  }

  .footer-action {
    justify-self: start;
  }
}

@media (max-width: 700px) {
  body {
    font-size: 16px;
  }

  #header {
    position: relative;
  }

  #header .inside {
    padding: 14px 20px 17px;
  }

  .site-logo img {
    width: min(210px, 72vw);
    max-height: 54px;
  }

  #header .mod_navigation ul {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }

  #header .mod_navigation li + li {
    border-top: 1px solid var(--lk-line);
  }

  #header .mod_navigation a,
  #header .mod_navigation strong {
    padding: 10px 0;
    font-size: 0.88rem;
  }

  #header .mod_navigation a::after,
  #header .mod_navigation strong::after {
    right: auto;
    bottom: 6px;
    width: 42px;
  }

  #main .inside {
    padding: 46px 20px 60px;
  }

  #footer .inside {
    grid-template-areas:
      "brand"
      "contact"
      "action"
      "legal";
    grid-template-columns: 1fr;
    align-items: start;
    padding: 76px 20px 26px;
    gap: 34px;
  }

  .footer-legal {
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-start;
    padding-top: 24px;
    border-top: 1px solid var(--lk-line);
  }

  .footer-legal__links {
    justify-content: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* Startseite */

.home-page {
  --home-space: clamp(78px, 10vw, 132px);
}

.home-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(34px, 5.5vw, 72px);
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 16%), transparent 32%),
    linear-gradient(135deg, var(--lk-surface-soft), var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 18px;
  box-shadow: var(--lk-shadow);
}

.home-hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue) 0 45%, var(--lk-red) 45% 58%, var(--lk-gold) 58% 74%, var(--lk-green) 74%);
  content: "";
}

.home-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.75fr);
  align-items: center;
  gap: clamp(42px, 7vw, 90px);
}

.home-eyebrow,
.home-kicker {
  margin: 0 0 14px;
  color: var(--lk-blue-dark);
  font-size: 0.79rem;
  font-weight: 800;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.home-hero h1 {
  max-width: 760px;
  margin-bottom: 24px;
}

.home-lead {
  max-width: 700px;
  color: var(--lk-navy);
  font-size: clamp(1.17rem, 2vw, 1.38rem);
  line-height: 1.45;
}

.home-hero__content > p:not(.home-eyebrow, .home-lead) {
  max-width: 720px;
  color: var(--lk-muted);
}

.home-actions {
  display: flex;
  align-items: center;
  margin-top: 30px;
  gap: 12px;
  flex-wrap: wrap;
}

.lk-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 7px;
  font-weight: 750;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.lk-button:hover {
  transform: translateY(-1px);
}

.lk-button--primary {
  color: var(--lk-white);
  background: var(--lk-blue-dark);
}

.lk-button--primary:hover {
  color: var(--lk-white);
  background: var(--lk-blue);
}

.lk-button--secondary {
  color: var(--lk-navy);
  background: transparent;
  border-color: var(--lk-navy);
}

.lk-button--secondary:hover {
  color: var(--lk-white);
  background: var(--lk-navy);
}

.home-hero__panel {
  position: relative;
  padding: clamp(28px, 4vw, 42px);
  color: rgb(255 255 255 / 82%);
  background: var(--lk-navy);
  border-radius: 14px;
  box-shadow: 0 18px 50px rgb(33 41 63 / 20%);
}

.home-panel__label {
  margin-bottom: 12px;
  color: var(--lk-white);
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.home-price {
  display: flex;
  align-items: baseline;
  margin-bottom: 22px;
  color: var(--lk-white);
  font-size: clamp(2.25rem, 4vw, 3.35rem);
  font-weight: 800;
  line-height: 1;
  gap: 10px;
}

.home-price span {
  font-size: 0.86rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.home-checklist {
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-checklist li {
  position: relative;
  padding: 10px 0 10px 27px;
  border-top: 1px solid rgb(255 255 255 / 13%);
}

.home-checklist li::before {
  position: absolute;
  top: 11px;
  left: 1px;
  color: #a6c36b;
  content: "✓";
  font-weight: 800;
}

.home-panel__note {
  margin: 22px 0 0;
  padding-top: 20px;
  color: rgb(255 255 255 / 68%);
  border-top: 1px solid rgb(255 255 255 / 13%);
  font-size: 0.91rem;
  line-height: 1.5;
}

.home-section {
  margin-top: var(--home-space);
}

.home-section__narrow {
  max-width: 880px;
  margin-inline: auto;
}

.home-section__narrow > p:not(.home-kicker) {
  color: var(--lk-muted);
  font-size: 1.08rem;
}

.home-section__head {
  max-width: 820px;
  margin-bottom: clamp(34px, 5vw, 54px);
}

.home-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.home-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: clamp(26px, 3.5vw, 38px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: var(--lk-radius);
  box-shadow: 0 5px 24px rgb(33 41 63 / 5%);
}

.home-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: var(--lk-blue);
  border-radius: var(--lk-radius) var(--lk-radius) 0 0;
  content: "";
}

.home-card:nth-child(2)::before {
  background: var(--lk-gold);
}

.home-card:nth-child(3)::before {
  background: var(--lk-green);
}

.home-card__number {
  margin-bottom: 28px;
  color: var(--lk-blue);
  font-size: 0.83rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.home-card p {
  color: var(--lk-muted);
}

.home-text-link {
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  padding-top: 12px;
  color: var(--lk-blue-dark);
  font-weight: 750;
  text-decoration: none;
}

.home-text-link::after {
  margin-left: 9px;
  content: "→";
  transition: transform 160ms ease;
}

.home-text-link:hover::after {
  transform: translateX(4px);
}

.home-signals {
  padding: clamp(34px, 6vw, 68px);
  background: var(--lk-surface);
  border-radius: 16px;
}

.home-signal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  gap: 14px 34px;
  list-style: none;
}

.home-signal-grid li {
  position: relative;
  padding: 17px 18px 17px 48px;
  background: rgb(255 255 255 / 72%);
  border: 1px solid rgb(217 221 216 / 80%);
  border-radius: 8px;
  font-weight: 650;
  line-height: 1.45;
}

.home-signal-grid li::before {
  position: absolute;
  top: 17px;
  left: 18px;
  color: var(--lk-green);
  content: "✓";
  font-weight: 900;
}

.home-section__note {
  max-width: 850px;
  margin: 32px 0 0;
  color: var(--lk-muted);
}

.home-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  gap: 30px;
  list-style: none;
  counter-reset: none;
}

.home-process-grid li {
  padding-top: 24px;
  border-top: 3px solid var(--lk-blue);
}

.home-process-grid li:nth-child(2) {
  border-color: var(--lk-red);
}

.home-process-grid li:nth-child(3) {
  border-color: var(--lk-gold);
}

.home-process-grid li:nth-child(4) {
  border-color: var(--lk-green);
}

.home-step {
  display: block;
  margin-bottom: 18px;
  color: var(--lk-blue);
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1;
}

.home-process-grid p {
  color: var(--lk-muted);
  font-size: 0.96rem;
}

.home-about {
  padding: clamp(38px, 6vw, 70px);
  color: rgb(255 255 255 / 78%);
  background:
    radial-gradient(circle at 0% 100%, rgb(47 103 148 / 58%), transparent 42%),
    var(--lk-navy);
  border-radius: 16px;
}

.home-about__grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.25fr);
  gap: clamp(38px, 8vw, 100px);
}

.home-about h2,
.home-about .home-kicker,
.home-about strong,
.home-about .home-text-link {
  color: var(--lk-white);
}

.home-about .home-text-link {
  margin-top: 8px;
}

.home-journal {
  position: relative;
  overflow: hidden;
  padding: clamp(38px, 6vw, 70px);
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 14%), transparent 34%),
    linear-gradient(145deg, #f4f6f1, var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 16px;
}

.home-journal::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-green), var(--lk-gold), var(--lk-blue));
  content: "";
}

.home-journal__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 22px;
  gap: 34px;
}

.home-journal__head > div {
  max-width: 720px;
}

.home-journal__brand {
  width: clamp(215px, 25vw, 330px);
  height: auto;
}

.home-journal__intro {
  max-width: 900px;
  margin: 0 0 14px;
  color: var(--lk-muted);
  font-size: 1.06rem;
}

.home-journal__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, 0.82fr);
  gap: 24px;
}

.home-journal__edition,
.home-journal__channel {
  overflow: hidden;
  min-width: 0;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: 0 12px 34px rgb(33 41 63 / 8%);
}

.home-journal__edition {
  display: grid;
  grid-template-columns: minmax(210px, 0.78fr) minmax(0, 1.22fr);
}

.home-journal__cover-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(22px, 3vw, 34px);
  background: linear-gradient(155deg, #e6e9e3, #f7f8f5);
}

.home-journal__cover {
  display: block;
  width: 100%;
  max-width: 280px;
  height: auto;
  border: 1px solid rgb(33 41 63 / 12%);
  box-shadow: 0 15px 35px rgb(33 41 63 / 17%);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.home-journal__cover-link:hover .home-journal__cover {
  transform: translateY(-3px) rotate(-0.4deg);
  box-shadow: 0 19px 42px rgb(33 41 63 / 22%);
}

.home-journal__copy,
.home-journal__channel-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(28px, 4vw, 42px);
}

.home-journal__meta {
  margin: 0 0 14px;
  color: var(--lk-green);
  font-size: 0.75rem;
  font-weight: 850;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.home-journal h3 {
  margin-bottom: 14px;
  color: var(--lk-navy);
}

.home-journal__copy > p:not(.home-journal__meta),
.home-journal__channel-copy > p:not(.home-journal__meta) {
  color: var(--lk-muted);
}

.home-journal__copy .lk-button,
.home-journal__channel-copy .lk-button {
  margin-top: auto;
}

.home-journal__channel {
  display: flex;
  flex-direction: column;
}

.home-journal__channel-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 188px;
  padding: 32px;
  background:
    radial-gradient(circle at 85% 15%, rgb(120 152 67 / 18%), transparent 40%),
    var(--lk-surface-soft);
  border-bottom: 1px solid var(--lk-line);
}

.home-journal__channel-logo {
  display: block;
  width: min(100%, 420px);
  height: auto;
}

.home-journal__external-note {
  margin: 16px 0 0;
  font-size: 0.79rem;
  line-height: 1.45;
}

.home-cta {
  margin-top: var(--home-space);
  padding: clamp(42px, 7vw, 78px);
  color: rgb(255 255 255 / 82%);
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 38%), transparent 38%),
    var(--lk-blue-dark);
  border-radius: 16px;
}

.home-cta__content {
  max-width: 830px;
}

.home-cta h2,
.home-cta .home-kicker {
  color: var(--lk-white);
}

.lk-button--light {
  color: var(--lk-navy);
  background: var(--lk-white);
}

.lk-button--light:hover {
  color: var(--lk-navy);
  background: var(--lk-surface);
}

.lk-button--ghost {
  color: var(--lk-white);
  background: transparent;
  border-color: rgb(255 255 255 / 65%);
}

.lk-button--ghost:hover {
  color: var(--lk-navy);
  background: var(--lk-white);
  border-color: var(--lk-white);
}

@media (max-width: 950px) {
  .home-hero__grid,
  .home-about__grid {
    grid-template-columns: 1fr;
  }

  .home-journal__grid {
    grid-template-columns: 1fr;
  }

  .home-hero__panel {
    max-width: 620px;
  }

  .home-card-grid {
    grid-template-columns: 1fr;
  }

  .home-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .home-page {
    --home-space: 70px;
  }

  .home-hero,
  .home-signals,
  .home-about,
  .home-journal,
  .home-cta {
    margin-inline: -8px;
    padding: 30px 24px;
    border-radius: 12px;
  }

  .home-journal__head {
    align-items: flex-start;
    flex-direction: column;
  }

  .home-journal__brand {
    width: min(100%, 300px);
  }

  .home-journal__edition {
    grid-template-columns: 1fr;
  }

  .home-journal__cover {
    max-width: 290px;
  }

  .home-hero__grid {
    gap: 34px;
  }

  .home-actions,
  .lk-button {
    width: 100%;
  }

  .home-signal-grid,
  .home-process-grid {
    grid-template-columns: 1fr;
  }

  .home-process-grid {
    gap: 22px;
  }
}

/* Leistungsunterseiten */

.service-page {
  --service-space: clamp(82px, 10vw, 132px);
}

.service-shell {
  width: 100%;
  margin-inline: auto;
}

.service-shell--narrow {
  max-width: 900px;
}

.service-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--service-space);
  padding: clamp(42px, 6.5vw, 82px);
  background:
    linear-gradient(115deg, rgb(47 103 148 / 8%), transparent 52%),
    var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 20px;
  box-shadow: var(--lk-shadow);
}

.service-hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue) 0 48%, var(--lk-red) 48% 61%, var(--lk-gold) 61% 77%, var(--lk-green) 77%);
  content: "";
}

.service-hero__glow {
  position: absolute;
  top: -180px;
  right: -150px;
  width: 470px;
  height: 470px;
  background: radial-gradient(circle, rgb(120 152 67 / 18%), transparent 68%);
  border-radius: 50%;
  pointer-events: none;
}

.service-hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.72fr);
  align-items: center;
  gap: clamp(44px, 7vw, 90px);
}

.service-eyebrow,
.service-kicker {
  margin: 0 0 15px;
  color: var(--lk-blue-dark);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.service-hero h1 {
  max-width: 780px;
  margin-bottom: 18px;
}

.service-hero h1 em {
  color: var(--lk-blue-dark);
  font-style: normal;
}

.service-hero__lead {
  margin-bottom: 18px;
  color: var(--lk-navy);
  font-size: clamp(1.2rem, 2.2vw, 1.48rem);
  font-weight: 650;
  line-height: 1.4;
}

.service-hero__text {
  max-width: 720px;
  color: var(--lk-muted);
}

.service-hero__actions {
  display: flex;
  align-items: center;
  margin-top: 31px;
  gap: 19px;
  flex-wrap: wrap;
}

.service-textlink,
.service-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--lk-navy);
  font-weight: 750;
  text-decoration: none;
}

.service-textlink span,
.service-inline-link span {
  transition: transform 160ms ease;
}

.service-textlink:hover span {
  transform: translateY(3px);
}

.service-inline-link:hover span {
  transform: translateX(4px);
}

.service-facts {
  position: relative;
  padding: clamp(29px, 4vw, 43px);
  color: rgb(255 255 255 / 82%);
  background: var(--lk-navy);
  border-radius: 15px;
  box-shadow: 0 20px 55px rgb(33 41 63 / 19%);
}

.service-facts::after {
  content: none;
}

.service-facts__label {
  margin-bottom: 14px;
  color: var(--lk-white);
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.service-facts__price {
  display: flex;
  align-items: flex-start;
  margin-bottom: 25px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgb(255 255 255 / 15%);
  flex-direction: column;
  gap: 1px;
}

.service-facts__price strong {
  color: var(--lk-white);
  font-size: clamp(2.4rem, 4vw, 3.25rem);
  line-height: 1.05;
}

.service-facts__price span {
  color: rgb(255 255 255 / 65%);
  font-size: 0.9rem;
}

.service-benefits {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 13px;
}

.service-benefits li {
  position: relative;
  padding-left: 28px;
  line-height: 1.45;
}

.service-benefits li::before {
  position: absolute;
  top: 0.24em;
  left: 0;
  display: grid;
  width: 18px;
  height: 18px;
  color: var(--lk-white);
  background: var(--lk-green);
  border-radius: 50%;
  content: "✓";
  font-size: 0.7rem;
  font-weight: 900;
  line-height: 1;
  place-items: center;
}

.service-facts__note {
  position: relative;
  z-index: 1;
  margin: 25px 0 0;
  padding-top: 21px;
  border-top: 1px solid rgb(255 255 255 / 15%);
  font-size: 0.89rem;
  font-weight: 650;
}

.service-section {
  margin-bottom: var(--service-space);
}

.service-intro {
  text-align: center;
}

.service-intro h2 {
  margin-inline: auto;
}

.service-intro__lead {
  color: var(--lk-navy);
  font-size: clamp(1.1rem, 2vw, 1.28rem);
  font-weight: 600;
  line-height: 1.55;
}

.service-intro p:not(.service-kicker, .service-intro__lead) {
  color: var(--lk-muted);
}

.service-section--tint {
  padding: clamp(45px, 6vw, 75px);
  background: var(--lk-surface);
  border-radius: 18px;
}

.service-section__head {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.65fr);
  align-items: end;
  margin-bottom: clamp(35px, 5vw, 56px);
  gap: clamp(30px, 6vw, 80px);
}

.service-section__head h2 {
  margin-bottom: 0;
}

.service-section__head > p {
  margin-bottom: 5px;
  color: var(--lk-muted);
}

.service-section__head--center {
  display: block;
  max-width: 900px;
  margin-inline: auto;
  text-align: center;
}

.service-section__head--center > p {
  max-width: 800px;
  margin: 18px auto 0;
}

.service-occasion-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.service-occasion {
  min-height: 150px;
  padding: 24px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 10px;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.service-occasion:hover {
  border-color: rgb(47 103 148 / 38%);
  box-shadow: 0 10px 28px rgb(33 41 63 / 7%);
  transform: translateY(-2px);
}

.service-occasion span {
  display: block;
  margin-bottom: 23px;
  color: var(--lk-blue-dark);
  font-size: 0.73rem;
  font-weight: 850;
  letter-spacing: 0.1em;
}

.service-occasion h3 {
  margin: 0;
  font-size: clamp(1.08rem, 1.8vw, 1.28rem);
  line-height: 1.35;
}

.service-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.service-card {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  padding: clamp(27px, 3.5vw, 39px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 13px;
  box-shadow: 0 10px 35px rgb(33 41 63 / 6%);
}

.service-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: var(--lk-blue);
  content: "";
}

.service-card:nth-child(2)::before {
  background: var(--lk-gold);
}

.service-card--accent::before {
  background: var(--lk-green);
}

.service-card__number {
  display: grid;
  width: 42px;
  height: 42px;
  margin-bottom: 27px;
  color: var(--lk-blue-dark);
  background: rgb(47 103 148 / 9%);
  border-radius: 50%;
  font-size: 0.75rem;
  font-weight: 850;
  place-items: center;
}

.service-card:nth-child(2) .service-card__number {
  color: #786322;
  background: rgb(189 160 82 / 14%);
}

.service-card--accent .service-card__number {
  color: #4d6928;
  background: rgb(120 152 67 / 14%);
}

.service-card h3 {
  font-size: clamp(1.24rem, 2vw, 1.48rem);
}

.service-card p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.96rem;
}

.service-process {
  padding: clamp(50px, 7vw, 82px);
  background: linear-gradient(145deg, var(--lk-surface-soft), var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 18px;
}

.service-process-grid {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 0;
}

.service-process-grid li {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  padding: 29px 0;
  border-top: 1px solid var(--lk-line);
  gap: 24px;
}

.service-process-grid li:last-child {
  padding-bottom: 0;
}

.service-process__number {
  color: var(--lk-blue-dark);
  font-size: 1.05rem;
  font-weight: 850;
  letter-spacing: 0.08em;
}

.service-process-grid h3 {
  margin-bottom: 8px;
  font-size: clamp(1.22rem, 2vw, 1.48rem);
}

.service-process-grid p {
  max-width: 820px;
  margin-bottom: 0;
  color: var(--lk-muted);
}

.service-decision {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--service-space);
  padding: clamp(52px, 7vw, 87px);
  color: rgb(255 255 255 / 76%);
  background:
    radial-gradient(circle at 0 100%, rgb(47 103 148 / 38%), transparent 37%),
    var(--lk-navy);
  border-radius: 18px;
}

.service-decision::after {
  position: absolute;
  top: -105px;
  right: -80px;
  width: 280px;
  height: 280px;
  border: 1px solid rgb(255 255 255 / 8%);
  border-radius: 50%;
  content: "";
}

.service-decision__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.05fr);
  gap: clamp(40px, 8vw, 105px);
}

.service-decision h2,
.service-kicker--light {
  color: var(--lk-white);
}

.service-decision h2 {
  margin-bottom: 0;
}

.service-decision__copy p:last-of-type {
  margin-bottom: 27px;
}

.service-decision .service-inline-link {
  color: var(--lk-white);
}

.service-cta {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.8fr);
  overflow: hidden;
  background: var(--lk-surface);
  border: 1px solid var(--lk-line);
  border-radius: 18px;
  box-shadow: var(--lk-shadow);
}

.service-cta__main,
.service-cta__details {
  padding: clamp(37px, 5.5vw, 67px);
}

.service-cta__main {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
}

.service-cta__main > p:not(.service-kicker) {
  color: var(--lk-muted);
}

.service-cta__main .lk-button {
  margin-top: 13px;
}

.service-cta__details {
  color: rgb(255 255 255 / 76%);
  background: var(--lk-blue-dark);
  font-size: 0.93rem;
}

.service-cta__price {
  display: flex;
  margin-bottom: 26px;
  padding-bottom: 25px;
  border-bottom: 1px solid rgb(255 255 255 / 18%);
  flex-direction: column;
}

.service-cta__price strong {
  color: var(--lk-white);
  font-size: clamp(2.3rem, 4vw, 3.05rem);
  line-height: 1.1;
}

.service-cta__price span {
  max-width: 340px;
  margin-top: 6px;
  line-height: 1.4;
}

.service-cta__note {
  margin: 22px 0 0;
  padding: 18px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 10%);
  border-left: 3px solid var(--lk-gold);
  border-radius: 4px;
  font-weight: 650;
}

@media (max-width: 950px) {
  .service-hero__grid,
  .service-decision__grid,
  .service-cta {
    grid-template-columns: 1fr;
  }

  .service-facts {
    max-width: 620px;
  }

  .service-section__head {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 10px;
  }

  .service-occasion-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-card-grid {
    grid-template-columns: 1fr;
  }

  .service-card {
    min-height: auto;
  }

  .service-cta__details {
    padding-top: 45px;
  }
}

@media (max-width: 700px) {
  .service-page {
    --service-space: 72px;
  }

  .service-hero,
  .service-section--tint,
  .service-process,
  .service-decision {
    margin-inline: -8px;
    padding: 34px 24px;
    border-radius: 12px;
  }

  .service-hero {
    padding-top: 42px;
  }

  .service-hero__grid {
    gap: 36px;
  }

  .service-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .service-textlink {
    justify-content: center;
  }

  .service-facts {
    padding: 27px 23px;
  }

  .service-occasion-grid {
    grid-template-columns: 1fr;
  }

  .service-occasion {
    min-height: auto;
  }

  .service-process-grid li {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
  }

  .service-decision__grid {
    gap: 31px;
  }

  .service-cta {
    margin-inline: -8px;
    border-radius: 12px;
  }

  .service-cta__main,
  .service-cta__details {
    padding: 34px 24px;
  }
}

/* Beratung & Nachteilsausgleich */

.advice-page .service-hero {
  background:
    radial-gradient(circle at 100% 0%, rgb(189 160 82 / 18%), transparent 31%),
    linear-gradient(120deg, rgb(47 103 148 / 8%), transparent 55%),
    var(--lk-surface-soft);
}

.advice-page .service-hero h1 em {
  color: var(--lk-red);
}

.advice-facts {
  background: linear-gradient(145deg, var(--lk-blue-dark), var(--lk-navy));
}

.advice-facts h2 {
  margin-bottom: 0;
  color: var(--lk-white);
  font-size: clamp(1.7rem, 3vw, 2.3rem);
}

.advice-facts .service-benefits {
  margin-top: 28px;
  padding-top: 27px;
  border-top: 1px solid rgb(255 255 255 / 15%);
}

.advice-definition {
  background:
    radial-gradient(circle at 0 100%, rgb(182 66 76 / 24%), transparent 37%),
    var(--lk-navy);
}

.advice-quote {
  margin: 28px 0 0;
  padding: 19px 22px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 9%);
  border-left: 3px solid var(--lk-gold);
  border-radius: 4px;
  font-size: 1.03rem;
  font-weight: 700;
  line-height: 1.55;
}

.advice-relevance-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.advice-relevance-card {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  min-height: 190px;
  padding: clamp(26px, 3.5vw, 38px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 8px 28px rgb(33 41 63 / 5%);
  gap: 19px;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.advice-relevance-card:hover {
  border-color: rgb(182 66 76 / 34%);
  box-shadow: 0 13px 35px rgb(33 41 63 / 8%);
  transform: translateY(-2px);
}

.advice-relevance-card > span {
  display: grid;
  width: 44px;
  height: 44px;
  color: var(--lk-red);
  background: rgb(182 66 76 / 9%);
  border-radius: 50%;
  font-size: 0.77rem;
  font-weight: 850;
  place-items: center;
}

.advice-relevance-card h3 {
  margin-bottom: 9px;
  font-size: clamp(1.17rem, 1.9vw, 1.4rem);
  line-height: 1.35;
}

.advice-relevance-card p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.94rem;
}

.advice-diagnostic-link {
  margin: 28px 0 0;
  text-align: right;
}

.advice-results {
  background: linear-gradient(145deg, var(--lk-blue-dark), var(--lk-navy));
}

.advice-results__label {
  margin-bottom: 25px;
  color: var(--lk-white);
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.advice-results .service-benefits {
  gap: 16px;
}

@media (max-width: 800px) {
  .advice-relevance-grid {
    grid-template-columns: 1fr;
  }

  .advice-relevance-card {
    min-height: auto;
  }
}

@media (max-width: 500px) {
  .advice-relevance-card {
    grid-template-columns: 1fr;
  }

  .advice-diagnostic-link {
    text-align: left;
  }
}

/* Förderung / Lerntherapie */

.therapy-page .service-hero {
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 22%), transparent 33%),
    linear-gradient(120deg, rgb(47 103 148 / 7%), transparent 56%),
    var(--lk-surface-soft);
}

.therapy-page .service-hero h1 em {
  color: var(--lk-green);
}

.therapy-hero__goal {
  max-width: 700px;
  margin: 22px 0 0;
  padding-left: 18px;
  color: var(--lk-navy);
  border-left: 3px solid var(--lk-green);
  font-weight: 650;
}

.therapy-facts {
  background: linear-gradient(145deg, #334b45, var(--lk-navy));
}

.therapy-facts h2 {
  margin-bottom: 0;
  color: var(--lk-white);
  font-size: clamp(1.65rem, 3vw, 2.2rem);
}

.therapy-facts .service-benefits {
  margin-top: 28px;
  padding-top: 27px;
  border-top: 1px solid rgb(255 255 255 / 15%);
}

.therapy-principle {
  background:
    radial-gradient(circle at 0 100%, rgb(120 152 67 / 30%), transparent 38%),
    var(--lk-navy);
}

.therapy-focus-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.therapy-focus-card {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  min-height: 190px;
  padding: clamp(26px, 3.5vw, 38px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 8px 28px rgb(33 41 63 / 5%);
  gap: 19px;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.therapy-focus-card:hover {
  border-color: rgb(120 152 67 / 45%);
  box-shadow: 0 13px 35px rgb(33 41 63 / 8%);
  transform: translateY(-2px);
}

.therapy-focus-card > span {
  display: grid;
  width: 46px;
  height: 46px;
  color: #506c2a;
  background: rgb(120 152 67 / 13%);
  border-radius: 50%;
  font-size: 0.75rem;
  font-weight: 850;
  place-items: center;
}

.therapy-focus-card h3 {
  margin-bottom: 9px;
  font-size: clamp(1.17rem, 1.9vw, 1.4rem);
  line-height: 1.35;
}

.therapy-focus-card p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.94rem;
}

.therapy-results {
  background: linear-gradient(145deg, #385149, var(--lk-navy));
}

.therapy-results__label {
  margin-bottom: 25px;
  color: var(--lk-white);
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.therapy-results .service-benefits {
  gap: 16px;
}

@media (max-width: 800px) {
  .therapy-focus-grid {
    grid-template-columns: 1fr;
  }

  .therapy-focus-card {
    min-height: auto;
  }
}

@media (max-width: 500px) {
  .therapy-focus-card {
    grid-template-columns: 1fr;
  }
}

/* Über die Praxis */

.practice-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--service-space);
  padding: clamp(42px, 6.5vw, 82px);
  background:
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 15%), transparent 33%),
    linear-gradient(125deg, var(--lk-surface-soft), var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 20px;
  box-shadow: var(--lk-shadow);
}

.practice-hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue) 0 48%, var(--lk-red) 48% 61%, var(--lk-gold) 61% 77%, var(--lk-green) 77%);
  content: "";
}

.practice-hero__glow {
  position: absolute;
  right: -130px;
  bottom: -200px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgb(189 160 82 / 15%), transparent 67%);
  border-radius: 50%;
  pointer-events: none;
}

.practice-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(310px, 0.72fr);
  align-items: center;
  gap: clamp(46px, 8vw, 105px);
}

.practice-hero h1 {
  margin-bottom: 19px;
}

.practice-hero h1 em {
  color: var(--lk-blue-dark);
  font-style: normal;
}

.practice-hero__lead {
  max-width: 740px;
  color: var(--lk-navy);
  font-size: clamp(1.2rem, 2.2vw, 1.48rem);
  font-weight: 700;
  line-height: 1.42;
}

.practice-hero__text {
  max-width: 720px;
  color: var(--lk-muted);
}

.practice-portrait {
  margin: 0;
}

.practice-portrait__frame {
  position: relative;
  overflow: hidden;
  min-height: 510px;
  background:
    linear-gradient(155deg, rgb(47 103 148 / 12%), rgb(120 152 67 / 10%)),
    var(--lk-surface);
  border: 1px solid var(--lk-line);
  border-radius: 15px;
  box-shadow: 0 20px 55px rgb(33 41 63 / 14%);
}

.practice-portrait__frame::after {
  position: absolute;
  right: -44px;
  bottom: -44px;
  width: 150px;
  height: 150px;
  border: 1px solid rgb(33 41 63 / 10%);
  border-radius: 50%;
  content: "";
}

.practice-portrait img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.practice-portrait__badge {
  position: absolute;
  z-index: 2;
  top: 24px;
  left: 24px;
  display: flex;
  width: 116px;
  height: 116px;
  align-items: center;
  justify-content: center;
  padding: 13px;
  color: var(--lk-white);
  background: var(--lk-navy);
  border: 4px solid rgb(255 255 255 / 70%);
  border-radius: 50%;
  box-shadow: 0 10px 25px rgb(33 41 63 / 18%);
  font-size: 0.66rem;
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
  flex-direction: column;
}

.practice-portrait__badge strong {
  color: var(--lk-white);
  font-size: 1.75rem;
  line-height: 1;
}

.practice-portrait figcaption {
  display: flex;
  padding: 18px 6px 0;
  color: var(--lk-muted);
  font-size: 0.88rem;
  flex-direction: column;
}

.practice-portrait figcaption strong {
  color: var(--lk-navy);
  font-size: 1.05rem;
}

.practice-about__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
  gap: clamp(40px, 8vw, 100px);
}

.practice-about__copy {
  color: var(--lk-muted);
  font-size: 1.06rem;
}

.practice-milestones {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: clamp(42px, 6vw, 70px);
  border-top: 1px solid var(--lk-line);
  border-bottom: 1px solid var(--lk-line);
}

.practice-milestones article {
  padding: 31px clamp(20px, 3vw, 34px);
  border-right: 1px solid var(--lk-line);
}

.practice-milestones article:last-child {
  border-right: 0;
}

.practice-milestones span {
  display: block;
  margin-bottom: 11px;
  color: var(--lk-blue-dark);
  font-size: 0.76rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.09em;
}

.practice-milestones strong {
  display: block;
  margin-bottom: 7px;
  color: var(--lk-navy);
  font-size: 1.16rem;
}

.practice-milestones p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.9rem;
}

.practice-principle {
  background:
    radial-gradient(circle at 0 100%, rgb(189 160 82 / 25%), transparent 38%),
    var(--lk-navy);
}

.practice-quote {
  margin: 28px 0 0;
  padding: 20px 23px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 9%);
  border-left: 3px solid var(--lk-gold);
  border-radius: 4px;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.55;
}

.practice-building-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 17px;
}

.practice-building-card {
  position: relative;
  overflow: hidden;
  display: flex;
  min-height: 320px;
  padding: clamp(28px, 4vw, 42px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 13px;
  box-shadow: 0 10px 32px rgb(33 41 63 / 6%);
  flex-direction: column;
}

.practice-building-card::after {
  position: absolute;
  right: -34px;
  bottom: -34px;
  width: 115px;
  height: 115px;
  background: rgb(47 103 148 / 5%);
  border-radius: 50%;
  content: "";
}

.practice-building-card:nth-child(2)::after {
  background: rgb(189 160 82 / 8%);
}

.practice-building-card:nth-child(3)::after {
  background: rgb(120 152 67 / 8%);
}

.practice-building-card__mark {
  display: grid;
  width: 49px;
  height: 49px;
  margin-bottom: 29px;
  color: var(--lk-white);
  background: var(--lk-blue-dark);
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 850;
  place-items: center;
}

.practice-building-card__logo {
  display: flex;
  height: 86px;
  align-items: center;
  margin-bottom: 25px;
  padding: 10px 14px;
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 8px;
}

.practice-building-card__logo img {
  display: block;
  width: 100%;
  max-height: 64px;
  object-fit: contain;
  object-position: left center;
}

.practice-building-card:nth-child(2) .practice-building-card__mark {
  background: #8a7335;
}

.practice-building-card:nth-child(3) .practice-building-card__mark {
  background: #5c7834;
}

.practice-building-card__type {
  margin-bottom: 9px;
  color: var(--lk-muted);
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.practice-building-card h3 {
  font-size: clamp(1.35rem, 2.3vw, 1.7rem);
}

.practice-building-card > p:last-child {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-building-card .home-text-link {
  position: relative;
  z-index: 1;
  margin-top: auto;
}

.practice-expectation-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 13px;
}

.practice-expectation-list li {
  display: grid;
  grid-template-columns: 47px minmax(0, 1fr);
  align-items: center;
  min-height: 112px;
  padding: 22px 25px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 9px;
  gap: 16px;
}

.practice-expectation-list span {
  color: var(--lk-blue-dark);
  font-size: 0.75rem;
  font-weight: 850;
}

.practice-expectation-list strong {
  color: var(--lk-navy);
  font-size: 1.02rem;
  line-height: 1.45;
}

.practice-insight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
}

.practice-insight-grid article {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  padding: 28px;
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 10px;
  gap: 17px;
}

.practice-insight-grid article > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.practice-insight-grid .home-text-link {
  margin-top: auto;
  padding-top: 12px;
}

.practice-insight-grid article > span {
  display: grid;
  width: 42px;
  height: 42px;
  color: var(--lk-blue-dark);
  background: rgb(47 103 148 / 9%);
  border-radius: 50%;
  font-size: 0.78rem;
  font-weight: 850;
  place-items: center;
}

.practice-insight-grid h3 {
  margin-bottom: 6px;
  font-size: 1.2rem;
}

.practice-insight-grid p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.92rem;
}

.practice-closing__aside {
  background: linear-gradient(145deg, var(--lk-blue-dark), var(--lk-navy));
}

.practice-closing__label {
  margin-bottom: 25px;
  color: var(--lk-white);
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.practice-closing__triad {
  display: grid;
  gap: 11px;
}

.practice-closing__triad span {
  display: block;
  padding: 13px 16px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 8%);
  border-left: 3px solid var(--lk-green);
  border-radius: 4px;
  font-weight: 650;
}

.practice-closing__triad span:nth-child(2) {
  border-left-color: var(--lk-gold);
}

.practice-closing__triad span:nth-child(3) {
  border-left-color: var(--lk-red);
}

@media (max-width: 950px) {
  .practice-hero__grid,
  .practice-about__grid {
    grid-template-columns: 1fr;
  }

  .practice-portrait {
    max-width: 510px;
  }

  .practice-building-grid,
  .practice-insight-grid {
    grid-template-columns: 1fr;
  }

  .practice-building-card {
    min-height: auto;
  }
}

@media (max-width: 700px) {
  .practice-hero {
    margin-inline: -8px;
    padding: 42px 24px 34px;
    border-radius: 12px;
  }

  .practice-hero__grid {
    gap: 37px;
  }

  .practice-portrait__frame {
    min-height: 440px;
  }

  .practice-portrait__badge {
    top: 18px;
    left: 18px;
    width: 100px;
    height: 100px;
  }

  .practice-milestones {
    grid-template-columns: 1fr;
  }

  .practice-milestones article {
    border-right: 0;
    border-bottom: 1px solid var(--lk-line);
  }

  .practice-milestones article:last-child {
    border-bottom: 0;
  }

  .practice-expectation-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 450px) {
  .practice-portrait__frame {
    min-height: 385px;
  }

  .practice-insight-grid article {
    grid-template-columns: 1fr;
  }
}

/* Unterseiten von „Über die Praxis“ */

.practice-detail {
  --detail-accent: var(--lk-blue);
  --detail-accent-rgb: 47 103 148;
  --detail-space: clamp(82px, 10vw, 132px);
}

.practice-detail--mesh {
  --detail-accent: var(--lk-green);
  --detail-accent-rgb: 120 152 67;
}

.practice-detail--math {
  --detail-accent: var(--lk-gold);
  --detail-accent-rgb: 189 160 82;
}

.practice-detail--live,
.practice-detail--prices {
  --detail-accent: var(--lk-blue);
  --detail-accent-rgb: 47 103 148;
}

.practice-detail--press {
  --detail-accent: var(--lk-red);
  --detail-accent-rgb: 182 66 76;
}

.practice-detail--feedback {
  --detail-accent: var(--lk-green);
  --detail-accent-rgb: 120 152 67;
}

.practice-detail__back {
  margin: 0 0 22px;
}

.practice-detail__back a {
  color: var(--lk-blue-dark);
  font-size: 0.88rem;
  font-weight: 750;
  text-decoration: none;
}

.practice-detail__back a:hover {
  text-decoration: underline;
}

.practice-detail__hero {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  align-items: center;
  margin-bottom: var(--detail-space);
  padding: clamp(38px, 6vw, 70px);
  background:
    radial-gradient(circle at 100% 0%, rgb(var(--detail-accent-rgb) / 16%), transparent 34%),
    linear-gradient(135deg, var(--lk-surface-soft), var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 19px;
  box-shadow: var(--lk-shadow);
  gap: clamp(42px, 7vw, 90px);
}

.practice-detail__hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--detail-accent), var(--lk-blue-dark));
  content: "";
}

.practice-detail__hero--text {
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.55fr);
}

.practice-detail__hero-copy {
  position: relative;
  z-index: 1;
}

.practice-detail__kicker,
.practice-detail__meta {
  margin: 0 0 13px;
  color: var(--detail-accent);
  font-size: 0.75rem;
  font-weight: 850;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.11em;
}

.practice-detail__hero h1 {
  margin-bottom: 21px;
}

.practice-detail__lead {
  max-width: 760px;
  color: var(--lk-navy);
  font-size: clamp(1.16rem, 2.1vw, 1.4rem);
  line-height: 1.46;
}

.practice-detail__hero-copy > p:last-child {
  max-width: 720px;
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__hero-media {
  position: relative;
  z-index: 1;
  display: flex;
  overflow: hidden;
  min-height: 265px;
  align-items: center;
  justify-content: center;
  padding: clamp(24px, 4vw, 42px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: 0 18px 48px rgb(33 41 63 / 12%);
}

.practice-detail__hero-media--logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 245px;
  object-fit: contain;
}

.practice-detail__hero-media--stack {
  min-height: 0;
  padding: 0;
  flex-direction: column;
}

.practice-detail__brand-logo {
  width: min(82%, 380px);
  height: auto;
  margin: 26px auto;
}

.practice-detail__photo {
  display: block;
  width: 100%;
  height: 210px;
  border-top: 1px solid var(--lk-line);
  object-fit: cover;
}

.practice-detail__hero-fact {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 220px;
  align-items: flex-start;
  justify-content: flex-end;
  padding: clamp(28px, 4vw, 42px);
  color: rgb(255 255 255 / 76%);
  background: var(--lk-navy);
  border-radius: 14px;
  box-shadow: 0 18px 48px rgb(33 41 63 / 16%);
  flex-direction: column;
}

.practice-detail__hero-fact strong {
  display: block;
  margin-bottom: 10px;
  color: var(--lk-white);
  font-size: clamp(1.7rem, 3.3vw, 2.7rem);
  line-height: 1.04;
}

.practice-detail__hero-fact span {
  font-weight: 650;
  line-height: 1.5;
}

.practice-detail__hero-fact--price strong {
  font-size: clamp(3rem, 6vw, 5rem);
}

.practice-detail__section,
.practice-detail__split,
.practice-detail__highlight,
.practice-detail__download,
.practice-detail__pricing-grid,
.practice-detail__cta,
.practice-detail__footnotes {
  margin-top: var(--detail-space);
}

.practice-detail__intro {
  display: grid;
  grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
  gap: clamp(38px, 8vw, 100px);
}

.practice-detail__intro > div:last-child {
  color: var(--lk-muted);
  font-size: 1.06rem;
}

.practice-detail__section-head {
  max-width: 820px;
  margin-bottom: clamp(34px, 5vw, 52px);
}

.practice-detail__card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 17px;
}

.practice-detail__card {
  position: relative;
  overflow: hidden;
  min-height: 270px;
  padding: clamp(25px, 3vw, 34px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 9px 30px rgb(33 41 63 / 6%);
}

.practice-detail__card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: var(--detail-accent);
  content: "";
}

.practice-detail__card > span {
  display: block;
  margin-bottom: 27px;
  color: var(--detail-accent);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.1em;
}

.practice-detail__card h3 {
  font-size: 1.23rem;
}

.practice-detail__card p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.93rem;
}

.practice-detail__highlight {
  display: grid;
  grid-template-columns: minmax(250px, 0.78fr) minmax(0, 1.22fr);
  align-items: start;
  padding: clamp(36px, 6vw, 64px);
  color: rgb(255 255 255 / 78%);
  background:
    radial-gradient(circle at 0 100%, rgb(var(--detail-accent-rgb) / 34%), transparent 42%),
    var(--lk-navy);
  border-radius: 15px;
  gap: clamp(38px, 8vw, 92px);
}

.practice-detail__highlight h2,
.practice-detail__highlight .practice-detail__kicker {
  color: var(--lk-white);
}

.practice-detail__checklist {
  margin: 0;
  padding: 0;
  list-style: none;
}

.practice-detail__checklist li {
  position: relative;
  padding: 12px 0 12px 31px;
  border-top: 1px solid currentcolor;
  border-color: rgb(255 255 255 / 13%);
  line-height: 1.45;
}

.practice-detail__checklist li::before {
  position: absolute;
  top: 12px;
  left: 2px;
  color: #a6c36b;
  content: "✓";
  font-weight: 900;
}

.practice-detail__section .practice-detail__checklist li {
  color: var(--lk-muted);
  border-color: var(--lk-line);
}

.practice-detail__section .practice-detail__checklist li::before {
  color: var(--detail-accent);
}

.practice-detail__checklist--columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 34px;
}

.practice-detail__legal,
.practice-detail__source-note {
  max-width: 930px;
  margin: 28px 0 0;
  color: var(--lk-muted);
  font-size: 0.82rem;
  line-height: 1.55;
}

.practice-detail__source-note {
  margin-top: 28px;
  margin-bottom: var(--detail-space);
  padding: 17px 20px;
  background: var(--lk-surface-soft);
  border-left: 3px solid var(--detail-accent);
  border-radius: 4px;
}

.practice-detail__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 22px;
}

.practice-detail__steps li {
  padding: 28px;
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 11px;
}

.practice-detail__steps span {
  display: block;
  margin-bottom: 25px;
  color: var(--detail-accent);
  font-size: 1.7rem;
  font-weight: 300;
}

.practice-detail__steps p {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.practice-detail__split article {
  padding: clamp(32px, 5vw, 52px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 4px solid var(--detail-accent);
  border-radius: 12px;
  box-shadow: 0 9px 30px rgb(33 41 63 / 6%);
}

.practice-detail__split p:last-child {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__download {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(30px, 5vw, 52px);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 13px;
  gap: 30px;
}

.practice-detail__download > div {
  max-width: 720px;
}

.practice-detail__download p:last-child {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(38px, 6vw, 66px);
  color: rgb(255 255 255 / 80%);
  background:
    radial-gradient(circle at 100% 0%, rgb(var(--detail-accent-rgb) / 40%), transparent 42%),
    var(--lk-blue-dark);
  border-radius: 15px;
  gap: 40px;
}

.practice-detail__cta > div:first-child {
  max-width: 790px;
}

.practice-detail__cta h2,
.practice-detail__cta .practice-detail__kicker {
  color: var(--lk-white);
}

.practice-detail__cta p:last-child {
  margin-bottom: 0;
}

.practice-detail__cta-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.practice-detail__nav {
  margin-top: 42px;
  padding: 26px 0 0;
  border-top: 1px solid var(--lk-line);
}

.practice-detail__nav-label {
  margin-bottom: 13px;
  color: var(--lk-muted);
  font-size: 0.73rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.practice-detail__nav > div {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
}

.practice-detail__nav a {
  padding: 8px 12px;
  color: var(--lk-blue-dark);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 6px;
  font-size: 0.84rem;
  font-weight: 700;
  text-decoration: none;
}

.practice-detail__nav a:hover {
  color: var(--lk-white);
  background: var(--lk-blue-dark);
  border-color: var(--lk-blue-dark);
}

.practice-detail__timeline {
  position: relative;
  display: grid;
  gap: 17px;
}

.practice-detail__timeline::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 93px;
  width: 1px;
  background: var(--lk-line);
  content: "";
}

.practice-detail__timeline article {
  position: relative;
  display: grid;
  grid-template-columns: 94px minmax(0, 1fr);
  gap: 27px;
}

.practice-detail__timeline time {
  padding-top: 29px;
  color: var(--detail-accent);
  font-size: 0.78rem;
  font-weight: 850;
}

.practice-detail__timeline article > div {
  position: relative;
  padding: 27px 31px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 10px;
  box-shadow: 0 7px 24px rgb(33 41 63 / 5%);
}

.practice-detail__timeline article > div::before {
  position: absolute;
  top: 34px;
  left: -33px;
  width: 11px;
  height: 11px;
  background: var(--detail-accent);
  border: 3px solid var(--lk-white);
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--lk-line);
  content: "";
}

.practice-detail__timeline h3 {
  margin-bottom: 9px;
}

.practice-detail__timeline p:not(.practice-detail__meta) {
  color: var(--lk-muted);
}

.practice-detail__timeline .home-text-link {
  margin-top: 0;
}

.practice-detail__quote-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.practice-detail__quote-grid blockquote {
  position: relative;
  margin: 0;
  padding: clamp(31px, 4vw, 45px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 8px 28px rgb(33 41 63 / 6%);
}

.practice-detail__quote-grid blockquote::before {
  display: block;
  margin-bottom: 20px;
  color: var(--detail-accent);
  content: "“";
  font-family: Georgia, serif;
  font-size: 3.6rem;
  line-height: 0.6;
}

.practice-detail__quote-grid blockquote p {
  color: var(--lk-navy);
  font-size: 1.16rem;
  font-weight: 700;
  line-height: 1.55;
}

.practice-detail__quote-grid footer {
  color: var(--lk-muted);
  font-size: 0.83rem;
  line-height: 1.45;
}

.practice-detail__highlight--quotes {
  align-items: start;
}

.practice-detail__short-quotes {
  display: grid;
  gap: 8px;
}

.practice-detail__short-quotes p {
  margin: 0;
  padding: 12px 15px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 8%);
  border-left: 3px solid var(--detail-accent);
  border-radius: 4px;
}

.practice-detail__pricing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.practice-detail__price-card {
  padding: clamp(29px, 4vw, 42px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 4px solid var(--detail-accent);
  border-radius: 12px;
  box-shadow: 0 8px 28px rgb(33 41 63 / 6%);
}

.practice-detail__price-card--featured {
  color: rgb(255 255 255 / 78%);
  background: var(--lk-navy);
  border-color: var(--lk-navy);
  border-top-color: var(--lk-green);
}

.practice-detail__price-card--featured h2,
.practice-detail__price-card--featured .practice-detail__price,
.practice-detail__price-card--featured .practice-detail__meta {
  color: var(--lk-white);
}

.practice-detail__price-card p:last-child {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__price-card--featured p:last-child {
  color: rgb(255 255 255 / 70%);
}

.practice-detail__price {
  display: flex;
  align-items: baseline;
  margin: 22px 0 18px;
  color: var(--lk-navy);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 850;
  line-height: 1;
  gap: 10px;
  flex-wrap: wrap;
}

.practice-detail__price span {
  font-size: 0.78rem;
  font-weight: 650;
  line-height: 1.35;
}

.practice-detail__price sup {
  font-size: 0.5em;
}

.practice-detail__two-lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 42px;
}

.practice-detail__notice {
  margin-top: 34px;
  padding: 26px 29px;
  background: var(--lk-surface-soft);
  border-left: 4px solid var(--detail-accent);
  border-radius: 6px;
}

.practice-detail__notice p:last-child,
.practice-detail__wide-copy {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-detail__plain-list {
  margin: 13px 0 0;
  padding-left: 20px;
  color: var(--lk-muted);
}

.practice-detail__plain-list li + li {
  margin-top: 6px;
}

.practice-detail__footnotes {
  padding-top: 28px;
  color: var(--lk-muted);
  border-top: 1px solid var(--lk-line);
  font-size: 0.8rem;
  line-height: 1.5;
}

.practice-detail__footnotes p {
  margin-bottom: 8px;
}

@media (max-width: 1050px) {
  .practice-detail__card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 950px) {
  .practice-detail__hero,
  .practice-detail__hero--text,
  .practice-detail__intro,
  .practice-detail__highlight {
    grid-template-columns: 1fr;
  }

  .practice-detail__hero-media,
  .practice-detail__hero-fact {
    max-width: 650px;
  }

  .practice-detail__steps {
    grid-template-columns: 1fr;
  }

  .practice-detail__cta,
  .practice-detail__download {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 700px) {
  .practice-detail {
    --detail-space: 72px;
  }

  .practice-detail__hero,
  .practice-detail__highlight,
  .practice-detail__cta {
    margin-inline: -8px;
    padding: 34px 24px;
    border-radius: 12px;
  }

  .practice-detail__card-grid,
  .practice-detail__split,
  .practice-detail__quote-grid,
  .practice-detail__pricing-grid,
  .practice-detail__two-lists,
  .practice-detail__checklist--columns {
    grid-template-columns: 1fr;
  }

  .practice-detail__card {
    min-height: 0;
  }

  .practice-detail__timeline::before {
    left: 6px;
  }

  .practice-detail__timeline article {
    grid-template-columns: 1fr;
    padding-left: 27px;
    gap: 7px;
  }

  .practice-detail__timeline time {
    padding-top: 0;
  }

  .practice-detail__timeline article > div::before {
    top: 27px;
    left: -27px;
  }

  .practice-detail__cta-actions,
  .practice-detail__cta-actions .lk-button,
  .practice-detail__cta > .lk-button,
  .practice-detail__download > .lk-button {
    width: 100%;
  }
}

/* Kontakt */

.contact-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--service-space);
  padding: clamp(42px, 6.5vw, 82px);
  background:
    radial-gradient(circle at 100% 0%, rgb(182 66 76 / 14%), transparent 32%),
    linear-gradient(125deg, var(--lk-surface-soft), var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 20px;
  box-shadow: var(--lk-shadow);
}

.contact-hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue) 0 48%, var(--lk-red) 48% 61%, var(--lk-gold) 61% 77%, var(--lk-green) 77%);
  content: "";
}

.contact-hero__glow {
  position: absolute;
  right: -150px;
  bottom: -170px;
  width: 470px;
  height: 470px;
  background: radial-gradient(circle, rgb(47 103 148 / 14%), transparent 68%);
  border-radius: 50%;
  pointer-events: none;
}

.contact-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.75fr);
  align-items: center;
  gap: clamp(45px, 8vw, 100px);
}

.contact-hero h1 {
  max-width: 750px;
  margin-bottom: 19px;
}

.contact-hero h1 em {
  color: var(--lk-red);
  font-style: normal;
}

.contact-hero__lead {
  max-width: 710px;
  color: var(--lk-navy);
  font-size: clamp(1.18rem, 2.1vw, 1.43rem);
  font-weight: 700;
  line-height: 1.45;
}

.contact-hero__text {
  max-width: 700px;
  color: var(--lk-muted);
}

.contact-hero__content .lk-button {
  margin-top: 17px;
}

.contact-panel {
  padding: clamp(29px, 4vw, 42px);
  color: rgb(255 255 255 / 76%);
  background: linear-gradient(145deg, var(--lk-blue-dark), var(--lk-navy));
  border-radius: 15px;
  box-shadow: 0 20px 55px rgb(33 41 63 / 18%);
}

.contact-panel__label {
  margin-bottom: 24px;
  color: var(--lk-white);
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.contact-detail {
  display: grid;
  grid-template-columns: 43px minmax(0, 1fr);
  align-items: center;
  padding: 17px 0;
  color: var(--lk-white);
  border-top: 1px solid rgb(255 255 255 / 14%);
  text-decoration: none;
  gap: 15px;
}

.contact-detail:hover {
  color: var(--lk-white);
}

.contact-detail__mark {
  display: grid;
  width: 38px;
  height: 38px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 10%);
  border: 1px solid rgb(255 255 255 / 13%);
  border-radius: 50%;
  font-size: 0.74rem;
  font-weight: 850;
  place-items: center;
}

.contact-detail small,
.contact-detail strong {
  display: block;
}

.contact-detail small {
  margin-bottom: 2px;
  color: rgb(255 255 255 / 58%);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.contact-detail strong {
  color: var(--lk-white);
  font-size: 1.02rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.contact-panel__note {
  margin: 22px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgb(255 255 255 / 14%);
  font-size: 0.88rem;
  font-weight: 650;
}

.contact-process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 16px;
}

.contact-process-grid li {
  padding: clamp(27px, 4vw, 40px);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 11px;
}

.contact-process-grid > li > span {
  display: block;
  margin-bottom: 28px;
  color: var(--lk-blue-dark);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.1em;
}

.contact-process-grid h3 {
  font-size: clamp(1.2rem, 2vw, 1.43rem);
  line-height: 1.35;
}

.contact-process-grid p {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.contact-trust {
  background:
    radial-gradient(circle at 0 100%, rgb(182 66 76 / 25%), transparent 38%),
    var(--lk-navy);
}

.contact-trust__list {
  display: grid;
  gap: 11px;
}

.contact-trust__list p {
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  margin: 0;
  padding: 14px 16px;
  color: rgb(255 255 255 / 82%);
  background: rgb(255 255 255 / 7%);
  border-radius: 5px;
  gap: 10px;
}

.contact-trust__list span {
  display: grid;
  width: 21px;
  height: 21px;
  color: var(--lk-white);
  background: var(--lk-green);
  border-radius: 50%;
  font-size: 0.7rem;
  font-weight: 850;
  place-items: center;
}

.contact-location__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.8fr);
  overflow: hidden;
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 16px;
  box-shadow: var(--lk-shadow);
}

.contact-location__card {
  padding: clamp(38px, 6vw, 72px);
}

.contact-location__card > p:not(.service-kicker) {
  color: var(--lk-muted);
}

.contact-location address {
  margin: 24px 0;
  color: var(--lk-navy);
  font-style: normal;
  line-height: 1.65;
}

.contact-location__visual {
  position: relative;
  display: grid;
  min-height: 390px;
  overflow: hidden;
  color: var(--lk-white);
  background:
    radial-gradient(circle at 25% 20%, rgb(255 255 255 / 11%), transparent 24%),
    linear-gradient(145deg, var(--lk-blue-dark), var(--lk-navy));
  place-items: center;
}

.contact-location__visual::before,
.contact-location__visual::after {
  position: absolute;
  width: 330px;
  height: 330px;
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: 48% 52% 41% 59%;
  content: "";
  transform: rotate(24deg);
}

.contact-location__visual::after {
  width: 230px;
  height: 230px;
  transform: rotate(-18deg);
}

.contact-location__pin {
  position: relative;
  z-index: 1;
  width: 42px;
  height: 42px;
  margin-bottom: -95px;
  background: var(--lk-red);
  border: 7px solid var(--lk-white);
  border-radius: 50% 50% 50% 0;
  box-shadow: 0 8px 20px rgb(0 0 0 / 22%);
  transform: rotate(-45deg);
}

.contact-location__visual p {
  position: relative;
  z-index: 1;
  margin: 70px 0 0;
  text-align: center;
}

.contact-location__visual strong,
.contact-location__visual small {
  display: block;
  color: var(--lk-white);
}

.contact-location__visual strong {
  font-size: 1.6rem;
}

.contact-location__visual small {
  color: rgb(255 255 255 / 63%);
  font-size: 0.9rem;
}

.contact-form-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.65fr);
  align-items: end;
  margin-bottom: 26px;
  padding-top: 8px;
  gap: clamp(35px, 7vw, 90px);
}

.contact-form-intro h2 {
  margin-bottom: 12px;
}

.contact-form-intro > div > p:last-child,
.contact-form-intro__privacy {
  color: var(--lk-muted);
}

.contact-form-intro__privacy {
  margin-bottom: 6px;
  font-size: 0.9rem;
}

#main .ce_form {
  margin-bottom: var(--service-space, 100px);
  padding: clamp(30px, 5vw, 58px);
  background: var(--lk-surface);
  border: 1px solid var(--lk-line);
  border-radius: 16px;
  box-shadow: var(--lk-shadow);
}

#main .ce_form form {
  margin: 0;
}

#main .ce_form .formbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 23px 20px;
}

#main .ce_form .widget {
  margin: 0;
}

#main .ce_form .widget-textarea,
#main .ce_form .widget-checkbox,
#main .ce_form .widget-submit,
#main .ce_form .formbody > .error,
#main .ce_form .form-confirmation {
  grid-column: 1 / -1;
}

#main .ce_form label,
#main .ce_form legend {
  display: block;
  margin-bottom: 8px;
  color: var(--lk-navy);
  font-size: 0.93rem;
  font-weight: 750;
}

#main .ce_form input[type="text"],
#main .ce_form input[type="email"],
#main .ce_form input[type="tel"],
#main .ce_form textarea {
  width: 100%;
  min-height: 52px;
  padding: 13px 15px;
  color: var(--lk-ink);
  background: var(--lk-white);
  border: 1px solid #cfd5d2;
  border-radius: 6px;
  font: inherit;
  line-height: 1.4;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

#main .ce_form textarea {
  min-height: 160px;
  resize: vertical;
}

#main .ce_form input:focus,
#main .ce_form textarea:focus {
  border-color: var(--lk-blue);
  box-shadow: 0 0 0 3px rgb(47 103 148 / 12%);
  outline: 0;
}

#main .ce_form fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

#main .ce_form .widget-checkbox span {
  display: inline-flex;
  align-items: flex-start;
  margin: 0 20px 10px 0;
  gap: 8px;
}

#main .ce_form input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 3px 0 0;
  accent-color: var(--lk-blue-dark);
  flex: 0 0 auto;
}

#main .ce_form .widget-checkbox label {
  display: inline;
  margin: 0;
  color: var(--lk-ink);
  font-weight: 500;
}

#main .ce_form .mandatory {
  color: var(--lk-red);
}

#main .ce_form button[type="submit"],
#main .ce_form input[type="submit"] {
  min-height: 52px;
  padding: 13px 23px;
  color: var(--lk-white);
  background: var(--lk-blue-dark);
  border: 1px solid var(--lk-blue-dark);
  border-radius: 7px;
  cursor: pointer;
  font: inherit;
  font-weight: 750;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

#main .ce_form button[type="submit"]:hover,
#main .ce_form input[type="submit"]:hover {
  background: var(--lk-blue);
  border-color: var(--lk-blue);
  transform: translateY(-1px);
}

#main .ce_form p.error,
#main .ce_form .error {
  color: var(--lk-red);
  font-size: 0.88rem;
}

#main .ce_form .form-confirmation {
  padding: 22px;
  color: #385521;
  background: rgb(120 152 67 / 12%);
  border: 1px solid rgb(120 152 67 / 34%);
  border-radius: 8px;
}

@media (max-width: 950px) {
  .contact-hero__grid,
  .contact-location__grid,
  .contact-form-intro {
    grid-template-columns: 1fr;
  }

  .contact-panel {
    max-width: 620px;
  }

  .contact-process-grid {
    grid-template-columns: 1fr;
  }

  .contact-location__visual {
    min-height: 330px;
  }
}

@media (max-width: 700px) {
  .contact-hero {
    margin-inline: -8px;
    padding: 42px 24px 34px;
    border-radius: 12px;
  }

  .contact-hero__grid {
    gap: 36px;
  }

  .contact-panel {
    padding: 27px 23px;
  }

  .contact-location__grid,
  #main .ce_form {
    margin-inline: -8px;
    border-radius: 12px;
  }

  .contact-location__card,
  #main .ce_form {
    padding: 32px 24px;
  }

  #main .ce_form .formbody {
    grid-template-columns: 1fr;
  }

  #main .ce_form .widget {
    grid-column: 1;
  }
}

/* Praxiszeitschrift */

.magazine-hero {
  grid-template-columns: minmax(0, 1.12fr) minmax(285px, 0.58fr);
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 13%, rgb(193 164 85 / 18%), transparent 30%),
    linear-gradient(135deg, #faf9f4 0%, #f3f1e9 100%);
}

.magazine-cover {
  position: relative;
  align-self: center;
  width: min(100%, 340px);
  margin: 0 auto;
  padding: 18px 18px 14px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 10px;
  box-shadow: 0 24px 60px rgb(32 48 64 / 19%);
  transform: rotate(1.4deg);
}

.magazine-cover::after {
  position: absolute;
  inset: 12px -10px -11px 13px;
  z-index: -1;
  background: var(--lk-blue-dark);
  border-radius: 10px;
  content: "";
  opacity: 0.1;
  transform: rotate(-2.8deg);
}

.magazine-cover img {
  display: block;
  width: 100%;
  aspect-ratio: 1000 / 1415;
  object-fit: cover;
  border: 1px solid rgb(35 52 74 / 10%);
}

.magazine-cover figcaption {
  margin-top: 12px;
  color: var(--lk-muted);
  font-size: 0.82rem;
  text-align: center;
}

.magazine-cover__label {
  position: absolute;
  top: 30px;
  left: -17px;
  z-index: 2;
  padding: 8px 13px;
  color: var(--lk-white);
  background: var(--lk-red);
  border-radius: 4px;
  box-shadow: 0 8px 20px rgb(98 38 32 / 22%);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.magazine-quote blockquote {
  margin: 0;
  padding: 0;
  color: rgb(255 255 255 / 88%);
  border: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.2rem, 2vw, 1.65rem);
  font-style: italic;
  line-height: 1.55;
}

.magazine-issue-card {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) 180px;
  align-items: center;
  overflow: hidden;
  margin-top: 30px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: var(--lk-shadow);
}

.magazine-issue-card__number {
  display: flex;
  min-height: 100%;
  padding: 30px 22px;
  color: var(--lk-white);
  background: linear-gradient(155deg, var(--lk-blue-dark), var(--lk-navy));
  flex-direction: column;
  justify-content: center;
  text-align: center;
}

.magazine-issue-card__number span {
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.magazine-issue-card__number strong {
  font-size: 3.7rem;
  font-weight: 700;
  line-height: 1;
}

.magazine-issue-card__copy {
  padding: 34px 38px;
}

.magazine-issue-card__copy h3 {
  margin: 9px 0 2px;
  font-size: clamp(1.5rem, 3vw, 2.15rem);
}

.magazine-issue-card__subtitle {
  margin: 0 0 16px;
  color: var(--lk-blue-dark);
  font-weight: 800;
}

.magazine-badge {
  display: inline-block;
  padding: 5px 9px;
  color: #385521;
  background: rgb(120 152 67 / 14%);
  border: 1px solid rgb(120 152 67 / 28%);
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.magazine-issue-card__action {
  padding: 32px 28px;
  border-left: 1px solid var(--lk-line);
  text-align: center;
}

.magazine-issue-card__action .lk-button {
  width: 100%;
}

.magazine-issue-card__action p {
  margin: 12px 0 0;
  color: var(--lk-muted);
  font-size: 0.78rem;
}

.magazine-print-note {
  border-left: 5px solid var(--lk-gold);
}

@media (max-width: 950px) {
  .magazine-hero {
    grid-template-columns: 1fr;
  }

  .magazine-cover {
    width: min(72%, 340px);
  }

  .magazine-issue-card {
    grid-template-columns: 105px minmax(0, 1fr);
  }

  .magazine-issue-card__action {
    grid-column: 1 / -1;
    border-top: 1px solid var(--lk-line);
    border-left: 0;
  }

  .magazine-issue-card__action .lk-button {
    width: auto;
  }
}

@media (max-width: 700px) {
  .magazine-cover {
    width: min(86%, 310px);
  }

  .magazine-issue-card {
    grid-template-columns: 1fr;
  }

  .magazine-issue-card__number {
    min-height: 0;
    padding: 22px;
    flex-direction: row;
    align-items: baseline;
    gap: 10px;
  }

  .magazine-issue-card__number strong {
    font-size: 2.2rem;
  }

  .magazine-issue-card__copy {
    padding: 28px 24px;
  }

  .magazine-issue-card__action {
    padding: 24px;
  }

  .magazine-issue-card__action .lk-button {
    width: 100%;
  }
}

.practice-magazine-teaser {
  padding-top: 0;
}

.practice-magazine-banner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px auto;
  align-items: center;
  overflow: hidden;
  padding: clamp(32px, 5vw, 54px);
  color: var(--lk-white);
  background:
    radial-gradient(circle at 82% 10%, rgb(197 166 83 / 35%), transparent 27%),
    linear-gradient(130deg, var(--lk-navy), var(--lk-blue-dark));
  border-radius: 16px;
  box-shadow: var(--lk-shadow);
  gap: clamp(28px, 5vw, 62px);
  text-decoration: none;
}

.practice-magazine-banner::before {
  position: absolute;
  right: -80px;
  bottom: -150px;
  width: 330px;
  height: 330px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 50%;
  content: "";
}

.practice-magazine-banner .service-kicker,
.practice-magazine-banner h2,
.practice-magazine-banner p {
  position: relative;
  z-index: 1;
  color: inherit;
}

.practice-magazine-banner h2 {
  margin: 5px 0 10px;
}

.practice-magazine-banner p:last-child {
  max-width: 680px;
  margin-bottom: 0;
  color: rgb(255 255 255 / 74%);
}

.practice-magazine-banner__issue {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 150px;
  padding: 21px;
  background: rgb(255 255 255 / 11%);
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 9px;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}

.practice-magazine-banner__issue span {
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.practice-magazine-banner__issue strong {
  color: var(--lk-gold);
  font-size: 3rem;
  line-height: 1;
}

.practice-magazine-banner__issue small {
  margin-top: 8px;
  color: rgb(255 255 255 / 74%);
  line-height: 1.25;
}

.practice-magazine-banner__link {
  position: relative;
  z-index: 1;
  font-weight: 800;
  white-space: nowrap;
}

.practice-magazine-banner:hover {
  color: var(--lk-white);
  transform: translateY(-2px);
}

@media (max-width: 950px) {
  .practice-magazine-banner {
    grid-template-columns: minmax(0, 1fr) 130px;
  }

  .practice-magazine-banner__link {
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .practice-magazine-banner {
    grid-template-columns: 1fr;
    margin-inline: -8px;
    padding: 34px 24px;
    border-radius: 12px;
  }

  .practice-magazine-banner__issue {
    min-height: 0;
  }

  .practice-magazine-banner__link {
    grid-column: 1;
  }
}

/* Schule im Blick */

.school-view-page {
  --detail-accent: #789843;
  --detail-accent-rgb: 120 152 67;
}

.school-view-hero {
  grid-template-columns: minmax(0, 1.12fr) minmax(310px, 0.68fr);
  background:
    radial-gradient(circle at 88% 15%, rgb(120 152 67 / 20%), transparent 35%),
    linear-gradient(135deg, #f8faf5 0%, #f1f4ed 100%);
}

.school-view-logo-card {
  position: relative;
  align-self: center;
  margin: 0;
  padding: clamp(30px, 5vw, 48px);
  background: rgb(255 255 255 / 88%);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: 0 22px 55px rgb(43 66 37 / 15%);
}

.school-view-logo-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, #789843, var(--lk-gold), var(--lk-blue-dark));
  border-radius: 14px 14px 0 0;
  content: "";
}

.school-view-logo-card img {
  display: block;
  width: 100%;
  max-width: 430px;
  margin: 0 auto;
}

.school-view-logo-card figcaption {
  margin-top: 28px;
  padding-top: 20px;
  color: var(--lk-muted);
  border-top: 1px solid var(--lk-line);
  text-align: center;
}

.school-view-logo-card figcaption strong,
.school-view-logo-card figcaption span {
  display: block;
}

.school-view-logo-card figcaption strong {
  color: var(--lk-navy);
}

.school-view-logo-card figcaption span {
  margin-top: 4px;
  font-size: 0.86rem;
}

.school-view-whatsapp-button {
  color: var(--lk-white);
  background: #397c49;
}

.school-view-whatsapp-button:hover {
  color: var(--lk-white);
  background: #2f6b3e;
}

.school-view-topic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 30px;
  gap: 16px;
}

.school-view-topic-grid article {
  position: relative;
  overflow: hidden;
  min-height: 230px;
  padding: 32px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 12px 32px rgb(38 55 70 / 7%);
}

.school-view-topic-grid article::after {
  position: absolute;
  right: -28px;
  bottom: -34px;
  width: 120px;
  height: 120px;
  background: rgb(120 152 67 / 8%);
  border-radius: 50%;
  content: "";
}

.school-view-topic-grid span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 9px;
  color: #49652d;
  background: rgb(120 152 67 / 13%);
  border-radius: 7px;
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.05em;
}

.school-view-topic-grid h3 {
  margin: 20px 0 9px;
}

.school-view-topic-grid p {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  color: var(--lk-muted);
}

.school-view-format-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 30px;
  gap: 18px;
}

.school-view-format {
  position: relative;
  display: flex;
  min-height: 100%;
  padding: clamp(34px, 5vw, 52px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: var(--lk-shadow);
  flex-direction: column;
  align-items: flex-start;
}

.school-view-format--magazine {
  background:
    radial-gradient(circle at 92% 8%, rgb(197 166 83 / 18%), transparent 30%),
    var(--lk-white);
  border-top: 5px solid var(--lk-gold);
}

.school-view-format--channel {
  background:
    radial-gradient(circle at 90% 5%, rgb(120 152 67 / 14%), transparent 32%),
    var(--lk-white);
  border-top: 5px solid #397c49;
}

.school-view-format__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 70px;
  margin-bottom: 28px;
  color: var(--lk-white);
  background: var(--lk-blue-dark);
  border-radius: 5px 5px 2px 2px;
  box-shadow: 7px 7px 0 rgb(197 166 83 / 22%);
  font-weight: 850;
  letter-spacing: 0.05em;
}

.school-view-format--channel > img {
  width: min(100%, 360px);
  height: 70px;
  margin-bottom: 28px;
  object-fit: contain;
  object-position: left center;
}

.school-view-format h3 {
  margin: 4px 0 14px;
  font-size: clamp(1.7rem, 3vw, 2.3rem);
}

.school-view-format > p:not(.practice-detail__kicker),
.school-view-format li {
  color: var(--lk-muted);
}

.school-view-format .lk-button {
  margin-top: auto;
}

.school-view-format .practice-detail__checklist {
  margin-bottom: 28px;
}

.school-view-highlight blockquote {
  margin: 0;
  padding: 0;
  color: rgb(255 255 255 / 88%);
  border: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.2rem, 2vw, 1.65rem);
  font-style: italic;
  line-height: 1.55;
}

.school-view-expectations article:last-child {
  background: #f7f9f4;
}

@media (max-width: 950px) {
  .school-view-hero,
  .school-view-format-grid {
    grid-template-columns: 1fr;
  }

  .school-view-logo-card {
    max-width: 620px;
  }

  .school-view-topic-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .school-view-topic-grid {
    grid-template-columns: 1fr;
  }

  .school-view-topic-grid article {
    min-height: 0;
    padding: 28px 24px;
  }

  .school-view-logo-card {
    padding: 30px 24px;
  }

  .school-view-format {
    padding: 32px 24px;
  }
}

.practice-school-view-teaser {
  padding-top: 0;
  padding-bottom: 26px;
}

.practice-school-view-banner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(230px, 0.48fr) minmax(0, 1fr) auto;
  align-items: center;
  overflow: hidden;
  padding: clamp(30px, 4.5vw, 48px);
  color: var(--lk-ink);
  background:
    radial-gradient(circle at 7% 50%, rgb(120 152 67 / 16%), transparent 32%),
    var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 5px solid #789843;
  border-radius: 16px;
  box-shadow: var(--lk-shadow);
  gap: clamp(30px, 5vw, 64px);
  text-decoration: none;
}

.practice-school-view-banner__logo {
  padding: 24px;
  background: #f7f9f4;
  border: 1px solid rgb(120 152 67 / 22%);
  border-radius: 10px;
}

.practice-school-view-banner__logo img {
  display: block;
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
}

.practice-school-view-banner__copy {
  max-width: 690px;
}

.practice-school-view-banner__copy h2 {
  margin: 5px 0 10px;
}

.practice-school-view-banner__copy p:last-child {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.practice-school-view-banner__link {
  color: #49652d;
  font-weight: 850;
  white-space: nowrap;
}

.practice-school-view-banner:hover {
  color: var(--lk-ink);
  border-color: rgb(120 152 67 / 45%);
  transform: translateY(-2px);
}

@media (max-width: 950px) {
  .practice-school-view-banner {
    grid-template-columns: minmax(210px, 0.45fr) minmax(0, 1fr);
  }

  .practice-school-view-banner__link {
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .practice-school-view-banner {
    grid-template-columns: 1fr;
    margin-inline: -8px;
    padding: 30px 24px;
    border-radius: 12px;
  }

  .practice-school-view-banner__link {
    grid-column: 1;
  }
}

/* Homepage warmth pass - staging 2026 */
.home-page {
  --home-cream: #fbf7ef;
  --home-cream-deep: #f4ead9;
  --home-green-soft: #eef3e7;
  --home-gold-soft: #f7f0df;
}

.home-page .home-hero {
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 20%), transparent 34%),
    radial-gradient(circle at 0% 100%, rgb(189 160 82 / 13%), transparent 38%),
    linear-gradient(135deg, var(--home-cream), #fffdf9);
  border-color: #e5dccd;
}

.home-page .home-intro {
  position: relative;
}

.home-page .home-intro::before {
  display: block;
  width: 76px;
  height: 4px;
  margin: 0 0 26px;
  background: linear-gradient(90deg, var(--lk-red), var(--lk-gold), var(--lk-green));
  border-radius: 999px;
  content: "";
}

.home-page .home-card {
  border-color: #e6dfd4;
  box-shadow: 0 10px 30px rgb(70 55 35 / 6%);
}

.home-page .home-card:nth-child(1) {
  background: linear-gradient(180deg, #f3f7fa 0%, #ffffff 44%);
}

.home-page .home-card:nth-child(2) {
  background: linear-gradient(180deg, var(--home-gold-soft) 0%, #ffffff 44%);
}

.home-page .home-card:nth-child(3) {
  background: linear-gradient(180deg, var(--home-green-soft) 0%, #ffffff 44%);
}

.home-page .home-signals {
  background:
    radial-gradient(circle at 100% 0%, rgb(182 66 76 / 8%), transparent 32%),
    linear-gradient(135deg, var(--home-cream), var(--home-green-soft));
}

.home-page .home-signal-grid li {
  background: rgb(255 253 248 / 86%);
  border-color: #e3dccf;
}

.home-page .home-process {
  padding: clamp(36px, 6vw, 66px);
  background: linear-gradient(135deg, #fffaf4, #f5f8ef);
  border: 1px solid #e7e0d5;
  border-radius: 16px;
}

.home-page .home-journal {
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 18%), transparent 34%),
    radial-gradient(circle at 0% 100%, rgb(182 66 76 / 8%), transparent 36%),
    linear-gradient(145deg, var(--home-cream), #fffdf8);
  border-color: #e3dacd;
}

.home-page .home-journal__cover-link {
  background: linear-gradient(155deg, var(--home-cream-deep), #faf6ee);
}

.home-page .home-journal__channel-media {
  background:
    radial-gradient(circle at 85% 15%, rgb(120 152 67 / 22%), transparent 40%),
    linear-gradient(145deg, var(--home-green-soft), #fffdf7);
}

.home-page .home-cta {
  background:
    radial-gradient(circle at 100% 0%, rgb(120 152 67 / 42%), transparent 38%),
    radial-gradient(circle at 0% 100%, rgb(182 66 76 / 22%), transparent 42%),
    var(--lk-blue-dark);
}

@media (max-width: 700px) {
  .home-page .home-process {
    margin-inline: -8px;
    padding: 30px 24px;
    border-radius: 12px;
  }
}

/* Website visual integration - staging 2026-08-18 */
.home-page .home-hero__grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.85fr);
  gap: clamp(36px, 6vw, 76px);
}

.home-page .home-hero__visual {
  overflow: hidden;
  width: 100%;
  max-width: 420px;
  justify-self: end;
  background: var(--lk-navy);
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: 16px;
  box-shadow: 0 22px 56px rgb(33 41 63 / 22%);
}

.home-page .home-hero__visual figure {
  display: grid;
  margin: 0;
}

.home-page .home-hero__visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 720 / 783;
  object-fit: cover;
}

.home-page .home-hero__visual figcaption {
  margin: 0;
  padding: 19px 24px 22px;
  color: rgb(255 255 255 / 78%);
  background: var(--lk-navy);
  border-top: 1px solid rgb(255 255 255 / 11%);
  font-size: 0.96rem;
  letter-spacing: 0.01em;
}

.home-page .home-hero__visual figcaption strong {
  color: var(--lk-white);
}

.home-page .home-investment {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
  align-items: center;
  gap: clamp(36px, 6vw, 72px);
  padding: clamp(38px, 6vw, 68px);
  background:
    radial-gradient(circle at 0 100%, rgb(120 152 67 / 17%), transparent 38%),
    linear-gradient(145deg, #fffaf0, #fffdf9);
  border: 1px solid var(--lk-line);
  border-radius: 18px;
  box-shadow: 0 12px 38px rgb(33 41 63 / 8%);
}

.home-page .home-investment__intro > p:not(.home-kicker, .home-investment__availability) {
  max-width: 690px;
  color: var(--lk-muted);
  font-size: 1.06rem;
}

.home-page .home-investment__availability {
  max-width: 640px;
  margin: 26px 0 0;
  padding: 14px 0 14px 18px;
  color: var(--lk-navy);
  border-left: 3px solid var(--lk-green);
  font-weight: 700;
}

.home-page .home-investment__card {
  padding: clamp(28px, 4vw, 42px);
  color: rgb(255 255 255 / 82%);
  background:
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 35%), transparent 40%),
    var(--lk-navy);
  border-radius: 14px;
  box-shadow: 0 18px 50px rgb(33 41 63 / 18%);
}

.home-page .home-investment__card .home-text-link {
  display: inline-flex;
  margin-top: 24px;
  color: var(--lk-white);
}

.service-process-visual {
  overflow: hidden;
  margin: 0 0 clamp(38px, 5vw, 58px);
  background: var(--lk-navy);
  border: 1px solid rgb(33 41 63 / 10%);
  border-radius: 16px;
  box-shadow: 0 16px 46px rgb(33 41 63 / 14%);
}

.service-process-visual img {
  display: block;
  width: 100%;
  height: auto;
}

.service-process-visual figcaption {
  margin: 0;
  padding: 18px 24px 20px;
  color: var(--lk-muted);
  background: #fffaf2;
  border-top: 1px solid var(--lk-line);
  font-size: 0.94rem;
}

@media (max-width: 950px) {
  .home-page .home-hero__grid,
  .home-page .home-investment {
    grid-template-columns: 1fr;
  }

  .home-page .home-hero__visual {
    max-width: 520px;
    justify-self: start;
  }
}

@media (max-width: 700px) {
  .home-page .home-investment {
    margin-inline: -8px;
    padding: 32px 24px;
    border-radius: 12px;
  }

  .home-page .home-hero__visual {
    max-width: 100%;
  }

  .service-process-visual {
    display: none;
  }
}

/* Zielgruppen-Zugaenge und Vertrauensseiten */
.audience-page {
  --audience-space: clamp(78px, 9vw, 122px);
}

.audience-page .service-section {
  margin-bottom: var(--audience-space);
}

.audience-page [id] {
  scroll-margin-top: 150px;
}

.audience-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--audience-space);
  padding: clamp(44px, 6.5vw, 78px);
  background:
    radial-gradient(circle at 92% 8%, rgb(189 160 82 / 20%), transparent 31%),
    linear-gradient(140deg, #fbfaf6, var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 20px;
  box-shadow: var(--lk-shadow);
}

.audience-hero__accent {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue) 0 53%, var(--lk-gold) 53% 76%, var(--lk-green) 76%);
}

.audience-hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(290px, 0.72fr);
  align-items: center;
  gap: clamp(42px, 7vw, 86px);
}

.audience-hero h1 {
  max-width: 760px;
  margin-bottom: 22px;
}

.audience-hero h1 em {
  color: #8b6f29;
  font-style: normal;
}

.audience-hero__lead {
  max-width: 760px;
  color: var(--lk-navy);
  font-size: clamp(1.18rem, 2vw, 1.45rem);
  font-weight: 650;
  line-height: 1.43;
}

.audience-hero__content > p:not(.service-eyebrow, .audience-hero__lead) {
  max-width: 720px;
  color: var(--lk-muted);
}

.audience-hero__card {
  padding: clamp(30px, 4vw, 42px);
  color: rgb(255 255 255 / 80%);
  background:
    radial-gradient(circle at 100% 0%, rgb(189 160 82 / 32%), transparent 37%),
    var(--lk-navy);
  border-radius: 15px;
  box-shadow: 0 20px 55px rgb(33 41 63 / 18%);
}

.audience-card__kicker,
.audience-cta__label {
  margin: 0 0 17px;
  color: var(--lk-white);
  font-size: 0.76rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.audience-card__quote {
  margin-bottom: 25px;
  color: var(--lk-white);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.17rem, 2vw, 1.48rem);
  font-style: italic;
  line-height: 1.55;
}

.audience-checklist {
  display: grid;
  margin: 0;
  padding: 22px 0 0;
  border-top: 1px solid rgb(255 255 255 / 16%);
  list-style: none;
  gap: 11px;
}

.audience-checklist li {
  position: relative;
  padding-left: 27px;
  line-height: 1.45;
}

.audience-checklist li::before {
  position: absolute;
  left: 0;
  color: #a9c86f;
  content: "✓";
  font-weight: 900;
}

.audience-intro {
  text-align: center;
}

.audience-intro h2 {
  margin-inline: auto;
}

.audience-intro > p:not(.service-kicker) {
  color: var(--lk-muted);
}

.audience-topic-grid,
.referral-signal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.audience-topic-grid article,
.referral-signal-grid article {
  position: relative;
  min-height: 190px;
  padding: clamp(25px, 3vw, 34px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
  box-shadow: 0 8px 28px rgb(33 41 63 / 5%);
}

.audience-topic-grid span,
.referral-signal-grid span {
  display: block;
  margin-bottom: 24px;
  color: var(--lk-blue-dark);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.12em;
}

.audience-topic-grid h3 {
  margin-bottom: 10px;
  font-size: clamp(1.15rem, 1.9vw, 1.38rem);
}

.audience-topic-grid p,
.referral-signal-grid p {
  margin-bottom: 0;
  color: var(--lk-muted);
  line-height: 1.5;
}

.audience-story {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  overflow: hidden;
  color: rgb(255 255 255 / 78%);
  background: var(--lk-navy);
  border-radius: 18px;
}

.audience-story__visual {
  position: relative;
  min-height: 510px;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 34%, rgb(189 160 82 / 38%), transparent 19%),
    radial-gradient(circle at 72% 76%, rgb(47 103 148 / 62%), transparent 35%),
    #26324b;
}

.audience-story__line {
  position: absolute;
  left: 15%;
  width: 75%;
  height: 2px;
  background: rgb(255 255 255 / 32%);
  transform-origin: left center;
}

.audience-story__line--one {
  top: 40%;
  transform: rotate(29deg);
}

.audience-story__line--two {
  top: 66%;
  transform: rotate(-34deg);
}

.audience-story__point {
  position: absolute;
  width: 25px;
  height: 25px;
  background: var(--lk-gold);
  border: 7px solid rgb(255 255 255 / 14%);
  border-radius: 50%;
}

.audience-story__point--one { top: 35%; left: 14%; }
.audience-story__point--two { top: 61%; left: 61%; background: var(--lk-blue); }
.audience-story__point--three { right: 11%; bottom: 15%; background: var(--lk-green); }

.audience-story__copy {
  padding: clamp(45px, 7vw, 82px);
}

.audience-story__copy h2,
.audience-story__copy .service-kicker {
  color: var(--lk-white);
}

.audience-story__copy blockquote {
  margin: 31px 0 0;
  padding: 22px 0 0 25px;
  color: var(--lk-white);
  border-top: 1px solid rgb(255 255 255 / 16%);
  border-left: 3px solid var(--lk-gold);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.13rem, 2vw, 1.42rem);
  font-style: italic;
  line-height: 1.55;
}

.audience-principle__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.audience-principle__grid article {
  padding: clamp(25px, 3vw, 34px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 4px solid var(--lk-blue);
  border-radius: 12px;
}

.audience-principle__grid article:nth-child(2) { border-top-color: var(--lk-red); }
.audience-principle__grid article:nth-child(3) { border-top-color: var(--lk-gold); }
.audience-principle__grid article:nth-child(4) { border-top-color: var(--lk-green); }

.audience-principle__grid strong {
  display: grid;
  width: 42px;
  height: 42px;
  margin-bottom: 24px;
  color: var(--lk-white);
  background: var(--lk-navy);
  border-radius: 50%;
  place-items: center;
}

.audience-principle__grid h3 {
  font-size: clamp(1.18rem, 2vw, 1.42rem);
}

.audience-principle__grid p {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.audience-format-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.audience-format-card {
  display: flex;
  min-height: 100%;
  padding: clamp(29px, 3.8vw, 42px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 5px solid var(--lk-green);
  border-radius: 13px;
  box-shadow: 0 12px 36px rgb(33 41 63 / 7%);
  flex-direction: column;
}

.audience-format-card--warm { border-top-color: var(--lk-gold); }
.audience-format-card--blue { border-top-color: var(--lk-blue); }

.audience-format-card__meta {
  margin-bottom: 17px;
  color: var(--lk-blue-dark);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.audience-format-card > p:not(.audience-format-card__meta),
.audience-format-card li {
  color: var(--lk-muted);
}

.audience-format-card ul {
  margin: auto 0 0;
  padding: 22px 0 0;
  border-top: 1px solid var(--lk-line);
  list-style: none;
}

.audience-format-card li {
  position: relative;
  padding: 6px 0 6px 25px;
}

.audience-format-card li::before {
  position: absolute;
  left: 0;
  color: var(--lk-green);
  content: "✓";
  font-weight: 900;
}

.audience-confidential {
  display: grid;
  grid-template-columns: minmax(250px, 0.75fr) minmax(0, 1.25fr);
  padding: clamp(42px, 6vw, 68px);
  color: rgb(255 255 255 / 78%);
  background: var(--lk-blue-dark);
  border-radius: 18px;
  gap: clamp(35px, 7vw, 84px);
}

.audience-confidential h2,
.audience-confidential .service-kicker {
  color: var(--lk-white);
}

.audience-confidential p:last-child {
  margin: 0;
}

.audience-cta .service-cta__details strong {
  display: block;
  margin-bottom: 18px;
  color: var(--lk-white);
  font-size: clamp(1.25rem, 2.3vw, 1.72rem);
  line-height: 1.35;
}

/* Fachpraxen: dunkelblaue Informations-Sprache */
.practice-audience-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: var(--audience-space);
  padding: clamp(48px, 7vw, 82px);
  color: rgb(255 255 255 / 78%);
  background:
    radial-gradient(circle at 92% 18%, rgb(47 103 148 / 65%), transparent 34%),
    linear-gradient(145deg, #18233a, var(--lk-navy));
  border-radius: 20px;
  box-shadow: 0 22px 60px rgb(33 41 63 / 20%);
}

.practice-audience-hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--lk-blue), var(--lk-green), var(--lk-gold));
  content: "";
}

.practice-audience-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(330px, 0.82fr);
  align-items: center;
  gap: clamp(45px, 7vw, 92px);
}

.practice-audience-hero h1,
.practice-audience-hero .service-eyebrow {
  color: var(--lk-white);
}

.practice-audience-hero h1 {
  max-width: 790px;
}

.practice-audience-hero h1 em {
  color: #b8d181;
  font-style: normal;
}

.practice-audience-hero__lead {
  color: var(--lk-white);
  font-size: clamp(1.18rem, 2vw, 1.45rem);
  font-weight: 650;
}

.practice-audience-hero__link {
  color: var(--lk-white);
  font-weight: 750;
  text-decoration: none;
}

.practice-audience-hero__link:hover {
  color: var(--lk-white);
}

.practice-audience-hero__professions {
  display: flex;
  margin-top: clamp(38px, 5vw, 58px);
  padding-top: 26px;
  border-top: 1px solid rgb(255 255 255 / 15%);
  gap: 10px;
  flex-wrap: wrap;
}

.practice-audience-hero__professions span {
  padding: 7px 12px;
  color: rgb(255 255 255 / 78%);
  background: rgb(255 255 255 / 8%);
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 999px;
  font-size: 0.83rem;
  line-height: 1.3;
}

.practice-hero-visual {
  position: relative;
  min-height: 440px;
  overflow: hidden;
  background: #071a34;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 18px;
  box-shadow: 0 18px 46px rgb(5 14 31 / 32%);
}

.practice-hero-visual::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgb(7 26 52 / 4%), rgb(7 26 52 / 20%)),
    radial-gradient(circle at 48% 62%, transparent 0 28%, rgb(5 17 37 / 10%) 70%);
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 3%);
  content: "";
  pointer-events: none;
}

.practice-hero-visual img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 49% 57%;
  transform: scale(1.015);
}

.practice-audience-intro {
  text-align: center;
}

.practice-audience-intro p:not(.service-kicker) {
  color: var(--lk-muted);
}

.referral-signal-grid article {
  min-height: 165px;
  border-top: 4px solid var(--lk-blue);
}

.referral-signal-grid article:nth-child(2),
.referral-signal-grid article:nth-child(5) { border-top-color: var(--lk-green); }
.referral-signal-grid article:nth-child(3),
.referral-signal-grid article:nth-child(6) { border-top-color: var(--lk-gold); }

.referral-signal-grid p {
  color: var(--lk-ink);
  font-weight: 650;
}

.professional-continuity {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
  overflow: hidden;
  color: rgb(255 255 255 / 76%);
  background: var(--lk-navy);
  border-radius: 18px;
}

.professional-continuity__statement,
.professional-continuity__copy {
  padding: clamp(43px, 6vw, 72px);
}

.professional-continuity__statement {
  background:
    radial-gradient(circle at 0 100%, rgb(120 152 67 / 45%), transparent 46%),
    var(--lk-blue-dark);
}

.professional-continuity h2,
.professional-continuity .service-kicker {
  color: var(--lk-white);
}

.professional-continuity__statement > p:last-child {
  color: #b8d181;
  font-size: 1.15rem;
  font-weight: 750;
}

.professional-continuity__copy p:last-child {
  margin-bottom: 0;
}

.family-result-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.family-result-grid article {
  padding: 27px 22px;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 11px;
}

.family-result-grid span {
  display: block;
  margin-bottom: 30px;
  color: var(--lk-blue-dark);
  font-size: 0.75rem;
  font-weight: 850;
  letter-spacing: 0.1em;
}

.family-result-grid h3 {
  font-size: clamp(1.05rem, 1.7vw, 1.27rem);
}

.family-result-grid p {
  margin: 0;
  color: var(--lk-muted);
  font-size: 0.92rem;
}

.clarity-before-support {
  display: grid;
  grid-template-columns: minmax(240px, 0.66fr) minmax(0, 1.34fr);
  align-items: center;
  padding: clamp(42px, 6vw, 68px);
  background: linear-gradient(145deg, #f4f6f0, var(--lk-white));
  border: 1px solid var(--lk-line);
  border-radius: 18px;
  gap: clamp(35px, 7vw, 84px);
}

.clarity-before-support__graphic {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 230px;
  color: var(--lk-blue-dark);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  font-size: clamp(2rem, 5vw, 4.2rem);
  gap: clamp(12px, 2vw, 23px);
}

.clarity-before-support__graphic strong {
  color: var(--lk-green);
}

.audience-checklist--dark {
  border-top-color: var(--lk-line);
}

.audience-checklist--dark li {
  color: var(--lk-muted);
}

/* Fachpraxen: weboptimierte Fachinformation zum Weitergeben */
.practice-download {
  display: grid;
  grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
  overflow: hidden;
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 18px;
  box-shadow: 0 16px 46px rgb(33 41 63 / 9%);
}

.practice-download__visual {
  position: relative;
  min-height: 330px;
  overflow: hidden;
  background:
    radial-gradient(circle at 25% 54%, rgb(189 160 82 / 28%), transparent 17%),
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 62%), transparent 44%),
    linear-gradient(145deg, #18233a, var(--lk-navy));
}

.practice-download__visual::before {
  position: absolute;
  z-index: 2;
  top: calc(54% - 12px);
  left: calc(25% - 12px);
  width: 24px;
  height: 24px;
  background: var(--lk-gold);
  border: 6px solid rgb(255 255 255 / 12%);
  border-radius: 50%;
  box-shadow: 0 0 0 14px rgb(189 160 82 / 8%);
  content: "";
}

.practice-download__ray {
  position: absolute;
  z-index: 1;
  top: 54%;
  left: 25%;
  width: 92%;
  height: 2px;
  background: linear-gradient(90deg, rgb(255 255 255 / 54%), rgb(255 255 255 / 5%));
  transform-origin: left center;
}

.practice-download__ray--1 {
  background: linear-gradient(90deg, rgb(189 160 82 / 88%), rgb(255 255 255 / 8%));
  transform: rotate(-55deg);
}

.practice-download__ray--2 {
  transform: rotate(-26deg);
}

.practice-download__ray--3 {
  background: linear-gradient(90deg, rgb(47 103 148 / 92%), rgb(255 255 255 / 7%));
  transform: rotate(8deg);
}

.practice-download__ray--4 {
  background: linear-gradient(90deg, rgb(120 152 67 / 88%), rgb(255 255 255 / 7%));
  transform: rotate(39deg);
}

.practice-download__visual strong {
  position: absolute;
  right: 26px;
  bottom: 25px;
  padding: 8px 12px;
  color: var(--lk-white);
  background: rgb(255 255 255 / 9%);
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 999px;
  font-size: 0.73rem;
  letter-spacing: 0.12em;
}

.practice-download__copy {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(42px, 6vw, 72px);
  flex-direction: column;
}

.practice-download__copy > p:not(.service-kicker, .practice-download__meta) {
  max-width: 650px;
  color: var(--lk-muted);
}

.practice-download__meta {
  margin: 17px 0 0;
  color: var(--lk-muted);
  font-size: 0.84rem;
}

.cooperation-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.82fr);
  gap: clamp(36px, 7vw, 88px);
}

.cooperation-section > div:first-child > p:not(.service-kicker) {
  color: var(--lk-muted);
}

.cooperation-section__points {
  padding: 30px;
  background: var(--lk-surface);
  border-left: 4px solid var(--lk-green);
  border-radius: 10px;
}

.cooperation-section__points p {
  margin: 0;
  padding: 14px 0;
  border-top: 1px solid var(--lk-line);
}

.cooperation-section__points p:first-child {
  padding-top: 0;
  border-top: 0;
}

.practice-faq__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.practice-faq__grid article {
  padding: clamp(28px, 4vw, 40px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
}

.practice-faq__grid h3 {
  font-size: clamp(1.12rem, 1.8vw, 1.36rem);
}

.practice-faq__grid p {
  margin: 0;
  color: var(--lk-muted);
}

.expert-credentials {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  padding: clamp(43px, 6vw, 70px);
  color: rgb(255 255 255 / 76%);
  background:
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 54%), transparent 42%),
    var(--lk-navy);
  border-radius: 18px;
  gap: clamp(30px, 5vw, 58px);
}

.expert-credentials__mark {
  display: grid;
  width: clamp(92px, 12vw, 132px);
  height: clamp(92px, 12vw, 132px);
  color: var(--lk-white);
  background: var(--lk-green);
  border: 9px solid rgb(255 255 255 / 9%);
  border-radius: 50%;
  font-size: clamp(1.3rem, 3vw, 2.1rem);
  font-weight: 850;
  place-items: center;
}

.expert-credentials h2,
.expert-credentials .service-kicker {
  color: var(--lk-white);
}

.expert-credentials p:last-child {
  margin: 0;
}

/* Kompakte professionelle Zugänge auf der Startseite */
.home-professional-paths {
  position: relative;
  overflow: hidden;
  padding: clamp(38px, 6vw, 66px);
  background:
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 10%), transparent 38%),
    #f7f8f5;
  border: 1px solid var(--lk-line);
  border-radius: 16px;
}

.home-professional-paths__head {
  max-width: 850px;
  margin-bottom: 33px;
}

.home-professional-paths__head > p:not(.home-kicker) {
  color: var(--lk-muted);
}

.home-professional-paths__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.home-professional-path {
  position: relative;
  display: flex;
  min-height: 250px;
  padding: clamp(28px, 4vw, 40px);
  color: var(--lk-ink);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 5px solid var(--lk-gold);
  border-radius: 13px;
  box-shadow: 0 10px 34px rgb(33 41 63 / 6%);
  flex-direction: column;
  text-decoration: none;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.home-professional-path--practices {
  border-top-color: var(--lk-blue);
}

.home-professional-path:hover {
  color: var(--lk-ink);
  border-color: rgb(47 103 148 / 38%);
  box-shadow: 0 16px 42px rgb(33 41 63 / 10%);
  transform: translateY(-3px);
}

.home-professional-path__meta {
  margin-bottom: 24px;
  color: var(--lk-blue-dark);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.11em;
}

.home-professional-path h3 {
  font-size: clamp(1.35rem, 2.4vw, 1.83rem);
}

.home-professional-path > p:not(.home-professional-path__meta) {
  color: var(--lk-muted);
}

.home-professional-path__link {
  margin-top: auto;
  color: var(--lk-blue-dark);
  font-weight: 800;
}

.footer-audience-links {
  display: flex;
  flex: 1 0 100%;
  align-items: center;
  justify-content: flex-end;
  margin-top: 2px;
  padding-top: 12px;
  border-top: 1px solid rgb(33 41 63 / 8%);
  gap: 9px 18px;
  flex-wrap: wrap;
}

.footer-audience-links__label {
  color: var(--lk-muted);
  font-size: 0.82rem;
  font-weight: 750;
}

.footer-audience-links a {
  color: var(--lk-blue-dark);
  font-size: 0.9rem;
}

@media (max-width: 1050px) {
  .family-result-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 950px) {
  .audience-hero__grid,
  .practice-audience-hero__grid,
  .audience-story,
  .professional-continuity,
  .clarity-before-support,
  .practice-download,
  .cooperation-section {
    grid-template-columns: 1fr;
  }

  .audience-hero__card,
  .practice-hero-visual {
    width: 100%;
    max-width: 620px;
  }

  .practice-hero-visual {
    min-height: 0;
    aspect-ratio: 16 / 9;
  }

  .audience-story__visual {
    min-height: 290px;
  }

  .practice-download__visual {
    min-height: 225px;
  }

  .audience-topic-grid,
  .referral-signal-grid,
  .audience-principle__grid,
  .audience-format-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audience-format-card:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .audience-page {
    --audience-space: 70px;
  }

  .audience-hero,
  .practice-audience-hero,
  .audience-story,
  .audience-confidential,
  .professional-continuity,
  .clarity-before-support,
  .practice-download,
  .expert-credentials,
  .home-professional-paths {
    margin-inline: -8px;
    border-radius: 12px;
  }

  .audience-hero,
  .practice-audience-hero,
  .audience-confidential,
  .clarity-before-support,
  .expert-credentials,
  .home-professional-paths {
    padding: 34px 24px;
  }

  .audience-topic-grid,
  .referral-signal-grid,
  .audience-principle__grid,
  .audience-format-grid,
  .family-result-grid,
  .practice-faq__grid,
  .home-professional-paths__grid {
    grid-template-columns: 1fr;
  }

  .audience-format-card:last-child {
    grid-column: auto;
  }

  .audience-topic-grid article,
  .referral-signal-grid article,
  .home-professional-path {
    min-height: 0;
  }

  .audience-story__visual {
    min-height: 230px;
  }

  .audience-story__copy,
  .professional-continuity__statement,
  .professional-continuity__copy,
  .practice-download__copy {
    padding: 36px 24px;
  }

  .practice-download__visual {
    min-height: 185px;
  }

  .practice-hero-visual {
    aspect-ratio: 4 / 3;
    border-radius: 14px;
  }

  .audience-confidential {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .expert-credentials {
    grid-template-columns: 1fr;
  }
}


/* Reliable jump links and home journal cross-link */
#ablauf,
#beratung-ablauf,
#ausgaben {
  scroll-margin-top: 132px;
}

.home-journal__more {
  margin: 0 0 clamp(34px, 5vw, 50px);
}


/* Sachverständigentätigkeit und BDSF-Vertrauenshinweise */
.expert-page {
  --detail-accent: var(--lk-gold);
  --detail-accent-rgb: 189 160 82;
}

.expert-page__hero {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1.12fr) minmax(330px, 0.88fr);
  align-items: center;
  margin-bottom: var(--detail-space);
  padding: clamp(40px, 6vw, 72px);
  color: rgb(255 255 255 / 82%);
  background:
    radial-gradient(circle at 96% 4%, rgb(47 103 148 / 68%), transparent 37%),
    radial-gradient(circle at 0 100%, rgb(189 160 82 / 22%), transparent 35%),
    linear-gradient(145deg, #192238, var(--lk-navy));
  border: 1px solid rgb(255 255 255 / 9%);
  border-radius: 20px;
  box-shadow: 0 20px 62px rgb(33 41 63 / 18%);
  gap: clamp(40px, 7vw, 86px);
}

.expert-page__hero::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, #111318 0 33%, #d52b37 33% 66%, #f2c230 66%);
  content: "";
}

.expert-page__hero-copy {
  position: relative;
  z-index: 1;
}

.expert-page__hero .practice-detail__kicker {
  color: #e2c76f;
}

.expert-page__hero h1 {
  max-width: 720px;
  margin-bottom: 22px;
  color: var(--lk-white);
}

.expert-page__hero .practice-detail__lead {
  color: var(--lk-white);
}

.expert-page__hero-copy > p:not(.practice-detail__kicker, .practice-detail__lead) {
  max-width: 720px;
  color: rgb(255 255 255 / 72%);
}

.expert-page__actions {
  display: flex;
  align-items: center;
  margin-top: 30px;
  gap: 15px 22px;
  flex-wrap: wrap;
}

.expert-page__text-link {
  color: var(--lk-white);
  font-size: 0.91rem;
  font-weight: 780;
  text-decoration-color: rgb(255 255 255 / 42%);
  text-underline-offset: 4px;
}

.expert-page__text-link:hover {
  color: #f1d782;
  text-decoration-color: currentcolor;
}

.expert-page__credential {
  position: relative;
  z-index: 1;
  display: flex;
  min-width: 0;
  padding: clamp(24px, 4vw, 38px);
  color: var(--lk-muted);
  background: rgb(255 255 255 / 97%);
  border: 1px solid rgb(255 255 255 / 64%);
  border-radius: 16px;
  box-shadow: 0 22px 58px rgb(0 0 0 / 22%);
  flex-direction: column;
}

.expert-page__credential img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 235px;
  margin: 0 auto 26px;
  object-fit: contain;
}

.expert-page__credential-copy {
  padding-top: 22px;
  border-top: 1px solid var(--lk-line);
}

.expert-page__credential-copy p {
  margin-bottom: 10px;
  font-size: 0.9rem;
  line-height: 1.55;
}

.expert-page__credential-copy p:last-child {
  margin-bottom: 0;
}

.expert-page__credential-copy strong {
  color: var(--lk-navy);
}

.expert-page__intro {
  display: grid;
  grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
  gap: clamp(38px, 8vw, 100px);
}

.expert-page__intro .practice-detail__wide-copy {
  color: var(--lk-muted);
  font-size: 1.06rem;
}

.expert-page__focus-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.expert-page__focus-grid article {
  position: relative;
  overflow: hidden;
  min-height: 265px;
  padding: clamp(27px, 4vw, 38px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-radius: 14px;
  box-shadow: 0 10px 32px rgb(33 41 63 / 6%);
}

.expert-page__focus-grid article::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: var(--lk-gold);
  content: "";
}

.expert-page__focus-grid article:nth-child(2)::before {
  background: var(--lk-blue);
}

.expert-page__focus-grid article:nth-child(3)::before {
  background: var(--lk-green);
}

.expert-page__focus-grid article > span {
  display: grid;
  width: 42px;
  height: 42px;
  margin-bottom: 31px;
  color: var(--lk-blue-dark);
  background: var(--lk-surface);
  border-radius: 50%;
  font-size: 0.77rem;
  font-weight: 850;
  place-items: center;
}

.expert-page__focus-grid h3 {
  font-size: clamp(1.2rem, 2vw, 1.42rem);
}

.expert-page__focus-grid p {
  margin-bottom: 0;
  color: var(--lk-muted);
}

.expert-page__scope {
  margin-block: var(--detail-space);
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(290px, 0.88fr);
  align-items: stretch;
  gap: 20px;
}

.expert-page__scope > article {
  padding: clamp(32px, 5vw, 52px);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 15px;
}

.expert-page__scope > article:first-child {
  background: var(--lk-white);
  box-shadow: 0 10px 32px rgb(33 41 63 / 5%);
}

.expert-page__scope .practice-detail__checklist {
  margin-top: 26px;
}

.expert-page__scope-boundary {
  border-left: 5px solid var(--lk-gold) !important;
}

.expert-page__scope-boundary > p:not(.practice-detail__kicker) {
  color: var(--lk-muted);
}

.expert-page__scope-boundary > p:last-child {
  margin-bottom: 0;
  color: var(--lk-navy);
}

.expert-page__authority {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  align-items: center;
  padding: clamp(42px, 7vw, 72px);
  color: rgb(255 255 255 / 76%);
  background:
    radial-gradient(circle at 100% 0%, rgb(47 103 148 / 58%), transparent 42%),
    var(--lk-navy);
  border-radius: 18px;
  gap: clamp(38px, 7vw, 84px);
}

.expert-page__authority h2,
.expert-page__authority .practice-detail__kicker {
  color: var(--lk-white);
}

.expert-page__authority-head > p:last-child {
  margin-bottom: 0;
}

.expert-page__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 12px;
}

.expert-page__facts article {
  min-height: 155px;
  padding: clamp(24px, 4vw, 35px);
  border-right: 1px solid rgb(255 255 255 / 14%);
  border-bottom: 1px solid rgb(255 255 255 / 14%);
}

.expert-page__facts article:nth-child(2n) {
  border-right: 0;
}

.expert-page__facts article:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.expert-page__facts strong {
  display: block;
  margin-bottom: 10px;
  color: var(--lk-white);
  font-size: clamp(1.6rem, 3vw, 2.25rem);
  line-height: 1;
}

.expert-page__facts article:last-child strong {
  color: #e2c76f;
}

.expert-page__facts article {
  font-size: 0.9rem;
  line-height: 1.45;
}

.expert-page__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 15px;
}

.expert-page__steps li {
  position: relative;
  min-height: 250px;
  padding: clamp(25px, 3vw, 34px);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-radius: 12px;
}

.expert-page__steps span {
  display: block;
  margin-bottom: 31px;
  color: var(--lk-blue-dark);
  font-size: 1.65rem;
  font-weight: 300;
}

.expert-page__steps h3 {
  font-size: 1.12rem;
}

.expert-page__steps p {
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: 0.91rem;
}

.expert-page__audience-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.expert-page__audience-grid article {
  display: flex;
  min-height: 285px;
  padding: clamp(27px, 4vw, 39px);
  background: var(--lk-white);
  border: 1px solid var(--lk-line);
  border-top: 5px solid var(--lk-green);
  border-radius: 13px;
  box-shadow: 0 10px 34px rgb(33 41 63 / 6%);
  flex-direction: column;
}

.expert-page__audience-grid article:nth-child(2) {
  border-top-color: var(--lk-gold);
}

.expert-page__audience-grid article:nth-child(3) {
  border-top-color: var(--lk-blue);
}

.expert-page__audience-label {
  margin-bottom: 20px;
  color: var(--lk-blue-dark);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.expert-page__audience-grid h3 {
  font-size: clamp(1.18rem, 2vw, 1.42rem);
}

.expert-page__audience-grid article > p:not(.expert-page__audience-label) {
  color: var(--lk-muted);
}

.expert-page__audience-grid .home-text-link {
  margin-top: auto;
  padding-top: 18px;
}

.expert-page__directory {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  margin-top: var(--detail-space);
  padding: clamp(36px, 6vw, 62px);
  background:
    radial-gradient(circle at 100% 0%, rgb(189 160 82 / 16%), transparent 42%),
    var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-left: 6px solid var(--lk-gold);
  border-radius: 15px;
  gap: 36px;
}

.expert-page__directory > div:first-child {
  max-width: 850px;
}

.expert-page__directory > div:first-child > p:not(.practice-detail__kicker, .expert-page__directory-date) {
  color: var(--lk-muted);
}

.expert-page__directory-date {
  margin: 18px 0 0;
  color: var(--lk-muted);
  font-size: 0.8rem;
  font-weight: 750;
}

.expert-page__cta {
  background:
    radial-gradient(circle at 0 100%, rgb(189 160 82 / 24%), transparent 36%),
    linear-gradient(135deg, var(--lk-blue-dark), var(--lk-navy));
}

.expert-trust {
  display: grid;
  grid-template-columns: minmax(170px, 0.42fr) minmax(0, 1.58fr);
  align-items: center;
  padding: clamp(28px, 5vw, 48px);
  background: var(--lk-surface-soft);
  border: 1px solid var(--lk-line);
  border-left: 5px solid var(--lk-gold);
  border-radius: 14px;
  gap: clamp(26px, 5vw, 52px);
}

.expert-trust__logo {
  display: block;
  width: 100%;
  height: auto;
  max-height: 125px;
  object-fit: contain;
}

.expert-trust__copy h2,
.expert-trust__copy h3 {
  margin-bottom: 12px;
}

.expert-trust__copy p {
  color: var(--lk-muted);
}

.expert-trust__links {
  display: flex;
  gap: 10px 20px;
  flex-wrap: wrap;
}

.footer-bdsf {
  display: flex;
  flex: 1 0 100%;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding: 20px 0 4px;
  border-top: 1px solid rgb(33 41 63 / 9%);
  gap: 24px;
}

.footer-bdsf img {
  display: block;
  width: min(100%, 360px);
  height: auto;
  max-height: 72px;
  object-fit: contain;
  object-position: left center;
}

.footer-bdsf__copy {
  max-width: 520px;
  margin-left: auto;
  text-align: right;
}

.footer-bdsf__copy p {
  margin: 0;
  color: var(--lk-muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

.footer-bdsf__copy a {
  color: var(--lk-blue-dark);
  font-weight: 750;
}

@media (max-width: 980px) {
  .expert-page__hero,
  .expert-page__intro,
  .expert-page__scope,
  .expert-page__authority {
    grid-template-columns: 1fr;
  }

  .expert-page__credential {
    width: 100%;
    max-width: 650px;
  }

  .expert-page__focus-grid,
  .expert-page__audience-grid {
    grid-template-columns: 1fr;
  }

  .expert-page__focus-grid article,
  .expert-page__audience-grid article {
    min-height: 0;
  }

  .expert-page__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .expert-page__directory {
    grid-template-columns: 1fr;
    align-items: start;
  }
}

@media (max-width: 700px) {
  .expert-page__hero,
  .expert-page__authority,
  .expert-page__directory,
  .expert-trust {
    margin-inline: -8px;
    border-radius: 12px;
  }

  .expert-page__hero,
  .expert-page__authority,
  .expert-page__directory {
    padding: 34px 24px;
  }

  .expert-page__hero {
    gap: 34px;
  }

  .expert-page__actions,
  .expert-trust__links {
    align-items: stretch;
    flex-direction: column;
  }

  .expert-page__actions .lk-button {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .expert-page__credential {
    padding: 24px 20px;
  }

  .expert-page__credential img {
    max-height: 190px;
  }

  .expert-page__facts,
  .expert-page__steps {
    grid-template-columns: 1fr;
  }

  .expert-page__facts article {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgb(255 255 255 / 14%);
  }

  .expert-page__facts article:nth-last-child(2) {
    border-bottom: 1px solid rgb(255 255 255 / 14%);
  }

  .expert-page__facts article:last-child {
    border-bottom: 0;
  }

  .expert-page__steps li {
    min-height: 0;
  }

  .expert-trust {
    grid-template-columns: 1fr;
    padding: 30px 24px;
  }

  .expert-trust__logo {
    width: min(100%, 330px);
    object-position: left center;
  }

  .footer-bdsf {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-bdsf__copy {
    max-width: none;
    margin-left: 0;
    text-align: left;
  }
}


/* Feinabstimmung: BDSF-Vertrauensleiste im Footer */
#footer .inside {
  grid-template-areas:
    "brand contact action"
    "bdsf bdsf bdsf"
    "legal legal legal";
}

.expert-trust {
  grid-template-columns: minmax(260px, 0.52fr) minmax(0, 1.48fr);
}

.expert-trust__logo {
  width: min(100%, 380px);
  max-height: 145px;
}

.footer-bdsf {
  grid-area: bdsf;
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
  align-items: center;
  justify-content: stretch;
  margin: 0;
  padding: 24px 28px;
  background: rgb(255 255 255 / 64%);
  border: 1px solid rgb(33 41 63 / 10%);
  border-radius: 12px;
  gap: clamp(30px, 6vw, 76px);
}

.footer-bdsf > a {
  display: block;
  line-height: 0;
}

.footer-bdsf img {
  width: min(100%, 390px);
  max-height: 88px;
}

.footer-bdsf__copy strong {
  color: var(--lk-navy);
}

@media (max-width: 1050px) {
  #footer .inside {
    grid-template-areas:
      "brand contact"
      "action action"
      "bdsf bdsf"
      "legal legal";
  }
}

@media (max-width: 700px) {
  #footer .inside {
    grid-template-areas:
      "brand"
      "contact"
      "action"
      "bdsf"
      "legal";
  }

  .expert-trust {
    grid-template-columns: 1fr;
  }

  .footer-bdsf {
    grid-template-columns: 1fr;
    padding: 23px 20px;
  }

  .footer-bdsf img {
    width: min(100%, 360px);
  }
}

/* Verspielte 404-Seite */
.error-404 {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
  align-items: center;
  min-height: min(690px, calc(100vh - 250px));
  padding: clamp(40px, 6vw, 76px);
  overflow: hidden;
  background: var(--lk-surface-soft);
  border: 1px solid rgb(33 41 63 / 10%);
  border-radius: 22px;
  box-shadow: 0 20px 60px rgb(33 41 63 / 9%);
  gap: clamp(34px, 6vw, 76px);
}

.error-404::before {
  position: absolute;
  z-index: -1;
  top: -135px;
  left: -105px;
  width: 330px;
  height: 330px;
  background: radial-gradient(circle, rgb(120 152 67 / 17%) 0 7%, rgb(120 152 67 / 7%) 22%, transparent 66%);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.error-404::after {
  position: absolute;
  z-index: -1;
  right: -70px;
  bottom: -95px;
  width: 260px;
  height: 260px;
  border: 1px solid rgb(47 103 148 / 14%);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.error-404__copy,
.error-404__visual {
  position: relative;
  z-index: 1;
}

.error-404__copy {
  max-width: 570px;
}

.error-404__eyebrow {
  margin: 0 0 18px;
  color: var(--lk-green);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.13em;
}

.error-404__code {
  margin: 0 0 24px;
  color: var(--lk-blue-dark);
  font-size: clamp(6.2rem, 12vw, 10.5rem);
  font-weight: 800;
  line-height: 0.72;
  letter-spacing: -0.075em;
  text-shadow: 8px 8px 0 rgb(120 152 67 / 13%);
}

.error-404 h1 {
  max-width: 620px;
  margin-bottom: 22px;
  font-size: clamp(2.15rem, 4.3vw, 3.65rem);
  letter-spacing: -0.04em;
}

.error-404__lead {
  max-width: 560px;
  margin-bottom: 0;
  color: var(--lk-muted);
  font-size: clamp(1.08rem, 1.7vw, 1.25rem);
  line-height: 1.58;
}

.error-404__actions {
  display: flex;
  align-items: center;
  margin-top: 32px;
  gap: 12px;
  flex-wrap: wrap;
}

.error-404__text-link {
  display: inline-flex;
  align-items: center;
  padding: 11px 6px;
  color: var(--lk-blue-dark);
  font-weight: 750;
  text-decoration: none;
  gap: 8px;
}

.error-404__text-link span {
  transition: transform 160ms ease;
}

.error-404__text-link:hover span {
  transform: translateX(4px);
}

.error-404__visual {
  margin: 0;
  text-align: center;
}

.error-404__visual::before {
  position: absolute;
  z-index: -1;
  inset: 11% 6% 13%;
  background: radial-gradient(circle, rgb(255 255 255 / 94%) 0 38%, rgb(255 255 255 / 50%) 58%, transparent 72%);
  border-radius: 50%;
  content: "";
}

.error-404__visual img {
  display: block;
  width: min(100%, 740px);
  margin-inline: auto;
  filter: drop-shadow(0 18px 28px rgb(33 41 63 / 11%));
}

.error-404__visual figcaption {
  margin-top: 8px;
  color: var(--lk-muted);
  font-size: 0.9rem;
  font-style: italic;
  text-align: right;
}

@media (max-width: 920px) {
  .error-404 {
    grid-template-columns: 1fr;
    min-height: 0;
    gap: 34px;
  }

  .error-404__copy {
    max-width: 700px;
  }

  .error-404__visual {
    width: min(100%, 720px);
    margin-inline: auto;
  }

  .error-404__visual img {
    max-height: 390px;
    object-fit: contain;
  }
}

@media (max-width: 620px) {
  .error-404 {
    margin-inline: -8px;
    padding: 34px 22px 30px;
    border-radius: 14px;
  }

  .error-404__code {
    margin-bottom: 20px;
    font-size: clamp(5.6rem, 31vw, 7.6rem);
    text-shadow: 6px 6px 0 rgb(120 152 67 / 13%);
  }

  .error-404 h1 {
    font-size: clamp(2rem, 10vw, 2.75rem);
  }

  .error-404__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .error-404__actions .lk-button {
    width: 100%;
  }

  .error-404__text-link {
    justify-content: center;
  }

  .error-404__visual img {
    max-height: 285px;
  }

  .error-404__visual figcaption {
    text-align: center;
  }
}


