/* ==========================================================================
   gt-blocks.css — die Bruecke zwischen Designsystem und Core-Bloecken

   ERZEUGT VON scripts/gt-bridge.py. Nicht von Hand aendern, sondern die
   Uebersetzungstabelle dort — sonst ist die Aenderung beim naechsten
   "make blocks-bridge" wieder weg.

   Quelle: gt-modules.css  ·  68 uebersetzte Regeln
   ========================================================================== */

/* Core-Bloecke bringen eigene Abstaende mit. figure hat im Browser ausserdem
   von Haus aus Aussenabstand — im Designsystem sitzen Bilder dagegen buendig
   in ihrem Kasten. */
.gt-hero__media, .gt-media__img .wp-block-image, .gt-audio__art,
.gt-figure, figure.gt-table-wrap {margin: 0;}

/* Das Modellbild steht bewusst NICHT in der Liste darueber: .gt-model__img
   setzt "margin: 0 auto" und zentriert sich damit selbst. Ein pauschales
   "margin: 0" hat genau das ueberschrieben — das Bild sass danach linksbuendig
   in der Karte statt mittig. */

/* Astra gestaltet Knoepfe mit eigener Typografie: Lato statt der Seitenschrift,
   14px statt 16px, Versalien und 3px Sperrung. Das Designsystem setzt davon
   nichts — .gt-btn erbt die Schrift des Fliesstextes. Als <a class="gt-btn">
   traf Astras Regel nicht zu; als core/button schon. */
.wp-block-button[class*="gt-btn"] > .wp-block-button__link {font-family: inherit;
  font-size: inherit; letter-spacing: inherit; text-transform: none;}

/* Im Designsystem ist der Preis neben dem Knopf ein <span>. Als Block ist er
   ein Absatz und braecht damit den Aussenabstand eines Absatzes mit. */
p.gt-hero__price {margin: 0;}

/* Der Editor stellt Bloecke im Canvas mit eigenen Abstaenden dar. Innerhalb
   der Module stoert das, weil die Module ihre Abstaende selbst setzen. */
.gt-hero :where(.wp-block-group), .gt-media :where(.wp-block-group),
.gt-fit :where(.wp-block-group), .gt-linkbox :where(.wp-block-group) {margin-block: 0;}

/* Die Tabelle des Designsystems hat keinen eigenen Rahmen — den setzt der
   Wrapper. core/table bringt aber seinen eigenen mit. */
.gt-table-wrap > table :where(td, th) {border-color: var(--gt-line);}

/* Bei core/button traegt der Wrapper die gt-Klasse, gestaltet wird aber der
   Link darin. Ohne diese Zeile bekaeme der Knopf alles doppelt — Polsterung,
   Rahmen und Hintergrund — und waere sichtbar zu gross. */
.wp-block-button:where([class*="gt-btn"]) {display: inline-block; padding: 0;
  border: 0; border-radius: 0; background: none; box-shadow: none;
  color: inherit; font-weight: inherit;}

/* Astra polstert jeden Block, der direkt in .entry-content sitzt, mit 3em.
   Vor der Umstellung standen die Abschnitte dort zwar auch schon, aber ohne
   die Klasse wp-block-group — die Regel griff also nicht. Die Module setzen
   ihre Abstaende selbst; was eigene Polsterung hat, bekommt sie weiter unten
   mit hoeherer Spezifitaet zurueck. */
.entry-content > .wp-block-group[class*="gt-"],
.entry-content > .wp-block-list[class*="gt-"] {padding: 0;}

/* Astra polstert Listen im Inhalt zusaetzlich mit 40px Einzug
   (.entry-content ul), setzt ihnen einen Aussenabstand und hebt die
   Breitenbegrenzung auf. Ein gt-Modul, das als core/list gespeichert ist,
   traegt alles drei und steht dadurch schief neben allen anderen
   Abschnitten — auf der Startseite stand die Modellleiste so 78px je Seite
   ueber. Zwei Klassen im Selektor schlagen Astras eine.

   --gt-content ist die Inhaltsbreite des Themes; ein Modul, das breiter
   werden will, bricht dann um, statt ueberzustehen. */
.entry-content > .wp-block-list[class*="gt-"] {
  margin-left: auto; margin-right: auto; padding-left: 0; list-style: none;
  max-width: var(--gt-content);}

/* Ein Schritt besteht im Designsystem aus einem <li> mit einem <div> darin.
   Als Pattern sind Ueberschrift und Absatz direkte Kinder der Gruppe — sonst
   muesste die Redaktion eine Gruppe in einer Gruppe pflegen. Damit werden sie
   aber zu zwei Rasterzeilen, und der Zeilenabstand des Rasters zoege sie
   auseinander. Den Abstand setzt die Ueberschrift selbst. */
.gt-steps > .wp-block-group {row-gap: 0;}

