.elementor-2357 .elementor-element.elementor-element-5269311{--display:flex;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2357 .elementor-element.elementor-element-5269311.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2357 .elementor-element.elementor-element-302c9d4{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2357 .elementor-element.elementor-element-f23b446.elementor-element{--align-self:center;}.elementor-2357 .elementor-element.elementor-element-f23b446{text-align:center;}.elementor-2357 .elementor-element.elementor-element-79ea050.elementor-element{--align-self:center;}.elementor-2357 .elementor-element.elementor-element-79ea050 img{width:49%;}.elementor-2357 .elementor-element.elementor-element-03936d3.elementor-element{--align-self:center;}.elementor-2357 .elementor-element.elementor-element-03936d3 img{width:66%;}.elementor-2357 .elementor-element.elementor-element-0b779a0.elementor-element{--align-self:center;}.elementor-2357 .elementor-element.elementor-element-53ed93e{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;--margin-top:40px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2357 .elementor-element.elementor-element-11c58ae{text-align:center;}.elementor-2357 .elementor-element.elementor-element-11c58ae .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:43px;font-weight:600;color:#134D73;}.elementor-2357 .elementor-element.elementor-element-8098977{text-align:center;}.elementor-2357 .elementor-element.elementor-element-8098977 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:800;color:var( --e-global-color-8884cfa );}.elementor-2357 .elementor-element.elementor-element-9855362{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2357 .elementor-element.elementor-element-2039e61{columns:1;text-align:justify;font-family:"Roboto", Sans-serif;font-size:1px;font-weight:400;}.elementor-2357 .elementor-element.elementor-element-25a09bb img{width:100%;}.elementor-2357 .elementor-element.elementor-element-2aeabb4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 40px;--row-gap:0px;--column-gap:40px;}.elementor-2357 .elementor-element.elementor-element-d09498d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2357 .elementor-element.elementor-element-80fb962{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:1024px){.elementor-2357 .elementor-element.elementor-element-302c9d4{--grid-auto-flow:row;}.elementor-2357 .elementor-element.elementor-element-53ed93e{--grid-auto-flow:row;}.elementor-2357 .elementor-element.elementor-element-9855362{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-2357 .elementor-element.elementor-element-5269311{--width:98.417%;}.elementor-2357 .elementor-element.elementor-element-53ed93e{--content-width:1200px;}.elementor-2357 .elementor-element.elementor-element-9855362{--content-width:100%;}.elementor-2357 .elementor-element.elementor-element-2aeabb4{--content-width:100%;}.elementor-2357 .elementor-element.elementor-element-d09498d{--width:70%;}.elementor-2357 .elementor-element.elementor-element-80fb962{--width:30%;}}@media(max-width:767px){.elementor-2357 .elementor-element.elementor-element-302c9d4{--width:100%;--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-2357 .elementor-element.elementor-element-53ed93e{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-2357 .elementor-element.elementor-element-11c58ae .elementor-heading-title{font-size:28px;}.elementor-2357 .elementor-element.elementor-element-8098977 .elementor-heading-title{font-size:14px;}.elementor-2357 .elementor-element.elementor-element-9855362{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for shortcode, class: .elementor-element-8620cf0 *//* =========================================================
   Survivor Deutschland
   Elementor + Contact Form 7
   Parlamentarischer Abend – optimiertes Layout 65/35
   ========================================================= */

:root {
  --sd-green: #87c795;
  --sd-blue: #134d73;
  --sd-yellow: #f1be25;
  --sd-red: #eb595c;
  --sd-turquoise: #7dc8c5;
  --sd-text: #17324d;
  --sd-muted: #607080;
  --sd-border: #dbe6ea;
  --sd-border-soft: #edf2f4;
  --sd-bg-soft: #f7faf9;
}

/* Wichtig: verhindert Überlaufen in Elementor-Flexboxen */
.sd-cf7-form,
.sd-cf7-form *,
.sd-event-info-card,
.sd-event-info-card * {
  box-sizing: border-box;
}

/* Wrapper von Contact Form 7 sauber blocken */
.sd-cf7-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

/* Linke Formular-Card */
.sd-cf7-form {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  background: #ffffff;
  color: var(--sd-text);
}

/* Zweispaltiges Formular innerhalb der 65%-Spalte */
.sd-form-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 24px;
  row-gap: 22px;
  width: 100%;
}

/* Einzelnes Feld */
.sd-form-field {
  min-width: 0;
  margin-bottom: 0;
}

/* Labels */
.sd-form-field > label {
  display: block;
  margin-bottom: 0.55rem;
  color: #3d3d3d;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.04em;
}

/* Eingabefelder */
.sd-cf7-form input[type="text"],
.sd-cf7-form input[type="email"],
.sd-cf7-form input[type="tel"],
.sd-cf7-form select,
.sd-cf7-form textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 46px;
  padding: 0.8rem 1rem;
  border: 1px solid var(--sd-border-soft);
  border-radius: 0;
  background: #fafafa;
  color: var(--sd-text);
  font-size: 0.96rem;
  line-height: 1.45;
  box-shadow: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

/* Placeholder etwas dezenter */
.sd-cf7-form input::placeholder,
.sd-cf7-form textarea::placeholder {
  color: #9aa4ad;
  opacity: 1;
}

/* Fokuszustand */
.sd-cf7-form input[type="text"]:focus,
.sd-cf7-form input[type="email"]:focus,
.sd-cf7-form input[type="tel"]:focus,
.sd-cf7-form select:focus,
.sd-cf7-form textarea:focus {
  border-color: var(--sd-green);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(135, 199, 149, 0.22);
  outline: none;
}

.sd-cf7-form textarea {
  resize: vertical;
}

/* Formular-Abschnitte */
.sd-form-section {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--sd-border);
}

.sd-cf7-form h3 {
  margin: 0 0 1rem 0;
  color: #4a4a4a;
  font-size: 1.85rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: normal;
}

/* Radio- und Checkbox-Gruppen */
.sd-cf7-form .wpcf7-radio,
.sd-cf7-form .wpcf7-checkbox {
  display: block;
  padding: 0.85rem 1rem;
  border: 1px solid var(--sd-border-soft);
  background: #fafafa;
}

.sd-cf7-form .wpcf7-list-item {
  display: block;
  margin: 0.35rem 0;
}

.sd-cf7-form .wpcf7-list-item:first-child {
  margin-top: 0;
}

.sd-cf7-form .wpcf7-list-item:last-child {
  margin-bottom: 0;
}

.sd-cf7-form .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  color: var(--sd-text);
  font-size: 0.96rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: normal;
}

