/*
Theme Name:     Kadence Child
Theme URI:      https://www.kadencewp.com/kadence-theme/
Template:       kadence
Author:         Tim Ehling, die mainagentur
Author URI:     https://die-mainagentur.de
Description:    Child-Theme von Kadence Theme
Version:        1.0
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* =============================
 * TOKENS — TYPOGRAPHY
 * Define global font sizes using clamp() for a fluid effect.
 * Adjust line-height with ex values for consistent vertical spacing.
============================= */

:root {
  /* Body text */
  --global-font-size-body: clamp(1rem, 0.227vw + 0.955rem, 1.125rem);

  /* T-shirt scale (sm → xxxl) */
  --global-kb-font-size-sm:   clamp(0.85rem, 0.78rem + 0.2vw, 0.95rem);
  --global-kb-font-size-md:   clamp(1.15rem, 0.5vw + 1.05rem, 1.4rem);
  --global-kb-font-size-lg:   clamp(1.35rem, 0.75vw + 1.2rem, 1.7rem);
  --global-kb-font-size-xl:   clamp(1.7rem, 1.2vw + 1.4rem, 2.3rem);
  --global-kb-font-size-xxl:  clamp(2rem, 1.6vw + 1.7rem, 3rem);
  --global-kb-font-size-xxxl: clamp(2.5rem, 2vw + 2rem, 4rem);

}

/* =============================
 * TYPOGRAPHY — HEADINGS
 * Apply t-shirt size clamp values to headings.
 * Define line-height using ex units for proportional spacing.
============================= */

h1,
.wpt-h1 {
  font-size: var(--global-kb-font-size-xxl);
  line-height: 2.4ex;
  font-weight: bold;
  text-wrap: pretty;
}

h2,
.wpt-h2 {
  font-size: var(--global-kb-font-size-xl);
  line-height: 2.3ex;
  font-weight: bold;
  text-wrap: balance;
}

h3,
.wpt-h3 {
  font-size: var(--global-kb-font-size-lg);
  line-height: 2.4ex;
  font-weight: 600;
  text-wrap: pretty;
}

h4,
.wpt-h4 {
  font-size: var(--global-kb-font-size-md);
  line-height: 2.2ex;
  font-weight: bold;
  text-wrap: pretty;
}

h5,
.wpt-h5 {
  font-size: var(--global-font-size-body);
  line-height: 2.3ex;
  font-weight: bold;
}

h6,
.wpt-h6 {
  font-size: var(--global-font-size-body);
  line-height: 2.3ex;
  font-weight: bold;
  text-wrap: pretty;
}

/* Adjust default text block magrins */
body .single-content h1,
body .single-content h2,
body .single-content h3,
body .single-content h4,
body .single-content h5,
body .single-content h6 {
  margin: 1.5em 0 .6em;
}

/* =============================
 * TYPOGRAPHY — BODY TEXT & ICON LIST
============================= */

body,
p,
.wpt-p,
.wp-block-kadence-iconlist {
  font-size: var(--global-font-size-body);
  line-height: 2.9ex;
  font-weight: inherit;
  text-wrap: pretty;
}

/* =============================
 * TYPOGRAPHY — EYEBROW HEADING
============================= */

.wpt-eyebrow.wp-block-kadence-advancedheading {
  position: relative;
  width: fit-content;
  display: inline-flex;
  align-items: center;
  color: var(--global-palette2);
  font-family: inherit;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: color-mix(in srgb, var(--global-palette1) 15%, transparent);
  padding: 0.5em 1em !important;
  border-radius: 999px;
}

.wpt-eyebrow.wp-block-kadence-advancedheading::before {
  content: "";
  display: inline-block;
  width: 0.65em;
  height: 0.65em;
  margin-right: 0.5em;
  border: 2.5px solid var(--global-palette2);
  transform: rotate(45deg);
}