/* Empfehlungskacheln (.gt-advice). Im Designsystem ist jede Kachel ein <a>,
   der Bild, Anlass, Modell und Begruendung umschliesst. Einen Link um mehrere
   Bloecke kann der Editor nicht bauen — als HTML-Block war das Modul deshalb
   im Editor unsichtbar und nur im Code zu aendern.

   Als Bloecke ist die Kachel eine Gruppe, und der Link sitzt am Modellnamen.
   Ein unsichtbarer Ueberzug (::after) macht trotzdem die ganze Kachel
   klickbar. Die Regeln hier sind die des <a> aus gt-modules.css, nur an der
   Gruppe. */
.gt-advice > .wp-block-group {
  position: relative; display: grid; grid-template-columns: 5rem minmax(0, 1fr);
  gap: .3rem 1rem; height: 100%; align-content: start; padding: 1.1rem 1.2rem;
  background: var(--gt-surface-2); border: 1px solid var(--gt-line);
  border-radius: var(--gt-radius); border-left: 3px solid var(--gt-accent);
  transition: transform .15s ease, box-shadow .15s ease;}
.gt-advice > .wp-block-group:hover,
.gt-advice > .wp-block-group:focus-within {transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(47,43,38,.09);}
.gt-advice > .wp-block-group > * {margin: 0;}
.gt-advice > .wp-block-group > .wp-block-image {grid-row: 1 / 4; width: 5rem; height: 5rem;}
.gt-advice > .wp-block-group > .wp-block-image img {width: 100%; height: 100%;
  border-radius: 50%; object-fit: cover; background: var(--gt-surface-3);}
/* gt-modules.css gestaltet jedes <a> in .gt-advice als Kachel. Der Link im
   Modellnamen ist aber nur noch Text — ohne das hier stuende der Name in
   einer eigenen kleinen Kachel mitten in der grossen. */
.gt-advice .gt-advice__modell a,
.gt-advice .gt-advice__modell a:hover,
.gt-advice .gt-advice__modell a:focus-visible {display: inline; height: auto; padding: 0;
  border: 0; border-radius: 0; background: none; box-shadow: none; transform: none;
  color: inherit; text-decoration: none;}
.gt-advice .gt-advice__modell a::after {content: ""; position: absolute; inset: 0;
  border-radius: inherit;}
.gt-advice .gt-advice__modell a:focus-visible {outline: none;}
.gt-advice > .wp-block-group:has(a:focus-visible) {outline: 2px solid var(--gt-accent);
  outline-offset: 2px;}

.gt-numbered > .wp-block-group {counter-increment: gtnum; display: grid; grid-template-columns: auto 1fr; gap: 1.1rem; align-items: start;}
.gt-numbered > .wp-block-group::before {content: counter(gtnum, decimal-leading-zero);
  font-size: clamp(1.5rem, 3.6vw, 2.1rem); font-weight: 700; line-height: 1;
  color: var(--gt-accent); font-variant-numeric: tabular-nums;
  padding-top: .05em;}
.gt-numbered--boxed > .wp-block-group {background: var(--gt-surface-2); border: 1px solid var(--gt-line); border-radius: var(--gt-radius); padding: 1.1rem 1.3rem;}

@media (min-width: 760px) {
	.gt-numbered--cols > .wp-block-group {grid-template-columns: 1fr; gap: .5rem;}
}

.wp-block-button.gt-btn > .wp-block-button__link {display: inline-block; padding: .95em 1.7em; border-radius: var(--gt-btn-radius); font-weight: 600; line-height: 1.2; text-decoration: none; border: 2px solid var(--gt-accent); background: var(--gt-accent); color: var(--gt-on-accent); transition: background-color .15s linear, border-color .15s linear, color .15s linear;}
.wp-block-button.gt-btn > .wp-block-button__link:hover, .wp-block-button.gt-btn > .wp-block-button__link:focus {background: var(--gt-accent-ink); border-color: var(--gt-accent-ink); color: var(--gt-on-accent);}
.wp-block-button.gt-btn--ghost > .wp-block-button__link {background: transparent; color: var(--gt-accent-ink);}
.wp-block-button.gt-btn--ghost > .wp-block-button__link:hover, .wp-block-button.gt-btn--ghost > .wp-block-button__link:focus {background: var(--gt-accent); color: var(--gt-on-accent);}
.gt-steps > .wp-block-group {counter-increment: gtstep; display: grid; grid-template-columns: 2.5rem 1fr; gap: 1rem; align-items: start; padding: 1.1rem 1.25rem; border: 1px solid var(--gt-line); border-radius: var(--gt-radius-sm); background: var(--gt-surface-2);}
.gt-steps > .wp-block-group::before {content: counter(gtstep); width: 2.5rem; height: 2.5rem; display: grid; place-items: center; border-radius: 50%; background: var(--gt-accent); color: var(--gt-on-accent); font-weight: 700;}
.gt-table-wrap > table {width: 100%; border-collapse: collapse; margin: 0; border-width: 0;}
.gt-table-wrap > table th, .gt-table-wrap > table td {padding: .9rem 1rem; text-align: left; vertical-align: top; border: 0; border-bottom: 1px solid var(--gt-line);}
.gt-table-wrap > table thead th {background: var(--gt-surface); font-weight: 700; color: var(--gt-ink);}
.gt-table-wrap > table tbody th {font-weight: 600; color: var(--gt-ink); width: 30%;}
.gt-table-wrap > table tbody tr:last-child th, .gt-table-wrap > table tbody tr:last-child td {border-bottom: 0;}
.gt-table-wrap.gt-table--zebra > table tbody tr:nth-child(even) {background: rgba(227, 218, 204, .18);}
.gt-table-wrap.gt-table--compact > table th, .gt-table-wrap.gt-table--compact > table td {padding: .6rem .8rem; font-size: .94rem;}
.gt-table-wrap > table .gt-is-best {background: rgba(138, 109, 59, .09); box-shadow: inset 3px 0 0 var(--gt-accent);}

