/* =========================
   RESET
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

/* =========================
   HTML
========================= */

html{
  scroll-behavior:smooth;
}

/* =========================
   SECTION-BLOCK
========================= */

.section-block{
  scroll-margin-top:140px;
}

/* =====================================
      cookie-consent
====================================== */

*{margin:0;padding:0;box-sizing:border-box;font-family:Arial,sans-serif}
body{background:#040404;color:#fff}
.legal-page{width:min(1100px,calc(100% - 48px));margin:80px auto;padding:60px;border-radius:28px;background:rgba(5,10,8,.72);border:1px solid rgba(212,175,55,.18)}
.legal-page h1{font-size:42px;margin-bottom:18px;color:#d4af37}
.legal-page h2{font-size:24px;margin:34px 0 12px;color:#20b875}
.legal-page p,.legal-page li{line-height:1.8;opacity:.86;margin-bottom:12px}
.legal-page ul{padding-left:22px}
.legal-note{padding:18px;border-radius:16px;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.18);margin:24px 0}
.back-link{display:inline-flex;margin-top:30px;padding:14px 20px;border-radius:14px;background:linear-gradient(135deg,#d4af37,#f3d77b);color:#050505;text-decoration:none;font-weight:900}
.cookie-banner{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(980px,calc(100% - 32px));z-index:99999;padding:22px;border-radius:22px;background:rgba(5,10,8,.92);backdrop-filter:blur(18px);border:1px solid rgba(212,175,55,.22);box-shadow:0 25px 80px rgba(0,0,0,.45);display:none;gap:18px;align-items:center;justify-content:space-between}
.cookie-banner.active{display:flex}
.cookie-banner p{line-height:1.6;opacity:.82}
.cookie-actions{display:flex;gap:12px;flex-wrap:wrap}
.cookie-btn{border:0;border-radius:12px;padding:12px 18px;font-weight:900;cursor:pointer}
.cookie-accept{background:linear-gradient(135deg,#20b875,#14844b);color:#fff}
.cookie-manage{background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(212,175,55,.18)}
.cookie-reject{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.12)}
@media(max-width:700px){.legal-page{padding:34px 22px}.legal-page h1{font-size:32px}.cookie-banner{flex-direction:column;align-items:flex-start}.cookie-actions{width:100%}.cookie-btn{width:100%}}



/* =========================
   BODY
========================= */

body{
  background:#040404;
  color:white;
}

/* =========================
   CLIENTS
========================= */

.clients{
  padding:110px 70px;
  text-align:center;
}

.section-title{
  text-align:center;
  margin-bottom:60px;
}

.section-title span{
  color:#20b875;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
}

.section-title h2{
  margin-top:16px;
  font-size:46px;
}

.clients-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
  align-items:stretch;
}

.client-card{
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:34px;
  border-radius:30px;
  background:linear-gradient(145deg,rgba(10,15,13,.96),rgba(5,5,5,.99));
  border:1px solid rgba(212,175,55,.14);
  position:relative;
  overflow:hidden;
  transition:.35s ease;
}

.client-card:hover{
  transform:translateY(-6px);
  border-color:rgba(212,175,55,.34);
  box-shadow:0 30px 70px rgba(0,0,0,.38);
}

.client-card::before{
  content:"";
  position:absolute;
  top:-120px;
  right:-120px;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(32,184,117,.16),transparent 70%);
}

.client-card img{
  width:86px;
  height:86px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid #d4af37;
  margin-bottom:22px;
}

.client-card h3{
  font-size:28px;
  margin-bottom:8px;
}

.client-level{
  color:#20b875;
  font-weight:700;
  margin-bottom:18px;
}

.client-stars{
  color:#d4af37;
  font-size:20px;
  margin-bottom:24px;
}

.client-info{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:24px;
  width:100%;
}

.client-info div{
  min-width:0;
  background:rgba(255,255,255,.04);
  border-radius:16px;
  padding:12px 8px;
  text-align:center;
}

.client-info strong{
  display:block;
  color:#20b875;
  font-size:clamp(14px,1.2vw,18px);
  margin-bottom:6px;
  white-space:nowrap;
}

.client-info span{
  display:block;
  font-size:11px;
  opacity:.72;
  line-height:1.3;
  word-break:normal;
}

.client-info strong{
  display:block;
  color:#20b875;
  font-size:18px;
  margin-bottom:6px;
}

.client-info span{
  font-size:12px;
  opacity:.72;
  line-height:1.4;
}

.client-comment{
  margin-top:auto;
  line-height:1.7;
  opacity:.82;
  font-size:15px;
}

/* =========================
   PROFESSIONAL SECTION
========================= */

.pro-section{
  width:min(1500px,calc(100% - 80px));
  margin:80px auto 120px;
  padding:90px 70px;
  border-radius:36px;
  background:
    radial-gradient(circle at top right,rgba(32,184,117,.16),transparent 35%),
    linear-gradient(135deg,rgba(8,18,14,.96),rgba(3,3,3,.98));
  border:1px solid rgba(212,175,55,.16);
  box-shadow:0 35px 100px rgba(0,0,0,.38);
}

.pro-header{
  max-width:900px;
  margin-bottom:60px;
}

.pro-header span{
  color:#20b875;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
}

.pro-header h2{
  font-size:56px;
  line-height:1.08;
  margin:18px 0 22px;
}

.pro-header p{
  font-size:19px;
  line-height:1.75;
  opacity:.82;
}

.pro-content{
  display:grid;
  grid-template-columns:1fr 430px;
  gap:40px;
  align-items:stretch;
}

.pro-benefits{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
  height:100%;
}

.pro-benefit-card{
  padding:30px;
  border-radius:26px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  transition:.3s ease;
}

.pro-benefit-card:hover{
  transform:translateY(-5px);
  border-color:rgba(212,175,55,.26);
  background:rgba(255,255,255,.06);
}

.pro-benefit-card strong{
  display:inline-flex;
  margin-bottom:26px;
  color:#d4af37;
  font-size:14px;
  letter-spacing:.8px;
}

.pro-benefit-card h3{
  font-size:24px;
  margin-bottom:14px;
}

.pro-benefit-card p{
  line-height:1.7;
  opacity:.78;
}

.pro-profile-card{
  padding:32px;
  border-radius:32px;
  background:rgba(5,10,8,.72);
  border:1px solid rgba(212,175,55,.22);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 24px 70px rgba(0,0,0,.35);
}

.pro-profile-top{
  display:flex;
  gap:18px;
  align-items:center;
  margin-bottom:24px;
}

.pro-profile-top img{
  width:82px;
  height:82px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid #d4af37;
}

.pro-profile-top h3{
  font-size:26px;
  margin-bottom:5px;
}

.pro-profile-top p{
  opacity:.72;
  margin-bottom:7px;
}

.pro-profile-top span{
  color:#d4af37;
  font-weight:900;
}

.pro-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:24px;
}

.pro-tags span{
  padding:9px 12px;
  border-radius:999px;
  background:rgba(32,184,117,.12);
  color:#20b875;
  font-size:13px;
  font-weight:800;
}

.pro-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:28px;
}

.pro-metrics div{
  padding:14px 10px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  text-align:center;
}

.pro-metrics strong{
  display:block;
  color:#20b875;
  font-size:20px;
  margin-bottom:5px;
}

.pro-metrics span{
  font-size:12px;
  opacity:.72;
}

.pro-timeline{
  margin-top:28px;
}

.pro-timeline h4{
  color:#d4af37;
  margin-bottom:18px;
}

.pro-timeline div{
  display:flex;
  gap:14px;
  align-items:center;
  margin-bottom:14px;
}

.pro-timeline div span{
  min-width:32px;
  height:32px;
  border-radius:50%;
  background:#14844b;
  display:grid;
  place-items:center;
  font-weight:900;
}

.pro-timeline div p{
  opacity:.82;
  line-height:1.5;
}

.pro-card-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:28px;
  padding:16px;
  border-radius:16px;
  background:linear-gradient(135deg,#20b875,#14844b);
  color:white;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 18px 40px rgba(32,184,117,.18);
}


/* =========================
   BARBERSHOPS SECTION
========================= */

.shop-section{

  width:min(1500px,calc(100% - 80px));

  margin:80px auto 120px;

  padding:90px 70px;

  border-radius:36px;

  background:
  radial-gradient(
    circle at top left,
    rgba(212,175,55,.08),
    transparent 35%
  ),
  linear-gradient(
    135deg,
    rgba(8,18,14,.96),
    rgba(3,3,3,.98)
  );

  border:
  1px solid rgba(212,175,55,.16);

  box-shadow:
  0 35px 100px rgba(0,0,0,.38);
}

.shop-header{

  max-width:900px;

  margin-bottom:60px;
}

.shop-header span{

  color:#20b875;

  font-weight:900;

  text-transform:uppercase;

  letter-spacing:.8px;
}

.shop-header h2{

  font-size:56px;

  line-height:1.08;

  margin:18px 0 22px;
}

.shop-header p{

  font-size:19px;

  line-height:1.75;

  opacity:.82;
}

.shop-content{

  display:grid;

  grid-template-columns:1fr 430px;

  gap:40px;
}

.shop-benefits{

  display:grid;

  grid-template-columns:repeat(2,1fr);

  gap:22px;
}

.shop-card{

  padding:30px;

  border-radius:28px;

  background:
  rgba(255,255,255,.04);

  border:
  1px solid rgba(255,255,255,.06);

  transition:.3s ease;
}

.shop-card:hover{

  transform:translateY(-5px);

  border-color:
  rgba(212,175,55,.26);

  background:
  rgba(255,255,255,.06);
}

.shop-card strong{

  display:inline-flex;

  margin-bottom:26px;

  color:#d4af37;

  font-size:14px;

  letter-spacing:.8px;
}

.shop-card h3{

  font-size:24px;

  margin-bottom:14px;
}

.shop-card p{

  line-height:1.7;

  opacity:.78;
}

.shop-dashboard{

  padding:32px;

  border-radius:32px;

  background:
  rgba(5,10,8,.72);

  border:
  1px solid rgba(212,175,55,.22);

  backdrop-filter:blur(18px);

  box-shadow:
  0 24px 70px rgba(0,0,0,.35);
}

.dashboard-top{

  display:flex;

  align-items:center;

  justify-content:space-between;

  margin-bottom:28px;
}

.dashboard-label{

  color:#20b875;

  font-size:12px;

  font-weight:900;

  text-transform:uppercase;
}

.dashboard-top h3{

  margin-top:8px;

  font-size:26px;
}

.dashboard-status{

  padding:10px 14px;

  border-radius:999px;

  background:
  rgba(32,184,117,.12);

  color:#20b875;

  font-size:13px;

  font-weight:800;
}

.dashboard-metrics{

  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:12px;

  margin-bottom:28px;
}

.dashboard-metrics div{

  padding:16px;

  border-radius:18px;

  background:
  rgba(255,255,255,.04);

  text-align:center;
}

.dashboard-metrics strong{

  display:block;

  color:#20b875;

  font-size:20px;

  margin-bottom:6px;
}

.dashboard-metrics span{

  font-size:12px;

  opacity:.72;
}

.dashboard-list{

  margin-bottom:28px;
}

.dashboard-list h4{

  color:#d4af37;

  margin-bottom:18px;
}

.dashboard-user{

  display:flex;

  gap:14px;

  align-items:center;

  padding:14px 0;

  border-bottom:
  1px solid rgba(255,255,255,.05);
}

.dashboard-user img{

  width:52px;
  height:52px;

  border-radius:50%;

  object-fit:cover;
}

.dashboard-user strong{

  display:block;

  margin-bottom:5px;
}

.dashboard-user span{

  opacity:.72;

  font-size:13px;
}

.dashboard-flow{

  margin-top:28px;
}

.dashboard-flow h4{

  color:#d4af37;

  margin-bottom:18px;
}

.dashboard-flow div{

  display:flex;

  gap:14px;

  align-items:center;

  margin-bottom:14px;
}

.dashboard-flow div span{

  min-width:32px;
  height:32px;

  border-radius:50%;

  background:#14844b;

  display:grid;

  place-items:center;

  font-weight:900;
}

.dashboard-flow div p{

  opacity:.82;

  line-height:1.5;
}

.dashboard-btn{

  display:flex;

  align-items:center;
  justify-content:center;

  margin-top:30px;

  padding:18px;

  border-radius:16px;

  background:
  linear-gradient(
    135deg,
    #20b875,
    #14844b
  );

  color:white;

  text-decoration:none;

  font-weight:900;

  box-shadow:
  0 18px 40px rgba(32,184,117,.18);
}


/* =========================
   MOTION BANNER
========================= */

.motion-banner{

  width:100%;

  min-height:560px;

  margin:90px 0;

  position:relative;

  overflow:hidden;

  border-radius:0;

  border-top:
  1px solid rgba(212,175,55,.18);

  border-bottom:
  1px solid rgba(212,175,55,.18);

  background:#050505;

  box-shadow:
  0 35px 100px rgba(0,0,0,.45);
}

.motion-banner-bg{
  position:absolute;
  inset:-40px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.38)),
    url("../assets/barbearias/barbea-10.jpg") center/cover;
  transform:scale(1.08);
  transition:transform .2s linear;
  will-change:transform;
}

