  *, * : :before, * : :after {
  box-sizing: border-box; margin: 0; padding : 0;
}
  :root {
  --purple : #7B2FBE;--purple-light : #9D4EDD;--purple-glow : #BF5FFF;--black : #000000;--dark : #0a0a0a;--dark2 : #111111;--white : #ffffff;--gray : #cccccc;
}
body {
  margin : 0;
  background : white;
  font-family : Arial, sans-serif;
}
.navbar {
  position : fixed;
  top : 0;
  left : 0;
  width : 100%;
  height : 65px;
  background : #000;
  display : flex;
  align-items : center;
  justify-content : space-between;
  padding : 0 20px;
  box-sizing : border-box;
  z-index : 9999;
}
.menu-btn {
  background : none;
  border : none;
  font-size : 32px;
  color : white;
  cursor : pointer;
}
.user-icon {
  width : 38px;
  height : 38px;
  object-fit : contain;
  cursor : pointer;
}
.hero {
  margin-top : 65px;
  width : 100%;
  background : linear-gradient(to top, #000 27%, #2b0a3d 100%);
  display : flex;
  justify-content : center;
  align-items : center;
  padding : 30px 20px 40px;
  box-sizing : border-box;
}
.logo {
  width : 100%;
  max-width : 700px;
  height : auto;
  display : block;
}
.benefits-bar {
  width : 100%;
  background : black;
  display : flex;
  justify-content : center;
  align-items : center;
  padding : 0;
  line-height : 0;
}
.benefits-img {
  width : 100%;
  max-width : 1400px;
  height : auto;
  display : block;
}
.quem-somos {
  background : var(--black);
  position : relative;
}
.quem-logo {
  width : 100%;
  max-width : 700px;
  height : auto;
  display : block;
}
.section-tag,
.section-title, .purple-line {
  text-align : center;
  margin-left : auto;
  margin-right : auto;
  color : #fff;
}
.section-title {
  color : #fff;
}
  .quem-somos : :before {
  content : '';
  display : block;
  height : 60px;
  color : #000;
}
.quem-somos-inner {
  max-width : 1100px;
  margin : 0 auto;
  padding : 20px 20px 80px;
  display : grid;
  grid-template-columns : 1fr 1fr;
  gap : 60px;
  align-items : center;
}
.quem-somos-text p {
  font-size : 18px;
  line-height : 1.8;
  color : #aaa;
  margin-bottom : 16px;
}
.quem-somos-text p strong {
  color : var(--white);
}
.quem-somos-cards {
  display : grid;
  grid-template-columns : 1fr 1fr;
  gap : 16px;
}
.qs-card {
  background : rgba(123, 47, 190, 0.08);
  border : 1px solid rgba(123, 47, 190, 0.25);
  border-radius : 12px;
  padding : 20px;
  transition : border-color 0.3s, transform 0.3s, box-shadow 0.3s;
}
  .qs-card : hover {
  border-color : var(--purple-glow);
  transform : translateY(-4px);
  box-shadow : 0 8px 30px rgba(123, 47, 190, 0.3);
}
.qs-card .icon {
  font-size : 28px; margin-bottom : 10px;
}
.qs-card h4 {
  font-family : 'Bebas Neue', sans-serif;
  font-size : 18px;
  letter-spacing : 1px;
  color : var(--purple-glow);
  margin-bottom : 6px;
}
.qs-card p {
  font-size : 13px; color: #999; line-height : 1.5;
}
.banner-principal {
  width : 100%;
  background : linear-gradient(135deg, #0d0020 0%, #1a0035 40%, #2b0050 70%, #0d0020 100%);
  position : relative;
  overflow : hidden;
}
  .banner-principal : :before {
  content : '';
  position : absolute;
  inset : 0;
  background : radial-gradient(ellipse at 20% 50%, rgba(123, 47, 190, 0.3) 0%, transparent 60%), radial-gradient(ellipse at 80% 50%, rgba(191, 95, 255, 0.2) 0%, transparent 60%);
  pointer-events : none;
}
  .banner-principal : :after {
  content : '';
  position : absolute;
  inset : 0;
  background-image : linear-gradient(rgba(123, 47, 190, 0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(123, 47, 190, 0.07) 1px, transparent 1px);
  background-size : 40px 40px;
  pointer-events : none;
}
.banner-inner {
  position : relative;
  z-index : 1;
  max-width : 1100px;
  margin : 0 auto;
  padding : 100px 20px;
  text-align : center;
}
.banner-inner .section-tag {
  justify-content : center; display : block;
}
.banner-title {
  font-family : 'Bebas Neue', sans-serif;
  font-size : clamp(48px, 10vw, 120px);
  line-height : 0.9;
  color : var(--white);
  text-shadow : 0 0 60px rgba(191, 95, 255, 0.5);
  margin-bottom : 24px;
}
.banner-title span {
  color : transparent;-webkit-text-stroke : 2px var(--purple-glow);
  display : block;
}
.banner-sub {
  font-size : 20px;
  color : #bbb;
  max-width : 600px;
  margin : 0 auto 40px;
  line-height : 1.6;
}
.btn-primary {
  display : inline-flex;
  align-items : center;
  gap : 10px;
  background : linear-gradient(135deg, var(--purple), var(--purple-glow));
  color : white;
  padding : 16px 40px;
  border-radius : 4px;
  text-decoration : none;
  font-size : 16px;
  font-weight : 700;
  letter-spacing : 2px;
  text-transform : uppercase;
  transition : transform 0.3s, box-shadow 0.3s;
  border : none;
  cursor : pointer;
}
  .btn-primary : hover {
  transform : translateY(-3px);
  box-shadow : 0 10px 40px rgba(123, 47, 190, 0.6);
}
.btn-secondary {
  display : inline-flex;
  align-items : center;
  gap : 10px;
  background : transparent;
  color : var(--purple-glow);
  padding : 15px 40px;
  border-radius : 4px;
  text-decoration : none;
  font-size : 16px;
  font-weight : 700;
  letter-spacing : 2px;
  text-transform : uppercase;
  transition : all 0.3s;
  border : 2px solid var(--purple);
  cursor : pointer;
}
  .btn-secondary : hover {
  background : rgba(123, 47, 190, 0.1);
  border-color : var(--purple-glow);
  box-shadow : 0 0 20px rgba(123, 47, 190, 0.3);
}
.banner-btns {
  display : flex;
  gap : 16px;
  justify-content : center;
  flex-wrap : wrap;
}
.stats-row {
  display : grid;
  grid-template-columns : repeat(3, 1fr);
  gap : 2px;
  margin-top : 80px;
  border : 1px solid rgba(123, 47, 190, 0.3);
  border-radius : 8px;
  overflow : hidden;
}
.stat {
  background : rgba(0, 0,0, 0.5);
  padding : 30px 20px;
  text-align : center;
  border-right : 1px solid rgba(123, 47, 190, 0.2);
}
  .stat : last-child {
  border-right : none;
}
.stat-num {
  font-family : 'Bebas Neue', sans-serif;
  font-size : 52px;
  color : var(--purple-glow);
  line-height : 1;
  display : block;
}
.stat-label {
  font-size : 13px;
  letter-spacing : 2px;
  text-transform : uppercase;
  color : #777;
  margin-top : 6px;
  display : block;
}
.logo-produtos {
  width : 100%;
  max-width : 700px;
  height : auto;
  display : block;
}
 .logo-produtos {
  width: min(90vw, 700px);
}
.produtos-header {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: clamp(30px, 6vw, 60px);
}
.produtos {
  background : var(--dark);
  position : relative;
}
.produtos-grid {
  display : grid;
 /* grid-template-columns : repeat(auto-fill, minmax(250px, 1fr));*/
 grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap : 20px;
  margin-top : 40px;
}
.produto-card {
  background : #111;
  border : 1px solid rgba(123, 47, 190, 0.2);
  border-radius : 12px;
  overflow : hidden;
  transition : transform 0.3s, border-color 0.3s, box-shadow 0.3s;
  cursor : pointer;
}
  .produto-card : hover {
  transform : translateY(-6px);
  border-color : var(--purple-glow);
  box-shadow : 0 20px 50px rgba(123, 47, 190, 0.3);
}
.produto-img {
  width : 100%;
  height : 200px;
  background : linear-gradient(135deg, #1a0035, #2b0050);
  display : flex;
  align-items : center;
  justify-content : center;
  font-size : 60px;
  position : relative;
  overflow : hidden;
}
  .produto-img : :after {
  content : '';
  position : absolute;
  inset : 0;
  background : radial-gradient(ellipse at center, rgba(123, 47, 190, 0.3) 0%, transparent 70%);
}
.produto-info {
  padding : 20px;
}
.produto-info h3 {
  font-family : 'Bebas Neue', sans-serif;
  font-size : 22px;
  letter-spacing : 1px;
  color : var(--white);
  margin-bottom : 8px;
}
.produto-info p {
  font-size : 14px; color: #888; line-height : 1.5;
}
.produto-tag {
  display : inline-block;
  background : rgba(123, 47, 190, 0.2);
  border : 1px solid rgba(123, 47, 190, 0.4);
  color : var(--purple-glow);
  font-size : 11px;
  font-weight : 700;
  letter-spacing : 2px;
  text-transform : uppercase;
  padding : 4px 10px;
  border-radius : 4px;
  margin-top : 12px;
}
 .produtos {
  background: #000;
  padding: 80px 20px;
}

.produtos-grid {
  width: 100%;
  max-width: 1400px;

  margin: 60px auto 0;

  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));

  gap: 24px;

  align-items: stretch;
}

.produto-card {
  background: #0b0b0b;

  border: 1px solid rgba(123, 47, 190, 0.25);

  border-radius: 18px;

  overflow: hidden;

  transition: .3s;
}

.produto-card:hover {
  transform: translateY(-8px);

  border-color: #bf5fff;

  box-shadow: 0 15px 40px rgba(123,47,190,.35);
}
.como-funciona {
  background : var(--black);
  position : relative;
}
.como-logo {
  width : 100%;
  max-width : 700px;
  height : auto;
  display : block;
}
.steps {
  display : grid;
  grid-template-columns : repeat(auto-fit, minmax(200px, 1fr));
  gap : 0;
  margin-top : 50px;
  position : relative;
}
  .steps : :before {
  content : '';
  position : absolute;
  top : 50px;
  left : 10%;
  right : 10%;
  height : 2px;
  background : linear-gradient(90deg, transparent, var(--purple), var(--purple-glow), var(--purple), transparent);
}
.step {
  text-align : center;
  padding : 40px 20px 20px;
  position : relative;
}
.step-num {
  width : 60px;
  height : 60px;
  background : linear-gradient(135deg, var(--purple), var(--purple-glow));
  border-radius : 50%;
  display : flex;
  align-items : center;
  justify-content : center;
  font-family : 'Bebas Neue', sans-serif;
  font-size : 24px;
  color : white;
  margin : 0 auto 20px;
  position : relative;
  z-index : 1;
  box-shadow : 0 0 20px rgba(123, 47, 190, 0.5);
}
.step h3 {
  font-family : 'Bebas Neue', sans-serif;
  font-size : 20px;
  letter-spacing : 1px;
  color : var(--white);
  margin-bottom : 10px;
}
.step p {
  font-size : 14px; color: #777; line-height : 1.6;
}
.galeria {
  background : #000;
}
.quem-logo {
  width : 100%;
  max-width : 700px;
  height : auto;
  display : block;
}
.galeria-grid {
  display : grid;
  grid-template-columns : repeat(3, 1fr);
  grid-template-rows : repeat(2, 200px);
  gap : 12px;
  margin-top : 40px;
}
.galeria-item {
  border-radius : 10px;
  overflow : hidden;
  background : linear-gradient(135deg, #1a0035, #2b0050);
  color : #000;
  display : flex;
  align-items : center;
  justify-content : center;
  font-size : 50px;
  cursor : pointer;
  transition : transform 0.3s, box-shadow 0.3s;
  border : 1px solid rgba(123, 47, 190, 0.2);
  position : relative;
  overflow : hidden;
}
.galeria-item {
  min-height : 170px;
  background : #000;
}
  .galeria-item : :after {
  content : 'Ver mais';
  position : absolute;
  inset : 0;
  background : rgba(123, 47, 190, 0.85);
  display : flex;
  align-items : center;
  justify-content : center;
  font-family : 'Bebas Neue', sans-serif;
  font-size : 20px;
  letter-spacing : 3px;
  color : white;
  opacity : 0;
  transition : opacity 0.3s;
}
  .galeria-item : hover {
  transform : scale(1.02);
  box-shadow : 0 10px 30px rgba(123, 47, 190, 0.4);
}
  .galeria-item : hover : :after {
  opacity : 1;
}
.galeria-item.featured {
  grid-row : span 2;
  font-size : 80px;
}
  @media (max-width : 768px) {
  .galeria-grid{grid-template-columns : repeat(2, 1fr);
  grid-template-rows : none;
}
.galeria-item {
  min-height : 170px;
}
}.orcamento {
  background : linear-gradient(135deg, #0d0020 0%, #1a0035 50%, #0d0020 100%);
  position : relative;
  overflow : hidden;
}
  .orcamento : :before {
  content : '';
  position : absolute;
  inset : 0;
  background : radial-gradient(ellipse at 50% 50%, rgba(123, 47, 190, 0.4) 0%, transparent 70%);
  pointer-events : none;
}
.orcamento-inner {
  position : relative;
  z-index : 1;
  max-width : 700px;
  margin : 0 auto;
  padding : 100px 20px;
  text-align : center;
}
.whatsapp-icon {
  font-size : 64px;
  margin-bottom : 20px;
  display : block;
  animation : bounce 2s ease-in-out infinite;
}
@keyframes bounce {
  0%, 100%{transform : translateY(0);
}
50% {
  transform : translateY(-10px);
}
}.orcamento-inner .section-title {
  margin-bottom : 16px;
}
.orcamento-inner p {
  font-size : 18px; color: #aaa; margin-bottom: 40px; line-height : 1.7;
}
.whatsapp-btn {
  display : inline-flex;
  align-items : center;
  gap : 12px;
  background : #25D366;
  color : white;
  padding : 18px 50px;
  border-radius : 4px;
  text-decoration : none;
  font-size : 18px;
  font-weight : 700;
  letter-spacing : 2px;
  text-transform : uppercase;
  transition : transform 0.3s, box-shadow 0.3s;
  box-shadow : 0 0 30px rgba(37, 211, 102, 0.3);
}
  .whatsapp-btn : hover {
  transform : translateY(-4px) scale(1.02);
  box-shadow : 0 15px 50px rgba(37, 211, 102, 0.5);
}
footer {
  background : #000;
  border-top : 1px solid rgba(123, 47, 190, 0.2);
  padding : 40px 20px;
  text-align : center;
}
footer .footer-logo {
  font-family : 'Bebas Neue', sans-serif;
  font-size : 28px;
  color : var(--purple-glow);
  letter-spacing : 3px;
  margin-bottom : 10px;
}
footer p {
  color : #555; font-size : 13px;
}
.wave-section {
  display : block;
  width : 100%;
  overflow : hidden;
  line-height : 0;
  margin : 0; padding : 0;
}
.wave-section svg {
  display : block; width : 100%;
}
  @media (max-width : 768px) {
  .nav-links{display : none;
}
.quem-somos-inner {
  grid-template-columns : 1fr; gap : 30px;
}
.quem-somos-cards {
  grid-template-columns : 1fr 1fr;
}
.stats-row {
  grid-template-columns : 1fr;
}
.stat {
  border-right : none; border-bottom : 1px solid rgba(123, 47, 190, 0.2);
}
  .stat : last-child {
  border-bottom : none;
}
.galeria-grid {
  grid-template-columns : repeat(2, 1fr); grid-template-rows : auto;
}
.galeria-item.featured {
  grid-row : span 1;
}
  .steps : :before {
  display : none;
}
  }@media (max-width : 480px) {
  .quem-somos-cards{grid-template-columns : 1fr;
}
}
