:root{
–fm24-primary:#0088cc;
–fm24-primary-dark:#005580;
–fm24-bg:#e6f7ff;
–fm24-text:#333;
}
/* Grundschrift */
body{
font-family:“Open Sans“,system-ui,sans-serif;
color:var(–fm24-text);
}
a{color:var(–fm24-primary);}
a:hover{color:var(–fm24-primary-dark);}
.fm24-container{
max-width:1170px;
margin:0 auto;
padding:0 20px;
}
/* TOPBAR */
.fm24-topbar{
background:#0f172a;
color:#cbd5e1;
font-size:14px;
}
.fm24-topbar .fm24-container{
display:flex;
justify-content:space-between;
align-items:center;
padding:8px 20px;
}
.fm24-topbar__left,
.fm24-topbar__right{
display:flex;
gap:14px;
align-items:center;
flex-wrap:wrap;
}
.fm24-topbar__link{
color:#cbd5e1;
text-decoration:none;
}
.fm24-topbar__link:hover{color:#fff;}
.fm24-topmenu{
list-style:none;
margin:0;
padding:0;
display:flex;
gap:12px;
}
.fm24-topmenu a{
color:#cbd5e1;
text-decoration:none;
}
.fm24-topmenu a:hover{color:#fff;}
/* HEADER */
.fm24-header{
background:#fff;
border-bottom:1px solid #eee;
}
.fm24-header__inner{
display:flex;
align-items:center;
gap:20px;
padding:14px 20px;
}
.fm24-brand{
display:flex;
align-items:center;
gap:10px;
text-decoration:none;
}
.fm24-brand–logo{
display:flex;
align-items:center;
}
.custom-logo-link{
display:flex;
align-items:center;
text-decoration:none;
}
.custom-logo{
height:42px;
width:auto;
display:block;
}
.fm24-brand__name{
font-weight:700;
color:var(–fm24-primary);
}
.fm24-nav__list{
list-style:none;
margin:0;
padding:0;
display:flex;
gap:18px;
}
.fm24-nav__list a{
text-decoration:none;
color:#222;
padding:8px 10px;
border-radius:10px;
font-weight:600;
}
.fm24-nav__list a:hover{
background:var(–fm24-bg);
}
.fm24-header__cta{
margin-left:auto;
}
/* BUTTONS */
.fm24-btn{
display:inline-block;
padding:10px 14px;
border-radius:12px;
font-weight:700;
text-decoration:none;
}
.fm24-btn–primary{
background:var(–fm24-primary);
color:#fff;
}
.fm24-btn–primary:hover{
background:var(–fm24-primary-dark);
color:#fff;
}
.fm24-btn–ghost{
border:2px solid var(–fm24-primary);
color:var(–fm24-primary);
background:#fff;
}
.fm24-btn–ghost:hover{
border-color:var(–fm24-primary-dark);
color:var(–fm24-primary-dark);
}
/* HERO (Startseite) */
.hero{
background:linear-gradient(180deg,#fff,var(–fm24-bg));
padding:60px 0;
}
.hero__inner{
display:grid;
grid-template-columns:1.2fr .8fr;
gap:32px;
}
.hero__eyebrow{
color:var(–fm24-primary);
font-weight:700;
letter-spacing:.04em;
text-transform:uppercase;
font-size:13px;
}
.hero__title{
font-size:32px;
line-height:1.3;
margin:.2em 0;
}
.hero__subtitle{
font-size:18px;
margin:0 0 20px;
}
.cta-row{
display:flex;
gap:12px;
flex-wrap:wrap;
}
.card{
background:#fff;
border:1px solid #eee;
border-radius:14px;
padding:18px;
box-shadow:0 4px 20px rgba(0,0,0,.04);
}
/* SECTION / GRID */
.section{
padding:44px 0;
}
.grid{
display:grid;
gap:18px;
}
.grid–3{
grid-template-columns:repeat(3,1fr);
}
/* FOOTER */
.fm24-footer{
background:#0f172a;
color:#cbd5e1;
margin-top:40px;
}
.fm24-footer__grid{
display:grid;
gap:24px;
grid-template-columns:2fr 1fr 1fr 1fr;
padding:28px 20px;
}
.fm24-footer__col h4{
color:#fff;
margin:0 0 10px;
}
.fm24-footer__col ul{
list-style:none;
margin:0;
padding:0;
}
.fm24-footer__col li{
margin:6px 0;
}
.fm24-footer__col a{
color:#cbd5e1;
text-decoration:none;
}
.fm24-footer__col a:hover{
color:#fff;
}
.fm24-footer__brand{
display:flex;
align-items:center;
gap:10px;
margin-bottom:8px;
}
.fm24-social{
display:flex;
gap:12px;
margin-top:8px;
}
.fm24-footer__bottom{
border-top:1px solid rgba(255,255,255,.12);
}
.fm24-footer__bottom-inner{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 20px;
}
.fm24-footer__links a{
color:#cbd5e1;
text-decoration:none;
margin-left:12px;
}
.fm24-footer__links a:hover{color:#fff;}
/* ————————————————– */
/* SEITENLAYOUT (Impressum, Datenschutz etc.) */
/* ————————————————– */
/* Normale Seiten (nicht Startseite) – etwas Luft drumherum */
.page:not(.home) .site-main{
padding:40px 20px;
}
/* Seiten-Inhalt zentrieren und auf Containerbreite begrenzen */
.page:not(.home) .inside-article{
width:100%;
max-width:1170px; /* gleiche Breite wie .fm24-container */
margin:0 auto 40px;
padding:0 20px 40px 20px;
box-sizing:border-box;
}
/* ————————————————– */
/* RESPONSIVE */
/* ————————————————– */
@media (max-width:768px){
.hero__inner{grid-template-columns:1fr;}
.fm24-footer__grid{grid-template-columns:1fr 1fr;}
.fm24-header__inner{flex-wrap:wrap;}
.fm24-header__cta{margin-left:0;}
.fm24-nav__list{flex-wrap:wrap;}
}
@media (max-width:480px){
.fm24-footer__grid{grid-template-columns:1fr;}
}