.motion-banner-content{

  position:relative;

  z-index:2;

  width:min(1500px,calc(100% - 80px));

  margin:auto;

  min-height:560px;

  display:flex;

  flex-direction:column;

  justify-content:center;

  align-items:flex-start;
}

.motion-banner-content span{
  color:#20b875;
  font-weight:900;
  letter-spacing:.9px;
  text-transform:uppercase;
}

.motion-banner-content h2{
  font-size:58px;
  line-height:1.08;
  margin:20px 0 24px;
}

.motion-banner-content p{
  font-size:20px;
  line-height:1.7;
  opacity:.82;
  margin-bottom:34px;
}

.motion-banner-btn{
  display:inline-flex;
  padding:18px 30px;
  border-radius:16px;
  background:linear-gradient(135deg,#d4af37,#f3d77b);
  color:#050505;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 18px 42px rgba(212,175,55,.22);
}

@media(max-width:1050px){
  .motion-banner{
  width:100%;
  border-radius:0;
  margin:60px 0;
}

  .motion-banner-content{

  width:calc(100% - 48px);

  min-height:460px;
}

  .motion-banner-content h2{
    font-size:36px;
  }

  .motion-banner-content p{
    font-size:16px;
  }
}


/* =========================
   PARTNER SECTION
========================= */

.partner-mosaic{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  grid-template-rows:auto auto;
  gap:24px;
}

.partner-feature{
  min-height:260px;
  padding:34px;
  border-radius:30px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.07);
  position:relative;
  overflow:hidden;
  transition:.3s ease;
}

