/* Deep Mapping premium landing refresh */
:root{
  --glass:rgba(5,8,12,.72);
  --glass-strong:rgba(5,8,12,.9);
  --cyan-soft:rgba(0,183,227,.16);
  --magenta-soft:rgba(230,0,126,.14);
  --line-strong:rgba(242,242,242,.24);
}

::selection{
  background:var(--cyan);
  color:#001318;
}

body{
  background:
    linear-gradient(180deg,#020304 0%,#05070a 46%,#020304 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 80px);
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-10;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.58),transparent 72%);
}

h1,h2,h3{
  letter-spacing:0;
}

.topbar{
  height:82px;
  border-bottom-color:rgba(255,255,255,.12);
  background:rgba(1,2,4,.62);
  box-shadow:0 18px 60px rgba(0,0,0,.28);
}

.topbar.solid{
  background:rgba(1,2,4,.92);
  border-bottom-color:rgba(0,183,227,.28);
}

.brand img{
  filter:drop-shadow(0 0 18px rgba(0,183,227,.28));
}

.nav{
  gap:18px;
}

.nav .studio-link{
  color:var(--cyan);
  border:1px solid rgba(0,183,227,.42);
  padding:10px 13px;
  background:rgba(0,183,227,.08);
}

.nav .studio-link:hover{
  color:#001318;
  background:var(--cyan);
}

.hero{
  overflow:hidden;
  min-height:calc(100svh - 48px);
  padding:96px 0 38px;
  align-items:center;
}

.hero:before{
  content:"";
  position:absolute;
  inset:82px clamp(18px,4vw,54px) 44px;
  z-index:-2;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.72),transparent 80%);
}

.hero:after{
  background:
    linear-gradient(90deg,rgba(2,3,4,.98) 0%,rgba(2,3,4,.78) 46%,rgba(2,3,4,.86) 100%),
    linear-gradient(180deg,rgba(2,3,4,.14),var(--black) 92%);
}

.hero-content{
  position:relative;
}

.hero-kicker-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:22px;
}

.hero-kicker-row span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(3,4,6,.58);
  color:rgba(242,242,242,.76);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.hero-kicker-row span:before{
  content:"";
  width:7px;
  height:7px;
  background:var(--cyan);
  box-shadow:0 0 14px var(--cyan);
}

.hero h1{
  max-width:820px;
  font-size:clamp(46px,6vw,82px);
  line-height:1;
  text-shadow:0 14px 44px rgba(0,0,0,.62);
}

.hero .lead{
  border-left:4px solid var(--cyan);
  padding-left:18px;
  margin-top:20px;
  font-size:clamp(16px,1.4vw,19px);
}

.hero .actions{
  margin-top:24px;
}

.hero-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(130px,1fr));
  gap:12px;
  max-width:620px;
  margin-top:22px;
}

.hero-stats article{
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(135deg,rgba(0,183,227,.12),rgba(5,8,12,.72));
  padding:13px;
}

.hero-stats strong{
  display:block;
  color:var(--cyan);
  font-family:"Bebas Neue",Montserrat,sans-serif;
  font-size:38px;
  line-height:.9;
}

.hero-stats span{
  display:block;
  margin-top:8px;
  color:rgba(242,242,242,.72);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:11px;
}

.hero-panel{
  border-color:rgba(255,255,255,.18);
  background:
    linear-gradient(160deg,rgba(13,27,42,.9),rgba(5,8,12,.72)),
    linear-gradient(90deg,rgba(0,183,227,.08),rgba(230,0,126,.08));
  box-shadow:22px 22px 0 rgba(0,183,227,.08);
  min-height:360px;
  padding:24px;
}

.hero-panel img{
  width:190px;
  margin-bottom:24px;
}

.hero-panel-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:28px;
  position:relative;
  z-index:2;
}

.hero-panel-meta small{
  border:1px solid rgba(255,255,255,.14);
  padding:8px 10px;
  color:rgba(242,242,242,.72);
  text-transform:uppercase;
  letter-spacing:.12em;
}

.anniversary-strip{
  background:
    linear-gradient(90deg,rgba(0,183,227,.16),rgba(230,0,126,.12)),
    #05070a;
  border-top:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);
}

.anniversary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border-left:1px solid rgba(255,255,255,.14);
}

.anniversary-grid article{
  min-height:190px;
  padding:28px;
  border-right:1px solid rgba(255,255,255,.14);
  background:rgba(2,3,4,.54);
}