@media (max-width: 782px) {
	.gt-table-wrap > table thead {position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px);}
	.gt-table-wrap > table, .gt-table-wrap > table tbody, .gt-table-wrap > table tr, .gt-table-wrap > table th, .gt-table-wrap > table td {display: block; width: auto;}
	.gt-table-wrap > table tr {border: 1px solid var(--gt-line); border-radius: var(--gt-radius-sm); margin-bottom: 1rem; background: var(--gt-surface-2); padding: .25rem 0;}
	.gt-table-wrap.gt-table--zebra > table tbody tr:nth-child(even) {background: var(--gt-surface-2);}
	.gt-table-wrap > table tbody th {background: var(--gt-surface); border-radius: var(--gt-radius-sm) var(--gt-radius-sm) 0 0; width: auto;}
	.gt-table-wrap > table td {border-bottom: 1px solid var(--gt-line);}
	.gt-table-wrap > table tr td:last-child {border-bottom: 0;}
	.gt-table-wrap > table td::before {content: attr(data-label); display: block; font-size: .82rem; font-weight: 700; color: var(--gt-ink-soft); margin-bottom: .2em;}
	.gt-table-wrap > table .gt-is-best {box-shadow: none;}
}

.gt-quote cite {display: flex; align-items: center; gap: .7rem; color: var(--gt-ink-soft); font-size: .95rem;}
.gt-quote cite img {width: 40px; height: 40px; border-radius: 50%; object-fit: cover; flex: none;}
.gt-cta .wp-block-button.gt-btn > .wp-block-button__link {background: var(--gt-on-accent); color: var(--gt-accent-ink); border-color: var(--gt-on-accent);}
.gt-cta .wp-block-button.gt-btn > .wp-block-button__link:hover, .gt-cta .wp-block-button.gt-btn > .wp-block-button__link:focus {background: var(--gt-surface); border-color: var(--gt-surface); color: var(--gt-accent-ink);}
.gt-cta--quiet .wp-block-button.gt-btn > .wp-block-button__link {background: var(--gt-accent); color: var(--gt-on-accent); border-color: var(--gt-accent);}
.gt-cta--quiet .wp-block-button.gt-btn > .wp-block-button__link:hover, .gt-cta--quiet .wp-block-button.gt-btn > .wp-block-button__link:focus {background: var(--gt-accent-ink); border-color: var(--gt-accent-ink); color: var(--gt-on-accent);}

@media (max-width: 782px) {
	.gt-sticky .wp-block-button.gt-btn > .wp-block-button__link {padding: .8em 1.3em;}
}


@media (prefers-reduced-motion: reduce) {
	.wp-block-button.gt-btn > .wp-block-button__link {transition: none;}
}

.gt-table-wrap.gt-table--hl2 > table tbody td:nth-child(2) {background: rgba(176, 113, 58, .08); box-shadow: inset 3px 0 0 var(--gt-accent);}
.gt-table-wrap.gt-table--hl2 > table thead th:nth-child(2) {background: rgba(176, 113, 58, .16);}

@media (max-width: 782px) {
	.gt-table-wrap.gt-table--hl2 > table tbody td:nth-child(2) {box-shadow: none;}
}

.gt-price .wp-block-button.gt-btn > .wp-block-button__link {margin-top: .5rem;}
.gt-booking .wp-block-button.gt-btn > .wp-block-button__link {margin-top: .4rem;}
.wp-block-image.gt-model__img > img {display: block; width: 100%; max-width: 190px; margin: 0 auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; background: var(--gt-surface);}
.gt-numbered--flow > .wp-block-group {position: relative; grid-template-columns: 3rem 1fr; gap: 1.1rem; padding-bottom: 1.8rem; align-items: start;}
.gt-numbered--flow > .wp-block-group:last-child {padding-bottom: 0;}
.gt-numbered--flow > .wp-block-group::before {content: counter(gtnum, decimal-leading-zero);
  position: relative; z-index: 1;
  width: 3rem; height: 3rem; padding-top: 0;
  border-radius: 50%; border: 2px solid var(--gt-accent);
  background: var(--gt-surface-2);
  display: grid; place-items: center;
  font-size: .95rem; line-height: 1;}
.gt-numbered--flow > .wp-block-group::after {content: ""; position: absolute;
  left: 1.5rem; top: 3rem; bottom: .2rem;
  width: 2px; margin-left: -1px;
  background: var(--gt-line);}
.gt-numbered--flow > .wp-block-group:last-child::after {display: none;}