.partner-feature::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-90px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(32,184,117,.16),transparent 70%);
}

.partner-feature:hover{
  transform:translateY(-5px);
  border-color:rgba(212,175,55,.28);
}

.partner-feature.large{
  grid-row:span 2;
  min-height:548px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.92)),
    url("../assets/parceiros/perfum-01.jpg") center/cover;
}

.partner-feature.gold{
  background:
    radial-gradient(circle at top right,rgba(212,175,55,.22),transparent 35%),
    linear-gradient(145deg,rgba(20,14,4,.85),rgba(4,4,4,.95));
}

.partner-feature span,
.partner-strip span{
  color:#20b875;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
}

.partner-feature.gold span{
  color:#d4af37;
}

.partner-feature h3{
  position:relative;
  z-index:2;
  font-size:30px;
  line-height:1.18;
  margin:18px 0 14px;
}

.partner-feature.large h3{
  font-size:46px;
}

.partner-feature p{
  position:relative;
  z-index:2;
  line-height:1.75;
  opacity:.82;
  max-width:650px;
}

.partner-strip{
  grid-column:1 / -1;
  padding:34px;
  border-radius:30px;
  background:rgba(5,10,8,.75);
  border:1px solid rgba(212,175,55,.18);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}

.partner-strip h3{
  font-size:30px;
  line-height:1.22;
  margin-top:12px;
}

