/* ============================================================
   Partnerseiten /kanzlei/ralf-hoevemeyer und /kanzlei/markus-winter
   Namensraum pt-. Header, Kontakt und Footer aus /css/original.css.
   ============================================================ */
.pt-container { width: 100%; max-width: 1312px; margin-inline: auto; padding-inline: 24px; }
@media (min-width: 768px) { .pt-container { padding-inline: 32px; } }
.pt-akzent {
  display: inline-block; font-style: italic;
  background: linear-gradient(to right, #ffd80c 0%, #ff8b04 88%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  padding-right: .15em; margin-right: -.05em;
}

/* ---------- Kopf ---------- */
.pt-kopf { background: #34333c; color: #fff; padding: 64px 0 80px; overflow: hidden; }
@media (min-width: 1024px) { .pt-kopf { padding: 96px 0 112px; } }
.pt-kopf__grid { display: grid; grid-template-columns: 1fr; gap: 48px; align-items: center; }
@media (min-width: 1024px) { .pt-kopf__grid { grid-template-columns: 5fr 7fr; gap: 72px; } }
.pt-kopf__bildwrap { position: relative; max-width: 460px; }
.pt-kopf__deko {
  position: absolute; left: -24px; bottom: -24px; width: 60%; height: 60%; border-radius: 32px;
  background-image: linear-gradient(150deg, #ffd50c 0%, #ff6c01 100%);
}
.pt-kopf__bild { position: relative; overflow: hidden; border-radius: 32px; aspect-ratio: 900 / 1059; background: #4a4953; }
.pt-kopf__bild img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 10%; }
.pt-h1 {
  margin: 0; font-weight: 700; text-transform: uppercase; line-height: 1.05;
  letter-spacing: -.01em; color: #fff; font-size: clamp(2.125rem, 6vw, 4.5rem); /* Handy 34 px wie die übrigen Heros */
}
.pt-titel { margin: 18px 0 0; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #f59b00; }
.pt-zitat { margin: 28px 0 0; max-width: 36rem; font-size: 19px; line-height: 1.55; color: rgba(255, 255, 255, .9); }
.pt-knoepfe { margin-top: 36px; display: flex; flex-wrap: wrap; gap: 12px; }

/* ---------- Kurzvita und Schwerpunkte ---------- */
.pt-abschnitt { background: #fff; padding: 80px 0 96px; }
.pt-inhalt__grid { display: grid; grid-template-columns: 1fr; gap: 56px; }
@media (min-width: 1024px) { .pt-inhalt__grid { grid-template-columns: 1fr 1fr; gap: 80px; } }
.pt-h2 { margin: 12px 0 0; font-weight: 700; text-transform: uppercase; line-height: 1.15; color: #34333c; font-size: clamp(1.8rem, 3.6vw, 2.6rem); }
.pt-vita { list-style: none; margin: 32px 0 0; padding: 0; }
.pt-vita__eintrag { display: grid; grid-template-columns: 132px 1fr; gap: 20px; padding: 14px 0; }
/* Zeiträume wie „2015–heute“ brauchen die breitere Spalte; auf dem Handy untereinander */
@media (max-width: 479px) { .pt-vita__eintrag { grid-template-columns: 1fr; gap: 4px; } }
.pt-vita__jahr { font-size: 20px; font-weight: 700; color: #f59b00; line-height: 1.4; }
.pt-vita__text { margin: 0; font-size: 16px; line-height: 1.6; color: rgba(52, 51, 60, .85); }
/* Schwerpunkte: Stichpunkte mit orangem Quadrat (wie die Punkte im Logo) */
.pt-punkte { list-style: none; margin: 46px 0 0; padding: 0; display: grid; gap: 18px; }
.pt-punkte li {
  position: relative; padding-left: 30px;
  font-size: 16px; line-height: 1.6; color: rgba(52, 51, 60, .85);
}
.pt-punkte li::before {
  content: ""; position: absolute; left: 0; top: .42em;
  width: 12px; height: 12px; border-radius: 3px; background: #f59b00;
}
.pt-weiter { margin-top: 64px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; }
.pt-link {
  font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  color: #34333c; text-decoration: none; border-bottom: 2px solid #f59b00; padding-bottom: 2px;
}
.pt-link:hover { color: #c97a00; }
/* LinkedIn-Profil: runder Icon-Button wie im Footer, neben den beiden Buttons */
.pt-knoepfe { align-items: center; }
.pt-linkedin {
  display: grid; place-items: center; width: 48px; height: 48px; border-radius: 9999px;
  background: #fff; color: #34333c; transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.pt-linkedin svg { width: 22px; height: 22px; fill: currentColor; }
@media (hover: hover) { .pt-linkedin:hover { background: #f59b00; color: #fff; transform: translateY(-2px); } }
