:root{

--blue-gradient:linear-gradient(
135deg,
#1e3a8a,
#38bdf8
);

--bg:#050816;
--gray:#94a3b8;

}



*{

margin:0;
padding:0;
box-sizing:border-box;
font-family:Inter,sans-serif;

}



html{

scroll-behavior:smooth;

}



body{

background:var(--bg);
color:white;

}



/* HEADER */

header{

position:fixed;
top:0;
width:100%;

padding:25px 8%;

background:#050816cc;

backdrop-filter:blur(15px);

z-index:100;

}



nav{

display:flex;
justify-content:space-between;
align-items:center;

}



.logo{

font-size:30px;
font-weight:800;
text-decoration:none;
color:white;

}



.logo span,
footer span{

background:var(--blue-gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}



.nav-links{

display:flex;
gap:40px;
list-style:none;

}



.nav-links a{

color:white;
text-decoration:none;
transition:.3s;

}



.nav-links a:hover{

color:#38bdf8;

}



.menu{

display:none;

background:none;

border:none;

color:white;

font-size:30px;

}



/* HERO */


.hero{

min-height:100vh;

display:flex;

align-items:center;

justify-content:space-between;

padding:120px 8%;

}



.hero-text{

max-width:650px;

}



.hero h1{

font-size:70px;

line-height:1;

}



.hero h1 span{

background:var(--blue-gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}



.hero p{

margin:30px 0;

font-size:20px;

line-height:1.6;

color:var(--gray);

}





.buttons{

display:flex;

gap:20px;

}



.primary,
.secondary{

padding:15px 30px;

border-radius:50px;

text-decoration:none;

transition:.3s;

}



.primary{

background:var(--blue-gradient);

color:white;

box-shadow:0 10px 30px #2563eb55;

}



.primary:hover{

transform:translateY(-4px);

}



.secondary{

border:1px solid #334155;

color:white;

}



.secondary:hover{

border-color:#38bdf8;

background:#38bdf810;

}






/* PREVIEW */


.preview{

width:350px;

height:350px;

border-radius:30px;

background:#ffffff12;

border:1px solid #ffffff15;

display:flex;

align-items:center;

justify-content:center;

box-shadow:0 0 80px #2563eb55;

}



.preview h2{

font-size:80px;

background:var(--blue-gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}



.preview h3{

text-align:center;

font-size:28px;

}



.preview p{

text-align:center;

color:var(--gray);

}





/* SECTIONS */


section{

padding:100px 8%;

}



section h2{

text-align:center;

font-size:45px;

margin-bottom:50px;

}






/* LEISTUNGEN CARDS */


.cards{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:30px;

}



.card{

background:#ffffff10;

padding:35px;

border-radius:25px;

border:1px solid #ffffff15;

transition:.3s;

}



.card:hover{

transform:translateY(-10px);

border-color:#38bdf8;

box-shadow:0 20px 50px #1e3a8a55;

}



.card p{

margin-top:15px;

color:var(--gray);

}





/* PROJEKTE */


.project-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:30px;

}



.project-card{

background:#ffffff10;

border-radius:25px;

overflow:hidden;

border:1px solid #ffffff15;

transition:.3s;

}



.project-card:hover{

transform:translateY(-10px);

border-color:#38bdf8;

box-shadow:0 20px 50px #1e3a8a55;

}




.project-image{

height:220px;

background-size:cover;

background-position:center;

position:relative;

}



.project-image::after{

content:"";

position:absolute;

inset:0;

background:linear-gradient(
180deg,
transparent,
rgba(5,8,22,0.85)
);

}



/* BILDER */


.restaurant{

background-image:url("images/restaurant.jpg");

}



.handwerker{

background-image:url("images/handwerker.jpg");

}



.business{

background-image:url("images/business.jpg");

}





.project-content{

padding:30px;

}



.project-content h3{

font-size:22px;

}



.project-content p{

margin-top:15px;

color:var(--gray);

line-height:1.5;

}





/* KONTAKT */


.contact{

max-width:700px;

margin:auto;

text-align:center;

}



form{

display:flex;

flex-direction:column;

gap:15px;

margin-top:40px;

}



input,
textarea{

padding:18px;

background:#111827;

border:1px solid #1e293b;

border-radius:15px;

color:white;

font-size:16px;

}



input:focus,
textarea:focus{

outline:none;

border-color:#38bdf8;

}



textarea{

height:160px;

resize:none;

}



button{

padding:18px;

background:var(--blue-gradient);

border:none;

border-radius:15px;

color:white;

cursor:pointer;

font-size:16px;

}



.privacy{

color:var(--gray);

font-size:14px;

}




/* FOOTER */


footer{

padding:40px 8%;

background:#020617;

display:flex;

justify-content:space-between;

align-items:center;

}



footer a{

color:#94a3b8;

text-decoration:none;

margin-left:20px;

}



footer a:hover{

color:#38bdf8;

}





/* MOBILE */


@media(max-width:800px){


.hero{

flex-direction:column;

}



.hero h1{

font-size:45px;

}



.preview{

margin-top:50px;

width:280px;

height:280px;

}



.nav-links{

display:none;

}



.nav-links.active{

display:flex;

flex-direction:column;

position:absolute;

right:30px;

top:80px;

background:#111827;

padding:30px;

border-radius:20px;

}



.menu{

display:block;

}



footer{

flex-direction:column;

gap:20px;

}


}