@charset "UTF-8";

/* =========================================================

   TelefonSexCam – FINAL CSS (CamTalk24-Layout, Orange/Beige)

   Ruhige Abstände, mobil-optimiert – nur .ts-* Klassen

   ========================================================= */

/* ---------- Farb- & Typo-Variablen ---------- */

:root{

  --ts-text:        #4b3e35;   /* Fließtext dunkelbraun-grau */

  --ts-text-soft:   #6a584b;   /* etwas weicher */

  --ts-head:        #8c6545;   /* Überschriften warmbraun */

  --ts-title:       #a8794f;   /* Sektionstitel/Highlights */

  --ts-card:        #f6dfc8;   /* Karten-Hintergrund (warm, nicht grau) */

  --ts-card-strong: #eecda9;   /* kräftigeres Beige (Badges) */

  --ts-border:      #e3c7a9;   /* feine Umrandung */

  --ts-shadow:      rgba(0,0,0,.08);

  --ts-check:       #43c97d;   /* Haken/Success */

  --ts-strong:      #8a6248;   /* dezente Fettschrift-Farbe */

}

/* =========================================================

   HERO (H1, Benefit-Badges, H2, Sub)

   ========================================================= */

.ts-hero{

  background: var(--ts-card);

  border: 1px solid var(--ts-border);

  border-radius: 10px;

  padding: 20px;

  margin: 24px 0;

  text-align: center;

  color: var(--ts-text);

  box-shadow: 0 3px 10px var(--ts-shadow);

}

.ts-h1{

  color: var(--ts-head);

  font-size: 1.25rem;

  font-weight: 700;

  margin: 0 0 14px;

}

.ts-benefits{

  list-style: none;

  padding: 0;

  margin: 12px 0 16px;

}

.ts-benefits li{

  display: inline-block;

  background: var(--ts-card-strong);

  color: var(--ts-text);

  border-radius: 6px;

  padding: 6px 10px;

  margin: 4px;

  font-size: .9rem;

  line-height: 1.2;

  box-shadow: 0 1px 4px var(--ts-shadow);

}

.ts-benefits li::before{

  content:"✓";

  font-weight:800;

  color:var(--ts-check);

  margin-right:6px;

}

.ts-h2{

  color: var(--ts-head);

  font-size: 1.05rem;

  margin: 14px 0 8px;

  font-weight: 600;

}

.ts-sub{

  font-size: .95rem;

  line-height: 1.5;

  color: var(--ts-text-soft);

  margin: 8px auto 0;

  max-width: 920px;

}

/* Mobile Feinschliff */

@media (max-width:768px){

  .ts-hero{ margin:16px 0; padding:16px; }

  .ts-h1{ font-size:1.08rem; margin-bottom:12px; }

  .ts-h2{ font-size:.96rem; }

  .ts-benefits li{ font-size:.88rem; }

  .ts-sub{ font-size:.9rem; }

}

/* =========================================================

   PROFIL-LISTE (Bild links, Text rechts)

   ========================================================= */

.ts-wrap{ max-width:980px; margin:26px auto 40px; padding:0 10px; }

.ts-title{

  text-align:center;

  color: var(--ts-title);

  font-size: 1.32rem;

  font-weight: 600;

  margin: 0 0 18px;

}

.ts-list{ display:flex; flex-direction:column; gap:22px; }

.ts-profile{

  display:flex;

  gap:16px;

  background: #f4dec4;

  border: 1px solid var(--ts-border);

  border-radius: 10px;

  padding: 14px;

  box-shadow: 0 3px 10px var(--ts-shadow);

}

.ts-profile > a{

  width:180px;

  flex-shrink:0;

  display:block;

}

.ts-profile > a img{

  width:100%;

  height:auto;

  border-radius:8px;

  object-fit:cover;

  display:block; /* vermeidet kleine Spalten */

}

.ts-content{ flex:1; }

.ts-content h3{

  margin: 2px 0 8px;

  color: var(--ts-head);

  font-size: 1.02rem;

  font-weight: 600;

}

.ts-content p{

  margin: 0;

  line-height: 1.45;

  color: var(--ts-text);

  font-size: .95rem;

}

/* Dezente Fettschrift (Hero, Profile, Textboxen) */

.ts-hero b, .ts-hero strong,

.ts-content b, .ts-content strong,

.ts-textbox b, .ts-textbox strong{

  font-weight: 600;

  color: var(--ts-strong);

}

/* Mobile Layout Profile */

@media (max-width:768px){

  .ts-profile{ flex-direction: column; align-items: center; text-align: center; }

  .ts-profile > a{ width:88%; max-width:320px; }

  .ts-content p{ text-align: center; }

}

/* Engeres Layout + 6-Zeilen-Kürzung mobil (wie CamTalk24) */

.ts-content br{ display:none !important; }

.ts-content p{ margin:0 !important; line-height:1.45 !important; }
 
.ts-content p + p{ margin-top:6px !important; }

@media (max-width:768px){

  .ts-content p{

    display: -webkit-box;

    -webkit-line-clamp: 6;

    -webkit-box-orient: vertical;

    overflow: hidden;

  }

}

/* =========================================================

   INFO-/SEO-BOXEN UNTEN (gleiches Look&Feel wie Hero)

   ========================================================= */

.ts-textbox{

  background: var(--ts-card);

  border: 1px solid var(--ts-border);

  border-radius: 8px;

  padding: 18px 22px;

  line-height: 1.45;

  color: var(--ts-text);

  font-size: .97rem;

  box-shadow: 0 3px 10px var(--ts-shadow);

  max-width: 980px;        /* exakt wie .ts-wrap / .ts-profile */

  margin: 22px auto;       /* zentriert, einheitlicher vertikaler Abstand */

}

/* sauberer Startabstand nach den Profilen */

.ts-wrap + .ts-textbox{ margin-top:22px; }

.ts-textbox h2{

  color: var(--ts-head);

  font-size: 1.06rem;

  text-align: center;

  margin-top: 14px;        /* angenehme Luft nach oben */

  margin-bottom: 16px;     /* etwas Abstand darunter */

}

.ts-textbox p{ margin: 0 0 4px; }

.ts-textbox p:last-child{ margin-bottom: 0; }

/* etwas Luft vor dem Schlusssatz */

.ts-textbox p:last-of-type{ margin-top: 18px; }

.ts-textbox a{

  color: var(--ts-head);

  text-decoration: underline;

  font-weight: 600;

}

.ts-textbox a:hover{

  color: var(--ts-title);

  text-decoration: none;

}

/* Mobile kompakter */

@media (max-width: 768px) {

  .ts-textbox h2{
    margin-top: 10px;
    margin-bottom: 12px;
  }

  .ts-textbox p:last-of-type{
    margin-top: 12px;
  } 
}