:root {
    --primary: #2e3a36;
    --accent: #8fae9d;
    --light: #f5f5f3;
    --dark: #1c1f1e;
    --sand: #d6cfc4;
    --freiraumblau: #00b3ff;
    --cardgray: #e1e1e1;
    --linkgray: #202020;
    --trainer: #b99f90;
    --escrimaorange:#DC9829; 
    --midgray:#c3c3c3;
}

html{
	scroll-behavior: smooth;
	/*scroll-padding-top: 160px;*/
}

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

body {
    font-family: 'inter', Helvetica;
    background-color: var(--light);
    color: var(--primary);
    line-height: 1.6;
}

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

nav a.active {
    border-bottom: 0.188em solid var(--freiraumblau);
}

nav a.activeE {
    border-bottom: 0.188em solid var(--escrimaorange);
}
/* HEADER */

.header_{
position:absolute;
width:100%;
display:flex;
justify-content:space-between;
padding:20px 8%;
color:white;
z-index:10;
}

header{
position: fixed;
top: 0;
left: 0;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 8%;
background: var(--dark);
color: white;
z-index: 1000;
}

header__{
position: sticky;
top: 0;
background: #111;
z-index: 1000;
}

.header a{
margin-left:30px;
text-decoration:none;
color:white;
font-weight:500;
}




.btn {
    display: inline-block;
    margin-top: 2rem;
    padding: 12px 28px;
  	 background: var(--btn-bg, var(--freiraumblau)); /* Fallback auf --freiraumblau */
    color: white;
    text-decoration: none;
    border-radius: 40px;
    font-weight: 500;
    transition: 0.3s ease;
}

.btn:hover {
     background: var(--btn-bg-hover, var(--primary)); /* Fallback auf --primary */
         }

#btn-orange {
    --btn-bg: var(--escrimaorange);
    --btn-bg-hover: var(--primary); /* eigene Hover-Farbe */
}

#btn-blau {
    --btn-bg: var(--freiraumblau);
    --btn-bg-hover: var(--primary);
}

section {
    padding: 40px 10%;
}section

.section-title {
    text-align: center;
    margin-bottom: 50px;
	 scroll-margin-top: 120px; /* Höhe deiner fixierten Nav-Leiste */
	 
}

.section-sub-page {
    text-align: left;
    margin-bottom: 50px;
}


.section-sub-page p {
    font-size: 1.41em;
}

.section-title h2 {
    font-family: 'inter', Helvetica;
    font-size: 2.1rem;
    margin-bottom: 10px;
}

.section-title p {
    color: #666;
}

.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
}

.grid.cols-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    max-width: 1000px;
    margin: 0 auto;
}

/* Automatischer Umbruch ohne klassisches Media Chaos */
@media (max-width: 900px) {
	
	
    .grid.cols-3 {
        grid-template-columns: repeat(2, 1fr);
    }
     .sub-hero p {
        font-size: 0.8em; /* Tablet-Größe */
  }
}

@media (max-width: 700px) {  /* hier nur die Zahl anpassen */
    .grid.cols-3 {
        grid-template-columns: 1fr;  /* 2 → 1 Spalte */
    }
    .sub-hero p {
        font-size: 0.69em;
    }
}



.card-index {
	--card-bg: var(--sand); /* Standard */
	--card-image: none;     /* Standard: kein Bild */
	 --card-text: black;           /* Standardtextfarbe für p */
    --card-heading: black;       /* Standardfarbe für h3 */
    --card-link: black;          /* Standardfarbe für a */
    --card-textalign: center;




    background: var(--card-bg);	
    background: var(--card-image), var(--card-bg);
    background-size: cover;
    background-position: center;
    
	 padding: 20% 10% 20% 10%;
    border-radius: 0px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: 0.3s ease;
    overflow: hidden; 
    height: 100%;
}



.card-grey {
    --card-bg: var(--cardgray);
}

.card-freiraumblau {
    --card-bg: var(--freiraumblau);
}

.card-trainer {
    --card-bg: var(--midgray);
}

.card-training {
    --card-bg: var(--midgray);
}