.partner-btn{

  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-width:220px;

  padding:18px 28px;

  border-radius:18px;

  background:
  linear-gradient(
    135deg,
    #d4af37,
    #f3d77b
  );

  color:#050505;

  text-decoration:none;

  font-weight:900;

  font-size:15px;

  letter-spacing:.3px;

  box-shadow:
  0 18px 42px rgba(212,175,55,.18);

  transition:.28s ease;
}

.partner-btn:hover{

  transform:translateY(-3px);

  box-shadow:
  0 26px 60px rgba(212,175,55,.28);
}

/* =========================
   INVESTOR SECTION
========================= */

.investor-section{

  width:min(1500px,calc(100% - 80px));

  margin:90px auto 120px;

  padding:90px 70px;

  border-radius:36px;

  background:
  radial-gradient(
    circle at top left,
    rgba(32,184,117,.08),
    transparent 35%
  ),
  linear-gradient(
    135deg,
    rgba(8,18,14,.96),
    rgba(3,3,3,.98)
  );

  border:
  1px solid rgba(212,175,55,.16);

  box-shadow:
  0 35px 100px rgba(0,0,0,.38);
}

.investor-header{

  max-width:950px;

  margin-bottom:60px;
}

.investor-header span{

  color:#20b875;

  font-weight:900;

  text-transform:uppercase;

  letter-spacing:.8px;
}

.investor-header h2{

  font-size:58px;

  line-height:1.08;

  margin:18px 0 24px;
}

.investor-header p{

  font-size:19px;

  line-height:1.75;

  opacity:.82;
}

.investor-grid{

  display:grid;

  grid-template-columns:
  1.2fr 1fr 1fr;

  gap:24px;

  margin-bottom:40px;
}

.investor-highlight{

  position:relative;

  overflow:hidden;

  border-radius:32px;

  min-height:420px;

  background:
  linear-gradient(
    180deg,
    rgba(0,0,0,.25),
    rgba(0,0,0,.92)
  ),
  url("../assets/investidor/invest-01.jpg")
  center/cover;

  grid-row:span 2;
}

.investor-overlay{

  position:absolute;
  inset:0;

  background:
  linear-gradient(
    180deg,
    transparent,
    rgba(0,0,0,.72)
  );
}

.investor-highlight-content{

  position:absolute;

  z-index:2;

  left:34px;
  right:34px;
  bottom:34px;
}

.investor-highlight-content span{

  color:#20b875;

  font-weight:900;

  text-transform:uppercase;

  font-size:13px;
}

.investor-highlight-content h3{

  font-size:40px;

  line-height:1.1;

  margin:18px 0;
}

.investor-highlight-content p{

  line-height:1.7;

  opacity:.82;
}

.investor-card{

  padding:30px;

  border-radius:30px;

  background:
  rgba(255,255,255,.04);

  border:
  1px solid rgba(255,255,255,.06);

  transition:.3s ease;
}

.investor-card:hover{

  transform:translateY(-5px);

  border-color:
  rgba(212,175,55,.28);
}

.investor-card strong{

  display:inline-flex;

  margin-bottom:24px;

  color:#d4af37;

  font-size:14px;

  letter-spacing:.8px;
}

.investor-card h3{

  font-size:24px;

  margin-bottom:14px;
}

.investor-card p{

  line-height:1.7;

  opacity:.78;
}

.investor-metrics{

  display:grid;

  grid-template-columns:repeat(4,1fr);

  gap:20px;

  margin-top:24px;
}

.investor-metric{

  padding:26px;

  border-radius:24px;

  background:
  rgba(255,255,255,.04);

  border:
  1px solid rgba(255,255,255,.06);
}

