/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
    box-sizing: border-box;
  }
  
  /* 2. Remove default margin */
  * {
    margin: 0;
  }
  
  body {
    /* 3. Add accessible line-height */
    line-height: 1.5;
    /* 4. Improve text rendering */
    -webkit-font-smoothing: antialiased;
  }
  
  /* 5. Improve media defaults */
  img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
  }
  
  /* 6. Inherit fonts for form controls */
  input, button, textarea, select {
    font: inherit;
  }
  
  /* 7. Avoid text overflows */
  p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word;
  }
  
  /* 8. Improve line wrapping */
  p {
    text-wrap: pretty;
  }
  h1, h2, h3, h4, h5, h6 {
    text-wrap: balance;
  }
  
  /*
    9. Create a root stacking context
  */
  #root, #__next {
    isolation: isolate;
  }

@font-face {
  font-family: "Garet";   /* Name, den du im CSS später nutzt */
  src: url("fonts/Garet-Regular.woff2") format("woff2");
  font-weight: 400;             /* Schriftschnitt */
  font-style: normal;           /* normal / italic */
  font-display: swap;           /* Text wird sofort angezeigt, bis Font geladen */
}

/* root variablen festlegen */
:root {
    /* Farben */
    --color-primary: #fffbf5;
    --color-accent: #89937c;
    --color-dark: #78142d;
    --color-font: #323232;
  
    /* Primary Abstufungen */
    --primary-100: hsl(180, 20%, 98%);
    --primary-200: hsl(180, 20%, 95%);
    --primary-300: hsl(180, 15%, 90%);
    --primary-400: hsl(180, 15%, 80%);
    --primary-500: hsl(180, 10%, 70%);
    --primary-600: hsl(180, 10%, 60%);
    --primary-700: hsl(180, 10%, 50%);
    --primary-800: hsl(180, 10%, 40%);
    --primary-900: hsl(180, 10%, 30%);

    /* Accent Abstufungen */
    --accent-100: hsl(120, 50%, 90%);
    --accent-200: hsl(120, 50%, 75%);
    --accent-300: hsl(120, 50%, 65%);
    --accent-400: hsl(120, 45%, 55%);
    --accent-500: hsl(120, 45%, 45%);
    --accent-600: hsl(120, 40%, 35%);
    --accent-700: hsl(120, 35%, 30%);
    --accent-800: hsl(120, 30%, 25%);
    --accent-900: hsl(120, 25%, 20%);

    /* Dark Abstufungen */
    --dark-100: hsl(220, 20%, 30%);
    --dark-200: hsl(220, 20%, 28%);
    --dark-300: hsl(220, 20%, 26%);
    --dark-400: hsl(220, 20%, 24%);
    --dark-500: hsl(220, 20%, 22%);
    --dark-600: hsl(220, 20%, 20%);
    --dark-700: hsl(220, 20%, 18%);
    --dark-800: hsl(220, 20%, 16%);
    --dark-900: hsl(220, 20%, 14%);
  
    /* Schriftarten */
    --font-family: "Garet", Arial, sans-serif;
  
    /* Abstände */
    --spacing-xs: 0.25rem; /* 4px */
    --spacing-sm: 0.5rem;  /* 8px */
    --spacing-md: 0.7rem;    /* 16px */
    --spacing-lg: 1rem;  /* 24px */
    --spacing-xl: 1.5rem;    /* 32px */
    --spacing-xxl: 2rem;    /* 32px */
  
    /* Schriftgrößen */
    --font-size-xs: clamp(0.75rem, 0.9vw, 0.85rem);  /* Min: 12px, Ideal: 2vw, Max: 14px */
    --font-size-sm: clamp(0.875rem, 1vw, 1rem);  /* Min: 14px, Ideal: 2.5vw, Max: 16px */
    --font-size-md: clamp(0.9rem, 1.5vw, 1rem);     /* Min: 16px, Ideal: 3vw, Max: 18px */
    --font-size-lg: clamp(1.6rem, 2.5vw, 3rem); /* Min: 17.6px, Ideal: 3.5vw, Max: 20px */
    --font-size-xl: clamp(2rem, 3vw, 4rem);   /* Min: 20px, Ideal: 4vw, Max: 24px */
    --font-size-xxl: clamp(2.5rem, 4vw, 3rem);     /* Min: 24px, Ideal: 5vw, Max: 32px */

    /* Schriftgrößen */
    --font-weight-regular: 100; /* body */
    --font-weight-semibold: 600; /* h4,button */
    --font-weight-bold: 700;    /* h3 */
    --font-weight-extrabold: 800; /* h2 */
    --font-weight-black: 900;  /* h1 */
  
    /* Andere Variablen */
    --border-radius: 0.25rem; /* 4px */
    --transition-default: 0.3s ease-in-out;
  }

html {
    background-color: var(--color-primary);
}

h1, h2, h3, h4, h5, h6, p, button, ul, a, address{
  font-family: var(--font-family);
  color: var(--color-font);
  font-style: normal;
  text-decoration: none;
  padding: var(--spacing-md);
}

body {
    padding-top: var(--spacing-xl);
}

body > a {
  margin-left: var(--spacing-xl);
  border: 1px solid var(--color-accent);
  border-radius: 4px;
}
main {
  padding: var(--spacing-lg);
}