.sd-cf7-form input[type="radio"],
.sd-cf7-form input[type="checkbox"] {
  flex: 0 0 auto;
  margin-top: 0.2rem;
  accent-color: var(--sd-green);
}

/* Datenschutzbox */
.sd-privacy-box {
  padding: 1.4rem;
  background: rgba(135, 199, 149, 0.08);
  border: 1px solid rgba(135, 199, 149, 0.32);
  border-left: 5px solid var(--sd-green);
  border-radius: 10px;
}

.sd-privacy-box p {
  margin: 0 0 1rem 0;
  color: var(--sd-muted);
  font-size: 0.96rem;
  line-height: 1.6;
}

.sd-privacy-box a {
  color: var(--sd-blue);
  font-weight: 700;
  text-decoration: underline;
}

/* Submit */
.sd-submit-row {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.75rem;
}

.sd-cf7-form .sd-submit-button,
.sd-cf7-form input[type="submit"].sd-submit-button {
  min-width: 220px;
  padding: 0.95rem 1.6rem;
  border: none;
  border-radius: 8px;
  background: var(--sd-blue);
  color: #ffffff;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.sd-cf7-form .sd-submit-button:hover,
.sd-cf7-form input[type="submit"].sd-submit-button:hover {
  background: #0f3f5f;
  transform: translateY(-1px);
}

/* Validierungsfehler: dezenter statt großer roter Balken */
.sd-cf7-form .wpcf7-not-valid {
  border-color: var(--sd-red) !important;
  background: #fffafa !important;
}

.sd-cf7-form .wpcf7-not-valid-tip {
  display: block;
  margin-top: 0.45rem;
  padding: 0;
  background: transparent;
  color: var(--sd-red);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.35;
}

/* Globale Rückmeldung nach Absenden */
.sd-cf7-form .wpcf7-response-output {
  margin: 1.5rem 0 0 0;
  padding: 1rem 1.25rem;
  border-radius: 10px;
  color: var(--sd-text);
  font-size: 0.95rem;
  line-height: 1.5;
}

/* Rechte Infobox */
.sd-event-info-card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 2rem 1.75rem;
  background: #ffffff;
  border: 1px solid var(--sd-border);
  border-radius: 18px;
  box-shadow: 0 14px 36px rgba(19, 77, 115, 0.08);
  color: var(--sd-text);
}

