/* ── Self-hosted: Desert Dreams ───────────────────────────── */
@font-face {
  font-family : "Desert Dreams";
  src         : url("fonts/desert-dreams/desertdreamsregular-webfont.woff2") format("woff2"),
                url("fonts/desert-dreams/desertdreamsregular-webfont.woff")  format("woff");
  font-weight : 400;
  font-style  : normal;
  font-display: swap;
}


:root {

  /* ── Fluid type scale (375px → 1728px) ───────────────────── */

  /* Headings — Desert Dreams */
  --text-lg      : clamp(2.75rem, 1.919rem + 3.548vw, 5.75rem);
  --text-md      : clamp(1.375rem, 0.925rem + 1.922vw, 3rem);
  --text-sm      : clamp(1rem, 0.931rem + 0.296vw, 1.25rem);

  /* Subheadings — adrianna-condensed */
  --text-sub-xl  : clamp(1.125rem, 0.744rem + 1.626vw, 2.5rem); /* 1.125rem → 2.5rem (Figma XL Subheading) */
  --text-sub-lg  : clamp(1rem, 0.723rem + 1.183vw, 2rem);
  --text-sub-md  : clamp(1rem, 0.702rem + 0.739vw, 1.5rem);
  --text-sub-sm  : clamp(1rem, 0.646rem + 0.443vw, 1.125rem);

  /* Body — inter-18pt */
  --text-body-xl : clamp(1.188rem, 1.101rem + 0.37vw, 1.5rem);
  --text-body-lg : clamp(1rem, 0.931rem + 0.296vw, 1.25rem);
  --text-body-md : 1.125rem; /* fixed */
  --text-body-sm : 1rem;     /* fixed */
  --text-body-xs : 1rem;     /* fixed */

}


h1, h2, h3, h4, h5, h6 { padding-bottom: 0; color: inherit; }


/* ── Font weight ──────────────────────────────────────────── */
/* Loaded weights: Desert Dreams 400 · adrianna-condensed 300, 600 · inter-18pt 400 */
.font-thin       { font-weight: 100 !important; }
.font-extralight { font-weight: 200 !important; }
.font-light      { font-weight: 300 !important; }
.font-normal     { font-weight: 400 !important; }
.font-medium     { font-weight: 500 !important; }
.font-semibold   { font-weight: 600 !important; }
.font-bold       { font-weight: 700 !important; }
.font-extrabold  { font-weight: 800 !important; }
.font-black      { font-weight: 900 !important; }

/* ── Line height ──────────────────────────────────────────── */
.leading-none    { line-height: 1; }
.leading-tight   { line-height: 1.1; }
.leading-snug    { line-height: 1.25; }
.leading-normal  { line-height: normal; }
.leading-relaxed { line-height: 1.5; }
.leading-loose   { line-height: 1.75; }

/* ── Type scale ───────────────────────────────────────────── */
/* One utility class per Figma token. Weights are explicit because Divi's  */
/* base stylesheet sets body { font-weight: 500 }; children inherit so a   */
/* Divi heading tag inside the module can't fall back to Divi's default.   */

/* Headings — Desert Dreams 400 */
.heading-lg { font-size: var(--text-lg); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.065; }
.heading-lg h1, .heading-lg h2, .heading-lg h3,
.heading-lg h4, .heading-lg h5, .heading-lg h6,
.heading-lg p  { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; }

.heading-md { font-size: var(--text-md); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.04; }
.heading-md h1, .heading-md h2, .heading-md h3,
.heading-md h4, .heading-md h5, .heading-md h6,
.heading-md p  { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; }

.heading-sm { font-size: var(--text-sm); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.045; letter-spacing: 0.02em; }
.heading-sm h1, .heading-sm h2, .heading-sm h3,
.heading-sm h4, .heading-sm h5, .heading-sm h6,
.heading-sm p  { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; }