.card-trainingsortbild {
    --card-image: url("../img/titelbild-freiraum.jpg");
    --card-text: white;
    --card-heading: white;
    --card-link: white;
    --card-textalign: right;
}

.card-trainerbild {
    --card-image: url("../img/ich_index.jpg");
    --card-text: white;
    --card-heading: white;
    --card-link: white;
    --card-textalign: left;
}

.card-index p {
    font-size: 1.3rem;
    color: var(--card-text);
    padding: 12px;
	 text-align: var(--card-textalign);
    
}

.card-index h3 {
   margin-bottom: 1px;
   font-weight: 900;
   font-size:1.8em;
	padding-left:10px;
	padding-top:10px;
	line-height: normal;
	text-align: center;
	color: var(--card-heading);
	text-align: var(--card-textalign);
}
 .card-index a{
	color: var(--card-link);
	text-align: var(--card-textalign);
 }


.card.empty {
    visibility: hidden;
    pointer-events: none;
}

#escrima{
    color:var(--escrimaorange);
}

.card {
    background: var(--cardgray);
    padding: 0px;
    border-radius: 0px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: 0.3s ease;
    overflow: hidden; 
}

.card p {
    font-size: 1.3em;
    color: #555;
    padding: 12px;
}

.card h3 {
   margin-bottom: 1px;
   font-weight: 900;
   font-size:1.5em;
	padding-left:10px;
	padding-top:10px;
	line-height: normal;

}



.grid.two-cards {
    grid-template-columns: 1fr 1fr; /* nur für diese Ausnahme */
}



.card img {
    width: 100%;
    display: block;   /* entfernt kleinen Abstand unter dem Bild */
}

.card ul {
  padding-left: 20px;
  margin: 9px;
  list-style-position: outside; /* Standard, aber bewusst gesetzt */
}
.card li {
  margin-bottom: 5px;   /* optional: etwas Abstand zwischen Punkten */
 font-size: 1.3em;
}

.grid-container {
  display: grid;
  grid-template-columns: 33% 33% 33%;
  background-color: #ffffff;
  padding: 0 0 0 0;
  overflow: hidden;
}

.grid-container-2 {
  display: grid;
  grid-template-columns: 33% 33% 33%;
  background-color: var(--trainer);
  padding: 0 0 0 0;
  overflow: hidden;
}


.card:hover {
    transform: translateY(-6px);
}

.card h3 {
   margin-bottom: 1px;
   font-weight: 900;
   font-size:1.5em;
	padding-left:10px;
	padding-top:10px;
	line-height: normal;

}



.cta-section {
    background: var(--sand);
    text-align: center;
    padding: 80px 10%;
}

footer {
    background: var(--dark);
    color: white;
    text-align: center;
    padding: 30px;
    font-size: 0.9rem;
    
    --footer-link-color: var(--freiraumblau); /* Standardfarbe */
}

footer a {
    color: var(--footer-link-color);
}

#escrima {
    --footer-link-color: var(--escrimaorange);
}

#freiR {
    --footer-link-color: var(--freiraumblau);
}



.segment {
    background:#fff;
        margin:0;
        padding: 2% 2% 2% 2%;
    margin:5%;
 }

.segment ul{
	     
margin:5%;
}
.segment-2 {
    background:var(--trainer);
        margin:0;
        padding: 2% 2% 2% 2%;
    margin:5%;
 }

.segment img{
        border-radius: 1em 1em 0 0;
    max-width:100%;
    padding: 0 0 1em 0;
    margin:0em;
    width:100%;

}

.segment-2 img{
        border-radius: 1em 1em 0 0;
    max-width:100%;
    padding: 0 0 1em 0;
    margin:0em;
    width:100%;

}

.hero{
height:100vh;
background:url("../img/freiRAUMTrainingTitelbild.jpg") center/cover no-repeat;
background-attachment: fixed;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:white;
position:relative;
}

.hero::after{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.45);
}

.hero-content{
position:relative;
z-index:2;
}


.hero h1{
font-size:240%;
letter-spacing:4px;
}

.hero p{
margin:20px 0;
font-size:18px;
}

