.gold-rule {
    background: var(--color-gold);
    width: 3.5rem;
    height: 1px;
    display: inline-block;
}
  
.eyebrow {
    font-family: var(--font-label);
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: .72rem;
    font-weight: 500;
}

.text-gold {
    color: var(--gold);
}

/* ==========================================================================
   Karin London — "Teenused" 3×2 ruudustik (Divi 5)
   ========================================================================== */

:root {
  --kl-bg: #0c182b;                         /* background */
  --kl-card: #132136;                       /* card (hover taust) */
  --kl-card-40: rgba(19, 33, 54, 0.4);      /* bg-card/40 sektsioonil */
  --kl-fg: #eee7db;                         /* foreground */
  --kl-fg-70: rgba(238, 231, 219, 0.7);     /* foreground/70 (Loe rohkem) */
  --kl-muted: #9eadbe;                      /* muted-foreground */
  --kl-gold: #b69039;
  --kl-gold-25: rgba(182, 144, 57, 0.25);   /* raamid ja jooned */
  --kl-font-display: "Cormorant Garamond", Georgia, serif;
  --kl-font-body: "EB Garamond", Georgia, serif;
  --kl-font-label: "Jost", "Segoe UI", sans-serif;
  --kl-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ---------- SECTION (valikuline) ---------- */
.kl-teenused-sektsioon {
  background-color: var(--kl-card-40) !important;
  border-top: 1px solid var(--kl-gold-25) !important;
  border-bottom: 1px solid var(--kl-gold-25) !important;
  padding: 4rem 0 !important;                           /* py-16 */
}
@media (min-width: 1024px) {
  .kl-teenused-sektsioon { padding: 5rem 0 !important; } /* lg:py-20 */
}

/* ---------- ROW: ruudustik ---------- */
.kl-teenused {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1px !important;                                  /* gap-px */
  background-color: var(--kl-gold-25) !important;       /* annab 1px jooned */
  border: 1px solid var(--kl-gold-25) !important;
  width: calc(100% - 2rem) !important;                  /* px-4 */
  max-width: calc(1280px - 4rem) !important;            /* max-w-7xl - px-8 */
  margin: 3rem auto 0 !important;                       /* mt-12 pealkirja alt */
  padding: 0 !important;
  box-sizing: border-box !important;
}
.kl-teenused::before,
.kl-teenused::after { display: none !important; }       /* Divi clearfix */

/* Kaks rida järjest: ülemine joon ära, et ei tekiks topeltjoont */
.kl-teenused + .kl-teenused {
  margin-top: 0 !important;
  border-top: 0 !important;
}

@media (min-width: 640px) {
  .kl-teenused {
    grid-template-columns: repeat(2, 1fr) !important;   /* sm:grid-cols-2 */
    width: calc(100% - 3rem) !important;                /* sm:px-6 */
  }
}
@media (min-width: 1024px) {
  .kl-teenused {
    grid-template-columns: repeat(3, 1fr) !important;   /* lg:grid-cols-3 */
    width: calc(100% - 4rem) !important;                /* lg:px-8 */
  }
}

/* ---------- COLUMN: lahter ---------- */
.kl-teenus {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;                                    /* Divi 5 flex-veeru 30px vahe maha */
  row-gap: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 2rem !important;                             /* p-8 */
  background-color: var(--kl-bg) !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
  cursor: pointer;
  box-sizing: border-box !important;
  transition: background-color 150ms var(--kl-ease);
}
.kl-teenus:hover,
.kl-teenus:focus-within {
  background-color: var(--kl-card) !important;          /* hover:bg-card */
}
.kl-teenus:focus-visible {
  outline: 2px solid var(--kl-gold);
  outline-offset: -2px;
}

/* ---------- Divi vaikevahede nullimine ---------- */
.kl-teenus .et_pb_module,
.kl-teenus .et_pb_text_inner,
.kl-teenus .et_pb_heading_container {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  width: 100% !important;
}
.kl-teenus p,
.kl-teenus h1, .kl-teenus h2, .kl-teenus h3,
.kl-teenus h4, .kl-teenus h5, .kl-teenus h6 {
  margin: 0 !important;
  padding: 0 !important;
}

/* ---------- Pealkiri (text-2xl, kuldne) + kuldne joon ---------- */
.kl-teenus h1, .kl-teenus h2, .kl-teenus h3,
.kl-teenus h4, .kl-teenus h5, .kl-teenus h6,
.kl-teenus .kl-pealkiri,
.kl-teenus .kl-pealkiri * {
  font-family: var(--kl-font-display) !important;
  font-size: 1.5rem !important;                         /* 24px */
  line-height: 2rem !important;                         /* 32px */
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: var(--kl-gold) !important;
}
/* gold-rule: 56px × 1px, 16px pealkirjast allpool */
.kl-teenus h1::after, .kl-teenus h2::after, .kl-teenus h3::after,
.kl-teenus h4::after, .kl-teenus h5::after, .kl-teenus h6::after {
  content: "";
  display: block;
  width: 3.5rem;
  height: 1px;
  margin-top: 1rem;                                     /* mt-4 */
  background: var(--kl-gold);
}

/* ---------- Kirjeldus ---------- */
.kl-teenus,
.kl-teenus p,
.kl-teenus .kl-tekst,
.kl-teenus .kl-tekst * {
  font-family: var(--kl-font-body) !important;
  font-size: 1.075rem !important;                       /* ~17.2px */
  line-height: 1.7 !important;
  font-weight: 400 !important;
  color: var(--kl-muted) !important;
}
.kl-teenus .kl-tekst { margin-top: 1rem !important; }   /* mt-4 joone alt */

/* ---------- "LOE ROHKEM →" ---------- */
.kl-teenus .kl-link,
.kl-teenus .kl-link *,
.kl-teenus .kl-link a {
  font-family: var(--kl-font-label) !important;
  font-size: 0.68rem !important;                        /* ~10.9px */
  line-height: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: var(--kl-fg-70) !important;
  transition: color 150ms var(--kl-ease);
}
.kl-teenus .kl-link { margin-top: 1.25rem !important; } /* mt-5 */

.kl-teenus:hover .kl-link,
.kl-teenus:hover .kl-link *,
.kl-teenus:focus-within .kl-link,
.kl-teenus:focus-within .kl-link * {
  color: var(--kl-gold) !important;                     /* group-hover:text-gold */
}

.kl-teenus a { color: inherit; text-decoration: none !important; }

/* ==========================================================================
   Karin London — "Teenused sihtrühma järgi" kaart (Divi 5 Column)
   ========================================================================== */

/* @import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&family=EB+Garamond:wght@400;500&family=Jost:wght@500&display=swap"); */

:root {
  --kl-bg: #0c182b;            /* lehe taust (background) */
  --kl-card: #132136;          /* kaardi taust (card) */
  --kl-fg: #eee7db;            /* kreemjas pealkiri (foreground) */
  --kl-muted: #9eadbe;         /* kirjeldus (muted-foreground) */
  --kl-border: rgba(45, 62, 85, 0.6);     /* border 60% */
  --kl-gold: #b69039;          /* kuld */
  --kl-gold-60: rgba(182, 144, 57, 0.6);  /* hover-raam (gold/60) */
  --kl-font-display: "Cormorant Garamond", Georgia, serif;
  --kl-font-body: "EB Garamond", Georgia, serif;
  --kl-font-label: "Jost", "Segoe UI", sans-serif;
  --kl-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ---------- ROW: kaks veergu, vahe 24px (Tailwind gap-6) ---------- */
.kl-kaardid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1.5rem !important;
  align-items: stretch !important;
  max-width: 1280px !important;       /* max-w-7xl */
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 4rem 1rem !important;      /* py-16 px-4 */
}
.kl-kaardid > .kl-kaart {
  flex: 1 1 100% !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
}
.kl-kaardid::after { display: none !important; }   /* Divi clearfix */

@media (min-width: 640px) {
  .kl-kaardid { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
}
@media (min-width: 768px) {
  .kl-kaardid > .kl-kaart { flex: 1 1 calc(50% - 0.75rem) !important; }
}
@media (min-width: 1024px) {
  .kl-kaardid { padding: 5rem 2rem !important; }    /* lg:py-20 lg:px-8 */
}

/* ---------- COLUMN: kaart ---------- */
.kl-kaart {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;                                /* Divi 5 flex-veeru vahe maha */
  row-gap: 0 !important;
  justify-content: flex-start !important;
  background-color: var(--kl-card) !important;
  background-image: none !important;
  border: 1px solid var(--kl-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 2rem !important;                         /* p-8 */
  cursor: pointer;
  transition: border-color 150ms var(--kl-ease);
  text-align: left !important;
  box-sizing: border-box !important;
}
@media (min-width: 640px) {
  .kl-kaart { padding: 2.5rem !important; }         /* sm:p-10 */
}

/* Hover / klaviatuuri fookus: kuldne raam */
.kl-kaart:hover,
.kl-kaart:focus-within {
  border-color: var(--kl-gold-60) !important;
}
.kl-kaart:focus-visible {
  outline: 2px solid var(--kl-gold);
  outline-offset: 3px;
}

/* ---------- Divi moodulite vaikevahede nullimine ---------- */
.kl-kaart .et_pb_module,
.kl-kaart .et_pb_text_inner,
.kl-kaart .et_pb_heading_container {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  width: 100% !important;
}
.kl-kaart p,
.kl-kaart h1, .kl-kaart h2, .kl-kaart h3,
.kl-kaart h4, .kl-kaart h5, .kl-kaart h6 {
  margin: 0 !important;
  padding: 0 !important;
}
.kl-kaart p:not(:last-child) { padding-bottom: 0 !important; }

/* ---------- Pealkiri (h3, text-3xl, font-display) ---------- */
.kl-kaart h1, .kl-kaart h2, .kl-kaart h3,
.kl-kaart h4, .kl-kaart h5, .kl-kaart h6,
.kl-kaart .kl-pealkiri,
.kl-kaart .kl-pealkiri * {
  font-family: var(--kl-font-display) !important;
  font-size: 1.875rem !important;                   /* 30px */
  line-height: 2.25rem !important;                  /* 36px */
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: var(--kl-fg) !important;
  transition: color 150ms var(--kl-ease);
}
.kl-kaart .kl-pealkiri { margin-top: 1rem !important; }   /* mt-4 */

/* Hover: pealkiri kuldseks */
.kl-kaart:hover h1, .kl-kaart:hover h2, .kl-kaart:hover h3,
.kl-kaart:hover h4, .kl-kaart:hover h5, .kl-kaart:hover h6,
.kl-kaart:hover .kl-pealkiri,
.kl-kaart:hover .kl-pealkiri *,
.kl-kaart:focus-within .kl-pealkiri,
.kl-kaart:focus-within .kl-pealkiri * {
  color: var(--kl-gold) !important;
}

/* ---------- Kirjeldus (text-muted-foreground, body 17.2px / 1.7) ---------- */
.kl-kaart,
.kl-kaart p,
.kl-kaart .kl-tekst,
.kl-kaart .kl-tekst * {
  font-family: var(--kl-font-body) !important;
  font-size: 1.075rem !important;                   /* ~17.2px */
  line-height: 1.7 !important;
  font-weight: 400 !important;
  color: var(--kl-muted) !important;
}
.kl-kaart .kl-tekst { margin-top: 1rem !important; }      /* mt-4 */

/* ---------- Eyebrow "ERAISIKULE" ---------- */
.kl-kaart .kl-eyebrow,
.kl-kaart .kl-eyebrow * {
  font-family: var(--kl-font-label) !important;
  font-size: 0.72rem !important;                    /* ~11.5px */
  line-height: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--kl-gold) !important;
}

/* ---------- Link "VAATA TEENUSEID →" ---------- */
.kl-kaart .kl-link,
.kl-kaart .kl-link *,
.kl-kaart .kl-link a {
  font-family: var(--kl-font-label) !important;
  font-size: 0.75rem !important;                    /* text-xs 12px */
  line-height: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: var(--kl-gold) !important;
}
.kl-kaart .kl-link { margin-top: 1.5rem !important; }     /* mt-6 */

/* Muud lingid kaardi sees */
.kl-kaart a { color: inherit; text-decoration: none !important; }


/* ==========================================================================
   Karin London — "Koolitused" plokk (Divi 5)
   ========================================================================== */
 
 
/* ======================= A) PÄIS ======================= */
 
.kl-koolitused-pais {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;              /* items-end */
  justify-content: space-between !important;     /* justify-between */
  gap: 1rem !important;                          /* gap-4 */
  width: calc(100% - 2rem) !important;           /* px-4 */
  max-width: calc(1280px - 4rem) !important;     /* max-w-7xl */
  margin: 0 auto !important;
  padding: 4rem 0 0 !important;                  /* py-16 (ülemine) */
  box-sizing: border-box !important;
}
.kl-koolitused-pais::before,
.kl-koolitused-pais::after { display: none !important; }
.kl-koolitused-pais > .et_pb_column {
  flex: 0 1 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  row-gap: 0 !important;
}
.kl-koolitused-pais .et_pb_module,
.kl-koolitused-pais .et_pb_text_inner,
.kl-koolitused-pais .et_pb_heading_container,
.kl-koolitused-pais p,
.kl-koolitused-pais h1, .kl-koolitused-pais h2, .kl-koolitused-pais h3 {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
 
@media (min-width: 640px) {
  .kl-koolitused-pais { width: calc(100% - 3rem) !important; }
}
@media (min-width: 1024px) {
  .kl-koolitused-pais {
    width: calc(100% - 4rem) !important;
    padding-top: 5rem !important;               /* lg:py-20 */
  }
}
 
/* Eyebrow "VÄLJAÕPE" */
.kl-sekt-eyebrow,
.kl-sekt-eyebrow * {
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.72rem !important;
  line-height: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #b69039 !important;
}
 
/* Sektsiooni pealkiri "Koolitused" — text-3xl / sm:text-4xl */
.kl-koolitused-pais .kl-sekt-pealkiri,
.kl-sekt-pealkiri.et_pb_module { margin-top: 0.75rem !important; }   /* mt-3 */
.kl-sekt-pealkiri,
.kl-sekt-pealkiri * {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 1.875rem !important;               /* 30px */
  line-height: 2.25rem !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #eee7db !important;
}
@media (min-width: 640px) {
  .kl-sekt-pealkiri,
  .kl-sekt-pealkiri * {
    font-size: 2.25rem !important;              /* 36px */
    line-height: 2.5rem !important;
  }
}
 
/* "KÕIK KOOLITUSED →" */
.kl-koik-link,
.kl-koik-link *,
.kl-koik-link a {
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.75rem !important;                /* text-xs */
  line-height: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #b69039 !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.kl-koik-link a:hover,
.kl-koik-link:hover,
.kl-koik-link:hover * {
  color: #d1b473 !important;                    /* hover:text-gold-soft */
}
 
 
/* ======================= B) KAARDID ======================= */
 
.kl-koolitused {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;                       /* gap-6 */
  width: calc(100% - 2rem) !important;
  max-width: calc(1280px - 4rem) !important;
  margin: 2.5rem auto 0 !important;             /* mt-10 päisest */
  padding: 0 0 4rem !important;                 /* py-16 (alumine) */
  box-sizing: border-box !important;
}
.kl-koolitused::before,
.kl-koolitused::after { display: none !important; }
 
@media (min-width: 640px) {
  .kl-koolitused { width: calc(100% - 3rem) !important; }
}
@media (min-width: 768px) {
  .kl-koolitused { grid-template-columns: repeat(3, 1fr) !important; }  /* md:grid-cols-3 */
}
@media (min-width: 1024px) {
  .kl-koolitused {
    width: calc(100% - 4rem) !important;
    padding-bottom: 5rem !important;            /* lg:py-20 */
  }
}
/* Kui päist pole otse kohal, jäta ülemine vahe ära */
.kl-koolitused:not(.kl-koolitused-pais + .kl-koolitused) { margin-top: 0 !important; }
.kl-koolitused-pais + .kl-koolitused { margin-top: 2.5rem !important; }
 
/* Kaart */
.kl-koolitus {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 0 !important;                            /* Divi 5 moodulite vahe maha */
  row-gap: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 1.75rem !important;                  /* p-7 = 28px */
  background-color: #132136 !important;         /* bg-card */
  background-image: none !important;
  border: 1px solid rgba(45, 62, 85, 0.6) !important;   /* border-border */
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
  cursor: pointer;
  box-sizing: border-box !important;
  transition: border-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.kl-koolitus:hover,
.kl-koolitus:focus-within {
  border-color: rgba(182, 144, 57, 0.6) !important;     /* hover:border-gold/60 */
}
.kl-koolitus:focus-visible {
  outline: 2px solid #b69039;
  outline-offset: 3px;
}
 
/* Divi vaikevahede nullimine */
.kl-koolitus .et_pb_module,
.kl-koolitus .et_pb_text_inner,
.kl-koolitus .et_pb_heading_container {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  width: 100% !important;
}
.kl-koolitus p,
.kl-koolitus h1, .kl-koolitus h2, .kl-koolitus h3,
.kl-koolitus h4, .kl-koolitus h5, .kl-koolitus h6 {
  margin: 0 !important;
  padding: 0 !important;
}
 
/* Kaardi pealkiri — text-xl leading-snug (20px / 27.5px) */
.kl-koolitus h1, .kl-koolitus h2, .kl-koolitus h3,
.kl-koolitus h4, .kl-koolitus h5, .kl-koolitus h6,
.kl-koolitus .kl-koolitus-pealkiri,
.kl-koolitus .kl-koolitus-pealkiri * {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 1.25rem !important;                /* 20px */
  line-height: 1.375 !important;                /* leading-snug */
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #eee7db !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.kl-koolitus:hover h1, .kl-koolitus:hover h2, .kl-koolitus:hover h3,
.kl-koolitus:hover h4, .kl-koolitus:hover h5, .kl-koolitus:hover h6,
.kl-koolitus:hover .kl-koolitus-pealkiri,
.kl-koolitus:hover .kl-koolitus-pealkiri *,
.kl-koolitus:focus-within .kl-koolitus-pealkiri,
.kl-koolitus:focus-within .kl-koolitus-pealkiri * {
  color: #b69039 !important;                    /* group-hover:text-gold */
}
 
/* "LOE ROHKEM →" */
.kl-koolitus .kl-koolitus-link,
.kl-koolitus .kl-koolitus-link *,
.kl-koolitus .kl-koolitus-link a {
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.68rem !important;
  line-height: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: rgba(238, 231, 219, 0.7) !important;   /* foreground/70 */
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.kl-koolitus .kl-koolitus-link.et_pb_module { margin-top: 1rem !important; }  /* mt-4 */
.kl-koolitus:hover .kl-koolitus-link,
.kl-koolitus:hover .kl-koolitus-link *,
.kl-koolitus:focus-within .kl-koolitus-link,
.kl-koolitus:focus-within .kl-koolitus-link * {
  color: #b69039 !important;
}
 
.kl-koolitus a { color: inherit; text-decoration: none !important; }
 
/* ==========================================================================
   Karin London — tsitaadi vahesektsioon (Divi 5)
   ========================================================================== */
 
:root {
  --kl-fg: #eee7db;
  --kl-gold: #b69039;
  --kl-gold-30: rgba(182, 144, 57, 0.3);
  --kl-gold-20: rgba(182, 144, 57, 0.2);
  --kl-font-display: "Cormorant Garamond", Georgia, serif;
  --kl-font-label: "Jost", "Segoe UI", sans-serif;
}
 
/* ---------- SECTION + dekoratiivsed ringid ---------- */
.kl-tsitaat-sektsioon {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background-color: transparent;
}
.kl-tsitaat-sektsioon::before,
.kl-tsitaat-sektsioon::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  border-radius: 9999px !important;
  pointer-events: none !important;
  background: none !important;
  z-index: 0 !important;
  display: block !important;
}
/* Suur ring: 288px, 96px vasakult üle ääre */
.kl-tsitaat-sektsioon::before {
  left: -6rem !important;
  width: 18rem !important;
  height: 18rem !important;
  border: 1px solid rgba(182, 144, 57, 0.3) !important;   /* kuld 30% */
}
/* Väike ring: 224px, 40px vasakult üle ääre */
.kl-tsitaat-sektsioon::after {
  left: -2.5rem !important;
  width: 14rem !important;
  height: 14rem !important;
  border: 1px solid rgba(182, 144, 57, 0.2) !important;   /* kuld 20% */
}
 
/* ---------- ROW ---------- */
.kl-tsitaat-rida {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: 48rem !important;                  /* max-w-3xl */
  margin: 0 auto !important;
  padding: 5rem 1rem !important;                /* py-20 px-4 */
  box-sizing: border-box !important;
}
@media (min-width: 640px) {
  .kl-tsitaat-rida { padding: 5rem 1.5rem !important; }   /* sm:px-6 */
}
 
/* ---------- COLUMN ---------- */
.kl-tsitaat-veerg {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;                            /* Divi 5 moodulite vahe maha */
  row-gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  background: transparent !important;
}
.kl-tsitaat-veerg .et_pb_module,
.kl-tsitaat-veerg .et_pb_text_inner {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  background: transparent !important;
  border: 0 !important;
}
.kl-tsitaat-veerg p {
  margin: 0 !important;
  padding: 0 !important;
}
 
/* ---------- Tsitaat ---------- */
.kl-tsitaat,
.kl-tsitaat * {
  font-family: var(--kl-font-display, "Cormorant Garamond", Georgia, serif) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  font-size: 1.875rem !important;               /* text-3xl 30px */
  line-height: 1.375 !important;                /* leading-snug */
  letter-spacing: normal !important;
  color: var(--kl-fg, #eee7db) !important;
  text-align: center !important;
}
@media (min-width: 640px) {
  .kl-tsitaat,
  .kl-tsitaat * { font-size: 2.25rem !important; }        /* sm:text-4xl 36px */
}
 
/* ---------- Kuldne kriips + nimi ---------- */
.kl-tsitaat-veerg .kl-autor,
.kl-autor.et_pb_module {
  margin-top: 2rem !important;                  /* mt-8 */
}
.kl-autor,
.kl-autor * {
  font-family: var(--kl-font-label, "Jost", "Segoe UI", sans-serif) !important;
  font-size: 0.72rem !important;
  line-height: 1rem !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--kl-gold, #b69039) !important;
}
.kl-autor p,
.kl-autor .et_pb_text_inner {
  display: inline-flex !important;
  align-items: center !important;
  gap: 1rem !important;                         /* gap-4 */
}
.kl-autor .et_pb_text_inner > p::before,
.kl-autor .et_pb_text_inner:not(:has(p))::before {
  content: "";
  display: inline-block;
  width: 3.5rem;                                /* 56px */
  height: 1px;
  background: var(--kl-gold, #b69039);
  flex: none;
}


/* ==========================================================================
   Karin London — nupud (Divi 5 Button moodul)
   ========================================================================== */
 
/* ---------- Ühine alus ---------- */
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button,
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button,
body .kl-nupp-kuld.et_pb_button,
body .kl-nupp-raam.et_pb_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0.875rem 2rem !important;            /* py-3.5 px-8 → 14px 32px */
  border: 1px solid #b69039 !important;
  border-radius: 2px !important;                /* rounded-sm */
  box-shadow: none !important;
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.75rem !important;                /* text-xs 12px */
  line-height: 1rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: nowrap !important;
  cursor: pointer;
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
              color 150ms cubic-bezier(0.4, 0, 0.2, 1),
              border-color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
 
/* Divi hover-noole ja padding-hüppe eemaldamine */
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button::after,
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button::before,
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button::after,
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button::before,
body .kl-nupp-kuld.et_pb_button::after,
body .kl-nupp-kuld.et_pb_button::before,
body .kl-nupp-raam.et_pb_button::after,
body .kl-nupp-raam.et_pb_button::before {
  display: none !important;
  content: none !important;
}
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button:hover,
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button:hover,
body .kl-nupp-kuld.et_pb_button:hover,
body .kl-nupp-raam.et_pb_button:hover {
  padding: 0.875rem 2rem !important;
}
 
/* Mooduli ümbrise vahed nulli */
.et_pb_button_module_wrapper:has(.kl-nupp-kuld),
.et_pb_button_module_wrapper:has(.kl-nupp-raam) {
  margin: 0 !important;
  padding: 0 !important;
}
 
/* ---------- 1) Kuldne taust ---------- */
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button,
body .kl-nupp-kuld.et_pb_button {
  background: #b69039 !important;               /* bg-gold */
  border-color: #b69039 !important;
  color: #0c182b !important;                    /* text-primary-foreground */
}
body #page-container .et_pb_section .kl-nupp-kuld.et_pb_button:hover,
body .kl-nupp-kuld.et_pb_button:hover {
  background: #d1b473 !important;               /* hover:bg-gold-soft */
  border-color: #d1b473 !important;
  color: #0c182b !important;
}
 
/* ---------- 2) Ainult raam ---------- */
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button,
body .kl-nupp-raam.et_pb_button {
  background: transparent !important;
  border-color: #b69039 !important;             /* border-gold */
  color: #b69039 !important;                    /* text-gold */
}
body #page-container .et_pb_section .kl-nupp-raam.et_pb_button:hover,
body .kl-nupp-raam.et_pb_button:hover {
  background: #b69039 !important;               /* hover:bg-gold */
  border-color: #b69039 !important;
  color: #0c182b !important;                    /* hover:text-primary-foreground */
}
 
/* ---------- Klaviatuuri fookus ---------- */
body .kl-nupp-kuld.et_pb_button:focus-visible,
body .kl-nupp-raam.et_pb_button:focus-visible {
  outline: 2px solid #b69039 !important;
  outline-offset: 3px !important;
}
 
/* ==========================================================================
   Karin London — alamlehtede päis (Divi 5)
   ========================================================================== */

/* ---------- SECTION ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais {
  background-color: #040e1f !important;                 /* navy-deep */
  background-image: none !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(182, 144, 57, 0.25) !important;  /* border-gold/25 */
  padding: 0 !important;
  margin: 0 !important;
}

/* ---------- ROW ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais > .et_pb_row {
  display: block !important;
  width: 100% !important;
  max-width: 1280px !important;                         /* max-w-7xl */
  margin: 0 auto !important;
  padding: 4rem 1rem !important;                        /* py-16 px-4 */
  box-sizing: border-box !important;
}
@media (min-width: 640px) {
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais > .et_pb_row {
    padding: 5rem 1.5rem !important;                    /* sm:py-20 sm:px-6 */
  }
}
@media (min-width: 1024px) {
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais > .et_pb_row {
    padding-left: 2rem !important;                      /* lg:px-8 */
    padding-right: 2rem !important;
  }
}

/* ---------- COLUMN ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .et_pb_column {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;                                    /* Divi 5 moodulite vahe maha */
  row-gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  text-align: left !important;
}

/* Divi vaikevahede nullimine */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .et_pb_module,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .et_pb_text_inner,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .et_pb_heading_container,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais p,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h1,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h2,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h3 {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .et_pb_module {
  width: 100% !important;
}

/* ---------- Tavatekst = sissejuhatus (text-lg, muted) ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais p,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-sissejuhatus,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-sissejuhatus * {
  font-family: "EB Garamond", Georgia, serif !important;
  font-size: 1.125rem !important;                       /* 18px */
  line-height: 1.75rem !important;                      /* 28px */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #9eadbe !important;                            /* muted-foreground */
}
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-sissejuhatus {
  max-width: 42rem !important;                          /* max-w-2xl 672px */
  margin-top: 1.5rem !important;                        /* mt-6 kriipsu alt */
}

/* ---------- Eyebrow "ERAISIKULE" ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-eyebrow,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-eyebrow * {
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.72rem !important;
  line-height: 1rem !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #b69039 !important;
}

/* ---------- Pealkiri (text-4xl → sm:text-5xl, leading-tight) ---------- */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h1,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h2,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h3,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-pealkiri,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-pealkiri * {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 2.25rem !important;                        /* 36px */
  line-height: 1.25 !important;                         /* leading-tight */
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #eee7db !important;                            /* foreground */
}
@media (min-width: 640px) {
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h1,
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h2,
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h3,
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-pealkiri,
  html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-pealkiri * {
    font-size: 3rem !important;                         /* 48px */
  }
}
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais .kl-pais-pealkiri {
  max-width: 48rem !important;                          /* max-w-3xl */
  margin-top: 1rem !important;                          /* mt-4 eyebrow alt */
}

/* Kuldne kriips pealkirja all: 56 × 1px, 24px vahega (gold-rule mt-6) */
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h1::after,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h2::after,
html :is(#page-container, body) .kl-lehe-pais.kl-lehe-pais h3::after {
  content: "" !important;
  display: block !important;
  width: 3.5rem !important;
  height: 1px !important;
  margin-top: 1.5rem !important;
  background: #b69039 !important;
}

/* =========================================================
   Karin London – sisutekst (alamlehe pikk tekst)
   Näidis: Lovable /eraisikule/susteemne-individuaalteraapia
   Divi 5: Theme Options → Custom CSS (või lapsteema style.css)
   ========================================================= */

/* ---------- 1. Kitsas sisuveerg ----------
   Klass "kl-sisu" → Row (rea) CSS Class väljale.
   Desktop max 768px, mobiilis 16px servad, ≥640px 24px. */
.kl-sisu,
.et_pb_row.kl-sisu {
  width: 100% !important;
  max-width: 48rem !important;           /* 768px */
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 4rem 1rem !important;         /* 64px / 16px */
  box-sizing: border-box;
}
@media (min-width: 640px) {
  .kl-sisu, .et_pb_row.kl-sisu { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
}
@media (min-width: 1024px) {
  .kl-sisu, .et_pb_row.kl-sisu { padding-top: 5rem !important; padding-bottom: 5rem !important; }
}

/* ---------- 2. Põhitekst ---------- */
.kl-sisu p,
.kl-sisu li {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.08rem;
  line-height: 1.85;
  color: #9eadbe;
}
.kl-sisu p {
  margin: 0;
  padding-bottom: 1.75rem;               /* lõikude vahe */
}
.kl-sisu p:last-child { padding-bottom: 0; }
@media (min-width: 640px) {
  .kl-sisu p, .kl-sisu li { font-size: 1.125rem; }
}

/* Bold tekst – kreemjas */
.kl-sisu strong,
.kl-sisu b {
  font-weight: 500;
  color: #eee7db;
}

/* Kuldne esiletõst (nt listi esimene lause)
   Tekstis: <strong class="kl-kuld">Diagnostiline kaardistamine:</strong> */
.kl-sisu .kl-kuld,
.kl-kuld {
  color: #b69039 !important;
  font-weight: 500;
}

/* ---------- 3. Pealkirjad ---------- */
.kl-sisu h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.875rem;                   /* mobiil 30px */
  line-height: 1.25;
  color: #eee7db;
  margin: 0;
  padding-bottom: 0;
}
.kl-sisu h3 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.5rem;                     /* mobiil 24px */
  line-height: 1.3;
  color: #b69039;
  margin: 0;
  padding-bottom: 0.75rem;
}
@media (min-width: 640px) {
  .kl-sisu h2 { font-size: 2.25rem; }    /* desktop 36px */
  .kl-sisu h3 { font-size: 1.625rem; }
}

/* Uue alaosa vahe (pane klass Text-moodulile, mis algab pealkirjaga) */
.kl-sisu .kl-alaosa { margin-top: 4rem; }

/* ---------- 4. Nummerdatud list ----------
   Kuldne vertikaaljoon vasakul, taane, kuldne number.
   Toimib automaatselt iga <ol> peal .kl-sisu sees
   või eraldi klassiga "kl-loend" Text-moodulil. */
.kl-sisu ol,
.kl-loend ol {
  list-style: none !important;
  counter-reset: kl-nr;
  margin: 2.25rem 0 0 0 !important;
  padding: 0 0 0 1.75rem !important;     /* mobiil 28px */
  border-left: 1px solid rgba(182, 144, 57, 0.35);
}
.kl-sisu ol > li,
.kl-loend ol > li {
  counter-increment: kl-nr;
  list-style: none !important;
  margin: 0 0 1.75rem 0;
  padding: 0;
}
.kl-sisu ol > li:last-child,
.kl-loend ol > li:last-child { margin-bottom: 0; }
.kl-sisu ol > li::before,
.kl-loend ol > li::before {
  content: counter(kl-nr) ". ";
  color: #b69039;
  font-weight: 500;
}
@media (min-width: 640px) {
  .kl-sisu ol, .kl-loend ol { padding-left: 2.25rem !important; }   /* 36px */
}

/* Täpploend samas stiilis (kuldne kriips numbri asemel) */
.kl-sisu ul:not(.kl-kaardid),
.kl-loend ul {
  list-style: none !important;
  margin: 0.01rem 0 0 0 !important;
  padding: 0 0 0 1.75rem !important;
  border-left: 1px solid rgba(182, 144, 57, 0.35);
}
.kl-sisu ul:not(.kl-kaardid) > li,
.kl-loend ul > li { margin: 0 0 0.25rem 0; padding: 0; }
.kl-sisu ul:not(.kl-kaardid) > li::before,
.kl-loend ul > li::before { content: "— "; color: #b69039; }
@media (min-width: 640px) {
  .kl-sisu ul:not(.kl-kaardid), .kl-loend ul { padding-left: 2.25rem !important; }
}

/* =========================================================
   Karin London – teenuseplokk (01 / 02 / 03 …)
   ========================================================= */

/* ---------- Sektsioon ---------- */
.kl-teraapiad,
.et_pb_section.kl-teraapiad {
  counter-reset: kl-teraapia;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 4rem 0 !important;               /* 64px */
}
@media (min-width: 1024px) {
  .kl-teraapiad, .et_pb_section.kl-teraapiad { padding: 5rem 0 !important; }   /* 80px */
}

/* ---------- Üks plokk (Row) ---------- */
/* Divi 5 rida on flex-konteiner ja veergudele pannakse laius
   (width / flex-basis / max-width) Divi enda CSS-iga. Siin
   kirjutatakse kõik need üle, nii et Divi veerusätted ei loe. */
.et_pb_row.kl-teraapia,
.kl-teraapia {
  counter-increment: kl-teraapia;
  display: flex !important;
  flex-direction: column !important;        /* mobiil: veerud üksteise all */
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 1.5rem !important;                   /* 24px */
  width: 100% !important;
  max-width: 80rem !important;              /* 1280px */
  margin: 0 auto 3.5rem auto !important;    /* plokkide vahe 56px */
  padding: 0 1rem !important;               /* mobiil 16px servad */
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
.et_pb_row.kl-teraapia:last-child,
.kl-teraapia:last-child { margin-bottom: 0 !important; }
.kl-teraapia::before,
.kl-teraapia::after { display: none !important; }

/* Veerud – laius, vahed ja taust nulli */
.kl-teraapia .et_pb_column,
.kl-teraapia > div {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  border: 0 !important;
  background: none !important;
  gap: 0 !important;                        /* Divi 5 veeru 30px vahe maha */
}
/* Moodulid veeru sees täislaiuses (Divi 5 võib anda moodulile max-width) */
.kl-teraapia .kl-teraapia-pea,
.kl-teraapia .kl-teraapia-tekst {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: none !important;
}

@media (min-width: 640px) {
  .et_pb_row.kl-teraapia, .kl-teraapia { padding: 0 1.5rem !important; }   /* 24px */
}
@media (min-width: 1024px) {
  .et_pb_row.kl-teraapia, .kl-teraapia {
    flex-direction: row !important;         /* kõrvuti */
    gap: 3.5rem !important;                 /* 56px veergude vahe */
    padding: 0 2rem !important;             /* 32px */
  }
  /* 2 : 3 jaotus */
  .kl-teraapia .et_pb_column:first-child,
  .kl-teraapia > div:first-child  { flex: 2 1 0 !important; width: auto !important; }
  .kl-teraapia .et_pb_column:last-child,
  .kl-teraapia > div:last-child   { flex: 3 1 0 !important; width: auto !important; }
}

/* ---------- Vasak veerg: number, pealkiri, joon, alapealkiri ---------- */

/* Number – automaatne (01, 02 …). Kui tahad käsitsi, kirjuta
   <p class="kl-teraapia-nr">01</p> ja lisa Row-le klass kl-teraapia-kasitsi */
.kl-teraapia-pea::before {
  content: counter(kl-teraapia, decimal-leading-zero);
  display: block;
  font-family: "Jost", "Segoe UI", sans-serif;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  line-height: 1.5;
  color: #9eadbe;
}
.kl-teraapia-kasitsi .kl-teraapia-pea::before { display: none; }
.kl-teraapia-pea .kl-teraapia-nr {
  font-family: "Jost", "Segoe UI", sans-serif;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  color: #9eadbe;
  margin: 0;
  padding: 0;
}

.kl-teraapia-pea h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.625rem;                      /* mobiil 26px */
  line-height: 1.2;
  color: #b69039;
  margin: 0.75rem 0 0 0;                    /* 12px numbrist */
  padding: 0;
}
@media (min-width: 640px) {
  .kl-teraapia-pea h2 { font-size: 1.875rem; }  /* 30px */
}
.kl-teraapia-pea h2 a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
}
.kl-teraapia-pea h2 a:hover,
.kl-teraapia-pea h2 a:focus-visible { text-decoration: underline; }

/* Kuldne joon pealkirja all – tekib automaatselt h2 järel */
.kl-teraapia-pea h2::after {
  content: "";
  display: block;
  width: 3.5rem;                            /* 56px */
  height: 1px;
  margin-top: 1rem;                         /* 16px */
  background: #b69039;
}

.kl-teraapia-pea p:not(.kl-teraapia-nr) {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-style: italic;
  font-size: 1.125rem;                      /* 18px */
  line-height: 1.55;
  color: rgba(238, 231, 219, 0.85);         /* #eee7db 85% */
  margin: 1rem 0 0 0;
  padding: 0;
}

/* ---------- Parem veerg: sisutekst ---------- */
.kl-teraapia-tekst p {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.0625rem;                     /* mobiil 17px */
  line-height: 1.65;
  color: #9eadbe;
  margin: 0;
  padding: 0 0 1rem 0;
}
.kl-teraapia-tekst p:last-child { padding-bottom: 0; }
.kl-teraapia-tekst strong { font-weight: 500; color: #eee7db; }
@media (min-width: 640px) {
  .kl-teraapia-tekst p { font-size: 1.125rem; }   /* 18px */
}
@media (min-width: 1024px) {
  .kl-teraapia .kl-teraapia-tekst { padding-top: 2.5rem !important; }  /* joondub pealkirja kõrgusele */
}

/* =========================================================
   Karin London – kontaktivorm (Contact Form 7)
   ========================================================= */

/* ---------- Kaart vormi ümber (valikuline) ---------- */
.kl-vorm-kaart .wpcf7 {
  border: 1px solid rgba(182, 144, 57, 0.3);   /* kuldne 30% */
  background: rgba(19, 33, 54, 0.5);           /* #132136 50% */
  padding: 1.5rem;                             /* mobiil 24px */
  box-sizing: border-box;
}
@media (min-width: 480px) { .kl-vorm-kaart .wpcf7 { padding: 2rem; } }      /* 32px */
@media (min-width: 640px) { .kl-vorm-kaart .wpcf7 { padding: 2.5rem; } }    /* 40px */

/* Pealkiri "Kontaktivorm" – lisa CF7 vormi algusesse:
   <h2 class="kl-vorm-pealkiri">Kontaktivorm</h2> */
.kl-vorm .kl-vorm-pealkiri,
.kl-vorm .wpcf7 h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.5rem;                           /* 24px */
  line-height: 1.3;
  color: #eee7db;
  margin: 0 0 1.5rem 0;
  padding: 0;
}

/* ---------- Väljad ---------- */
.kl-vorm .wpcf7 form > p,
.kl-vorm .wpcf7 form .kl-vali {
  margin: 0 0 1.25rem 0;                       /* väljade vahe 20px */
  padding: 0;
}
.kl-vorm .wpcf7 fieldset.hidden-fields-container { display: none; }

/* Silt: Jost, suurtähed, harvendus */
.kl-vorm .wpcf7 label {
  display: block;
  font-family: "Jost", "Segoe UI", sans-serif;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  line-height: 1.4;
  color: #9eadbe;
  margin: 0;
}
.kl-vorm .wpcf7 label br { display: none; }
.kl-vorm .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.5rem;                          /* sildi ja välja vahe 8px */
}

/* Sisestusväljad */
.kl-vorm .wpcf7 input[type="text"],
.kl-vorm .wpcf7 input[type="email"],
.kl-vorm .wpcf7 input[type="tel"],
.kl-vorm .wpcf7 input[type="url"],
.kl-vorm .wpcf7 input[type="number"],
.kl-vorm .wpcf7 input[type="date"],
.kl-vorm .wpcf7 select,
.kl-vorm .wpcf7 textarea {
  display: block;
  width: 100% !important;
  box-sizing: border-box;
  margin: 0;
  padding: 0.75rem 1rem !important;            /* 12px 16px */
  font-family: "EB Garamond", Georgia, serif !important;
  font-size: 1rem !important;                  /* 16px – iPhone ei suumi */
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.5;
  color: #eee7db !important;
  background: #132136 !important;
  border: 1px solid rgba(45, 62, 85, 0.5) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.kl-vorm .wpcf7 textarea {
  height: 9.5rem !important;                   /* ~5 rida (CF7 vaikimisi 10) */
  min-height: 6rem;
  resize: vertical;
}
.kl-vorm .wpcf7 input::placeholder,
.kl-vorm .wpcf7 textarea::placeholder {
  color: rgba(158, 173, 190, 0.7);
  opacity: 1;
}
/* Fookus: kuldne raam + 1px kuldne rõngas */
.kl-vorm .wpcf7 input:focus,
.kl-vorm .wpcf7 select:focus,
.kl-vorm .wpcf7 textarea:focus {
  border-color: #b69039 !important;
  box-shadow: 0 0 0 1px #b69039 !important;
}
/* Brauseri automaattäide ei tee välja valgeks */
.kl-vorm .wpcf7 input:-webkit-autofill {
  -webkit-text-fill-color: #eee7db;
  -webkit-box-shadow: 0 0 0 100px #132136 inset !important;
  caret-color: #eee7db;
}

/* ---------- Nupp ---------- */
.kl-vorm .wpcf7 input[type="submit"],
.kl-vorm .wpcf7 button[type="submit"] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  margin: 0.25rem 0 0 0;
  padding: 0.875rem 2rem !important;           /* 14px 32px */
  font-family: "Jost", "Segoe UI", sans-serif !important;
  font-size: 0.75rem !important;               /* 12px */
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  line-height: 1.5;
  color: #0c182b !important;
  background: #b69039 !important;
  border: 0 !important;
  border-radius: 2px !important;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color .2s ease;
}
.kl-vorm .wpcf7 input[type="submit"]:hover,
.kl-vorm .wpcf7 button[type="submit"]:hover {
  background: #d1b473 !important;              /* gold-soft */
}
.kl-vorm .wpcf7 input[type="submit"]:focus-visible,
.kl-vorm .wpcf7 button[type="submit"]:focus-visible {
  outline: 2px solid #b69039;
  outline-offset: 3px;
}
.kl-vorm .wpcf7 input[type="submit"]:disabled { opacity: .6; cursor: wait; }

/* CF7 laadimisikoon – nähtav ainult saatmise ajal, muidu ei võta ruumi */
.kl-vorm .wpcf7 form:not(.submitting) .wpcf7-spinner { display: none; }
.kl-vorm .wpcf7 form.submitting .wpcf7-spinner {
  display: block;
  margin: 0.75rem auto 0;
  background-color: #b69039;
}
/* Viimase välja (nupu) all ei ole lisavahet */
.kl-vorm .wpcf7 form > p:last-of-type { margin-bottom: 0; }

/* ---------- Veateated ja vastus ---------- */
.kl-vorm .wpcf7-not-valid-tip {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 0.875rem;
  color: #e8a598;                              /* pehme punane tumedal taustal */
  margin-top: 0.375rem;
  letter-spacing: 0;
  text-transform: none;
}
.kl-vorm .wpcf7 .wpcf7-not-valid {
  border-color: #e8a598 !important;
}
.kl-vorm .wpcf7 form .wpcf7-response-output {
  margin: 1.25rem 0 0 0;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(182, 144, 57, 0.45);
  border-radius: 2px;
  font-family: "EB Garamond", Georgia, serif;
  font-size: 0.875rem;                         /* text-sm */
  line-height: 1.5;
  color: #b69039;
  background: transparent;
}
.kl-vorm .wpcf7 form.invalid .wpcf7-response-output,
.kl-vorm .wpcf7 form.unaccepted .wpcf7-response-output,
.kl-vorm .wpcf7 form.failed .wpcf7-response-output,
.kl-vorm .wpcf7 form.spam .wpcf7-response-output {
  border-color: rgba(232, 165, 152, 0.6);
  color: #e8a598;
}

/* Nõusoleku-/valikukastid (kui lisad acceptance või checkbox välja) */
.kl-vorm .wpcf7-list-item { margin: 0 1rem 0 0; }
.kl-vorm .wpcf7-list-item-label {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 0.95rem;
  letter-spacing: 0;
  text-transform: none;
  color: #9eadbe;
}
.kl-vorm .wpcf7 input[type="checkbox"],
.kl-vorm .wpcf7 input[type="radio"] { accent-color: #b69039; }

/* Kriipsu vaikeväärtused – muudetavad lisaklassidega allpool */
.kl-joon {
  --kl-joon-varv: #b69039;     /* kuldne */
  --kl-joon-laius: 3.5rem;     /* 56px */
  --kl-joon-paksus: 1px;
  --kl-joon-vahe: 1rem;        /* 16px teksti ja kriipsu vahel */
}
 
/* Divi ümbrised (moodul, veerg, rida, sektsioon): kriips nende sees
   olevate pealkirjade alla. Muu element (h2, p …): kriips tema enda alla. */
:is(h1, h2, h3, h4, h5, h6, p, div, span).kl-joon:not(.et_pb_module, .et_pb_column, .et_pb_row, .et_pb_section)::after,
.kl-joon:is(.et_pb_module, .et_pb_column, .et_pb_row, .et_pb_section) :is(h1, h2, h3, h4, h5, h6)::after {
  content: "";
  display: block;
  width: var(--kl-joon-laius);
  max-width: 100%;
  height: 0;
  border-top: var(--kl-joon-paksus) solid var(--kl-joon-varv);
  margin-top: var(--kl-joon-vahe);
  margin-left: 0;
  margin-right: auto;
}
 
/* ---------- Lisaklassid (pane kl-joon kõrvale) ---------- */
 
/* Joondus – kasuta koos Divi teksti joondusega */
.kl-joon-keskel:not(.et_pb_module, .et_pb_column, .et_pb_row, .et_pb_section)::after,
.kl-joon-keskel :is(h1,h2,h3,h4,h5,h6)::after { margin-left: auto !important; margin-right: auto !important; }
.kl-joon-paremal:not(.et_pb_module, .et_pb_column, .et_pb_row, .et_pb_section)::after,
.kl-joon-paremal :is(h1,h2,h3,h4,h5,h6)::after { margin-left: auto !important; margin-right: 0 !important; }
 
/* Värv */
.kl-joon-hele  { --kl-joon-varv: rgba(238, 231, 219, 0.6); }  /* kreemjas */
.kl-joon-tume  { --kl-joon-varv: #0c182b; }                   /* heledal taustal */
.kl-joon-tekst { --kl-joon-varv: currentColor; }              /* sama värv kui pealkiri */
 
/* Pikkus ja vahe */
.kl-joon-lyhike { --kl-joon-laius: 2.5rem; }   /* 40px */
.kl-joon-pikk   { --kl-joon-laius: 5rem; }     /* 80px */
.kl-joon-paks   { --kl-joon-paksus: 2px; }
.kl-joon-tihe   { --kl-joon-vahe: 0.625rem; }  /* 10px */
.kl-joon-hore   { --kl-joon-vahe: 1.5rem; }    /* 24px */
 
/* Mobiilis veidi väiksem vahe */
@media (max-width: 640px) {
  .kl-joon { --kl-joon-vahe: 0.75rem; }
  .kl-joon.kl-joon-hore { --kl-joon-vahe: 1.125rem; }
  .kl-joon.kl-joon-tihe { --kl-joon-vahe: 0.5rem; }
}