@media (min-width: 760px) {
	.gt-numbered--flow > .wp-block-group {grid-template-columns: 1fr; gap: .9rem; padding-bottom: 0;}
	.gt-numbered--flow > .wp-block-group::after {left: 3.4rem; right: -1.8rem; top: 1.5rem; bottom: auto;
    width: auto; height: 2px; margin-left: 0;}
}

.wp-block-button.gt-btn--lg > .wp-block-button__link {padding: 1.1em 2.2em; font-size: 1.02rem;}
.wp-block-button.gt-btn--ghost > .wp-block-button__link {background: transparent; color: var(--gt-accent-ink); border-color: var(--gt-accent);}
.wp-block-button.gt-btn--ghost > .wp-block-button__link:hover, .wp-block-button.gt-btn--ghost > .wp-block-button__link:focus {background: var(--gt-accent); border-color: var(--gt-accent); color: var(--gt-on-accent);}
.gt-pdp__box .wp-block-button.gt-btn > .wp-block-button__link {width: 100%; text-align: center;}
.wp-block-button.gt-btn > .wp-block-button__link, .wp-block-button.gt-btn > .wp-block-button__link:hover, .wp-block-button.gt-btn > .wp-block-button__link:focus, .wp-block-button.gt-btn > .wp-block-button__link:visited {text-decoration: none;}
.gt-numbered > .wp-block-group > * {grid-column: 2; min-width: 0;}

@media (min-width: 760px) {
	.gt-numbered--flow > .wp-block-group > *, .gt-numbered--cols > .wp-block-group > * {grid-column: 1;}
}

.gt-steps > .wp-block-group > * {grid-column: 2; min-width: 0;}

@media (max-width: 519px) {
	.gt-models--3 .wp-block-image.gt-model__img > img {width: 5.5rem; max-width: 5.5rem; flex: none; margin: 0;}
}


@media (max-width: 782px) {
	.gt-table-wrap > table tr {padding: 0; overflow: hidden;}
	.gt-table-wrap > table tbody th {padding: .7rem 1rem; font-size: .97rem; color: var(--gt-ink);
    border-bottom: 1px solid var(--gt-line);}
	.gt-table-wrap > table td {display: grid; grid-template-columns: 9.5rem minmax(0, 1fr);
    gap: .3rem .9rem; align-items: baseline;
    padding: .6rem 1rem; color: var(--gt-ink);}
	.gt-table-wrap > table td::before {margin-bottom: 0; font-size: .78rem; font-weight: 600;
    letter-spacing: .02em; color: var(--gt-ink-mute);
    line-height: 1.35;}
	.gt-table-wrap.gt-table--hl2 > table tbody td:nth-child(2) {background: var(--gt-surface-3);
    border-left: 3px solid var(--gt-accent);
    padding-left: calc(1rem - 3px);}
	.gt-table-wrap.gt-table--hl2 > table tbody td:nth-child(2)::before {color: var(--gt-accent-ink);}
	.gt-table-wrap > table td:not([data-label]) {grid-template-columns: minmax(0, 1fr);}
	.gt-table-wrap > table td:not([data-label])::before {display: none;}
}


@media (max-width: 479px) {
	.gt-table-wrap > table td[data-label] {grid-template-columns: minmax(0, 1fr); gap: .1rem;}
}

.gt-booking .wp-block-button.gt-btn > .wp-block-button__link {margin-top: .55rem;}

@media (max-width: 782px) {
	.gt-sticky .wp-block-button.gt-btn > .wp-block-button__link {white-space: nowrap;}
}

/* Eigene Polsterung der Module, gegen Astras Blockabstand. */
.entry-content > .wp-block-group.gt-check, .entry-content > .wp-block-list.gt-check, .entry-content > .wp-block-group.gt-trust, .entry-content > .wp-block-list.gt-trust, .entry-content > .wp-block-group.gt-steps, .entry-content > .wp-block-list.gt-steps, .entry-content > .wp-block-group.gt-next, .entry-content > .wp-block-list.gt-next, .entry-content > .wp-block-group.gt-idealist, .entry-content > .wp-block-list.gt-idealist, .entry-content > .wp-block-group.gt-idealist__meta, .entry-content > .wp-block-list.gt-idealist__meta, .entry-content > .wp-block-group.gt-list, .entry-content > .wp-block-list.gt-list, .entry-content > .wp-block-group.gt-stats, .entry-content > .wp-block-list.gt-stats, .entry-content > .wp-block-group.gt-verdict__why, .entry-content > .wp-block-list.gt-verdict__why, .entry-content > .wp-block-group.gt-define__alt, .entry-content > .wp-block-list.gt-define__alt, .entry-content > .wp-block-group.gt-numbered, .entry-content > .wp-block-list.gt-numbered, .entry-content > .wp-block-group.gt-badges, .entry-content > .wp-block-list.gt-badges {margin: 0; padding: 0; list-style: none;}
.entry-content > .wp-block-group.gt-badge, .entry-content > .wp-block-list.gt-badge {display: inline-block; font-size: .78rem; font-weight: 700; line-height: 1.4;
  border-radius: 999px; padding: .25em .8em;
  border: 1.5px solid var(--gt-accent); color: var(--gt-accent-ink); background: transparent;}
