section{padding:clamp(3rem,7vh,5rem) 0}
.bordtop{border-top:1px solid var(--linea)}

.nav{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1rem clamp(1.2rem,4vw,2.4rem);
  transition:.4s;
}
.nav.solid{background:rgba(11,10,18,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--linea)}
.nav .brand{width:80px;flex:none}
.nav .links{
  display:flex;
  flex:1 1 auto;
  min-width:0;
  justify-content:center;
  gap:clamp(1rem,2vw,1.5rem);
  font-size:var(--t-sm);
}
.nav .links a{color:var(--miga);transition:.2s}
.nav .links a:hover,.nav .links a.on{color:var(--bizcocho)}
.nav .links a.on{position:relative}
.nav .links a.on::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:var(--filamento);
  border-radius:2px;
}
.nav-cta{
  flex:none;
  margin-left:auto;
  white-space:nowrap;
}
.burger{
  display:none;
  background:none;
  border:1px solid var(--linea);
  color:var(--bizcocho);
  border-radius:10px;
  width:40px;
  height:38px;
  font-size:1.2rem;
  cursor:pointer;
}
.mobnav{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  width:min(80vw,300px);
  background:var(--orbital);
  border-left:1px solid var(--linea);
  z-index:199;
  transform:translateX(100%);
  transition:.35s var(--ease);
  display:flex;
  flex-direction:column;
  gap:.4rem;
  padding:5rem 1.4rem 2rem;
}
.mobnav.open{transform:none}
.mobnav a{
  color:var(--miga);
  padding:.7rem 0;
  border-bottom:1px solid var(--linea);
  font-family:var(--display);
}
.mobnav a:last-child{border:0;margin-top:.6rem}

.phero{
  padding:7rem 0 clamp(2.5rem,6vh,4rem);
  text-align:center;
  position:relative;
  overflow:hidden;
}
.phero .glow{position:absolute;inset:0;z-index:0;opacity:.45;pointer-events:none}
.phero .glow i{position:absolute;border-radius:50%;filter:blur(80px)}
.phero .glow .a{width:36vw;height:36vw;background:radial-gradient(circle,#FF7A3D,transparent 65%);top:-12vw;right:-4vw}
.phero .glow .b{width:34vw;height:34vw;background:radial-gradient(circle,#8B5CF6,transparent 65%);bottom:-16vw;left:-6vw}
.phero .inner{position:relative;z-index:2}
.phero h1{font-size:var(--t-2xl);font-weight:700;letter-spacing:-.03em;margin:.8rem 0 1rem}
.phero p{color:var(--miga);font-size:var(--t-lg);font-weight:300;max-width:54ch;margin:0 auto}

.crumb{font-size:var(--t-sm);color:var(--humo);padding:6.5rem 0 0}
.crumb a:hover{color:var(--ember)}
.crumb span{color:var(--miga)}

.hero{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(1.5rem,4vw,3rem);
  align-items:center;
  padding:1.5rem 0 clamp(3rem,7vh,5rem);
}
.hero h1{font-size:var(--t-2xl);font-weight:700;letter-spacing:-.03em;margin:.6rem 0 1rem}
.hero p.lead{font-size:var(--t-lg);color:var(--miga);font-weight:300;max-width:46ch;margin-bottom:1.8rem}
.hero .cta{display:flex;gap:.9rem;flex-wrap:wrap}

.sec-head{max-width:680px;margin-bottom:2.2rem}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head .eyebrow{display:block;margin-bottom:.7rem}
.sec-head h2{font-size:var(--t-xl)}
.sec-head p{color:var(--miga);font-size:var(--t-lg);font-weight:300;margin-top:.6rem}

.g2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,4vw,3rem)}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,4vw,3rem)}

.media{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  border:1px solid var(--linea);
}
.media img{width:100%;height:100%;object-fit:cover;display:block}
.hero .media{aspect-ratio:4/3}
.hero .media .glow{position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,10,18,.4),transparent 60%)}

.cta-band{
  position:relative;
  overflow:hidden;
  text-align:center;
  padding:clamp(4rem,10vh,7rem) 0;
  border-top:1px solid var(--linea);
}
.cta-band .bg{position:absolute;inset:0;z-index:0;opacity:.45}
.cta-band .bg img{width:100%;height:100%;object-fit:cover}
.cta-band .scrim{
  position:absolute;
  inset:0;
  z-index:1;
  background:radial-gradient(120% 120% at 50% 0%,rgba(139,92,246,.3),transparent 55%),linear-gradient(0deg,rgba(11,10,18,.92),rgba(11,10,18,.72));
}
.cta-band .inner{position:relative;z-index:2}
.cta-band h2{font-size:var(--t-2xl);font-weight:700;max-width:18ch;margin:0 auto 1.3rem}

.ft{border-top:1px solid var(--linea);padding:clamp(3rem,7vh,4.5rem) 0 2rem}
.ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem;margin-bottom:2.5rem}
.ft h5{
  font-family:var(--display);
  font-size:var(--t-xs);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--humo);
  margin-bottom:.9rem;
}
.ft a,.ft li{
  color:var(--miga);
  font-size:var(--t-sm);
  list-style:none;
  margin-bottom:.5rem;
  display:block;
}
.ft a:hover,.ft-bottom a:hover{color:var(--ember)}
.ft-bottom{
  border-top:1px solid var(--linea);
  padding-top:1.4rem;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:.6rem;
  color:var(--humo);
  font-size:var(--t-xs);
}

@media(max-width:900px){
  .nav .links,.nav-cta{display:none}
  .burger{display:block}
}
@media(max-width:1180px){
  .nav-cta{display:none}
}
@media(max-width:860px){
  .hero,.two,.contact-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .ft-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .g2,.g3,.g4{grid-template-columns:1fr}
}
@media(max-width:900px){
  .g3,.g4{grid-template-columns:1fr 1fr}
}