.investor-metric strong{

  display:block;

  color:#20b875;

  font-size:28px;

  margin-bottom:12px;
}

.investor-metric span{

  opacity:.78;

  line-height:1.5;
}

.investor-cta{

  margin-top:50px;

  padding:34px;

  border-radius:30px;

  background:
  rgba(5,10,8,.72);

  border:
  1px solid rgba(212,175,55,.18);

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:30px;
}

.investor-cta span{

  color:#20b875;

  font-size:13px;

  font-weight:900;

  text-transform:uppercase;
}

.investor-cta h3{

  font-size:34px;

  line-height:1.2;

  margin-top:14px;

  max-width:850px;
}

.investor-btn{

  min-width:220px;

  display:inline-flex;

  align-items:center;
  justify-content:center;

  padding:18px 28px;

  border-radius:18px;

  background:
  linear-gradient(
    135deg,
    #d4af37,
    #f3d77b
  );

  color:#050505;

  text-decoration:none;

  font-weight:900;

  box-shadow:
  0 18px 42px rgba(212,175,55,.18);

  transition:.28s ease;
}

.investor-btn:hover{

  transform:translateY(-3px);
}

.investor-chart-card{
  margin-top:40px;
  padding:34px;
  border-radius:32px;
  background:rgba(5,10,8,.78);
  border:1px solid rgba(212,175,55,.18);
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:40px;
  align-items:center;
}

.investor-chart-info span{
  color:#20b875;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
}

.investor-chart-info h3{
  font-size:34px;
  line-height:1.18;
  margin:14px 0;
}

.investor-chart-info p{
  line-height:1.7;
  opacity:.8;
}

.simple-chart{
  height:300px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding:30px 20px 20px;
  border-radius:26px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.06);
}

.chart-bar{
  flex:1;
  min-height:40px;
  border-radius:18px 18px 8px 8px;
  background:linear-gradient(180deg,#20b875,#116b42);
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:28px;
  transition:.35s ease;
}

.chart-bar:hover{
  transform:translateY(-6px);
}

.chart-bar strong{
  position:absolute;
  top:-28px;
  font-size:13px;
  color:#d4af37;
  white-space:nowrap;
}

.chart-bar span{
  position:absolute;
  bottom:8px;
  font-size:12px;
  font-weight:900;
}

.investor-chart-card small{
  grid-column:1 / -1;
  opacity:.55;
  line-height:1.5;
}


/* =========================
   ABOUT SECTION
========================= */

.about-section{

  width:min(1500px,calc(100% - 80px));

  margin:90px auto 120px;

  padding:90px 70px;

  border-radius:36px;

  background:
  radial-gradient(
    circle at top right,
    rgba(32,184,117,.08),
    transparent 36%
  ),
  linear-gradient(
    135deg,
    rgba(8,18,14,.96),
    rgba(3,3,3,.98)
  );

  border:
  1px solid rgba(212,175,55,.16);

  box-shadow:
  0 35px 100px rgba(0,0,0,.38);
}

.about-grid{

  display:grid;

  grid-template-columns:1.2fr .8fr;

  gap:50px;

  align-items:start;
}

.about-badge{

  display:inline-flex;

  padding:10px 18px;

  border-radius:999px;

  background:
  rgba(32,184,117,.12);

  border:
  1px solid rgba(32,184,117,.22);

  color:#20b875;

  font-size:13px;

  font-weight:900;

  letter-spacing:.8px;

  margin-bottom:26px;
}

.about-left h2{

  font-size:58px;

  line-height:1.08;

  margin-bottom:28px;
}

.about-left p{

  font-size:18px;

  line-height:1.8;

  opacity:.82;

  margin-bottom:22px;

  max-width:760px;
}

.about-right{

  display:flex;

  flex-direction:column;

  gap:22px;
}

.about-card{

  padding:30px;

  border-radius:28px;

  background:
  rgba(255,255,255,.04);

  border:
  1px solid rgba(255,255,255,.06);

  transition:.3s ease;
}

.about-card:hover{

  transform:translateY(-5px);

  border-color:
  rgba(212,175,55,.28);
}

.about-card strong{

  display:block;

  color:#d4af37;

  font-size:22px;

  margin-bottom:16px;
}

.about-card p{

  line-height:1.7;

  opacity:.8;
}

/* =========================
   FOOTER
========================= */

/* =========================
   FOOTER PREMIUM COMPACTO
========================= */

.footer{
  width:calc(100% - 80px);
  max-width:1500px;
  margin:90px auto 30px;
  padding:28px 34px;

  border-radius:28px;
  border:1px solid rgba(212,175,55,.20);

  background:rgba(5,10,8,.62);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);

  box-shadow:0 22px 70px rgba(0,0,0,.35);
}

.footer-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
}

.footer-brand{
  display:flex;
  align-items:center;
  gap:18px;
  max-width:420px;
}

.footer-logo{
  height:62px;
  width:auto;
  object-fit:contain;
}

.footer-brand p{
  font-size:14px;
  line-height:1.5;
  opacity:.72;
}

.footer-links{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:46px;
}