.entry-content > .wp-block-group.gt-panel, .entry-content > .wp-block-list.gt-panel {border: 1px solid var(--gt-line); border-radius: var(--gt-radius); background: var(--gt-surface-2); padding: clamp(1.15rem, 3vw, 1.6rem);}
.entry-content > .wp-block-group.gt-versus__col, .entry-content > .wp-block-list.gt-versus__col {padding: 1.3rem 1.45rem;}
.entry-content > .wp-block-group.gt-hero, .entry-content > .wp-block-list.gt-hero {background: var(--gt-surface); border-radius: var(--gt-radius); padding: clamp(1.5rem, 4vw, 2.75rem); margin: 0 0 var(--gt-space);}
.entry-content > .wp-block-group.gt-btn, .entry-content > .wp-block-list.gt-btn {display: inline-block; padding: .95em 1.7em; border-radius: var(--gt-btn-radius); font-weight: 600; line-height: 1.2; text-decoration: none; border: 2px solid var(--gt-accent); background: var(--gt-accent); color: var(--gt-on-accent); transition: background-color .15s linear, border-color .15s linear, color .15s linear;}
.entry-content > .wp-block-group.gt-answer, .entry-content > .wp-block-list.gt-answer {border-left: 4px solid var(--gt-accent); background: var(--gt-surface); border-radius: 0 var(--gt-radius-sm) var(--gt-radius-sm) 0; padding: 1.25rem 1.5rem;}
.entry-content > .wp-block-group.gt-verdict, .entry-content > .wp-block-list.gt-verdict {border: 2px solid var(--gt-accent); border-radius: var(--gt-radius); background: var(--gt-surface-2); padding: clamp(1.25rem, 3vw, 1.75rem); display: grid; gap: .8rem;}
.entry-content > .wp-block-group.gt-verdict__label, .entry-content > .wp-block-list.gt-verdict__label {justify-self: start; font-size: .8rem; font-weight: 700; background: var(--gt-accent); color: var(--gt-on-accent); border-radius: 999px; padding: .25em .9em;}
.entry-content > .wp-block-group.gt-define, .entry-content > .wp-block-list.gt-define {border: 1px solid var(--gt-line); border-radius: var(--gt-radius-sm); background: var(--gt-surface-2); padding: 1.25rem 1.5rem;}
.entry-content > .wp-block-group.gt-example, .entry-content > .wp-block-list.gt-example {border: 1px solid var(--gt-line); border-left: 4px solid var(--gt-accent); border-radius: 0 var(--gt-radius-sm) var(--gt-radius-sm) 0; background: var(--gt-surface-2); padding: 1.1rem 1.3rem; display: grid; gap: .6rem; align-content: start;}
.entry-content > .wp-block-group.gt-warn, .entry-content > .wp-block-list.gt-warn {border: 1px solid var(--gt-line); border-left: 4px solid var(--gt-warn); border-radius: 0 var(--gt-radius-sm) var(--gt-radius-sm) 0; padding: 1.1rem 1.35rem; background: var(--gt-surface-2);}
.entry-content > .wp-block-group.gt-toc, .entry-content > .wp-block-list.gt-toc {border: 1px solid var(--gt-line); border-radius: var(--gt-radius-sm); padding: 1.25rem 1.5rem;}
.entry-content > .wp-block-group.gt-audio, .entry-content > .wp-block-list.gt-audio {background: var(--gt-surface); border-radius: var(--gt-radius); padding: clamp(1.25rem, 3vw, 2rem); display: grid; gap: .9rem;}
.entry-content > .wp-block-group.gt-table__flag, .entry-content > .wp-block-list.gt-table__flag {display: inline-block; font-size: .72rem; font-weight: 700; background: var(--gt-accent); color: var(--gt-on-accent); border-radius: 999px; padding: .1em .6em; margin-left: .4em; vertical-align: .1em;}
.entry-content > .wp-block-group.gt-fit__col, .entry-content > .wp-block-list.gt-fit__col {border: 1px solid var(--gt-line); border-radius: var(--gt-radius-sm); padding: 1.25rem 1.4rem; background: var(--gt-surface-2);}
.entry-content > .wp-block-group.gt-card__body, .entry-content > .wp-block-list.gt-card__body {padding: 1.1rem 1.25rem 1.35rem; display: flex; flex-direction: column; gap: .5rem; flex: 1;}
.entry-content > .wp-block-group.gt-price, .entry-content > .wp-block-list.gt-price {border: 2px solid var(--gt-accent); border-radius: var(--gt-radius); padding: clamp(1.35rem, 3vw, 2rem); background: var(--gt-surface-2); display: grid; gap: 1rem;}
.entry-content > .wp-block-group.gt-faq__a, .entry-content > .wp-block-list.gt-faq__a {padding: 0 1.5rem 1.25rem 3.4rem;}
.entry-content > .wp-block-group.gt-quote, .entry-content > .wp-block-list.gt-quote {border: 0; border-left: 4px solid var(--gt-accent); background: var(--gt-surface); border-radius: 0 var(--gt-radius-sm) var(--gt-radius-sm) 0; margin: 0; padding: 1.4rem 1.6rem; font-style: normal; font-size: 1.05rem;}
.entry-content > .wp-block-group.gt-quote--pull, .entry-content > .wp-block-list.gt-quote--pull {border: 1px solid var(--gt-line); border-left: 0; border-radius: var(--gt-radius); background: var(--gt-surface-2); padding: clamp(1.6rem, 4vw, 2.4rem) clamp(1.6rem, 4vw, 2.4rem) clamp(1.4rem, 3vw, 1.8rem); position: relative;}
.entry-content > .wp-block-group.gt-note, .entry-content > .wp-block-list.gt-note {border: 1px dashed var(--gt-line); border-radius: var(--gt-radius-sm); padding: 1.1rem 1.35rem; background: var(--gt-surface-2);}
.entry-content > .wp-block-group.gt-cta, .entry-content > .wp-block-list.gt-cta {background: var(--gt-accent); color: var(--gt-on-accent); border-radius: var(--gt-radius); padding: clamp(1.5rem, 4vw, 2.5rem); display: grid; gap: 1rem; justify-items: start; position: relative; overflow: hidden;}
.entry-content > .wp-block-group.gt-linkbox, .entry-content > .wp-block-list.gt-linkbox {border-top: 2px solid var(--gt-line); padding-top: 1.4rem;}
.entry-content > .wp-block-group.gt-band, .entry-content > .wp-block-list.gt-band {background: var(--gt-surface); border-radius: var(--gt-radius); padding: clamp(1.5rem, 4vw, 2.75rem);}
.entry-content > .wp-block-group.gt-imgph, .entry-content > .wp-block-list.gt-imgph {display: block; width: 100%; aspect-ratio: 4 / 3; border: 2px dashed var(--gt-line); border-radius: var(--gt-radius); background: var(--gt-surface); display: grid; place-items: center; color: var(--gt-ink-mute); font-size: .9rem; text-align: center; padding: 1rem;}
.entry-content > .wp-block-group.gt-hero--plain, .entry-content > .wp-block-list.gt-hero--plain {background: transparent; padding-left: 0; padding-right: 0;}
.entry-content > .wp-block-group.gt-quote--pull, .entry-content > .wp-block-list.gt-quote--pull {padding-top: clamp(2.6rem, 6vw, 3.4rem);}
.entry-content > .wp-block-group.gt-notepad, .entry-content > .wp-block-list.gt-notepad {position: relative;
  background: #fffdf5;
  border: 1px solid var(--gt-line);
  border-radius: var(--gt-radius);
  padding: clamp(1.8rem, 4vw, 2.4rem) clamp(1.4rem, 4vw, 2rem) clamp(1.5rem, 4vw, 2rem) clamp(3.2rem, 7vw, 4rem);
  background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 33px, var(--gt-line-soft) 33px, var(--gt-line-soft) 34px);
  overflow: hidden;}
