:root{
--bg:#e6eaee;
/*--bg:#efeedd; */
/*--bg:#e4e8ed;*/
/*--bg:#e7e6e2;*/
--bg:#f0f3f6;
--bg:#ecebe6;
--accent:#4cc9f0;
--accent:#38bdf8;
--panel:#ffffff;
--text:#1c2733;
--muted:#5f6b76;
--line:#cfd6dd;
}


/* GLOBAL */

body{
margin:0;
font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;
background:var(--bg);
color:var(--text);
line-height:1.5;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}

.container{
max-width:1040px;
margin:auto;
padding:8px 16px;
box-sizing:border-box;
}

/* HEADER */

header{
background:var(--bg);
border-bottom:1px solid var(--line);
}

.header-accent{
height:3px;
background:linear-gradient(90deg,#38bdf8,#7dd3fc);
}

.nav{
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
}

/* BRAND */

.brand{
display:flex;
align-items:center;
gap:12px;
text-decoration:none;
color:var(--text);
}

.brand img{
height:38px;
border-radius:10px;
}

.brand-text{
display:flex;
flex-direction:column;
line-height:1.15;
}

.brand-text strong{
font-size:17px;
font-weight:700;
letter-spacing:.3px;
}

.brand-text span{
font-size:12px;
color:var(--muted);
}

/* NAVIGATION */

.topnav{
display:flex;
gap:10px;
align-items:center;
}

.topnav a{
text-decoration:none;
color:var(--muted);
font-size:14px;
font-weight:600;
}

.nav-secondary{
font-size:13px;
font-weight:500;
}

.nav-contact{
background:var(--accent);
color:white!important;
padding:7px 12px;
border-radius:6px;
box-shadow:0 3px 6px rgba(0,0,0,0.15);
}

/* HERO */

.hero{
padding:18px 0 10px 0;
}

.hero-grid{
display:grid;
grid-template-columns:1.1fr .9fr;
gap:28px;
align-items:center;
}

.hero h1{
font-size:30px;
font-weight:650;
margin:0 0 10px 0;
}

.hero p{
font-size:14.5px;
font-weight:700;
color:var(--muted);
margin:0;
max-width:540px;
}

.hero-buttons{
margin-top:18px;
}

.btn-primary{
display:inline-block;
background:var(--accent);
color:white;
padding:8px 14px;
border-radius:6px;
font-size:14px;
font-weight:600;
text-decoration:none;
}

.hero-card img{
width:100%;
border-radius:10px;
box-shadow:0 8px 18px rgba(0,0,0,0.18);
}

.card-text{
margin-top:6px;
font-size:13.5px;
font-weight:700;
color:var(--muted);
}

/* SECTIONS */

section{
padding:8px 0;
}

.main-group{
padding:8px 0;
}

h2{
margin:0 0 10px 0;
font-size:22px;
}

/* CARDS */

.grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:16px;
}

.card{
background:var(--panel);
border:1px solid var(--line);
border-radius:8px;
padding:12px 14px;
box-shadow:0 3px 10px rgba(0,0,0,0.08);
}

.card h3{
margin:0 0 5px 0;
font-size:15px;
}

.card p{
margin:0;
font-size:13.5px;
font-weight:700;
color:var(--muted);
}

/* TECH HIGHLIGHT */

.tech-highlight{
padding:6px 0;
}

.highlight-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;
}

.highlight-item{
background:white;
border:1px solid var(--line);
border-radius:8px;
padding:7px 10px;
}

.highlight-title{
font-size:12.5px;
font-weight:700;
}

.highlight-text{
font-size:12.5px;
font-weight:600;
color:var(--muted);
}

/* APPLICATION STRIP */

.application-strip{
padding:8px 0 4px 0;
}

.strip-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:14px;
}

.strip-item{
display:flex;
align-items:center;
gap:8px;
font-size:13px;
font-weight:700;
color:#55606b;
}

.strip-icon{
font-size:15px;
}

/* CONTENT PAGES */

.content{
padding:24px 0;
}

/* FOOTER */

footer{
background:var(--bg);
border-top:1px solid var(--line);
margin-top:10px;
}

.footer-accent{
height:3px;
background:linear-gradient(90deg,#38bdf8,#7dd3fc);
}

.footer{
display:flex;
justify-content:space-between;
align-items:center;
}

.footer-left{
font-size:12.5px;
font-weight:600;
color:var(--muted);
}

.adlershof-footer{
height:30px;
opacity:.9;
}

/* LARGE MONITORS */

@media (min-width:1400px){

.container{
max-width:1200px;
}

.hero-grid{
grid-template-columns:1.2fr .8fr;
}

.hero h1{
font-size:32px;
}

}

/* MOBILE */

@media (max-width:900px){

.nav{
flex-direction:column;
align-items:flex-start;
}

.hero-grid,
.grid,
.highlight-grid,
.strip-grid{
grid-template-columns:1fr;
}

.footer{
flex-direction:column;
align-items:flex-start;
}

}