.footer-links div{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.footer-links strong{
  color:#d4af37;
  font-size:14px;
  margin-bottom:6px;
}

.footer-links a{
  color:white;
  text-decoration:none;
  opacity:.72;
  font-size:13px;
  transition:.25s ease;
}

.footer-links a:hover{
  opacity:1;
  color:#20b875;
}

.footer-bottom{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.06);

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;

  font-size:13px;
  opacity:.58;
}

/* =========================
   CTA SECTION
========================= */

.cta-section{

  position:relative;

  width:min(1500px,calc(100% - 80px));

  margin:40px auto 120px;

  overflow:hidden;

  border-radius:36px;

  padding:90px 70px;

  background:
  linear-gradient(
    135deg,
    rgba(8,18,14,.96),
    rgba(3,3,3,.98)
  );

  border:
  1px solid rgba(212,175,55,.18);

  box-shadow:
  0 35px 100px rgba(0,0,0,.42);
}

.cta-section::before{

  content:"";

  position:absolute;

  top:-220px;
  right:-220px;

  width:520px;
  height:520px;

  border-radius:50%;

  background:
  radial-gradient(
    circle,
    rgba(32,184,117,.18),
    transparent 70%
  );
}

.cta-overlay{

  position:absolute;
  inset:0;

  background:
  linear-gradient(
    90deg,
    rgba(0,0,0,.12),
    transparent
  );
}

.cta-content{

  position:relative;

  z-index:2;

  max-width:900px;
}

.cta-badge{

  display:inline-flex;

  align-items:center;
  justify-content:center;

  padding:10px 18px;

  border-radius:999px;

  background:
  rgba(32,184,117,.12);

  border:
  1px solid rgba(32,184,117,.22);

  color:#20b875;

  font-size:13px;

  font-weight:900;

  letter-spacing:.8px;

  margin-bottom:26px;
}

.cta-content h2{

  font-size:58px;

  line-height:1.08;

  margin-bottom:24px;
}

.cta-content p{

  font-size:20px;

  line-height:1.8;

  max-width:760px;

  opacity:.82;

  margin-bottom:38px;
}

.cta-buttons{

  display:flex;

  gap:18px;

  flex-wrap:wrap;
}

.cta-btn{

  display:inline-flex;

  align-items:center;
  justify-content:center;

  padding:18px 30px;

  border-radius:16px;

  text-decoration:none;

  font-weight:900;

  transition:.25s ease;
}

.cta-btn.primary{

  background:
  linear-gradient(
    135deg,
    #20b875,
    #14844b
  );

  color:white;

  box-shadow:
  0 18px 40px rgba(32,184,117,.22);
}

.cta-btn.primary:hover{

  transform:translateY(-3px);
}

.cta-btn.secondary{

  border:
  1px solid rgba(212,175,55,.32);

  color:white;

  background:
  rgba(255,255,255,.03);
}

.cta-btn.secondary:hover{

  background:
  rgba(212,175,55,.08);
}


/* =========================
   TOPBAR
========================= */

.topbar{
  position:fixed;
  top:18px;
  left:50%;
  transform:translateX(-50%);
  width:calc(100% - 80px);
  height:88px;
  padding:0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(5,10,8,.62);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(212,175,55,.22);
  border-radius:24px;
  z-index:9999;
}

.brand{
  display:flex;
  align-items:center;
  text-decoration:none;
}

.brand-logo{
  height:72px;
  width:auto;
  object-fit:contain;
}

/* =========================
   MENU
========================= */

.menu{
  display:flex;
  align-items:center;
  gap:28px;
}

.menu a{
  color:white;
  text-decoration:none;
  font-weight:700;
  opacity:.9;
  transition:.25s ease;
}

.menu a:hover{
  color:#20b875;
  opacity:1;
}

/* =========================
   BUTTONS
========================= */

.actions{
  display:flex;
  align-items:center;
  gap:14px;
}

.btn{
  padding:10px 18px;
  border-radius:10px;
  text-decoration:none;
  font-weight:800;
  font-size:14px;
  transition:.25s ease;
}

.btn-outline{
  border:1px solid #d4af37;
  color:white;
  background:rgba(255,255,255,.03);
}

.btn-outline:hover{
  background:rgba(212,175,55,.12);
}

.btn-green{
  background:#14844b;
  color:white;
}

.btn-green:hover{
  background:#20b875;
}

.hero-btn{
  padding:18px 28px;
  border-radius:14px;
  text-decoration:none;
  font-weight:800;
  transition:.25s ease;
}

.hero-btn.green{
  background:#16854a;
  color:white;
}

.hero-btn.dark{
  border:1px solid #d4af37;
  color:white;
  background:rgba(0,0,0,.35);
}

.hero-btn:hover{
  transform:translateY(-2px);
}

/* =========================
   HERO
========================= */

.hero{
  min-height:760px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.45)),
    url("../assets/hero.jpg") center/cover;
  padding:180px 70px 80px;
}

.hero-content{
  display:grid;
  grid-template-columns:1fr 360px;
  gap:60px;
  align-items:center;
}