/* Subheadings — adrianna-condensed, uppercase */
.subheading-xl { font-size: var(--text-sub-xl); font-family: var(--font-adrianna-condensed); font-weight: 300; line-height: 1.167; letter-spacing: 0.26em; text-transform: uppercase; }
.subheading-xl h1, .subheading-xl h2, .subheading-xl h3,
.subheading-xl h4, .subheading-xl h5, .subheading-xl h6,
.subheading-xl p, .subheading-xl li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }

.subheading-lg { font-size: var(--text-sub-lg); font-family: var(--font-adrianna-condensed); font-weight: 300; line-height: 1.125; letter-spacing: 0.24em; text-transform: uppercase; }
.subheading-lg h1, .subheading-lg h2, .subheading-lg h3,
.subheading-lg h4, .subheading-lg h5, .subheading-lg h6,
.subheading-lg p, .subheading-lg li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }

.subheading-md { font-size: var(--text-sub-md); font-family: var(--font-adrianna-condensed); font-weight: 600; line-height: 1.34; letter-spacing: 0.24em; text-transform: uppercase; }
.subheading-md h1, .subheading-md h2, .subheading-md h3,
.subheading-md h4, .subheading-md h5, .subheading-md h6,
.subheading-md p, .subheading-md li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }

.subheading-sm { font-size: var(--text-sub-sm); font-family: var(--font-adrianna-condensed); font-weight: 600; line-height: 1.333; letter-spacing: 0.24em; text-transform: uppercase; }
.subheading-sm h1, .subheading-sm h2, .subheading-sm h3,
.subheading-sm h4, .subheading-sm h5, .subheading-sm h6,
.subheading-sm p, .subheading-sm li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }

/* Body — inter-18pt 400 */
.body-xl { font-size: var(--text-body-xl); font-family: var(--font-inter-18pt); font-weight: 400; line-height: normal; }
.body-xl h1, .body-xl h2, .body-xl h3,
.body-xl h4, .body-xl h5, .body-xl h6,
.body-xl p, .body-xl li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; }

.body-lg { font-size: var(--text-body-lg); font-family: var(--font-inter-18pt); font-weight: 400; line-height: 1.2; }
.body-lg h1, .body-lg h2, .body-lg h3,
.body-lg h4, .body-lg h5, .body-lg h6,
.body-lg p, .body-lg li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; }

.body-md { font-size: var(--text-body-md); font-family: var(--font-inter-18pt); font-weight: 400; line-height: normal; }
.body-md h1, .body-md h2, .body-md h3,
.body-md h4, .body-md h5, .body-md h6,
.body-md p, .body-md li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; }

.body-sm { font-size: var(--text-body-sm); font-family: var(--font-inter-18pt); font-weight: 400; line-height: normal; letter-spacing: -0.01em; }
.body-sm h1, .body-sm h2, .body-sm h3,
.body-sm h4, .body-sm h5, .body-sm h6,
.body-sm p, .body-sm li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; }

.body-xs { font-size: var(--text-body-xs); font-family: var(--font-inter-18pt); font-weight: 400; line-height: normal; letter-spacing: -0.01em; }
.body-xs h1, .body-xs h2, .body-xs h3,
.body-xs h4, .body-xs h5, .body-xs h6,
.body-xs p, .body-xs li { font-size: inherit; font-family: inherit; font-weight: inherit; line-height: inherit; letter-spacing: inherit; }


/* ── Rich text ────────────────────────────────────────────── */
/* Apply to Code modules or WP editor content outside Divi's control */

.rich-text h1 { font-size: var(--text-lg); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.065; }
.rich-text h2 { font-size: var(--text-md); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.04; }

.rich-text h3,
.rich-text h4,
.rich-text h5,
.rich-text h6 { font-size: var(--text-sm); font-family: var(--font-desert-dreams); font-weight: 400; line-height: 1.045; letter-spacing: 0.02em; }

.rich-text p,
.rich-text li  { font-size: var(--text-body-sm); font-family: var(--font-inter-18pt); font-weight: 400; line-height: normal; letter-spacing: -0.01em; }

.rich-text ol,
.rich-text ul  { padding-left: 1.5em; }

.rich-text a   { text-decoration: underline; color: inherit; }