.anniversary-grid span{
  display:inline-block;
  margin-bottom:18px;
  color:var(--cyan);
  font-family:"Bebas Neue",Montserrat,sans-serif;
  font-size:56px;
  line-height:.85;
}

.anniversary-grid strong{
  display:block;
  margin-bottom:10px;
  color:#fff;
  font-size:22px;
  line-height:1.1;
}

.anniversary-grid p{
  margin:0;
  color:rgba(242,242,242,.72);
  line-height:1.55;
}

.brand-strip{
  border-bottom:1px solid var(--line);
  background:#020304;
}

.brand-strip-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-left:1px solid var(--line);
}

.brand-strip article{
  min-height:210px;
  padding:26px;
  border-right:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
}

.brand-strip span{
  display:inline-block;
  margin-bottom:32px;
  color:var(--magenta);
  font-family:"Bebas Neue",Montserrat,sans-serif;
  font-size:54px;
  line-height:.8;
}

.brand-strip strong{
  display:block;
  font-size:22px;
  line-height:1.1;
}

.brand-strip p{
  color:rgba(242,242,242,.64);
  line-height:1.55;
}

.section{
  position:relative;
}

.identity{
  background:linear-gradient(180deg,#020304 0%,#070b10 100%);
}

.formula div,
.card,
.project-figure,
.feed-panel article,
.contact-form{
  border-color:rgba(255,255,255,.16);
  box-shadow:0 24px 80px rgba(0,0,0,.18);
}

.card{
  transition:transform .22s ease,background .22s ease,border-color .22s ease;
}

.card:hover{
  transform:translateY(-6px);
  border-color:rgba(0,183,227,.45);
}

.project{
  background:
    linear-gradient(180deg,rgba(13,27,42,.35),rgba(2,3,4,.96)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 72px);
}

.project-figure:after{
  content:"";
  position:absolute;
  inset:16px;
  pointer-events:none;
  border:1px solid rgba(0,183,227,.36);
  box-shadow:inset 0 0 0 1px rgba(230,0,126,.18);
}

.social{
  background:
    linear-gradient(135deg,rgba(0,183,227,.12),rgba(3,4,6,.96) 42%,rgba(230,0,126,.1)),
    repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 56px);
}

.feed-panel article{
  transition:transform .22s ease,border-color .22s ease;
}

.feed-panel article:hover{
  transform:translateY(-5px);
  border-color:rgba(230,0,126,.42);
}

.contact{
  background:linear-gradient(180deg,#020304,#05080d);
}

.contact-form,
.software-form{
  backdrop-filter:blur(18px);
}

.final-cta{
  position:relative;
  overflow:hidden;
  padding:92px 0;
  border-top:1px solid var(--line);
  background:
    linear-gradient(110deg,rgba(0,183,227,.18),rgba(3,4,6,.9) 48%,rgba(230,0,126,.18)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 70px);
}

.final-cta:before{
  content:"";
  position:absolute;
  inset:24px;
  border:1px solid rgba(255,255,255,.13);
  pointer-events:none;
}

.final-cta-grid{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:46px;
  align-items:center;
}

.final-cta p{
  color:rgba(242,242,242,.72);
  line-height:1.65;
}

.footer{
  background:#010203;
}

@media(max-width:980px){
  .topbar{
    height:76px;
  }

  .nav .studio-link{
    width:100%;
  }

  .hero:before{
    inset:76px 18px 28px;
  }

  .hero-stats,
  .anniversary-grid,
  .brand-strip-grid,
  .final-cta-grid{
    grid-template-columns:1fr;
  }

  .brand-strip article{
    min-height:auto;
  }
}

@media(max-width:560px){
  .hero-kicker-row span{
    width:100%;
  }

  .hero .actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }

  .hero .actions .button{
    width:100%;
  }

  .hero-stats{
    gap:10px;
  }

  .hero-stats article{
    padding:14px;
  }

  .hero-panel{
    box-shadow:10px 10px 0 rgba(0,183,227,.08);
    padding:18px;
  }

  .hero-panel img{
    width:150px;
  }

  .whatsapp{
    right:12px;
    bottom:12px;
    width:52px;
    height:52px;
  }

  .final-cta{
    padding:70px 0;
  }
}