.hero-tag{
  color:#20b875;
  font-weight:800;
}

.hero h1{
  font-size:68px;
  line-height:1.08;
  max-width:700px;
  margin-top:18px;
}

.hero-description{
  max-width:620px;
  margin-top:24px;
  line-height:1.7;
  font-size:20px;
}

.hero-buttons{
  display:flex;
  gap:18px;
  margin-top:35px;
}

/* =========================
   HERO CARD
========================= */

.hero-card{
  padding:30px;
  border-radius:26px;
  background:rgba(5,12,9,.72);
  border:1px solid rgba(212,175,55,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.hero-card .brand-logo{
  height:70px;
  margin-bottom:22px;
}

.hero-card h3{
  margin-bottom:10px;
}

.hero-card h2{
  color:#20b875;
  margin:14px 0;
}

.hero-card p{
  line-height:1.7;
  opacity:.85;
}

/* =========================
   BANNER
========================= */

.ad-slider{
  width:min(1600px,calc(100% - 80px));
  height:500px;
  margin:50px auto;
  position:relative;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(212,175,55,.28);
  background:#050505;
  box-shadow:0 28px 90px rgba(0,0,0,.45);
}

.ad-track{
  position:relative;
  width:100%;
  height:100%;
}

.ad-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  background-size:cover;
  background-color:#050505;
  background-position:center;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.02);
  transition:opacity .8s ease,transform 1.2s ease;
}

.ad-slide.active{
  opacity:1;
  transform:scale(1);
  z-index:2;
}

.ad-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.68) 42%,rgba(0,0,0,.22) 100%);
}

.ad-content{
  position:relative;
  z-index:3;
  height:100%;
  max-width:620px;
  padding:70px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}

.ad-content span{
  color:#20b875;
  font-weight:900;
  letter-spacing:.8px;
  text-transform:uppercase;
  margin-bottom:16px;
}

.ad-content h2{
  font-size:46px;
  line-height:1.08;
  margin-bottom:18px;
  color:#fff;
}

.ad-content p{
  font-size:18px;
  line-height:1.55;
  color:rgba(255,255,255,.82);
  margin-bottom:28px;
}

.ad-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:15px 26px;
  border-radius:14px;
  background:linear-gradient(135deg,#d4af37,#f3d77b);
  color:#050505;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 16px 36px rgba(212,175,55,.22);
  transition:.25s ease;
}

.ad-btn:hover{
  transform:translateY(-2px);
}

.ad-dots{
  position:absolute;
  z-index:5;
  left:70px;
  bottom:38px;
  display:flex;
  gap:10px;
}

.ad-dot{
  width:10px;
  height:10px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.42);
  cursor:pointer;
}

.ad-dot.active{
  width:30px;
  border-radius:999px;
  background:#d4af37;
}

/* =========================
   NUMBERS
========================= */

.numbers{
  padding:60px;
}

.numbers-card{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.number-item{
  padding:28px;
  border-radius:20px;
  background:#0d0d0d;
  border:1px solid rgba(212,175,55,.12);
}

.number-item h2{
  color:#20b875;
  margin-bottom:10px;
}

/* =========================
   CLIENT MODAL
========================= */

.client-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.75);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:99999;
}

.client-modal.active{
  display:flex;
}

.client-modal-content{
  width:100%;
  max-width:620px;
  background:#09110d;
  border-radius:28px;
  padding:32px;
  border:1px solid rgba(212,175,55,.18);
  position:relative;
}

.close-client{
  position:absolute;
  top:18px;
  right:22px;
  width:40px;
  height:40px;
  border-radius:50%;
  border:0;
  background:#111;
  color:white;
  font-size:24px;
  cursor:pointer;
}

.client-header{
  display:flex;
  gap:20px;
  align-items:center;
  margin-bottom:25px;
}

.client-header img{
  width:90px;
  height:90px;
  border-radius:50%;
  object-fit:cover;
}

.client-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.client-grid div{
  background:rgba(255,255,255,.05);
  padding:18px;
  border-radius:18px;
}

.comments{
  margin-top:24px;
}

.comments h3{
  color:#d4af37;
  margin-bottom:10px;
}

.comments p{
  margin-bottom:10px;
  background:rgba(255,255,255,.05);
  padding:14px;
  border-radius:14px;
}

/* =========================
   MENU TOGGLE
========================= */

.menu-toggle{
  display:none;
}

/* =========================
   MEDIA QUERY MOBILE
========================= */

