/*
 Theme Name:   attractix Theme
 Theme URI:    https://www.attractix.de
 Description:  Hello Elementor Child Theme for attractix – intelligent visitor management with real-time dynamic pricing for museums, zoos, and attractions.
 Author:       attractix GmbH
 Author URI:   https://www.attractix.de
 Template:     hello-elementor
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  attractix
 Requires at least: 6.0
 Tested up to: 6.7
 Requires PHP: 7.4
*/

/* ==========================================================================
   CSS Custom Properties (Design Tokens)
   Source: attractix Prototyp v3
   ========================================================================== */

:root {
  /* Brand Colors */
  --antwerp: #006D8F;
  --blau: #005289;
  --dunkel: #0E112B;
  --salmon: #ED6B63;
  --salmon-hover: #D85A53;
  --salmon-light: #FDF0EF;
  --lippstick: #AE2E4D;
  --amber: #F6A127;
  --gelb: #FCCB00;
  --gruen: #E7EAD6;
  --petrol: #E2F2EC;
  --eis: #C0E1D7;
  --cream: #F8F7F5;
  --white: #FFFFFF;

  /* Text Colors */
  --text: #0E112B;
  --text-mid: #4A5568;
  --text-light: #8899AA;

  /* UI */
  --border: #E2E5EA;
  --success: #2D9F6F;

  /* Button Text Colors */
  --btn-primary-text: #FFFFFF;
  --btn-outline-text: #0E112B;
  --btn-white-text:   #0E112B;

  /* Typography */
  --font-size-base: 16px;
  --font-body: 'DM Sans', sans-serif;
  --font-heading: 'Fraunces', serif;

  /* Spacing */
  --container-max: 1120px;
  --container-padding: 24px;
  --section-padding: 80px;
  --border-radius: 16px;
  --border-radius-sm: 10px;
  --border-radius-lg: 20px;
  --border-radius-xl: 24px;
}

/* ==========================================================================
   Base Reset & Defaults
   ========================================================================== */

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  color: var(--text);
  background: var(--white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3 {
  font-family: var(--font-heading);
}

a {
  color: var(--salmon);
  text-decoration: none;
}

a:hover {
  color: var(--salmon-hover);
}

/* ==========================================================================
   Local Fonts (DSGVO-konform, kein Google-Server-Kontakt)
   ========================================================================== */

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('./assets/fonts/dm-sans-variable.woff2') format('woff2');
}

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('./assets/fonts/fraunces-variable.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('./assets/fonts/inter-variable.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
