/*
Theme Name:   Hestia Child - Golfclub Abenberg
Theme URI:    https://abenberg.golf-lernen.info/
Description:  Child theme for Hestia – branded for Golfclub Abenberg, matching golfclubabenberg.de
Author:       Golfclub Abenberg
Author URI:   https://golfclubabenberg.de/
Template:     hestia
Version:      1.0.0
Text Domain:  hestia-child
License:      GNU General Public License v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
*/


/* =============================================
   SELF-HOSTED LATO FONT
   Font files in: /wp-content/themes/hestia-child/fonts/
   ============================================= */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-300italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-700.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/lato-v24-latin-ext_latin-700italic.woff2') format('woff2');
}


/* =============================================
   DESIGN TOKENS
   ============================================= */
:root {
  --abg-orange:       #DC6C12;
  --abg-orange-hover: #C45F0F;
  --abg-green:        #578622;
  --abg-olive:        #7E9D10;
  --abg-navy:         #152229;
  --abg-slate:        #334048;
  --abg-cream:        #F7F5F1;
  --abg-cream-alt:    #F5F3EF;
  --abg-white:        #FFFFFF;
  --abg-body-text:    #152229;
  --abg-font:         'Lato', 'Open Sans', sans-serif;
}


/* =============================================
   BASE TYPOGRAPHY
   ============================================= */
body,
body * {
  font-family: var(--abg-font) !important;
}

body {
  font-weight: 300 !important;
  color: var(--abg-body-text) !important;
  line-height: 1.75 !important;
}

p, li, span, div {
  font-weight: 300 !important;
}


/* =============================================
   HEADINGS - Light weight, Abenberg style
   ============================================= */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  font-family: var(--abg-font) !important;
  font-weight: 300 !important;
  font-style: normal !important;
}

h1.elementor-heading-title,
h1 {
  font-weight: 300 !important;
  color: var(--abg-navy) !important;
}

h2.elementor-heading-title,
h2 {
  font-weight: 300 !important;
  color: var(--abg-navy) !important;
  font-style: normal !important;
}

h3.elementor-heading-title,
h3 {
  font-weight: 300 !important;
  color: var(--abg-navy) !important;
  font-style: normal !important;
}

h4.elementor-heading-title,
h4 {
  font-weight: 300 !important;
  color: var(--abg-navy) !important;
  font-style: normal !important;
}

/* Body text widget */
.elementor-widget-text-editor {
  font-weight: 300 !important;
  color: var(--abg-body-text) !important;
}


/* =============================================
   BUTTONS - Orange, square, uppercase, tracked
   ============================================= */
.elementor-button,
.elementor-widget-button .elementor-button,
button[type="submit"],
.wpforms-submit,
input[type="submit"],
a.elementor-button {
  background-color: var(--abg-orange) !important;
  color: var(--abg-white) !important;
  border-radius: 0 !important;
  font-family: var(--abg-font) !important;
  font-size: 13.6px !important;
  font-weight: 400 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 20px 34px !important;
  border: none !important;
  transition: background-color 0.3s ease !important;
}

.elementor-button:hover,
.elementor-widget-button .elementor-button:hover,
button[type="submit"]:hover,
.wpforms-submit:hover,
input[type="submit"]:hover,
a.elementor-button:hover {
  background-color: var(--abg-orange-hover) !important;
  color: var(--abg-white) !important;
}

/* Button icon inside CTA */
.elementor-button .elementor-button-icon {
  color: var(--abg-white) !important;
}

.elementor-button .elementor-button-icon svg {
  fill: var(--abg-white) !important;
}

/* WPForms submit button */
.wpforms-submit {
  background-color: var(--abg-orange) !important;
  min-width: 200px !important;
}


/* =============================================
   SECTION BACKGROUNDS
   Warm cream instead of cold gray / mint
   ============================================= */

/* Darker gray sections → cream-alt */
.elementor-section.elementor-element-79b86e88,
.elementor-section.elementor-element-42cf018 {
  background-color: var(--abg-cream-alt) !important;
}