.sd-event-info-card h3 {
  margin: 0 0 1.4rem 0;
  color: #4a4a4a;
  font-size: 1.85rem;
  font-weight: 500;
  line-height: 1.2;
}

.sd-event-info-card .sd-info-item {
  padding: 1.15rem 0;
  border-bottom: 1px solid var(--sd-border);
}

.sd-event-info-card .sd-info-label {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--sd-green);
  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.sd-event-info-card .sd-info-value {
  color: var(--sd-text);
  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.45;
}

.sd-event-info-card .sd-info-note {
  margin-top: 1.35rem;
  padding: 1rem 1.1rem;
  background: rgba(135, 199, 149, 0.16);
  border-left: 5px solid var(--sd-green);
  border-radius: 10px;
  color: var(--sd-text);
  font-size: 0.96rem;
  line-height: 1.6;
}

/* Tablet: Formular einspaltig, Sidebar bleibt darunter oder daneben je nach Elementor */
@media (max-width: 1024px) {
  .sd-form-grid {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .sd-event-info-card {
    margin-top: 2rem;
  }
}

/* Mobile */
@media (max-width: 760px) {
  .sd-cf7-form,
  .sd-event-info-card {
    padding: 1.25rem;
  }

  .sd-cf7-form h3,
  .sd-event-info-card h3 {
    font-size: 1.55rem;
  }

  .sd-submit-row {
    justify-content: stretch;
  }

  .sd-cf7-form .sd-submit-button,
  .sd-cf7-form input[type="submit"].sd-submit-button {
    width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   Survivor Deutschland
   Parlamentarischer Abend „Recht auf Vergessenwerden“
   Elementor + Contact Form 7
   Stand: konsolidierte CSS-Version
   ========================================================= */


/* ---------------------------------------------------------
   1. Globale Variablen
   --------------------------------------------------------- */

:root {
  --sd-green: #87c795;
  --sd-blue: #134d73;
  --sd-yellow: #f1be25;
  --sd-red: #eb595c;
  --sd-turquoise: #7dc8c5;

  --sd-text: #17324d;
  --sd-text-dark: #0f2f49;
  --sd-heading: #134d73;
  --sd-muted: #5f7184;

  --sd-border: #dbe6ea;
  --sd-border-soft: #edf2f4;
  --sd-bg-soft: #f7faf9;
  --sd-bg-input: #fafafa;

  --sd-radius-small: 6px;
  --sd-radius-medium: 12px;
  --sd-radius-large: 18px;

  --sd-shadow-soft: 0 14px 36px rgba(19, 77, 115, 0.08);
  --sd-shadow-card: 0 16px 42px rgba(19, 77, 115, 0.10);
}


/* ---------------------------------------------------------
   2. Allgemeine Elementor-Seitenbreite
   --------------------------------------------------------- */

/*
   Diese Klasse bitte auf den äußeren Elementor-Container setzen,
   der Formular und Infobox enthält.
*/

.sd-pa-form-layout {
  width: 100%;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;

  gap: 40px;
}

/*
   Falls der Elementor-Container durch interne Variablen begrenzt wird.
*/

.sd-pa-form-layout.e-con {
  --container-max-width: 1200px;
}


/* ---------------------------------------------------------
   3. Spaltenlayout Formular / Infobox
   --------------------------------------------------------- */

.sd-pa-form-column {
  flex: 0 1 calc(68% - 20px);
  width: calc(68% - 20px);
  max-width: calc(68% - 20px);
  min-width: 0;
}

.sd-pa-info-column {
  flex: 0 1 calc(32% - 20px);
  width: calc(32% - 20px);
  max-width: calc(32% - 20px);
  min-width: 280px;
}


/* ---------------------------------------------------------
   4. Optionaler Hero-Bereich
   --------------------------------------------------------- */

.sd-pa-hero {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  color: var(--sd-text);
}

.sd-pa-hero h1,
.sd-pa-title {
  color: var(--sd-heading);
  font-weight: 800;
  line-height: 1.12;
}

.sd-pa-subtitle {
  color: var(--sd-green);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.sd-pa-text {
  color: var(--sd-text);
  font-size: 1.05rem;
  line-height: 1.65;
}


/* ---------------------------------------------------------
   5. Box-Sizing und Basis für Formular / Infobox
   --------------------------------------------------------- */

.sd-cf7-form,
.sd-cf7-form *,
.sd-event-info-card,
.sd-event-info-card * {
  box-sizing: border-box;
}

.sd-cf7-form {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: var(--sd-text);
  font-size: 16px;
}


/* Contact Form 7 interne Wrapper */

.sd-cf7-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}


/* ---------------------------------------------------------
   6. Formularraster
   --------------------------------------------------------- */

.sd-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 28px;
  row-gap: 24px;
  width: 100%;
}

.sd-form-field {
  width: 100%;
  min-width: 0;
  margin-bottom: 0;
}


/* ---------------------------------------------------------
   7. Labels
   --------------------------------------------------------- */

.sd-form-field > label {
  display: block;
  margin-bottom: 0.55rem;

  color: #3f4348;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.035em;
}


/* ---------------------------------------------------------
   8. Textfelder, Selects und Textareas
   --------------------------------------------------------- */

.sd-cf7-form input[type="text"],
.sd-cf7-form input[type="email"],
.sd-cf7-form input[type="tel"],
.sd-cf7-form select,
.sd-cf7-form textarea {
  display: block;

  width: 100%;
  max-width: 100%;
  min-height: 48px;

  padding: 0.85rem 1rem;

  border: 1px solid var(--sd-border-soft);
  border-radius: var(--sd-radius-small);

  background: var(--sd-bg-input);
  color: var(--sd-text);

  font-size: 0.96rem;
  line-height: 1.45;

  box-shadow: none;
  outline: none;

  transition:
    border-color 0.2s ease,
    background-color 0.2s ease,
    box-shadow 0.2s ease;
}

.sd-cf7-form textarea {
  min-height: 110px;
  resize: vertical;
}

.sd-cf7-form input::placeholder,
.sd-cf7-form textarea::placeholder {
  color: #9aa4ad;
  opacity: 1;
}


/* Fokuszustand */

.sd-cf7-form input[type="text"]:focus,
.sd-cf7-form input[type="email"]:focus,
.sd-cf7-form input[type="tel"]:focus,
.sd-cf7-form select:focus,
.sd-cf7-form textarea:focus {
  border-color: var(--sd-green);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(135, 199, 149, 0.22);
}


/* ---------------------------------------------------------
   9. Formularabschnitte
   --------------------------------------------------------- */

.sd-form-section {
  margin-top: 3.2rem;
  padding-top: 2rem;
  border-top: 1px solid var(--sd-border);
}

.sd-cf7-form h3 {
  margin: 0 0 1.1rem 0;

  color: #4c4c4c;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: normal;
}


/* ---------------------------------------------------------
   10. Radio- und Checkbox-Gruppen
   --------------------------------------------------------- */

.sd-cf7-form .wpcf7-radio,
.sd-cf7-form .wpcf7-checkbox {
  display: block;
  width: 100%;

  padding: 0.95rem 1rem;

  border: 1px solid var(--sd-border-soft);
  border-radius: var(--sd-radius-small);

  background: var(--sd-bg-input);
}

.sd-cf7-form .wpcf7-list-item {
  display: block;
  margin: 0.45rem 0;
}

.sd-cf7-form .wpcf7-list-item:first-child {
  margin-top: 0;
}

.sd-cf7-form .wpcf7-list-item:last-child {
  margin-bottom: 0;
}

.sd-cf7-form .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;

  color: var(--sd-text);
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: normal;
}

.sd-cf7-form input[type="radio"],
.sd-cf7-form input[type="checkbox"] {
  flex: 0 0 auto;
  margin-top: 0.2rem;
  accent-color: var(--sd-green);
}


/* ---------------------------------------------------------
   11. Datenschutzbox
   --------------------------------------------------------- */

.sd-privacy-box {
  margin-top: 3.2rem;

  padding: 1.6rem;

  background: rgba(135, 199, 149, 0.08);

  border: 1px solid rgba(135, 199, 149, 0.35);
  border-left: 5px solid var(--sd-green);
  border-radius: var(--sd-radius-medium);
}

.sd-privacy-box h3 {
  margin-bottom: 1rem;
}

.sd-privacy-box p {
  margin: 0 0 1rem 0;

  color: var(--sd-muted);
  font-size: 0.96rem;
  line-height: 1.65;
}

.sd-privacy-box a {
  color: var(--sd-blue);
  font-weight: 700;
  text-decoration: underline;
}


/* ---------------------------------------------------------
   12. Absenden-Button
   --------------------------------------------------------- */

.sd-submit-row {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}

.sd-cf7-form .sd-submit-button,
.sd-cf7-form input[type="submit"].sd-submit-button {
  min-width: 220px;

  padding: 1rem 1.6rem;

  border: none;
  border-radius: 999px;

  background: var(--sd-turquoise);
  color: #ffffff;

  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;

  cursor: pointer;

  transition:
    background-color 0.2s ease,
    transform 0.2s ease;
}

.sd-cf7-form .sd-submit-button:hover,
.sd-cf7-form input[type="submit"].sd-submit-button:hover {
  background: var(--sd-blue);
  transform: translateY(-1px);
}


/* ---------------------------------------------------------
   13. Validierung und Fehlermeldungen
   --------------------------------------------------------- */

.sd-cf7-form .wpcf7-not-valid {
  border-color: var(--sd-red) !important;
  background: #fffafa !important;
}

.sd-cf7-form .wpcf7-not-valid-tip {
  display: block;

  margin-top: 0.45rem;
  padding: 0;

  background: transparent;
  color: var(--sd-red);

  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.35;
}

.sd-cf7-form .wpcf7-response-output {
  margin: 1.5rem 0 0 0;
  padding: 1rem 1.25rem;

  border-radius: var(--sd-radius-medium);

  color: var(--sd-text);
  font-size: 0.95rem;
  line-height: 1.5;
}


/* ---------------------------------------------------------
   14. Rechte Veranstaltungs-Infobox
   --------------------------------------------------------- */

.sd-event-info-card {
  width: 100%;
  max-width: 100%;

  padding: 2rem;

  background: #ffffff;

  border: 1px solid var(--sd-border);
  border-radius: var(--sd-radius-large);

  box-shadow: var(--sd-shadow-card);

  color: var(--sd-text);

  position: sticky;
  top: 40px;
}

.sd-event-info-card h3 {
  margin: 0 0 1.5rem 0;

  color: #4a4a4a;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 1.2;
}

.sd-event-info-card .sd-info-item {
  padding: 1.15rem 0;
  border-bottom: 1px solid var(--sd-border);
}

.sd-event-info-card .sd-info-item:last-of-type {
  border-bottom: 1px solid var(--sd-border);
}

.sd-event-info-card .sd-info-label {
  display: block;

  margin-bottom: 0.35rem;

  color: var(--sd-green);

  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.sd-event-info-card .sd-info-value {
  color: var(--sd-text);

  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.45;
}

.sd-event-info-card .sd-info-note {
  margin-top: 1.4rem;

  padding: 1.05rem 1.15rem;

  background: rgba(135, 199, 149, 0.16);

  border-left: 5px solid var(--sd-green);
  border-radius: var(--sd-radius-medium);

  color: var(--sd-text);

  font-size: 0.96rem;
  line-height: 1.6;
}


/* ---------------------------------------------------------
   15. Optional: etwas mehr Abstand unter Hero
   --------------------------------------------------------- */

.sd-pa-hero + .sd-pa-form-layout {
  margin-top: 3rem;
}


/* ---------------------------------------------------------
   16. Tablet-Ansicht
   --------------------------------------------------------- */

@media (max-width: 1024px) {
  .sd-pa-form-layout {
    flex-direction: column;
    gap: 32px;
  }

  .sd-pa-form-column,
  .sd-pa-info-column {
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .sd-event-info-card {
    position: static;
  }
}


/* ---------------------------------------------------------
   17. Mobile Ansicht
   --------------------------------------------------------- */

@media (max-width: 760px) {
  .sd-pa-form-layout {
    gap: 28px;
  }

  .sd-form-grid {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .sd-cf7-form h3,
  .sd-event-info-card h3 {
    font-size: 1.55rem;
  }

  .sd-privacy-box,
  .sd-event-info-card {
    padding: 1.25rem;
  }

  .sd-submit-row {
    justify-content: stretch;
  }

  .sd-cf7-form .sd-submit-button,
  .sd-cf7-form input[type="submit"].sd-submit-button {
    width: 100%;
  }
}


/* ---------------------------------------------------------
   18. Sehr kleine Displays
   --------------------------------------------------------- */

@media (max-width: 480px) {
  .sd-cf7-form {
    font-size: 15px;
  }

  .sd-form-section {
    margin-top: 2.4rem;
    padding-top: 1.6rem;
  }

  .sd-cf7-form input[type="text"],
  .sd-cf7-form input[type="email"],
  .sd-cf7-form input[type="tel"],
  .sd-cf7-form select,
  .sd-cf7-form textarea {
    padding: 0.8rem 0.9rem;
  }
}/* End custom CSS */