/* =========================================================
   FONTS – GANTARI self-hosted
   ========================================================= */
@font-face {
    font-family: 'Gantari';
    src: url('fonts/gantari/Gantari-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gantari';
    src: url('fonts/gantari/Gantari-Medium.ttf') format('truetype');
    font-weight: 500;
}
@font-face {
    font-family: 'Gantari';
    src: url('fonts/gantari/Gantari-SemiBold.ttf') format('truetype');
    font-weight: 600;
}
@font-face {
    font-family: 'Gantari';
    src: url('fonts/gantari/Gantari-Bold.ttf') format('truetype');
    font-weight: 700;
}

/* =========================================================
   ROOT VARIABLES & RESET
   ========================================================= */
:root {
    --blue: #8EBCE6;
    --green: #B3D69F;
    --background: #fbfcfc;
    --foreground: #2f2f2f;
    --dark: #1f2937;
    --gray: #747474;
    --light-gray: #eceeef;
    --card-gray: #f9fafb;

    --header-height: 80px;
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Gantari', system-ui, -apple-system, BlinkMacSystemFont, 'Arial', serif;
    color: var(--foreground);
    background: var(--background);

}

section {
    scroll-margin-top: var(--header-height);
    text-align: center;
    padding: 1.5rem;
}

hr {
    border: none;
    border-top: 1px solid var(--light-gray);
    margin: 3rem ;
}

/* =========================================================
   HEADER & NAV
   ========================================================= */
header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

header > nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    padding: 1rem;
    height: 80px;
}

header > nav > a > img {
    height: calc(var(--header-height)/2);
}

.nav-links {
    display: flex;
    gap: 1.5rem;
    list-style: none;
}

.nav-links a {
    text-decoration: none;
    color: #333;
    font-weight: 500;
}

.nav-cta {
    height: calc(var(--header-height)/2);
    padding: 0.5rem 1rem;
    color: #fff;
    transition: transform 0.3s ease;
}

.nav-cta:hover, .btnnav:hover {
    transform: scale(1.05);
}

/* =========================================================
   HERO SECTION
   ========================================================= */
.logo {
    height: calc(100vh - 80px);
    background: var(--light-gray);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 1.5rem;
}

.logo > div {
    text-align: center;
    max-width: 48rem;
}

.logo-content > img {
    max-width: 100%;
    height: auto;
    margin: 0 auto 1.5rem;
    display: block;
}

.logo-content > p {
    font-size: 1.25rem;
    color: var(--gray);
    margin-bottom: 2rem;
}

.logo-content > div {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

/* =========================================================
   BUTTONS
   ========================================================= */
.btn {
    padding: 0.75rem 1.5rem;
    font-size: 1.125rem;
    font-weight: 500;
    text-decoration: none;
    display: inline-block;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.btn:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.btn-primary { background: var(--blue); color: white; }
.btn-secondary { background: var(--green); color: white; }

/* =========================================================
   SECTIONS GENERAL
   ========================================================= */


section h2 {
    color: var(--blue);
    font-weight: 600;
    margin-bottom: 1.5rem;
}

section p{
    font-size: 1.125rem;
    max-width: 48rem;
    margin: 0 auto 1.25rem;
}

/* =========================================================
   BENEFITS GRID & CARDS
   ========================================================= */

.benefits-grid, .testimonial-grid, .pricing-grid {
    max-width: 72rem;
    margin: 3rem auto 0;
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(3, 1fr);
}
/* =========================================================
   CARDS – Benefits, Pricing, Testimonials
   ========================================================= */

/* Gemeinsame Basis für alle Karten */
.card {
    background: #fff;
    padding: 1.5rem;
    box-shadow: 0 4px 6px rgba(0,0,0,0.07);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Hover-Effekt */
.card:hover {
    transform: translateY(-6px);
}

/* ===============================
   Benefit Card Spezifisch
   =============================== */

.benefit-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    color: var(--green);
}

.benefit-header svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.benefit-header h3 {
    font-size: 1.25rem;
    font-weight: 600;
}

/* ===============================
   Pricing Card Spezifisch
   =============================== */
.pricing-card {
    width: 100%;
}

.pricing-name {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.pricing-target {
    color: var(--gray);
    margin-bottom: 1.5rem;
}

.pricing-price {
    margin-bottom: 1.5rem;
}

.pricing-price .price {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--foreground);
}

.pricing-price .period {
    color: var(--gray);
    font-size: 1rem;
}

.pricing-features {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem;
    text-align: left;
}

.pricing-features li {
    margin-bottom: 0.5rem;
    padding-left: 1.25rem;
    position: relative;
}

.pricing-features li::before {
    content: "✔";
    position: absolute;
    left: 0;
    color: var(--green);
}

.pricing-btn {
    margin-top: auto;
}

/* ===============================
   Testimonial Card Spezifisch
   =============================== */
.testimonial-card {
    font-style: italic;
}

.testimonial-card cite {
    display: block;
    margin-top: 1rem;
    font-weight: 600;
    font-style: normal;
}

/* =========================================================
   APP PREVIEW
   ========================================================= */
.app-preview-wrapper { display: flex; justify-content: center; }

.app-preview-image {
    width: 100%;
    max-width: 900px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
    transition: transform 0.3s ease;
}

.app-preview-image:hover { transform: scale(1.02); }


/* =========================================================
   CTA
   ========================================================= */
.cta {
    background: var(--blue);
    color: white;
    padding: 3rem 1.5rem;
    text-align: center;
}
.cta h2 { color: white; }
.btn-cta {
    background: white;
    color: var(--blue);
    font-size: 1.125rem;
    animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.08); }
    100% { transform: scale(1); }
}

/* =========================================================
   FOOTER
   ========================================================= */
.footer {
    background: var(--light-gray);  
    padding: 1rem 2em;
    text-align: center;
    display: flex;
    justify-content: center; 
}
.footer a, 
.footer p {
    color: var(--foreground); 
    text-decoration: none; 
    margin: 0 0.75rem; 
}
.footer a:hover { text-decoration: underline; }

/* =========================================================
   RESPONSIVE BREAKPOINTS
   ========================================================= */
@media (max-width: 900px) {
    .benefits-grid, 
    .testimonial-grid, 
    .pricing-grid { 
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .benefits-grid, 
    .testimonial-grid, 
    .pricing-grid { 
        grid-template-columns: 1fr; 
    }

    .app-preview-image { 
        box-shadow: 0 12px 24px rgba(0,0,0,0.15); 
    }

    .footer {
         flex-direction: column; gap: 0.5rem;
   }
}