.entry-content > .wp-block-group.gt-booking__body, .entry-content > .wp-block-list.gt-booking__body {padding: clamp(1.4rem, 4vw, 2.1rem); display: grid; gap: .6rem; justify-items: start; align-content: center;}
.entry-content > .wp-block-group.gt-answer, .entry-content > .wp-block-list.gt-answer {position: relative; padding-top: 1.7rem; margin-top: .7rem;}
.entry-content > .wp-block-group.gt-answer__label, .entry-content > .wp-block-list.gt-answer__label {position: absolute; top: -.75rem; left: 1rem; margin: 0; background: var(--gt-accent); color: var(--gt-on-accent); font-size: .74rem; font-weight: 700; padding: .25em .8em; border-radius: 999px;}
.entry-content > .wp-block-group.gt-example__label, .entry-content > .wp-block-list.gt-example__label {display: inline-block; justify-self: start; background: var(--gt-surface-2); border: 1px solid var(--gt-line); border-radius: 999px; padding: .15em .7em; font-size: .78rem;}
.entry-content > .wp-block-group.gt-warn__title, .entry-content > .wp-block-list.gt-warn__title {display: inline-block; background: rgba(141, 74, 85, .1); border-radius: 999px; padding: .15em .7em; font-size: .82rem;}
.entry-content > .wp-block-group.gt-author, .entry-content > .wp-block-list.gt-author {display: flex; gap: 1rem; align-items: center; border: 1px solid var(--gt-line); border-radius: var(--gt-radius); background: var(--gt-surface-2); padding: 1rem 1.2rem;}
.entry-content > .wp-block-group.gt-gallery, .entry-content > .wp-block-list.gt-gallery {list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; grid-template-columns: repeat(2, 1fr);}
.entry-content > .wp-block-group.gt-audio, .entry-content > .wp-block-list.gt-audio {background: var(--gt-surface-2);
  border: 1px solid var(--gt-line);
  border-radius: var(--gt-radius);
  padding: clamp(1.4rem, 4vw, 2rem);
  gap: 1rem;
  position: relative;}
