/*======================================
Theme Name: neletasane
Theme URI: https://divicake.com/
Description: Fotograaf Nele Tasane koduleht – www.neletasane.ee
Version: 1.1
Author: Urho Rättel
Author URI: https://www.facebook.com/urho.rattel
Template: Divi
======================================*/


/* =============================================
   TÜPOGRAAFIA SÜSTEEM – Nele Tasane (Divi 5)
   Viewport: 320px → 2560px
   ============================================= */


/* ─── 1. FONDIDE LAADIMINE ─────────────────── */

@font-face {
  font-family: 'Inter Tight';
  src: url('fonts/InterTight-VariableFont_wght.woff2') format('woff2-variations');
  font-weight: 300 600;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: 'Clash Display';
  src: url('fonts/ClashDisplay-Variable.woff2') format('woff2-variations');
  font-weight: 300 600;
  font-display: swap;
  font-style: normal;
}


/* ─── 2. DISAINIMÄRGID (:root) ─────────────── */
/*
   Slope-intercept meetod: clamp(min, slope·vw + intercept, max)
   slope      = (max − min) / (160rem − 20rem)
   intercept  = min − slope × 20rem
   Viewport:  320px = 20rem  →  2560px = 160rem
*/

:root {

  /* Fondiperekonnad */
  --font-body:    'Inter Tight', sans-serif;
  --font-heading: 'Clash Display', sans-serif;

  /* Fondikaalud */
  --fw-regular:  400;
  --fw-medium:   500;
  --fw-semibold: 600;

  /* Fontide suurused – automaatselt skaleeruvad */
  --text-body-size:    clamp(0.875rem, 0.2679vw + 0.8214rem, 1.25rem);   /* 14px → 20px */
  --text-body-sm-size: clamp(0.625rem, 0.1786vw + 0.5893rem, 0.875rem);  /* 10px → 14px */
  --h1-size:           clamp(2.5rem,   3.9286vw + 1.7143rem, 8rem);       /* 40px → 128px */
  --h2-size:           clamp(0.625rem, 0.2679vw + 0.5714rem, 1rem);       /* 10px → 16px */
  --h3-size:           clamp(1.25rem,  0.6250vw + 1.1250rem, 2.125rem);   /* 20px → 34px */
  --h4-size:           clamp(1rem,     0.5357vw + 0.8929rem, 1.75rem);    /* 16px → 28px */
  --display-size:      clamp(1.875rem, 1.5179vw + 1.5714rem, 4rem);       /* 30px → 64px */
  --btn-size:          clamp(0.75rem,  0.1786vw + 0.7143rem, 1rem);       /* 12px → 16px */
  --nav-link-size:     clamp(0.75rem,  0.0893vw + 0.7321rem, 0.875rem);   /* 12px → 14px */

  /* Reavahed */
  --lh-body:    1.5;
  --lh-h1:      1;
  --lh-heading: 1.2;
  --lh-display: 1.1;
  --lh-btn:     1;
  --lh-link:    1.4;

  /* Tähevahed */
  --ls-body:    0;
  --ls-heading: -0.02em;
  --ls-display: -0.02em;
  --ls-btn:      0.02em;
  --ls-link:        0.01em;
  --ls-module-link: 0.045rem;
}


/* ─── 3. GLOBAALNE BAAS (rakendub automaatselt) ── */
/*
   Kiht 1: HTML-semantika selektorid.
   Midagi lisada pole vaja – töötab kohe.
*/

body,
.et_pb_text_inner,
.et_pb_text_inner p {
  font-family: var(--font-body) !important;
  font-weight: var(--fw-regular) !important;
  font-size: var(--text-body-size) !important;
  line-height: var(--lh-body) !important;
  letter-spacing: var(--ls-body) !important;
}

h1,
.et_pb_module_header h1 {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-regular) !important;
  font-size: var(--h1-size) !important;
  line-height: var(--lh-h1) !important;
  letter-spacing: var(--ls-heading) !important;
}

h2,
.et_pb_module_header h2 {
  font-family: var(--font-body) !important;
  font-weight: var(--fw-semibold) !important;
  font-size: var(--h2-size) !important;
  line-height: var(--lh-heading) !important;
  letter-spacing: var(--ls-heading) !important;
  text-transform: uppercase;
}

h3,
.et_pb_module_header h3 {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-medium) !important;
  font-size: var(--h3-size) !important;
  line-height: var(--lh-heading) !important;
  letter-spacing: var(--ls-heading) !important;
}

h4,
.et_pb_module_header h4 {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-regular) !important;
  font-size: var(--h4-size) !important;
  line-height: var(--lh-heading) !important;
  letter-spacing: var(--ls-heading) !important;
}

.et_pb_button {
  font-family: var(--font-body) !important;
  font-weight: var(--fw-semibold) !important;
  font-size: var(--btn-size) !important;
  line-height: var(--lh-btn) !important;
  letter-spacing: var(--ls-btn) !important;
}