@media(max-width:1050px){

  .topbar{
    width:calc(100% - 24px);
    padding:12px 16px;
    height:auto;
    flex-wrap:wrap;
  }

  .brand-logo{
    height:58px;
  }

  .menu-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.22);
    background:rgba(255,255,255,.04);
    color:white;
    font-size:22px;
  }

  .menu{
    display:none;
    width:100%;
    flex-direction:column;
    gap:18px;
    margin-top:18px;
    padding:20px;
    border-radius:18px;
    background:rgba(8,12,10,.94);
  }

  .menu.active{
    display:flex;
  }

  .actions{
    display:none;
    width:100%;
    flex-direction:column;
    gap:12px;
    margin-top:16px;
  }

  .actions.active{
    display:flex;
  }

  .hero{
    padding:220px 25px 80px;
  }

  .hero-content{
    grid-template-columns:1fr;
  }

  .hero h1{
    font-size:44px;
  }

  .hero-buttons{
    flex-direction:column;
  }

  .ad-slider{
    width:calc(100% - 24px);
    height:420px;
    border-radius:22px;
    margin:35px auto;
  }

  .ad-content{
    padding:34px 24px 70px;
    max-width:100%;
  }

  .ad-content h2{
    font-size:32px;
  }

  .ad-content p{
    font-size:16px;
  }

  .ad-dots{
    left:24px;
    bottom:28px;
  }

  .numbers{
    padding:40px 24px;
  }

  .numbers-card{
    grid-template-columns:1fr;
  }

  .clients{
    padding:80px 24px;
  }

  .section-title h2{
    font-size:34px;
  }

  .clients-grid{
    grid-template-columns:1fr;
  }

.client-info{
  grid-template-columns:1fr;
}

  .client-header{
    flex-direction:column;
    text-align:center;
  }

}
.cta-section{

  width:calc(100% - 24px);

  padding:60px 24px;

  border-radius:26px;

  margin:20px auto 90px;
}

.cta-content h2{

  font-size:38px;
}

.cta-content p{

  font-size:16px;

  line-height:1.7;
}

.cta-buttons{

  flex-direction:column;
}

.cta-btn{

  width:100%;
}

.pro-section{
  width:calc(100% - 24px);
  padding:60px 24px;
  border-radius:26px;
  margin:60px auto 90px;
}

.pro-header h2{
  font-size:36px;
}

.pro-header p{
  font-size:16px;
}

.pro-content{
  grid-template-columns:1fr;
}

.pro-benefits{
  grid-template-columns:1fr;
}

.pro-profile-card{
  padding:24px;
}

.pro-metrics{
  grid-template-columns:repeat(3,1fr);
}

.shop-section{

  width:calc(100% - 24px);

  padding:60px 24px;

  border-radius:26px;

  margin:60px auto 90px;
}

.shop-header h2{

  font-size:36px;
}

.shop-header p{

  font-size:16px;
}

.shop-content{

  grid-template-columns:1fr;
}

.shop-benefits{

  grid-template-columns:1fr;
}

.dashboard-metrics{

  grid-template-columns:repeat(3,1fr);
}

.partner-section{
  width:calc(100% - 24px);
  padding:60px 24px;
  border-radius:26px;
  margin:60px auto 90px;
}

.partner-header h2{
  font-size:36px;
}

.partner-header p{
  font-size:16px;
}

.partner-grid{
  grid-template-columns:1fr;
}

.partner-opportunity{
  flex-direction:column;
  align-items:flex-start;
  padding:26px;
}

.partner-opportunity h3{
  font-size:26px;
}

.partner-btn{
  width:100%;
}

.partner-mosaic{
  grid-template-columns:1fr;
}

.partner-feature.large{
  min-height:420px;
}

.partner-feature.large h3{
  font-size:34px;
}

.partner-feature h3{
  font-size:26px;
}

.partner-strip{
  flex-direction:column;
  align-items:flex-start;
}

.partner-strip h3{
  font-size:26px;
}

.partner-btn{

  width:100%;
}
.investor-section{

  width:calc(100% - 24px);

  padding:60px 24px;

  border-radius:26px;

  margin:60px auto 90px;
}

.investor-header h2{

  font-size:38px;
}

.investor-header p{

  font-size:16px;
}

.investor-grid{

  grid-template-columns:1fr;
}

.investor-highlight{

  min-height:420px;

  grid-row:auto;
}

.investor-highlight-content h3{

  font-size:32px;
}

.investor-metrics{

  grid-template-columns:1fr;
}

.investor-cta{

  flex-direction:column;

  align-items:flex-start;
}

.investor-cta h3{

  font-size:28px;
}

.investor-btn{

  width:100%;
}

.investor-chart-card{
  grid-template-columns:1fr;
  padding:26px;
}

.simple-chart{
  height:260px;
  gap:8px;
  padding:28px 12px 18px;
}

.chart-bar strong{
  font-size:11px;
}

.about-section{

  width:calc(100% - 24px);

  padding:60px 24px;

  border-radius:26px;

  margin:60px auto 90px;
}

.about-grid{

  grid-template-columns:1fr;
}

.about-left h2{

  font-size:38px;
}

.about-left p{

  font-size:16px;
}

.footer{
  width:calc(100% - 24px);
  margin:60px auto 24px;
  padding:24px;
  border-radius:24px;
}

.footer-top{
  flex-direction:column;
  align-items:flex-start;
  gap:28px;
}

.footer-brand{
  width:100%;
}

.footer-logo{
  height:78px;
}

.footer-links{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.footer-bottom{
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
}