@charset "utf-8";

/* =========================================================
   CARDS.CSS – FIT-O-DROM / YOUNIVERSUM
   =========================================================

   ZWECK
   ---------------------------------------------------------
   Zentrale Styles für individuelle Inhaltsblöcke:
   - Cards
   - Fitness Step List
   - Women Benefits
   - Studio Highlights
   - Studio Premium
   - Studio Consulting
   - Studio Pricing
   - Studio Press
   - Studio Contact
   - Popup Contact
   - Studio Badge
   - Studio Info
   - Studio Combined

   SCHRIFTEN
   ---------------------------------------------------------
   Standardschrift der Website bleibt Poppins.
   Die Klasse .studio-info__strong verwendet bewusst
   Lobster als dekorative Hervorhebung.

   DESIGN
   ---------------------------------------------------------
   - Schwarz / Weiß als Grundfarben
   - Brandfarbe: #c19448
   - ruhige und klare Darstellung
   - keine unnötigen Animationen
   - maximale Inhaltsbreite je nach Block
   - Mobile-Darstellung zentriert

   TECHNISCHE REGELN
   ---------------------------------------------------------
   - box-sizing wird blockbezogen gesetzt
   - font-weight maximal 700
   - responsive Anpassungen bei 992px und 768px
   - vorhandene HTML-Klassen bleiben kompatibel

   WARTUNG
   ---------------------------------------------------------
   Bei Änderungen immer den jeweiligen kompletten
   Abschnitt bearbeiten und keine zusätzlichen
   überschreibenden Patch-Regeln am Dateiende anlegen.
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');


/* =========================================================
   BASIS CARDS
   ========================================================= */

.jl-card-secondary {
  background-color: #ffffff0a;
  color: #fff;
  box-shadow: 0 0 0 rgba(0,0,0,.07);
  border-radius: 0;
  border: 1px solid #fff;
}

.jl-tile-default {
  background-color: #ffffff0a;
  color: #000;
  box-shadow: 0 0 0 rgba(0,0,0,.07);
  border-radius: 0;
  border: 1px solid #000;
}


/* =========================================================
   FITNESS STEP LIST
   ========================================================= */

section.fitness-step-list,
section.fitness-step-list * {
  box-sizing: border-box;
}

section.fitness-step-list {
  width: 100%;
  padding: 10px 6px !important;
  margin: 0 !important;
}

section.fitness-step-list > .fitness-step-list-wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto !important;
  padding: 0 !important;
}

section.fitness-step-list > .fitness-step-list-wrap > .fitness-step-item {
  display: grid !important;
  grid-template-columns: 60px minmax(0, 1fr) !important;
  column-gap: 18px !important;
  align-items: start !important;
  padding: 14px 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,0.15) !important;
}

section.fitness-step-list
> .fitness-step-list-wrap
> .fitness-step-item
> .fitness-step-number {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  text-align: left !important;
}

section.fitness-step-list
> .fitness-step-list-wrap
> .fitness-step-item
> .fitness-step-content {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

section.fitness-step-list
> .fitness-step-list-wrap
> .fitness-step-item
> .fitness-step-content h3 {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 17px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #1a1a1a !important;
  text-align: left !important;
}


/* Tablet */

@media (max-width: 992px) {

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item {
    grid-template-columns: 50px minmax(0, 1fr) !important;
    column-gap: 14px !important;
  }

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item
  > .fitness-step-number {
    font-size: 22px !important;
  }

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item
  > .fitness-step-content h3 {
    font-size: 18px !important;
  }
}


/* Mobile */

@media (max-width: 768px) {

  section.fitness-step-list {
    padding: 6px 4px !important;
  }

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    padding: 10px 0 !important;
  }

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item
  > .fitness-step-number {
    font-size: 24px !important;
  }

  section.fitness-step-list
  > .fitness-step-list-wrap
  > .fitness-step-item
  > .fitness-step-content h3 {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }
}


/* =========================================================
   WOMEN BENEFITS REBUILD
   ========================================================= */

.women-benefits-rebuild,
.women-benefits-rebuild * {
  box-sizing: border-box;
}