.entry-content > .wp-block-group.gt-models, .entry-content > .wp-block-list.gt-models {list-style: none; margin: 0; padding: 0; display: grid; gap: 1.1rem; grid-template-columns: repeat(2, 1fr);}
.entry-content > .wp-block-group.gt-model, .entry-content > .wp-block-list.gt-model {border: 1px solid var(--gt-line); border-radius: var(--gt-radius); background: var(--gt-surface-2); padding: 1.1rem 1.1rem 1.3rem; text-align: center; display: flex; flex-direction: column; gap: .5rem;}
.entry-content > .wp-block-group.gt-model__tag, .entry-content > .wp-block-list.gt-model__tag {align-self: center; font-size: .76rem; font-weight: 700; border: 1.5px solid var(--gt-accent); color: var(--gt-accent-ink); border-radius: 999px; padding: .18em .75em;}
.entry-content > .wp-block-group.gt-model__link, .entry-content > .wp-block-list.gt-model__link {margin-top: auto; padding-top: .4rem; font-weight: 600; color: var(--gt-accent-ink); text-decoration: underline; text-underline-offset: 3px;}
.entry-content > .wp-block-group.gt-linkbox, .entry-content > .wp-block-list.gt-linkbox {border-top: 0;
  background: var(--gt-surface);
  border-radius: var(--gt-radius);
  padding: clamp(1.5rem, 4vw, 2.25rem);}