.software{
  background:
    linear-gradient(180deg,#030508 0%,#07101a 42%,#020304 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 72px);
}

.software:before{
  content:"";
  position:absolute;
  inset:34px clamp(18px,4vw,54px);
  border:1px solid rgba(255,255,255,.12);
  pointer-events:none;
}

.software-layout{
  gap:56px;
}

.software-copy{
  position:relative;
  z-index:2;
}

.software-copy h2{
  max-width:720px;
}

.software-highlights{
  display:grid;
  gap:10px;
  margin-top:28px;
  max-width:620px;
}

.software-highlights span{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:46px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(3,4,6,.58);
  color:rgba(242,242,242,.76);
  font-weight:800;
}

.software-highlights span:before{
  content:"";
  width:9px;
  height:9px;
  background:var(--magenta);
  box-shadow:0 0 16px var(--magenta);
}

.license-note{
  margin-top:18px;
  padding:14px 16px;
  border:1px solid rgba(0,183,227,.28);
  background:rgba(0,183,227,.075);
  color:rgba(242,242,242,.72);
  font-size:13px;
  line-height:1.55;
}

.studio-console{
  padding:0;
  overflow:hidden;
  border-color:rgba(0,183,227,.35);
  background:rgba(2,3,4,.92);
  box-shadow:
    16px 16px 0 rgba(0,183,227,.1),
    0 34px 110px rgba(0,0,0,.45);
}

.software-preview:before{
  content:none;
}

.preview-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 14px;
  border-bottom:1px solid rgba(255,255,255,.12);
  background:linear-gradient(90deg,rgba(0,183,227,.13),rgba(230,0,126,.09));
}

.preview-toolbar span{
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(255,255,255,.42);
}

.preview-toolbar span:nth-child(1){
  background:var(--magenta);
}

.preview-toolbar span:nth-child(2){
  background:var(--cyan);
}

.preview-toolbar b{
  margin-left:10px;
  color:rgba(242,242,242,.78);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:12px;
}

.preview-screen{
  position:relative;
  padding:14px;
}

.preview-screen:after{
  content:"";
  position:absolute;
  inset:14px;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:40px 40px;
  opacity:.24;
}

.software-preview img{
  aspect-ratio:16/10;
  object-position:top left;
}

.preview-hud{
  position:absolute;
  left:26px;
  right:26px;
  bottom:26px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  z-index:2;
}

.preview-hud span{
  padding:8px 10px;
  border:1px solid rgba(0,183,227,.4);
  background:rgba(2,3,4,.82);
  color:rgba(242,242,242,.78);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.software-preview figcaption{
  padding:0 14px 16px;
}

.software-grid{
  border:0;
  gap:16px;
}

.software-card{
  min-height:292px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}

.software-card:hover{
  transform:translateY(-6px);
  border-color:rgba(0,183,227,.48);
}

.software-card span{
  box-shadow:8px 8px 0 rgba(230,0,126,.32);
}

.studio-flow{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}

.studio-flow article{
  border:1px solid rgba(255,255,255,.14);
  padding:18px;
  background:rgba(3,4,6,.62);
}

.studio-flow span{
  display:block;
  color:var(--cyan);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:11px;
  font-weight:900;
  margin-bottom:12px;
}

.studio-flow strong{
  display:block;
  color:rgba(242,242,242,.84);
  line-height:1.35;
}

.access-plans{
  gap:16px;
}

.plan-card{
  border-color:rgba(255,255,255,.15);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow:0 24px 80px rgba(0,0,0,.16);
}

.plan-card.featured{
  border-color:rgba(0,183,227,.52);
  background:linear-gradient(145deg,rgba(0,183,227,.16),rgba(230,0,126,.1));
}

.access-card,
.software-form,
.donations{
  border-color:rgba(255,255,255,.15);
  background:rgba(3,4,6,.68);
  box-shadow:0 28px 100px rgba(0,0,0,.22);
}

.access-steps li{
  border-left-color:var(--magenta);
}

.software-form input,
.software-form textarea,
.software-form select,
.contact-form input,
.contact-form textarea,
.contact-form select{
  border-color:rgba(255,255,255,.16);
  background:rgba(1,2,4,.86);
}

.donations{
  background:
    linear-gradient(120deg,rgba(0,183,227,.12),rgba(3,4,6,.84),rgba(230,0,126,.1));
}

@media(max-width:980px){
  .software:before{
    inset:24px 16px;
  }

  .studio-flow{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:560px){
  .studio-flow{
    grid-template-columns:1fr;
  }

  .preview-hud{
    position:static;
    padding:10px 14px 0;
  }
}