.et_pb_menu__wrap .et_pb_menu__menu > nav > ul > li > a,
.et-menu-nav li a {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-medium) !important;
  font-size: var(--nav-link-size) !important;
  line-height: var(--lh-link) !important;
  letter-spacing: var(--ls-link) !important;
  text-decoration: underline !important;
  text-decoration-color: transparent !important;
  text-underline-offset: 3px !important;
  transition: color 0.2s ease, text-decoration-color 0.2s ease !important;
}

.et_pb_menu__wrap .et_pb_menu__menu > nav > ul > li > a:hover,
.et-menu-nav li a:hover {
  color: #FD5C01 !important;
  text-decoration-color: #FD5C01 !important;
}


/* ─── 4. OVERRIDE KLASSID (lisa Divis CSS Class väljale) ── */
/*
   Kiht 2: kasuta ainult siis kui soovid erandit globaalsest baasist.
   Näide: moodul kus tahad display-teksti → lisa klass "display"
*/

/* Väike kehatekst */
.et_pb_module.text-body-sm .et_pb_text_inner p,
[class*="tb_footer"].text-body-sm .et_pb_text_inner p,
[class*="tb_header"].text-body-sm .et_pb_text_inner p {
  font-size: var(--text-body-sm-size) !important;
}

/* Display-suurtekst (hero, tsitaadid) */
.et_pb_module.display .et_pb_text_inner p,
.et_pb_module.display .et_pb_module_header,
[class*="tb_footer"].display .et_pb_text_inner p,
[class*="tb_header"].display .et_pb_text_inner p {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-regular) !important;
  font-size: var(--display-size) !important;
  line-height: var(--lh-display) !important;
  letter-spacing: var(--ls-display) !important;
}

/* Link-nupp (navigatsiooni stiilis nupp) */
.link-md.et_pb_button,
.et_pb_button.link-md,
.link-md .et_pb_button {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-medium) !important;
  font-size: var(--nav-link-size) !important;
  line-height: var(--lh-link) !important;
  letter-spacing: var(--ls-link) !important;
}

/* Nav-link stiil kehatekstis (töötab nii tavamoodulil kui Theme Builder footer/headeris) */
.et_pb_module.text-nav-link .et_pb_text_inner p,
[class*="tb_footer"].text-nav-link .et_pb_text_inner p,
[class*="tb_header"].text-nav-link .et_pb_text_inner p {
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-medium) !important;
  font-size: var(--nav-link-size) !important;
  line-height: var(--lh-link) !important;
  letter-spacing: var(--ls-link) !important;
}
/* Mooduli link (Clash Display, medium, uppercase, nav-link suurus) */
.et_pb_link.module-link .et_pb_link_text,
[class*="tb_footer"].module-link .et_pb_link_text,
[class*="tb_header"].module-link .et_pb_link_text {
  font-family: var(--font-heading) !important;
  font-style: normal !important;
  font-weight: var(--fw-medium) !important;
  font-size: var(--nav-link-size) !important;
  line-height: 1.1 !important;
  letter-spacing: var(--ls-module-link) !important;
  text-transform: uppercase !important;
}

/* Teksti laiusega allajoon */
.et_pb_link.module-link .et_pb_link_text,
[class*="tb_footer"].module-link .et_pb_link_text,
[class*="tb_header"].module-link .et_pb_link_text {
  position: relative;
  display: inline-block;
}

.et_pb_link.module-link .et_pb_link_text::after,
[class*="tb_footer"].module-link .et_pb_link_text::after,
[class*="tb_header"].module-link .et_pb_link_text::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: transparent;
  transition: background-color 0.2s ease;
}

.et_pb_link.module-link:hover .et_pb_link_text::after,
[class*="tb_footer"].module-link:hover .et_pb_link_text::after,
[class*="tb_header"].module-link:hover .et_pb_link_text::after {
  background-color: #FD5C01;
}

.ff-body,
.ff-body * { font-family: var(--font-body) !important; }
.ff-heading,
.ff-heading * { font-family: var(--font-heading) !important; }

/* Fondikaalude utiliidid (vajadusel) */
.fw-regular  { font-weight: var(--fw-regular)  !important; }
.fw-medium   { font-weight: var(--fw-medium)   !important; }
.fw-semibold { font-weight: var(--fw-semibold) !important; }

/***BACK to TOP button - START***/
.et_pb_scroll_top.et-pb-icon {
background: #fd5c01;
}
/* Back-to-top button hover background color*/
.et_pb_scroll_top.et-pb-icon:hover {
background: #FB823E;
}
/* Back-to-top button border radius*/
.et_pb_scroll_top.et-pb-icon {
border-radius:50px;
}
/***BACK to TOP button - END***/