
*{margin:0;padding:0;box-sizing:border-box;font-family:Montserrat,sans-serif}
body{background:#09090C;color:#fff}
header{
position:fixed;top:0;width:100%;
display:flex;justify-content:space-between;align-items:center;
padding:25px 8%;z-index:100;
background:rgba(0,0,0,.45);
backdrop-filter:blur(10px);
}
.logo{
font-weight:900;
font-size:1.4rem;
color:#C437E6;
}
nav a{
color:#fff;
text-decoration:none;
font-weight:600;
}
.hero{
height:100vh;
position:relative;
display:flex;
align-items:center;
background:
radial-gradient(circle at top right,rgba(196,55,230,.35),transparent 35%),
radial-gradient(circle at bottom left,rgba(196,55,230,.20),transparent 35%),
url('hero.jpg') center/cover no-repeat;
}
.overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,.75);
}
.content{
    position:relative;
    z-index:2;

    width:100%;
    max-width:900px;

    margin:auto;

    text-align:center;

    padding:0 25px;
}

.hero{
    justify-content:center;
}

.hero h1{
    font-size:clamp(4rem,12vw,9rem);
}
h1{
font-size:8rem;
line-height:.9;
font-weight:900;
background:linear-gradient(135deg,#fff,#d88cff,#C437E6);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}
p{
margin-top:20px;
font-size:1.2rem;
color:#d0d0d0;
}
.btn{
display:inline-block;
margin-top:30px;
padding:18px 45px;
background:#C437E6;
color:#fff;
text-decoration:none;
border-radius:50px;
font-weight:700;
box-shadow:0 0 30px rgba(196,55,230,.4);
}
.contacto{
    padding:120px 25px;
    text-align:center;
}

.contact-label{
    color:#C437E6;
    font-weight:700;
    letter-spacing:3px;
    font-size:.9rem;
}

.contacto h2{
    margin-top:20px;
    font-size:clamp(2.2rem,5vw,4rem);
    line-height:1.1;
    font-weight:900;
}

.contact-text{
    max-width:700px;
    margin:25px auto;
    color:#bdbdbd;
    font-size:1.1rem;
    line-height:1.8;
}

.contact-card{
    max-width:650px;
    margin:50px auto 0;
    display:flex;
    flex-direction:column;
    gap:20px;
}

.contact-item{
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:80px;
    text-decoration:none;
    color:white;
    font-size:1.1rem;
    font-weight:600;

    background:#111118;
    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    transition:.3s;
}

.contact-item:hover{
    transform:translateY(-5px);

    border-color:#C437E6;

    box-shadow:
    0 0 30px rgba(196,55,230,.25);
}
footer{
text-align:center;
padding:30px;
border-top:1px solid #222;
}
@media(max-width:768px){
h1{font-size:4rem}
}