.women-benefits-rebuild {
  width: 100%;
  margin: 0;
  padding: 0;
}

.women-benefits-rebuild__inner {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 0;
}

.women-benefits-rebuild__item {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  column-gap: 18px;
  align-items: start;
  margin: 0;
  padding: 14px 0;
  border-bottom: 1px solid #fff;
}

.women-benefits-rebuild__item:first-child {
  border-top: 1px solid #fff;
}

.women-benefits-rebuild__number {
  margin: 0;
  padding: 0;
  font-size: 32px;
  line-height: 1;
  font-weight: 700;
  color: #fff;
  text-align: left;
}

.women-benefits-rebuild__text {
  margin: 0;
  padding: 0;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 400;
  color: #fff;
  text-align: left;
}


/* Tablet */

@media (max-width: 992px) {

  .women-benefits-rebuild__item {
    grid-template-columns: 62px minmax(0, 1fr);
    column-gap: 16px;
    padding: 13px 0;
  }

  .women-benefits-rebuild__number {
    font-size: 28px;
  }

  .women-benefits-rebuild__text {
    font-size: 18px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .women-benefits-rebuild__inner {
    padding: 0 4px;
  }

  .women-benefits-rebuild__item {
    grid-template-columns: 50px minmax(0, 1fr);
    column-gap: 12px;
    padding: 11px 0;
  }

  .women-benefits-rebuild__number {
    font-size: 24px;
  }

  .women-benefits-rebuild__text {
    font-size: 16px;
    line-height: 1.32;
  }
}


/* =========================================================
   STUDIO HIGHLIGHTS
   ========================================================= */

.studio-highlights-mobile,
.studio-highlights-mobile * {
  box-sizing: border-box;
}

.studio-highlights-mobile {
  width: 100%;
  margin: 0;
  padding: 0;
}

.studio-highlights-mobile__wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.studio-highlights-mobile__item {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 72px;
  padding: 16px 18px;

  background: #fafafa;
  border: 1px solid #000;
  border-radius: 14px;

  text-align: center;

  font-size: 18px;
  line-height: 1.35;
  font-weight: 500;
  color: #000;
}


/* Tablet */

@media (max-width: 992px) {

  .studio-highlights-mobile__wrap {
    gap: 12px;
  }

  .studio-highlights-mobile__item {
    min-height: 68px;
    font-size: 17px;
    padding: 14px 16px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .studio-highlights-mobile__wrap {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .studio-highlights-mobile__item {
    min-height: auto;
    padding: 14px;
    border-radius: 12px;

    font-size: 16px;
    line-height: 1.3;
  }
}


/* =========================================================
   STUDIO PREMIUM
   ========================================================= */

.studio-premium,
.studio-premium * {
  box-sizing: border-box;
}

.studio-premium {
  padding: 20px;
}

.studio-premium__wrap {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
}

.studio-premium__lead {
  margin: 0 0 40px;

  font-size: 24px;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.4px;

  color: #fff;
}

.studio-premium__list {
  margin: 0;
  padding: 0;
}

.studio-premium__item {
  width: 70%;
  margin: 0 auto;
  padding: 18px 0;

  border-top: 1px solid #fff;
}

.studio-premium__item:last-child {
  border-bottom: 1px solid #fff;
}

.studio-premium__item span,
.studio-premium__line {
  display: block;

  font-size: 17px;
  line-height: 1.5;
  font-weight: 400;

  color: #fff;
  opacity: 0.9;
}

.studio-premium__line--separated {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #fff;
}


/* Tablet */

@media (max-width: 992px) {

  .studio-premium__lead {
    font-size: 22px;
  }

  .studio-premium__item {
    width: 90%;
  }

  .studio-premium__item span,
  .studio-premium__line {
    font-size: 16px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .studio-premium {
    padding: 20px 14px;
  }

  .studio-premium__lead {
    margin-bottom: 30px;

    font-size: 20px;
    line-height: 1.3;
  }

  .studio-premium__item {
    width: 100%;
    padding: 14px 0;
  }

  .studio-premium__item span,
  .studio-premium__line {
    font-size: 15px;
    line-height: 1.4;
  }

  .studio-premium__line--separated {
    margin-top: 12px;
    padding-top: 12px;
  }
}


/* =========================================================
   STUDIO CONSULTING
   ========================================================= */

.studio-consulting,
.studio-consulting * {
  box-sizing: border-box;
}

.studio-consulting {
  padding: 10px 20px;
  background: #fff;
}

.studio-consulting__wrap {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.studio-consulting__lead {
  margin-bottom: 24px;

  font-size: 30px;
  line-height: 1.3;
  font-weight: 700;

  color: #111;
}

.studio-consulting__lead--small {
  margin-bottom: 6px;
  font-size: 30px;
}

.studio-consulting__text {
  margin-bottom: 30px;

  font-size: 17px;
  line-height: 1.7;

  color: #444;
}

.studio-consulting__text p {
  margin: 0 0 14px;
}

.studio-consulting__highlight {
  margin-bottom: 40px;

  font-size: 17px;
  font-weight: 500;

  color: #111;
}

.studio-consulting__times {
  max-width: 420px;
  margin: 0 auto 40px;
}

.studio-consulting__note {
  margin-bottom: 14px;

  font-size: 64px;

  color: #777;
}

.studio-consulting__row {
  display: flex;
  justify-content: space-between;

  padding: 12px 0;

  border-bottom: 1px solid rgba(0,0,0,0.1);

  font-size: 16px;

  color: #111;
}

.studio-consulting__row:first-of-type {
  border-top: 1px solid rgba(0,0,0,0.1);
}

.studio-consulting__cta {
  font-size: 18px;
  font-weight: 500;
  color: #111;
}


/* Mobile */

@media (max-width: 768px) {

  .studio-consulting {
    padding: 5px 16px;
  }

  .studio-consulting__lead {
    font-size: 24px;
  }

  .studio-consulting__lead--small {
    font-size: 18px;
  }

  .studio-consulting__text {
    font-size: 15px;
  }

  .studio-consulting__highlight {
    font-size: 16px;
  }

  .studio-consulting__row {
    font-size: 15px;
  }

  .studio-consulting__note {
    font-size: 13px;
  }
}


/* =========================================================
   STUDIO PRICING
   ========================================================= */

.studio-pricing,
.studio-pricing * {
  box-sizing: border-box;
}

.studio-pricing {
  padding: 70px 20px;
  background: #000;
}

.studio-pricing__wrap {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}

.studio-pricing__title {
  margin-bottom: 18px;

  font-size: 30px;
  font-weight: 600;

  color: #fff;
}

.studio-pricing__text {
  margin-bottom: 40px;

  font-size: 17px;
  line-height: 1.6;

  color: #fff;
}

.studio-pricing__price {
  margin-bottom: 12px;

  font-size: 48px;
  line-height: 1.1;
  font-weight: 700;

  color: #fff;
}

.studio-pricing__price span {
  display: block;
  margin-top: 6px;

  font-size: 16px;
  font-weight: 400;

  color: #fff;
}

.studio-pricing__note {
  margin-bottom: 30px;

  font-size: 13px;

  color: #fff;
}

.studio-pricing__highlight {
  font-size: 18px;
  font-weight: 700;

  color: #fff;
}


/* Mobile */

@media (max-width: 768px) {

  .studio-pricing {
    padding: 40px 46px;
  }

  .studio-pricing__title {
    font-size: 24px;
  }

  .studio-pricing__price {
    font-size: 36px;
  }

  .studio-pricing__text {
    font-size: 15px;
  }
}


/* =========================================================
   STUDIO PRICING PREMIUM
   ========================================================= */

.studio-pricing-premium,
.studio-pricing-premium * {
  box-sizing: border-box;
}

.studio-pricing-premium {
  padding: 10px;
}

.studio-pricing-premium__wrap {
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
}

.studio-pricing-premium__title {
  margin-bottom: 30px;

  font-size: 56px;
  font-weight: 700;

  color: #111;
}

.studio-pricing-premium__lead {
  margin-bottom: 20px;

  font-size: 18px;
  line-height: 1.6;

  color: #444;
}

.studio-pricing-premium__price {
  margin-bottom: 30px;

  font-size: 56px;
  line-height: 1.1;
  font-weight: 700;

  color: #111;
}

.studio-pricing-premium__price span {
  display: block;
  margin-top: 6px;

  font-size: 16px;
  font-weight: 400;

  color: #777;
}

.studio-pricing-premium__points {
  margin-bottom: 40px;

  font-size: 16px;
  line-height: 1.8;

  color: #444;
}

.studio-pricing-premium__closing {
  margin-bottom: 30px;

  font-size: 18px;
  line-height: 1.6;
  font-weight: 500;

  color: #111;
}

.studio-pricing-premium__line {
  width: 80px;
  height: 1px;
  margin: 0 auto;

  background: rgba(0,0,0,0.2);
}


/* Mobile */

@media (max-width: 768px) {

  .studio-pricing-premium {
    padding: 0 16px;
  }

  .studio-pricing-premium__title {
    font-size: 52px;
  }

  .studio-pricing-premium__price {
    font-size: 40px;
  }

  .studio-pricing-premium__lead {
    font-size: 16px;
  }

  .studio-pricing-premium__closing {
    font-size: 16px;
  }
}


/* =========================================================
   STUDIO PRESS
   ========================================================= */

.studio-press,
.studio-press * {
  box-sizing: border-box;
}

.studio-press {
  padding: 80px 20px;
  background: #ffffff00;
}

.studio-press__wrap {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.studio-press__title {
  margin: 0 0 40px;

  font-size: 28px;
  line-height: 1.2;
  font-weight: 600;

  color: #fff;
}

.studio-press__quote {
  margin: 0 0 30px;

  font-size: 26px;
  line-height: 1.5;
  font-weight: 500;
  font-style: normal;

  color: #fff;
}

.studio-press__source {
  margin: 0;

  font-size: 14px;

  color: #777;
}


/* Tablet */

@media (max-width: 992px) {

  .studio-press__title {
    font-size: 24px;
  }

  .studio-press__quote {
    font-size: 22px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .studio-press {
    padding: 50px 16px;
  }

  .studio-press__title {
    margin-bottom: 24px;
    font-size: 20px;
  }

  .studio-press__quote {
    margin-bottom: 20px;

    font-size: 18px;
    line-height: 1.4;
  }

  .studio-press__source {
    font-size: 13px;
  }
}


/* =========================================================
   STUDIO CONTACT
   ========================================================= */

.studio-contact,
.studio-contact * {
  box-sizing: border-box;
}

.studio-contact {
  padding: 10px 20px;
  background: #fff;
}

.studio-contact__wrap {
  max-width: 900px;
  margin: 0 auto;
}

.studio-contact__cta {
  margin-bottom: 20px;
  text-align: center;
}

.studio-contact__cta-text {
  margin-bottom: 10px;

  font-size: 25px;
  font-weight: 700;

  color: #000;
}

.studio-contact__phone {
  margin-bottom: 10px;

  font-size: 42px;
  font-weight: 700;

  color: #111;
}

.studio-contact__cta-times {
  font-size: 14px;
  color: #777;
}

.studio-contact__block {
  margin-bottom: 40px;
}

.studio-contact__title {
  margin-bottom: 16px;

  font-size: 22px;
  font-weight: 700;

  color: #111;
}

.studio-contact__row {
  display: flex;
  justify-content: space-between;

  padding: 10px 0;

  border-bottom: 1px solid rgba(0,0,0,0.1);

  font-size: 16px;

  color: #111;
}

.studio-contact__row:first-child {
  border-top: 1px solid rgba(0,0,0,0.1);
}


/* Tablet */

@media (max-width: 992px) {

  .studio-contact__phone {
    font-size: 34px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .studio-contact {
    padding: 0 2px;
  }

  .studio-contact__phone {
    font-size: 28px;
  }

  .studio-contact__row {
    font-size: 15px;
  }

  .studio-contact__title {
    font-size: 18px;
  }
}


/* =========================================================
   STUDIO POPUP CONTACT
   ========================================================= */

.studio-popup-contact,
.studio-popup-contact * {
  box-sizing: border-box;
}

.studio-popup-contact {
  width: 100%;
  margin: 0;
  padding: 44px 34px;

  background: #fff;
}

.studio-popup-contact__wrap {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;

  text-align: center;
}

.studio-popup-contact__title {
  margin: 0 0 24px;

  font-size: 34px;
  line-height: 1.15;
  font-weight: 700;

  color: #111;
}

.studio-popup-contact__lead {
  margin: 0 0 18px;

  font-size: 20px;
  line-height: 1.65;
  font-weight: 500;

  color: #1a1a1a;
}

.studio-popup-contact__text {
  margin: 0 0 38px;

  font-size: 17px;
  line-height: 1.75;
  font-weight: 400;

  color: #555;
}

.studio-popup-contact__times {
  margin: 0 0 42px;
  padding: 28px 0 0;
}

.studio-popup-contact__times-title {
  margin: 0 0 8px;

  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;

  color: #111;
}

.studio-popup-contact__times-note {
  margin: 0 0 22px;

  font-size: 15px;
  line-height: 1.5;

  color: #777;
}

.studio-popup-contact__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;

  padding: 16px 0;

  border-bottom: 1px solid rgba(0,0,0,0.10);

  font-size: 17px;
  line-height: 1.5;

  color: #111;
}

.studio-popup-contact__row:first-of-type {
  border-top: 1px solid rgba(0,0,0,0.10);
}

.studio-popup-contact__row span:first-child {
  text-align: left;
}

.studio-popup-contact__row span:last-child {
  text-align: right;
  white-space: nowrap;
}

.studio-popup-contact__call {
  padding-top: 10px;
}

.studio-popup-contact__call-label {
  margin: 0 0 14px;

  font-size: 18px;
  line-height: 1.5;
  font-weight: 500;

  color: #333;
}

.studio-popup-contact__phone {
  margin: 0 0 10px;

  font-size: 42px;
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -0.4px;

  color: #111;
}

.studio-popup-contact__hours {
  margin: 0;

  font-size: 15px;
  line-height: 1.5;

  color: #777;
}


/* Tablet */

@media (max-width: 992px) {

  .studio-popup-contact {
    padding: 38px 26px;
  }

  .studio-popup-contact__title {
    font-size: 30px;
  }

  .studio-popup-contact__lead {
    font-size: 18px;
  }

  .studio-popup-contact__phone {
    font-size: 36px;
  }
}


/* Mobile */

@media (max-width: 768px) {

  .studio-popup-contact {
    padding: 28px 18px;
  }

  .studio-popup-contact__title {
    margin-bottom: 18px;
    font-size: 24px;
  }

  .studio-popup-contact__lead {
    margin-bottom: 14px;

    font-size: 17px;
    line-height: 1.55;
  }

  .studio-popup-contact__text {
    margin-bottom: 28px;

    font-size: 15px;
    line-height: 1.65;
  }

  .studio-popup-contact__times {
    margin-bottom: 30px;
    padding-top: 10px;
  }

  .studio-popup-contact__times-title {
    font-size: 20px;
  }

  .studio-popup-contact__times-note {
    margin-bottom: 16px;
    font-size: 14px;
  }

  .studio-popup-contact__row {
    gap: 14px;
    padding: 12px 0;
    font-size: 15px;
  }

  .studio-popup-contact__phone {
    font-size: 28px;
  }

  .studio-popup-contact__call-label {
    margin-bottom: 10px;
    font-size: 16px;
  }

  .studio-popup-contact__hours {
    font-size: 14px;
  }
}


/* =========================================================
   STUDIO BADGE
   ========================================================= */

.studio-badge {
  display: inline-block;

  padding: 14px 22px;

  background: #c19448;
  border-radius: 4px;

  font-size: 16px;
  line-height: 1.3;
  font-weight: 600;
  text-align: center;

  color: #111;
}

.studio-badge-wrapper {
  text-align: center;
}


/* =========================================================
   STUDIO INFO
   ---------------------------------------------------------
   Beratung / Mitgliedschaft.

   Besonderheit:
   .studio-info__strong ist die einzige Textzeile in
   Lobster. Alle anderen Texte verwenden weiterhin die
   globale Seitenschrift.

   HTML:
   section.studio-info
     .studio-info__wrap
       .studio-info__headline
       .studio-info__checklist
       .studio-info__strong
       .studio-info__subheadline
       .studio-info__note
       .studio-info__time-row
       .studio-info__closing
       .studio-info__cta
       .studio-info__phone
       .studio-info__hours
   ========================================================= */

.studio-info,
.studio-info * {
  box-sizing: border-box;
}

.studio-info {
  padding: 10px 20px;
  background: #fff;
}

.studio-info__wrap {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}


/* Headline */

.studio-info__headline {
  margin: 0 0 30px;

  font-size: 22px;
  font-weight: 700;

  color: #111;
}


/* Checkliste */

.studio-info__checklist {
  margin: 0 auto 30px;
  border-top: 0 solid #000;
}

.studio-info__row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;

  padding: 14px 0;

  border-bottom: 1px solid #000;
}

.studio-info__check {
  margin-top: 3px;

  font-size: 15px;
  font-weight: 700;

  color: #000;
}

.studio-info__text {
  max-width: 720px;

  font-size: 17px;
  line-height: 1.6;
  text-align: left;

  color: #000;
}


/* =========================================================
   PERSÖNLICHE HERVORHEBUNG – LOBSTER
   ---------------------------------------------------------
   Betrifft ausschließlich:
   "Nimm Dir die Zeit und besuche den Kundenliebling
   der Region."
   ========================================================= */

.studio-info__strong {
  margin: 30px 0 20px;

  font-family: "Lobster", cursive;
  font-size: 32px;
  line-height: 1.3;
  font-weight: 400;

  color: #000;
}


/* Beratungszeiten */

.studio-info__subheadline {
  margin: 40px 0 10px;

  font-size: 26px;
  font-weight: 700;

  color: #000;
}

.studio-info__note {
  margin: 0 0 20px;

  font-size: 15px;
  font-weight: 600;

  color: #000;
}

.studio-info__times {
  max-width: 420px;
  margin: 0 auto 30px;
  border-top: 0 solid #000;
}

.studio-info__time-row {
  display: flex;
  justify-content: space-between;

  padding: 10px 0;

  border-bottom: 1px solid #000;

  font-size: 16px;

  color: #000;
}


/* Abschluss */

.studio-info__closing {
  margin: 30px 0 10px;

  font-size: 18px;

  color: #000;
}

.studio-info__cta {
  margin: 20px 0 6px;

  font-size: 15px;

  color: #000;
}

.studio-info__phone {
  font-size: 40px;
  font-weight: 700;

  color: #000;
}

.studio-info__phone a {
  color: #000;
  text-decoration: none;
}

.studio-info__hours {
  margin-top: 8px;

  font-size: 14px;

  color: #000;
}


/* Mobile */

@media (max-width: 768px) {

  .studio-info {
    padding: 0 16px;
  }

  .studio-info__headline {
    font-size: 20px;
  }

  .studio-info__row {
    flex-direction: column;
    align-items: center;

    gap: 6px;

    text-align: center;
  }

  .studio-info__check {
    margin-top: 0;
  }

  .studio-info__text {
    max-width: 100%;

    font-size: 15px;
    text-align: center;
  }

  /* Lobster bleibt auch mobil deutlich sichtbar */
  .studio-info__strong {
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
  }

  .studio-info__phone {
    font-size: 30px;
  }
}


/* =========================================================
   STUDIO COMBINED – PREISE + BERATUNG
   ========================================================= */

.studio-combined,
.studio-combined * {
  box-sizing: border-box;
}

.studio-combined {
  padding: 0 20px;
  background: #fff;
}

.studio-combined__wrap {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}

.studio-combined__title {
  margin: 0 0 20px;

  font-size: 56px;
  line-height: 1.1;
  font-weight: 700;

  color: #000;
}

.studio-combined__lead {
  margin: 0 0 14px;

  font-size: 18px;
  line-height: 1.6;

  color: #000;
}

.studio-combined__price {
  margin: 0 0 22px;

  font-size: 52px;
  line-height: 1.1;
  font-weight: 700;

  color: #000;
}

.studio-combined__price span {
  display: block;
  margin-top: 6px;

  font-size: 16px;
  font-weight: 400;

  color: #000;
}

.studio-combined__points {
  margin: 0 0 30px;

  font-size: 16px;
  line-height: 1.8;

  color: #000;
}

.studio-combined__closing {
  margin: 0 0 44px;

  font-size: 16px;
  line-height: 1.6;

  color: #000;
}

.studio-combined__divider {
  width: 80px;
  height: 1px;
  margin: 0 auto 48px;

  background: rgba(0,0,0,0.2);
}

.studio-combined__lead-big {
  margin: 0 0 28px;

  font-size: 24px;
  line-height: 1.25;
  font-weight: 700;

  color: #000;
}

.studio-combined__checklist {
  max-width: 900px;
  margin: 0 auto 34px;

  border-top: 1px solid #000;
}

.studio-combined__check-row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;

  padding: 14px 0;

  border-bottom: 1px solid #000;
}

.studio-combined__check {
  flex-shrink: 0;
  margin-top: 3px;

  font-size: 15px;
  line-height: 1.4;
  font-weight: 700;

  color: #000;
}

.studio-combined__check-text {
  max-width: 720px;

  font-size: 17px;
  line-height: 1.6;
  text-align: left;

  color: #000;
}

.studio-combined__highlight {
  margin: 0 0 40px;

  font-size: 18px;
  line-height: 1.5;
  font-weight: 600;

  color: #000;
}

.studio-combined__times {
  max-width: 420px;
  margin: 0 auto 36px;
}

.studio-combined__times-title {
  margin: 0 0 8px;

  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;

  color: #000;
}

.studio-combined__note {
  margin: 0 0 18px;

  font-size: 15px;
  line-height: 1.5;
  font-weight: 600;

  color: #000;
}

.studio-combined__row {
  display: flex;
  justify-content: space-between;
  gap: 24px;

  padding: 10px 0;

  border-bottom: 1px solid #000;

  font-size: 16px;
  line-height: 1.4;

  color: #000;
}

.studio-combined__row:first-of-type {
  border-top: 1px solid #000;
}

.studio-combined__row span:first-child {
  text-align: left;
}

.studio-combined__row span:last-child {
  text-align: right;
  white-space: nowrap;
}

.studio-combined__cta {
  margin: 0 0 26px;

  font-size: 18px;
  line-height: 1.5;

  color: #000;
}

.studio-combined__contact-label {
  margin: 0 0 8px;

  font-size: 16px;

  color: #000;
}

.studio-combined__phone {
  margin: 0 0 8px;

  font-size: 40px;
  line-height: 1.1;
  font-weight: 700;
}

.studio-combined__phone a {
  color: #000;
  text-decoration: none;
}

.studio-combined__hours {
  font-size: 14px;
  line-height: 1.4;

  color: #000;
}


/* Mobile */

@media (max-width: 768px) {

  .studio-combined {
    padding: 38px 16px;
  }

  .studio-combined__title {
    font-size: 42px;
  }

  .studio-combined__price {
    font-size: 36px;
  }

  .studio-combined__lead-big {
    font-size: 24px;
  }

  .studio-combined__check-row {
    flex-direction: column;
    align-items: center;

    gap: 6px;
    padding: 12px 0;
  }

  .studio-combined__check {
    margin-top: 0;
  }

  .studio-combined__check-text {
    max-width: 100%;

    font-size: 15px;
    line-height: 1.45;
    text-align: center;
  }

  .studio-combined__highlight {
    font-size: 16px;
  }

  .studio-combined__times-title {
    font-size: 24px;
  }

  .studio-combined__row {
    gap: 14px;
    font-size: 14px;
  }

  .studio-combined__phone {
    font-size: 30px;
  }
}