.entry-content > .wp-block-group.gt-usps, .entry-content > .wp-block-list.gt-usps {display: grid; gap: .8rem 1.8rem; margin: 1.5rem 0 0; padding: 0; list-style: none;}
.entry-content > .wp-block-group.gt-btn--lg, .entry-content > .wp-block-list.gt-btn--lg {padding: 1.1em 2.2em; font-size: 1.02rem;}
.entry-content > .wp-block-group.gt-paths, .entry-content > .wp-block-list.gt-paths {display: grid; gap: 1rem; grid-template-columns: 1fr; list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-path, .entry-content > .wp-block-list.gt-path {display: flex; flex-direction: column; gap: .45rem; height: 100%;
  padding: 1.4rem 1.4rem 1.5rem; text-decoration: none;
  background: var(--gt-surface-2); border: 1px solid var(--gt-line);
  border-radius: var(--gt-radius); border-top: 3px solid var(--gt-accent);
  transition: transform .15s ease, box-shadow .15s ease;}
.entry-content > .wp-block-group.gt-path__more, .entry-content > .wp-block-list.gt-path__more {margin-top: auto; padding-top: .5rem; color: var(--gt-accent-ink); font-weight: 600; font-size: .93rem;}
.entry-content > .wp-block-group.gt-feature__body, .entry-content > .wp-block-list.gt-feature__body {padding: clamp(1.4rem, 3.5vw, 2.4rem); display: flex; flex-direction: column; gap: .7rem; justify-content: center;}
.entry-content > .wp-block-group.gt-postlist, .entry-content > .wp-block-list.gt-postlist {list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--gt-line);}
.entry-content > .wp-block-group.gt-post, .entry-content > .wp-block-list.gt-post {display: grid; gap: .15rem .9rem; grid-template-columns: 1fr; padding: .95rem .2rem; text-decoration: none;}
.entry-content > .wp-block-group.gt-post__rubrik, .entry-content > .wp-block-list.gt-post__rubrik {font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; color: var(--gt-ink-mute); font-weight: 700; padding-top: .15em;}
.entry-content > .wp-block-group.gt-pdp__thumbs, .entry-content > .wp-block-list.gt-pdp__thumbs {display: grid; grid-template-columns: repeat(4, 1fr); gap: .6rem; list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-pdp__usps, .entry-content > .wp-block-list.gt-pdp__usps {list-style: none; margin: .3rem 0 0; padding: 0; display: grid; gap: .45rem;}
.entry-content > .wp-block-group.gt-pdp__box, .entry-content > .wp-block-list.gt-pdp__box {margin-top: .4rem; padding: 1.1rem 1.2rem; background: var(--gt-surface-2); border: 1px solid var(--gt-line); border-radius: var(--gt-radius); border-top: 3px solid var(--gt-accent);}
.entry-content > .wp-block-group.gt-pdp__meta, .entry-content > .wp-block-list.gt-pdp__meta {display: flex; flex-wrap: wrap; gap: .4rem .5rem; margin: 0; padding: 0; list-style: none;}
.entry-content > .wp-block-group.gt-chips, .entry-content > .wp-block-list.gt-chips {display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-switch, .entry-content > .wp-block-list.gt-switch {display: flex; gap: .55rem; list-style: none; margin: 0; padding: .1rem 0 .3rem; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none;}
.entry-content > .wp-block-group.gt-pdp__assure, .entry-content > .wp-block-list.gt-pdp__assure {list-style: none; margin: .55rem 0 0; padding: 0; display: grid; gap: .3rem;}
.entry-content > .wp-block-group.gt-anchors, .entry-content > .wp-block-list.gt-anchors {display: flex; gap: .25rem; list-style: none; margin: 0; padding: .35rem 0; overflow-x: auto; scrollbar-width: none; border-top: 1px solid var(--gt-line); border-bottom: 1px solid var(--gt-line);}
.entry-content > .wp-block-group.gt-switch, .entry-content > .wp-block-list.gt-switch {padding-top: .9rem; border-top: 1px solid var(--gt-line);}
.entry-content > .wp-block-group.gt-lightbox, .entry-content > .wp-block-list.gt-lightbox {position: fixed; inset: 0; z-index: 200;
  display: none; align-items: center; justify-content: center;
  padding: clamp(1rem, 4vw, 3rem);
  background: rgba(30, 27, 24, .88);}
.entry-content > .wp-block-group.gt-shots, .entry-content > .wp-block-list.gt-shots {display: grid; gap: .8rem; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-advice, .entry-content > .wp-block-list.gt-advice {display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr); list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-plp, .entry-content > .wp-block-list.gt-plp {display: grid; gap: 1.1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0;}
.entry-content > .wp-block-group.gt-plp__body, .entry-content > .wp-block-list.gt-plp__body {padding: .9rem 1rem 1.1rem; display: flex; flex-direction: column; gap: .3rem; flex: 1;}
.entry-content > .wp-block-group.gt-plp__foot, .entry-content > .wp-block-list.gt-plp__foot {margin-top: auto; padding-top: .7rem; display: flex; align-items: baseline; justify-content: space-between; gap: .5rem;}
.entry-content > .wp-block-group.gt-switch--center, .entry-content > .wp-block-list.gt-switch--center {border-top: 0; padding-top: 0;
  flex-wrap: wrap; justify-content: center;
  overflow: visible;
  gap: .9rem .5rem;
  
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;}
.entry-content > .wp-block-group.gt-lb, .entry-content > .wp-block-list.gt-lb {position: absolute; width: 1px; height: 1px; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; padding: 0;}

/* Linkdekoration des Designsystems, gegen Astras Unterstreichung
   (.ast-single-post .entry-content a). Warum: siehe scripts/gt-bridge.py. */
.ast-single-post .entry-content .wp-block-button.gt-btn > .wp-block-button__link {text-decoration: none;}
.ast-single-post .entry-content .gt-next li a {text-decoration: none;}
.ast-single-post .entry-content .gt-toc a {text-decoration: underline;}
.ast-single-post .entry-content .gt-card__title a {text-decoration: none;}
.ast-single-post .entry-content .gt-card__title a:hover, .ast-single-post .entry-content .gt-card__title a:focus {text-decoration: underline;}
.ast-single-post .entry-content .gt-card__link {text-decoration: underline;}
.ast-single-post .entry-content .gt-linkbox li a {text-decoration: none;}
.ast-single-post .entry-content .gt-linkbox li a:hover, .ast-single-post .entry-content .gt-linkbox li a:focus {text-decoration: underline;}
.ast-single-post .entry-content .gt-crumbs a {text-decoration: underline;}
.ast-single-post .entry-content .gt-cta__meta a {text-decoration: underline;}
.ast-single-post .entry-content .gt-model__link {text-decoration: underline;}
.ast-single-post .entry-content .gt-linkbox li a {text-decoration: none;}
.ast-single-post .entry-content .gt-linkbox li a:hover, .ast-single-post .entry-content .gt-linkbox li a:focus {text-decoration: none;}
.ast-single-post .entry-content .gt-path {text-decoration: none;}
.ast-single-post .entry-content .gt-feature__title a {text-decoration: none;}
.ast-single-post .entry-content .gt-feature__title a:hover, .ast-single-post .entry-content .gt-feature__title a:focus {text-decoration: underline;}
.ast-single-post .entry-content .gt-feature__more {text-decoration: underline;}
.ast-single-post .entry-content .gt-post {text-decoration: none;}
.ast-single-post .entry-content .gt-rail__more {text-decoration: underline;}
.ast-single-post .entry-content .wp-block-button.gt-btn > .wp-block-button__link, .ast-single-post .entry-content .wp-block-button.gt-btn > .wp-block-button__link:hover, .ast-single-post .entry-content .wp-block-button.gt-btn > .wp-block-button__link:focus, .ast-single-post .entry-content .wp-block-button.gt-btn > .wp-block-button__link:visited {text-decoration: none;}
.ast-single-post .entry-content .gt-switch a, .ast-single-post .entry-content .gt-switch span {text-decoration: none;}
.ast-single-post .entry-content .gt-anchors a {text-decoration: none;}
.ast-single-post .entry-content .gt-lightbox figcaption a {text-decoration: underline;}
.ast-single-post .entry-content .gt-lightbox__close {text-decoration: none;}
.ast-single-post .entry-content .gt-advice a {text-decoration: none;}
.ast-single-post .entry-content .gt-plp__card {text-decoration: none;}
.ast-single-post .entry-content .gt-plp__card:hover .gt-plp__mehr {text-decoration: underline;}
.ast-single-post .entry-content .gt-switch > li > a, .ast-single-post .entry-content .gt-switch > li > span {text-decoration: none;}
.ast-single-post .entry-content .gt-lightbox figcaption label {text-decoration: underline;}