.wpt-eyebrow-02.wp-block-kadence-advancedheading {
  position: relative;
  display: inline-flex;
  align-items: center;
  color: #e8d5c2;
  font-family: inherit;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: color-mix(in srgb, #c3a689 25%, transparent);
  padding: 0.5em 1em !important;
  border-radius: 999px;
}
.wpt-eyebrow-02.wp-block-kadence-advancedheading::before {
  content: "";
  display: inline-block;
  width: 0.65em;
  height: 0.65em;
  margin-right: 0.5em;
  border: 2px solid #e8d5c2;
  transform: rotate(45deg);
}

/* =============================
 * TOKENS — RADIUS
============================= */

:root {
  --wpt-border-radius-sm: 4px;   /* Same as global button border-radius */
  --wpt-border-radius-md: 8px;   /* Same as global image border-radius */
  --wpt-border-radius-lg: 12px;  /* For elements requiring more rounded corners */
}

/* Images */
:where(.wp-block-image, .wp-block-kadence-image) img {
  border-radius: var(--wpt-border-radius-md);
  display: block; /* Prevents sub-pixel gaps */
}

/* =============================
 * CARDS - MINI-FRAMEWORK
============================= */

.wpt-card > .kt-inside-inner-col {
  /* border: 2px solid var(--global-palette5); */
  border-radius: var(--wpt-border-radius-md);
  box-shadow: -1px 7px 20px 0px rgb(0 0 0 / 0.20);
  
}


/* =============================
 * SPACING - TOKENS
 * Define global spacing tokens using clamp() for fluid scaling.
 * Used for padding, margins, gaps, and section spacing site-wide.
============================= */

:root {
  /* Fluid horizontal padding for content edges (mobile → desktop) */
  --global-content-edge-padding: clamp(1rem, 2.927vw + 0.305rem, 2.5rem);

  /* Default vertical spacing for sections (mobile → desktop) */
  --global-section-padding-y: clamp(2.5rem, 4.878vw + 1.341rem, 5rem);

  /* Row gutter (tablet → desktop) */
  --global-row-gutter-md: clamp(1rem, 3.704vw + -0.778rem, 2rem);

  /* Column gap scale. (tablet → desktop) */
  --global-kb-gap-sm: clamp(0.5rem, 1.852vw + -0.389rem, 1rem);
  --global-kb-gap-md: clamp(1rem, 3.704vw + -0.778rem, 2rem);
  --global-kb-gap-lg: clamp(2rem, 7.407vw + -1.556rem, 4rem);

  /* Global fluid spacing scale (Kadence spacing tokens) */
  --global-kb-spacing-xxs: clamp(0.25rem, 0.488vw + 0.134rem, 0.5rem);
  --global-kb-spacing-xs:  clamp(0.5rem, 0.976vw + 0.268rem, 1rem);
  --global-kb-spacing-sm:  clamp(1rem, 1.463vw + 0.652rem, 1.75rem);
  --global-kb-spacing-md:  clamp(1.25rem, 1.951vw + 0.787rem, 2.25rem);
  --global-kb-spacing-lg:  clamp(1.5rem, 2.439vw + 0.921rem, 2.75rem);
  --global-kb-spacing-xl:  clamp(2rem, 3.415vw + 1.189rem, 3.75rem);
  --global-kb-spacing-xxl: clamp(3rem, 3.902vw + 2.073rem, 5rem);
  --global-kb-spacing-3xl: clamp(4rem, 4.878vw + 2.841rem, 6.5rem);
  --global-kb-spacing-4xl: clamp(5rem, 5.854vw + 3.61rem, 8rem);
  --global-kb-spacing-5xl: clamp(7rem, 5.854vw + 5.61rem, 10rem);     
}

/* =============================
 * SPACING — SECTION (opt-in)
============================= */

section.wpt-section {
  padding-block: var(--global-section-padding-y);
}

/* Border Gradient */
section.wpt-border-top-gradient {
  border-block-start: 2px solid;
  border-image: linear-gradient(to left, transparent, #F8E7D7, transparent) 1;
}