/* Light gray sections → warm cream */
.elementor-section.elementor-element-bc0ec01,
.elementor-section.elementor-element-759baf9,
.elementor-section.elementor-element-3018147,
.elementor-section.elementor-element-2570a2b,
.elementor-section.elementor-element-9b3fd6d,
.elementor-section.elementor-element-2f633bc {
  background-color: var(--abg-cream) !important;
}

/* Mint-green form section → cream */
.elementor-element-94f61a9 {
  background-color: var(--abg-cream) !important;
}

/* Form wrapper section → cream */
.elementor-section.elementor-element-0d96e3c,
.elementor-section[data-id="0d96e3c"] {
  background-color: var(--abg-cream) !important;
}

.elementor-element-0d96e3c .elementor-widget-wrap,
.elementor-element-0d96e3c .elementor-column-wrap {
  background-color: var(--abg-cream) !important;
}

/* Generic fallback: any remaining mint-green → cream */
div[style*="background-color: rgb(236, 249, 243)"],
div[style*="background-color:#ecf9f3"],
div[style*="background-color: #ecf9f3"],
div[style*="background-color: #ECF9F3"] {
  background-color: var(--abg-cream) !important;
}


/* =============================================
   ICONS - Green → Orange
   ============================================= */
.elementor-icon i,
.elementor-icon svg {
  color: var(--abg-orange) !important;
  fill: var(--abg-orange) !important;
}

.elementor-widget-icon .elementor-icon {
  color: var(--abg-orange) !important;
  border-color: var(--abg-orange) !important;
}

/* Keep FontAwesome icon fonts working */
.fa, .fas, .far, .fab {
  font-family: "Font Awesome 5 Free" !important;
}
.fab {
  font-family: "Font Awesome 5 Brands" !important;
}

/* Elementor icons font */
.eicon {
  font-family: "eicons" !important;
}


/* =============================================
   STEP NUMBERS (1, 2, 3) - Green → Orange
   ============================================= */
.elementor-element-5ca6e40 .elementor-heading-title,
.elementor-element-9554f3f .elementor-heading-title,
.elementor-element-fca435e .elementor-heading-title {
  color: var(--abg-orange) !important;
}


/* =============================================
   LINKS
   ============================================= */
a:not(.elementor-button):not([class*="wpforms"]) {
  color: var(--abg-orange) !important;
  transition: color 0.3s ease !important;
}

a:not(.elementor-button):not([class*="wpforms"]):hover {
  color: var(--abg-orange-hover) !important;
}


/* =============================================
   FAQ ACCORDION
   ============================================= */
.elementor-accordion .elementor-accordion-item {
  border-color: var(--abg-cream-alt) !important;
}

.elementor-accordion .elementor-tab-title {
  font-family: var(--abg-font) !important;
  font-weight: 400 !important;
  color: var(--abg-navy) !important;
}

.elementor-accordion .elementor-tab-title a {
  color: var(--abg-navy) !important;
}

.elementor-accordion-icon .elementor-accordion-icon-closed,
.elementor-accordion-icon .elementor-accordion-icon-opened {
  color: var(--abg-orange) !important;
}

.elementor-accordion .elementor-tab-content {
  font-weight: 300 !important;
  color: var(--abg-body-text) !important;
}


/* =============================================
   FORMS (WPForms)
   ============================================= */
.wpforms-container .wpforms-field-label {
  font-family: var(--abg-font) !important;
  font-weight: 400 !important;
  color: var(--abg-navy) !important;
}

.wpforms-container input,
.wpforms-container select,
.wpforms-container textarea {
  font-family: var(--abg-font) !important;
  font-weight: 300 !important;
  color: var(--abg-navy) !important;
}

.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
  border-color: var(--abg-orange) !important;
  box-shadow: 0 0 0 1px var(--abg-orange) !important;
}


/* =============================================
   TRUST BADGES SECTION
   ============================================= */
.elementor-section.elementor-element-8b8c7ca h4.elementor-heading-title {
  font-weight: 400 !important;
  color: var(--abg-navy) !important;
}


/* =============================================
   SCROLL-TO-TOP BUTTON
   ============================================= */
button[class*="starter-starter"],
#starter-starter-starter,
.starter-starter,
button[aria-label*="scroll"],
button[aria-label*="Nach oben"] {
  background-color: var(--abg-orange) !important;
}