.sub-hero{
height:40vh;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
color:white;
text-align:center;
}

.sub-hero.hero1 {
    background: url('../img/functionaltraining8.jpg') center/cover no-repeat;
    font-size: 3.3em;
    font-weight: bold;
}

.sub-hero.hero2 {
    background: url('../img/coverbild_FZT.jpg') center/cover no-repeat;
     font-size: 3.3em;
    font-weight: bold;
}


.sub-hero.hero_escrima {
    background: url('../img/titelbild-escrima.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero_efrauen {
    background: url('../img/titelbild-esscrima-frauen.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero_buch {
    background: url('../img/titelbild-escrima-buch.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero_etrainer {
    background: url('../img/titelbild-escrima-trainer.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero_etraining {
    background: url('../img/titelbild-escrima-training.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero_e1 {
    background: url('../img/titelbild-escrima-maenner.jpg') center/cover no-repeat;
    font-size: 2.3em;
    font-weight: bold;
    
}

.sub-hero.hero5 {
    background: url('../img/titelbild-meridiane.jpg') center/cover no-repeat;
     font-size: 2.3em;
    font-weight: bold;
}

.sub-hero.hero6 {
    background: url('../img/titelbild-kinesiologie-fuer-sportler.jpg') center/cover no-repeat;
     font-size: 3.6em;
    font-weight: bold;
}

.sub-hero.hero7 {
    background: url('../img/ich_Trainer.jpg') center/cover no-repeat;
 font-size: 2.3em;
    font-weight: bold;
}

.sub-hero.hero8 {
    background: url('../img/functionaltraining8.jpg') center/cover no-repeat;
     font-size: 2.3em;
    font-weight: bold;
}

.sub-hero.heroptvsgt {
    background: url('../img/personal-training-vs-gruppentraining.jpg') center/cover no-repeat;
     font-size: 2.3em;
    font-weight: bold;
}

.sub-hero.herofreiRAUM {
    background: url('../img/freiraum-klein.jpg') center/cover no-repeat;
     font-size: 2.3em;
    font-weight: bold;
}

.sub-hero.herotrainer {
    background: url('../img/titelbild-ich-klein.jpg') center/cover no-repeat;
     font-size: 2.3em;
    font-weight: bold;
}


/* ===== BURGER ERWEITERUNG START ===== */

/* Checkbox unsichtbar */
#menu-toggle {
    display: none;
}

/* Burger Icon */
.burger {
    display: none; /* Desktop: aus */
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
}

.burger span {
    width: 25px;
    height: 3px;
    background: white;
    display: block;
}

/* ===== MOBILE NAV ===== */
@media (max-width: 900px) {

 	.section-title {
   	 scroll-margin-top: 340px; /* Höhe deiner fixierten Nav-Leiste */ 
}		
    /* Burger anzeigen */
    .burger {
        display: flex;
    }

    /* NAV AUSBLENDEN (wichtig!) */
    header nav {
        display: none;
        position: absolute;
        top: 60px; /* ggf. leicht anpassen */
        left: 0;
        width: 100%;
        background: var(--dark);

        flex-direction: column;
        align-items: flex-end;
    }

    /* Links im Mobile Menü */
    header nav a {
        margin: 0;
        width: 100%;
        text-align: center;
        padding: 8px 0;
        border-top: 1px solid rgba(255,255,255,0.1);
    }

    /* ACTIVE mobile besser sichtbar */
    header nav a.active {
        /*border-bottom: none;
        background: var(--freiraumblau);*/
         background: none;              /* Hintergrund entfernen */
        border-bottom: 0.188em solid var(--freiraumblau); /* Wort unterstreichen */
    }
    }

    header nav a.activeE {
        /*border-bottom: none;
        background: var(--escrimaorange);*/
        background: none;
        border-bottom: 0.188em solid var(--escrimaorange);
    }

    /* TOGGLE FUNKTION (der wichtigste Teil) */
    #menu-toggle:checked ~ nav {
        display: flex;
    }
}

/* ===== BURGER ERWEITERUNG ENDE ===== */
