/*
 * Camada final da landing.
 * Carregada depois do legado para manter a direção de agência independente
 * da ordem histórica de landing.css.
 */
:root {
  --agency-bg: #080b09;
  --agency-surface: #101510;
  --agency-paper: #edeae1;
  --agency-cream: #f3efe5;
  --agency-accent: #d8c28c;
  --agency-green: #8fa989;
}

body { background: var(--agency-bg); }

.site-header {
  min-height: 74px;
  border-color: rgba(245,239,223,.08);
  background: rgba(8,11,9,.76);
}
.site-logo img.site-logo-official { width: 158px; }
.header-cta {
  border-color: #ddd3b9;
  background: #e8e0cd;
  color: #10130f;
  box-shadow: none;
}
.header-cta:hover { border-color: #fff9eb; background: #fff9eb; box-shadow: none; }

.hero {
  min-height: 900px;
  padding-top: 74px;
  overflow: hidden;
  background: var(--agency-bg);
  isolation: isolate;
}
.hero::before {
  z-index: -1;
  top: 12%;
  right: -15%;
  left: auto;
  width: 70vw;
  height: 80%;
  background: radial-gradient(ellipse at center,rgba(134,159,128,.17),transparent 63%);
}
.hero::after {
  position: absolute;
  z-index: -1;
  inset: 74px 0 0;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size: 72px 72px;
  content: "";
  mask-image: linear-gradient(to bottom,black,transparent 85%);
}
.hero-grid {
  min-height: 760px;
  grid-template-columns: minmax(400px,.82fr) minmax(560px,1.18fr);
  gap: 68px;
  padding: 82px 0 70px;
}
.hero-copy { max-width: none; padding: 0; }
.hero-copy h1 {
  max-width: 680px;
  margin: 28px 0;
  font-size: clamp(58px,5.8vw,88px);
  font-weight: 650;
  line-height: .94;
  letter-spacing: -.065em;
}
.hero-copy h1 em { margin-top: 10px; color: var(--agency-accent); font-weight: 650; }
.hero-copy > p { max-width: 545px; color: #9ba199; font-size: 17px; line-height: 1.7; }
.hero-actions { margin-top: 37px; }
.hero-actions .btn { min-height: 56px; padding: 0 24px; border-radius: 2px; }
.hero-actions .btn-gold,
.final-cta .btn-gold {
  border-color: #e7decb;
  background: #e7decb;
  color: #10130f;
  box-shadow: 0 18px 55px rgba(0,0,0,.25);
}
.hero-actions .btn-gold:hover,
.final-cta .btn-gold:hover { background: #fff; box-shadow: 0 20px 65px rgba(0,0,0,.32); }
.hero-actions .btn-ghost { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.035); }
.hero-proof { display: flex; align-items: center; gap: 13px; margin-top: 34px; }
.proof-pulse {
  position: relative;
  display: block;
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  border: 3px solid #19251b;
  border-radius: 50%;
  background: #78ad83;
  box-shadow: 0 0 0 1px rgba(120,173,131,.45);
}
.proof-pulse::after {
  position: absolute;
  inset: -7px;
  border: 1px solid rgba(120,173,131,.28);
  border-radius: 50%;
  content: "";
  animation: agency-pulse 2.2s ease-out infinite;
}
.hero-proof p,.hero-proof b,.hero-proof small { display: block; margin: 0; }
.hero-proof b { color: #d5d7d1; font-size: 10px; }
.hero-proof small { color: #697068; font-size: 9px; }

.product-visual { perspective: 1600px; transform: translateY(15px); animation: none; }
.real-panel-frame {
  overflow: visible;
  border: 1px solid rgba(239,228,201,.2);
  border-radius: 12px;
  background: #0f120f;
  box-shadow: -24px 40px 100px rgba(0,0,0,.58),25px 18px 80px rgba(74,92,69,.14);
  transform: rotateY(-7deg) rotateX(3deg);
  animation: none;
}
.real-panel-frame > img { border-radius: 0 0 11px 11px; }
.trust-strip { background: rgba(13,16,13,.82); }
.trust-strip .container { grid-template-columns: repeat(4,1fr); }
.trust-strip span { min-height: 84px; }

.product-section { padding: 150px 0; background: var(--agency-paper); color: #11140f; }
.editorial-heading { display: grid; grid-template-columns: 1fr 3fr; margin-bottom: 74px; text-align: left; }
.editorial-heading > div { display: grid; grid-template-columns: 1.6fr .8fr; align-items: end; gap: 70px; }
.editorial-heading h2 { max-width: 760px; margin: 0; font-size: clamp(48px,5.3vw,76px); }
.editorial-heading p { margin: 0 0 5px; }
.bento-grid {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  grid-template-rows: 340px 310px;
  gap: 18px;
}
.bento-card { border-radius: 0; }
.bento-agenda { display: grid; grid-template-columns: .8fr 1.2fr; }
.features-section .section-heading,
.pricing-section .section-intro,
.proof-section .section-intro { text-align: left; }
.section-intro.centered { margin-right: 0; margin-left: 0; }
.how-section { background: #dfe3db; color: #141712; }
.proof-section { background: #0b0f0c; }
.pricing-section { background: #ece9e1; }

.final-cta {
  overflow: hidden;
  padding: 130px 0;
  background: var(--agency-surface);
  color: #f0eee7;
  text-align: left;
}
.final-cta-grid {
  display: grid;
  grid-template-columns: .35fr 1.25fr .4fr;
  align-items: center;
  gap: 50px;
}
.final-cta-copy h2 { max-width: 780px; margin: 0; font-size: clamp(48px,5.2vw,76px); }
.final-cta-copy p { max-width: 620px; margin: 25px 0 0; color: #899087; font-size: 15px; }
.final-actions { display: flex; align-items: center; justify-content: flex-start; gap: 22px; margin-top: 34px; }
.final-plans-link { color: #c4c9c1; }

.site-footer { padding: 44px 0 22px; background: #080b09; }
.footer-top { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 55px; }
.footer-brand img { width: 145px; filter: grayscale(1) brightness(0) invert(1); opacity: .88; }
.footer-top nav { display: flex; gap: 25px; }
.footer-top a,.footer-top button { color: #8f968d; font-size: 10px; }
.footer-bottom { display: grid; grid-template-columns: 1fr auto 1fr; margin-top: 35px; }
.footer-bottom span:last-child { text-align: right; }

@keyframes agency-pulse {
  0% { opacity: .8; transform: scale(.7); }
  100% { opacity: 0; transform: scale(1.45); }
}

@media (max-width: 1050px) {
  .hero-grid { grid-template-columns: 1fr; gap: 70px; padding-top: 90px; }
  .hero-copy { max-width: 780px; }
  .product-visual { width: min(850px,94%); margin: 0 auto; }
  .trust-strip .container { grid-template-columns: repeat(2,1fr); }
  .editorial-heading { grid-template-columns: .4fr 2fr; }
  .editorial-heading > div { grid-template-columns: 1fr; }
  .bento-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .bento-agenda { grid-column: 1/-1; }
  .final-cta-grid { grid-template-columns: .3fr 1.7fr; }
  .final-seal { display: none; }
}

@media (max-width: 820px) {
  .hero { min-height: auto; padding-top: 68px; }
  .hero-grid { gap: 60px; padding: 70px 0 65px; }
  .hero-copy h1 { font-size: clamp(47px,12vw,68px); }
  .hero-copy > p { font-size: 15px; }
  .real-panel-frame { transform: rotateY(-3deg) rotateX(2deg); }
  .trust-strip .container { grid-template-columns: 1fr 1fr; }
  .product-section { padding: 100px 0; }
  .editorial-heading { display: block; margin-bottom: 50px; }
  .editorial-heading .section-index { display: block; margin-bottom: 28px; }
  .editorial-heading > div { display: block; }
  .editorial-heading p { margin-top: 22px; }
  .bento-grid { grid-template-columns: 1fr; }
  .bento-agenda { grid-column: auto; grid-template-columns: 1fr; }
  .final-cta-grid { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-top nav { flex-wrap: wrap; }
  .footer-bottom { grid-template-columns: 1fr; gap: 7px; }
  .footer-bottom span:last-child { text-align: left; }
}

@media (max-width: 520px) {
  .hero-grid { padding-top: 54px; }
  .hero-copy h1 { font-size: clamp(42px,12.2vw,56px); }
  .hero-actions { display: grid; }
  .product-visual { width: 100%; }
  .trust-strip .container { grid-template-columns: 1fr; }
  .trust-strip span { min-height: 67px; }
  .product-section { padding: 84px 0; }
  .editorial-heading h2 { font-size: 42px; }
  .final-cta { padding: 90px 0; }
  .final-cta-copy h2 { font-size: 43px; }
  .final-actions { align-items: stretch; flex-direction: column; }
  .footer-top nav { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .proof-pulse::after { animation: none; }
}

.reveal-pending {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .58s cubic-bezier(.22,.75,.25,1), transform .58s cubic-bezier(.22,.75,.25,1);
}
.reveal-pending.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .reveal-pending { opacity: 1; transform: none; transition: none; }
}

/* “Tudo conectado”: linguagem monocromática, editorial e orientada ao produto. */
.features-section {
  padding-block: clamp(92px,10vw,148px);
  background: #dfe2df;
  color: #121412;
}
.features-section .section-heading {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(280px,.55fr);
  align-items: end;
  gap: clamp(44px,8vw,120px);
  margin-bottom: 62px;
  text-align: left;
}
.features-section .section-intro { max-width: 820px; }
.features-section .section-intro .kicker { color: #555b56; }
.features-section .section-heading h2 { color: #101210; font-size: clamp(47px,5.2vw,74px); line-height: .98; }
.features-section .section-heading > p { max-width: 420px; color: #5e655f; font-size: 15px; line-height: 1.7; }
.features-section .feature-grid { gap: 14px; }
.features-section .feature-card.product-card {
  border: 1px solid #c7cbc7;
  border-radius: 4px;
  background: #f6f7f5;
  color: #141614;
  box-shadow: 0 22px 60px rgba(33,38,34,.09);
}
.features-section .feature-card.product-card:nth-child(even) { background: #eceeeb; }
.features-section .feature-card.product-card::before { display: block; width: 56px; height: 2px; background: #202420; }
.features-section .feature-card.product-card:hover {
  border-color: #979d98;
  box-shadow: 0 30px 75px rgba(33,38,34,.15);
  transform: translateY(-4px);
}
.features-section .feature-copy > span { color: #626863; }
.features-section .feature-copy h3 { color: #111311; }
.features-section .feature-copy p { color: #626863; }
.features-section .feature-icon { border-color: #aeb3af; color: #1e221f; }
.features-section .product-shot {
  border-color: #303531;
  border-radius: 3px;
  background: #171a18;
  box-shadow: 0 22px 52px rgba(24,28,25,.24);
}
.features-section .shot-bar { border-color: #333834; }
.features-section .shot-bar span { color: #f2f3f1; }
.features-section .shot-bar b { color: #8f9590; }
.features-section .shot-bar i { background: #f0f1ef; color: #171a18; }
.features-section .schedule-row { border-color: #303430; }
.features-section .schedule-row time { color: #f1f2f0; }
.features-section .schedule-row img,
.features-section .team-member img { filter: grayscale(1) contrast(1.05); }
.features-section .schedule-row div b,
.features-section .team-member div b,
.features-section .analytics-head b { color: #f0f1ef; }
.features-section .schedule-row div small,
.features-section .team-member div small,
.features-section .team-member > span small { color: #878d88; }
.features-section .schedule-row em,
.features-section .analytics-head > span {
  background: #303531;
  color: #dfe2df;
}
.features-section .messages-shot { background: #171a18; }
.features-section .channel-logo { background: #e8eae7; box-shadow: none; }
.features-section .channel-logo svg { fill: #171a18; }
.features-section .message-bubble { background: #303431; }
.features-section .message-bubble b { color: #f3f4f2; }
.features-section .message-bubble span,
.features-section .message-bubble small { color: #adb2ad; }
.features-section .email-status { border-color: #393e3a; background: #202420; }
.features-section .email-status > svg { stroke: #e1e3e0; }
.features-section .email-status > span { color: #daddda; }
.features-section .team-member { border-color: #343935; }
.features-section .team-member > span strong { color: #f1f2f0; }
.features-section .commission-summary { background: #292d2a; }
.features-section .commission-summary > span { background: #3b403c; }
.features-section .commission-summary svg { stroke: #e4e6e3; }
.features-section .commission-summary small,
.features-section .commission-summary em { color: #aeb3ae; }
.features-section .analytics-head small,
.features-section .analytics-stats small { color: #8d938e; }
.features-section .grid-line { stroke: rgba(255,255,255,.08); }
.features-section .chart-area { fill: rgba(255,255,255,.06); }
.features-section .chart-line { stroke: #f0f1ef; }
.features-section .analytics-stats { border-color: #353a36; }
.features-section .analytics-stats span { background: #242825; }
.features-section .analytics-stats b { color: #e8eae7; }

@media (max-width: 820px) {
  .features-section .section-heading { display: block; margin-bottom: 45px; }
  .features-section .section-heading > p { margin-top: 20px; }
}

/* Fluxo conectado — composição editorial monocromática. */
.legacy-features-section { display: none !important; }

.connected-section {
  position: relative;
  overflow: hidden;
  padding-block: clamp(96px, 11vw, 164px);
  background:
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.92), transparent 32%),
    linear-gradient(135deg, #eef0ed 0%, #e3e6e2 50%, #f4f4f1 100%);
  color: #111411;
  isolation: isolate;
}
.connected-section::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(rgba(20,24,21,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20,24,21,.032) 1px, transparent 1px);
  background-size: 72px 72px;
  content: "";
  mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
}
.connected-shell { position: relative; }
.connected-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .52fr);
  align-items: end;
  gap: clamp(40px, 8vw, 124px);
  margin-bottom: clamp(48px, 6vw, 82px);
}
.connected-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #505650;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .2em;
}
.connected-kicker::before {
  width: 28px;
  height: 1px;
  background: #505650;
  content: "";
}
.connected-heading h2 {
  max-width: 880px;
  margin: 20px 0 0;
  color: #111411;
  font: 650 clamp(48px, 5.8vw, 84px)/.96 var(--display);
  letter-spacing: -.062em;
}
.connected-heading h2 em {
  color: #6a706a;
  font-style: normal;
  font-weight: 560;
}
.connected-heading > p {
  max-width: 390px;
  margin: 0 0 7px;
  color: #555c56;
  font-size: 15px;
  line-height: 1.75;
}
.connected-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.58fr) minmax(280px, .62fr);
  align-items: stretch;
  gap: 16px;
  perspective: 1600px;
}
.flow-stage {
  position: relative;
  min-height: 590px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background:
    radial-gradient(circle at 78% 24%, rgba(219,224,217,.1), transparent 29%),
    linear-gradient(145deg, #1b1f1c, #0d100e 72%);
  box-shadow: 0 42px 90px rgba(28,33,29,.19), inset 0 1px 0 rgba(255,255,255,.06);
  transform: rotateY(1.2deg) rotateX(.35deg);
  transform-origin: left center;
  transition: transform .7s cubic-bezier(.2,.75,.2,1), box-shadow .7s ease;
}
.flow-stage:hover {
  box-shadow: 0 52px 110px rgba(28,33,29,.25), inset 0 1px 0 rgba(255,255,255,.08);
  transform: rotateY(0) rotateX(0) translateY(-4px);
}
.flow-stage::after {
  position: absolute;
  inset: -40% -25%;
  background: linear-gradient(110deg, transparent 42%, rgba(255,255,255,.06) 49%, transparent 56%);
  content: "";
  pointer-events: none;
  transform: translateX(-60%);
  animation: flow-sheen 9s ease-in-out infinite;
}
.flow-stage-top,
.flow-stage-footer {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #858c86;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
}
.flow-stage-top {
  height: 64px;
  padding-inline: 25px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.flow-live { color: #dfe3de; }
.flow-live i,
.flow-stage-footer i {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 7px;
  border-radius: 50%;
  background: #aeb7ae;
  box-shadow: 0 0 0 4px rgba(174,183,174,.09);
}
.flow-canvas {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 462px;
  align-content: center;
  gap: 17px;
  padding: 46px clamp(28px, 5vw, 72px);
}
.flow-canvas::before {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.09) .7px, transparent .7px);
  background-size: 21px 21px;
  content: "";
  opacity: .34;
}
.flow-track {
  position: absolute;
  z-index: 0;
  top: 20%;
  bottom: 20%;
  left: clamp(48px, 7.2vw, 103px);
  width: 1px;
  overflow: hidden;
  background: rgba(255,255,255,.11);
}
.flow-track i {
  position: absolute;
  top: -22%;
  left: 0;
  width: 1px;
  height: 24%;
  background: linear-gradient(transparent, #f5f6f4, transparent);
  animation: flow-signal 3.4s ease-in-out infinite;
}
.flow-node {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 100px;
  grid-template-columns: 34px 46px minmax(0,1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 17px 20px 17px 13px;
  border: 1px solid rgba(255,255,255,.095);
  border-radius: 12px;
  background: rgba(32,37,33,.86);
  box-shadow: 0 16px 35px rgba(0,0,0,.2), inset 0 1px rgba(255,255,255,.04);
  backdrop-filter: blur(14px);
  transition: border-color .3s, background .3s, transform .35s cubic-bezier(.2,.8,.2,1);
}
.flow-node:nth-of-type(3) { margin-left: clamp(16px, 3vw, 46px); }
.flow-node:nth-of-type(4) { margin-left: clamp(34px, 6vw, 92px); }
.flow-node:hover {
  border-color: rgba(255,255,255,.2);
  background: rgba(42,48,43,.94);
  transform: translateX(7px);
}
.flow-step {
  color: #687069;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
}
.flow-avatar,
.flow-date {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  background: #e9ebe7;
  color: #171a18;
  font-size: 12px;
  font-weight: 800;
}
.flow-date {
  align-content: center;
  border-radius: 9px;
  line-height: 1;
}
.flow-date small { font-size: 7px; letter-spacing: .14em; }
.flow-date b { margin-top: 3px; font-size: 17px; }
.flow-node-pro img {
  width: 46px;
  height: 46px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.05);
}
.flow-node > div:nth-child(3) { display: grid; gap: 4px; }
.flow-node > div:nth-child(3) small {
  color: #737a74;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
}
.flow-node > div:nth-child(3) b {
  color: #f3f4f1;
  font-size: 14px;
}
.flow-node > div:nth-child(3) span { color: #8e958f; font-size: 11px; }
.flow-check {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  color: #e9ece8;
  font-size: 12px;
  font-style: normal;
}
.flow-status,
.flow-time {
  padding: 7px 9px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  color: #daddd9;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
}
.flow-time { border: 0; color: #f1f3ef; font-size: 12px; letter-spacing: 0; }
.flow-stage-footer {
  min-height: 64px;
  padding: 0 25px;
  border-top: 1px solid rgba(255,255,255,.07);
}
.flow-stage-footer span { white-space: nowrap; }
.connected-insights {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 16px;
}
.insight-card {
  position: relative;
  overflow: hidden;
  padding: clamp(26px, 3vw, 39px);
  border: 1px solid #cfd3cf;
  border-radius: 18px;
  background: rgba(249,250,248,.78);
  box-shadow: 0 22px 55px rgba(32,37,33,.09), inset 0 1px rgba(255,255,255,.9);
  backdrop-filter: blur(16px);
  transition: transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s;
}
.insight-card:hover {
  box-shadow: 0 30px 70px rgba(32,37,33,.14), inset 0 1px rgba(255,255,255,.9);
  transform: translateY(-5px);
}
.insight-label {
  color: #686f69;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .17em;
}
.insight-value {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  margin: 23px 0 28px;
}
.insight-value strong {
  color: #111411;
  font: 650 clamp(62px, 5vw, 82px)/.78 var(--display);
  letter-spacing: -.07em;
}
.insight-value span {
  color: #424842;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
}
.insight-progress {
  height: 3px;
  overflow: hidden;
  background: #d9ddd9;
}
.insight-progress i {
  display: block;
  width: 78%;
  height: 100%;
  background: #1d211e;
  transform-origin: left;
  animation: insight-grow 1.2s .2s both cubic-bezier(.2,.8,.2,1);
}
.insight-card p {
  max-width: 250px;
  margin: 22px 0 0;
  color: #666d67;
  font-size: 12px;
  line-height: 1.6;
}
.insight-result {
  display: grid;
  align-content: space-between;
  background: #242824;
  color: #f3f4f1;
  box-shadow: 0 25px 60px rgba(28,32,29,.17);
}
.insight-result .insight-label { color: #9ca29c; }
.insight-result > div { display: grid; }
.insight-result strong {
  margin-top: 20px;
  color: #f5f6f3;
  font: 650 clamp(29px, 2.6vw, 42px)/1 var(--display);
  letter-spacing: -.045em;
}
.insight-result small { margin-top: 7px; color: #929892; font-size: 10px; }
.insight-result svg { width: 100%; height: 78px; overflow: visible; }
.insight-grid-line { fill: none; stroke: rgba(255,255,255,.08); stroke-width: 1; }
.insight-line {
  fill: none;
  stroke: #eceeea;
  stroke-width: 2;
  stroke-linecap: round;
  filter: drop-shadow(0 4px 6px rgba(255,255,255,.12));
  stroke-dasharray: 310;
  stroke-dashoffset: 310;
  animation: insight-line 1.5s .3s forwards ease-out;
}
.connected-note {
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 760px;
  margin: 34px 0 0;
  color: #6b716c;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .15em;
}
.connected-note i { height: 1px; flex: 1; background: #c6cac6; }

@keyframes flow-sheen {
  0%, 58%, 100% { transform: translateX(-62%); }
  76% { transform: translateX(62%); }
}
@keyframes flow-signal {
  0% { transform: translateY(0); opacity: 0; }
  15%, 75% { opacity: 1; }
  100% { transform: translateY(510%); opacity: 0; }
}
@keyframes insight-grow {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@keyframes insight-line { to { stroke-dashoffset: 0; } }

@media (max-width: 1050px) {
  .connected-heading { grid-template-columns: 1fr .55fr; gap: 46px; }
  .connected-layout { grid-template-columns: minmax(0,1.4fr) minmax(250px,.6fr); }
  .flow-stage-footer span:nth-child(2) { display: none; }
}
@media (max-width: 820px) {
  .connected-section { padding-block: 90px; }
  .connected-heading { display: block; }
  .connected-heading > p { margin-top: 24px; }
  .connected-layout { grid-template-columns: 1fr; }
  .flow-stage { min-height: 540px; transform: none; }
  .connected-insights { grid-template-columns: 1fr 1fr; grid-template-rows: none; }
}
@media (max-width: 560px) {
  .connected-section { padding-block: 76px; }
  .connected-heading { margin-bottom: 38px; }
  .connected-heading h2 { font-size: clamp(42px, 12vw, 58px); }
  .connected-heading h2 br { display: none; }
  .connected-heading > p { font-size: 14px; }
  .flow-stage { min-height: auto; border-radius: 14px; }
  .flow-stage-top { height: 56px; padding-inline: 17px; }
  .flow-canvas { min-height: 420px; gap: 12px; padding: 30px 14px 30px 18px; }
  .flow-track { left: 37px; }
  .flow-node {
    min-height: 94px;
    grid-template-columns: 25px 40px minmax(0,1fr);
    gap: 10px;
    padding: 14px 12px 14px 8px;
  }
  .flow-node:nth-of-type(3) { margin-left: 9px; }
  .flow-node:nth-of-type(4) { margin-left: 18px; }
  .flow-avatar,
  .flow-date,
  .flow-node-pro img { width: 40px; height: 40px; }
  .flow-check,
  .flow-status,
  .flow-time { display: none; }
  .flow-node > div:nth-child(3) b { font-size: 12px; }
  .flow-node > div:nth-child(3) span { font-size: 9px; }
  .flow-stage-footer { min-height: 57px; justify-content: flex-start; gap: 16px; padding-inline: 17px; }
  .flow-stage-footer span:nth-child(2),
  .flow-stage-footer span:nth-child(3) { display: none; }
  .connected-insights { grid-template-columns: 1fr; }
  .insight-card { min-height: 245px; padding: 29px; }
  .connected-note { gap: 9px; font-size: 7px; letter-spacing: .09em; }
}
@media (prefers-reduced-motion: reduce) {
  .flow-stage,
  .flow-node,
  .insight-card { transition: none; transform: none; }
  .flow-stage::after,
  .flow-track i,
  .insight-progress i,
  .insight-line { animation: none; }
  .insight-line { stroke-dashoffset: 0; }
}

/* Paleta final: neutros dominantes, marfim como luz e bronze só em detalhes. */
:root { --gold: #9a8965; --gold-light: #d8c28c; }
.trust-icon { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.035); color: #d8ddd8; }
.transform-grid article { border-color: #d1d4d0; background: #f4f4f1; box-shadow: 0 14px 38px rgba(32,37,33,.07); }
.transform-grid article > span,
.transform-grid article small,
.transform-grid article i { color: #646b65; }
.transform-grid article::after { background: #a7ada7; }
.proof-grid article > span,
.security-list i,
.faq-list summary span { color: #a9afa9; }
.proof-grid article > span::after { background: #4f5650; }
.security-list article::before { background: linear-gradient(#aeb4ae,transparent 78%); }
.security-list i { border-color: #555c56; }
.faq-list summary span { border-color: #c7cbc7; }
.pricing-section { background: #e7e9e6; }
.price-card { border-color: #ccd0cc; background: #f4f4f1; }
.price-card::before { background: #9a8965; }
.price-card.featured { border-color: #6f756f; background: #171a18; box-shadow: 0 28px 65px rgba(35,40,36,.18); }
.popular { background: #e7e3d8; color: #242724; }
.plan-head > span,
.price-card li::before { color: #626862; }
.plan-head p { color: #656b65; }
.featured .plan-head > span,
.featured li::before { color: #c9cec9; }
.featured button { border-color: #e8e5dc; background: #e8e5dc; color: #151715; }
.featured button:hover { background: #fff; }
.final-cta::after { background: radial-gradient(circle,rgba(216,194,140,.07),transparent 68%); }
.final-orbit { border-color: rgba(255,255,255,.07); }
.final-cta-copy .kicker { color: #a8aea8; }
.final-cta-copy .kicker i { background: #d8c28c; box-shadow: none; }
.final-trust span::first-letter { color: inherit; }

/* Plano Profissional: destaque frio e sofisticado, sem retornar ao amarelo forte. */
.price-card.featured {
  border-color: #52645f;
  background:
    radial-gradient(circle at 84% 8%,rgba(159,190,179,.13),transparent 32%),
    linear-gradient(145deg,#26332f 0%,#1b2421 48%,#151a18 100%);
  box-shadow: 0 28px 70px rgba(22,42,35,.24);
}
.price-card.featured::before { background: #9db8ae; }
.price-card.featured .popular {
  border: 1px solid #839c93;
  background: #dce7e2;
  color: #1c2925;
}
.featured .plan-head > span,
.featured li::before { color: #b7cec5; }
.featured .plan-price strong { color: #f8f6ef; }
.featured .plan-price small,
.featured .plan-price > span,
.featured .plan-head p,
.featured li { color: #b7c1bc; }
.featured button {
  border-color: #e9e6dc;
  background: #e9e6dc;
  color: #17211e;
}
.featured button:hover { border-color: #fff; background: #fff; }

/* O painel inteiro rola em qualquer ponto, no mouse, trackpad ou toque. */
.auth-panel {
  align-items: start;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.auth-context {
  position: sticky;
  top: 0;
  height: min(860px,calc(100dvh - 48px));
}
.auth-content {
  min-height: 100%;
  overflow: visible;
}

@media (max-width: 820px) {
  .auth-content { min-height: 0; }
}

@media (max-width: 520px) {
  .auth-panel {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
  }
  .auth-content {
    height: auto;
    min-height: 100%;
    overflow: visible;
  }
}

/* Encerramento com linguagem visual de barbearia, sem órbitas genéricas. */
.final-cta {
  padding: clamp(88px,9vw,136px) 0;
  background:
    linear-gradient(105deg,rgba(7,10,8,.99),rgba(12,17,13,.97) 58%,rgba(23,31,26,.96)),
    url('/assets/barber-hero.webp') center / cover no-repeat;
}
.final-cta::before {
  background:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(90deg,#000,rgba(0,0,0,.45) 74%,transparent);
}
.final-cta::after,
.final-orbit,
.final-seal { display: none; }
.final-cta-grid {
  grid-template-columns: minmax(0,.92fr) minmax(430px,1.08fr);
  gap: clamp(52px,8vw,118px);
}
.final-cta-copy h2 {
  max-width: 690px;
  margin-top: 23px;
  font-size: clamp(50px,5.4vw,78px);
  line-height: .96;
  letter-spacing: -.062em;
}
.final-cta-copy p { max-width: 580px; color: #a2aaa2; font-size: 16px; }
.barber-tools {
  position: relative;
  display: grid;
  min-height: 510px;
  grid-template-columns: repeat(3,1fr);
  align-items: end;
  gap: 12px;
  padding: 76px 20px 20px;
  border: 1px solid rgba(255,255,255,.1);
  background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
    rgba(9,13,10,.64);
  background-size: 40px 40px;
  box-shadow: 0 34px 80px rgba(0,0,0,.34);
  backdrop-filter: blur(14px);
  perspective: 1000px;
}
.barber-tools::before {
  position: absolute;
  top: 55px;
  right: 8%;
  left: 8%;
  height: 1px;
  background: linear-gradient(90deg,transparent,#d8c28c,transparent);
  content: "";
}
.barber-tools-head {
  position: absolute;
  top: 19px;
  right: 20px;
  left: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.barber-tools-head span { color: #d8c28c; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.barber-tools-head small { color: #687168; font-size: 9px; }
.barber-tool {
  position: relative;
  display: flex;
  min-height: 370px;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: 20px 15px 17px;
  border: 1px solid rgba(255,255,255,.09);
  background: linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.012));
  transform: rotateY(-5deg) translateY(0);
  transition: transform .35s ease,border-color .35s ease,background .35s ease;
}
.barber-tool:nth-child(3) { transform: translateY(-22px); }
.barber-tool:nth-child(4) { transform: rotateY(5deg) translateY(-7px); }
.barber-tool:hover {
  border-color: rgba(216,194,140,.38);
  background: linear-gradient(155deg,rgba(216,194,140,.09),rgba(255,255,255,.018));
  transform: translateY(-10px);
}
.barber-tool svg {
  width: 100%;
  height: 245px;
  fill: none;
  stroke: #d8ddd8;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 15px 22px rgba(0,0,0,.34));
}
.barber-tool span { display: flex; align-items: center; gap: 10px; color: #c5cbc5; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.barber-tool span b { color: #778078; font-size: 8px; letter-spacing: .12em; }

/* Rodapé SaaS: confiança primeiro, navegação clara e excelente leitura móvel. */
.site-footer { padding: 0 0 22px; border-color: rgba(255,255,255,.08); background: #070a08; }
.footer-trust {
  display: grid;
  grid-template-columns: minmax(190px,.75fr) minmax(0,2.25fr);
  gap: 42px;
  padding-top: 34px;
  padding-bottom: 34px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.footer-trust-title span { color: #d8c28c; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.footer-trust-title p { margin: 8px 0 0; color: #697169; font-size: 11px; }
.footer-trust-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; }
.trust-badge {
  display: flex;
  min-width: 0;
  min-height: 66px;
  align-items: center;
  gap: 11px;
  padding: 11px 12px;
  border: 1px solid rgba(255,255,255,.09);
  background: rgba(255,255,255,.025);
}
.trust-badge > i { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border: 1px solid rgba(216,194,140,.2); color: #c9d0ca; }
.trust-badge svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.trust-badge > span { min-width: 0; }
.trust-badge small,.trust-badge b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.trust-badge small { color: #666e67; font-size: 7px; font-weight: 800; letter-spacing: .12em; }
.trust-badge b { margin-top: 3px; color: #cdd2cd; font-size: 10px; }
.footer-main {
  display: grid;
  grid-template-columns: 1.25fr .62fr .72fr 1fr;
  align-items: start;
  gap: clamp(32px,5vw,76px);
  padding-top: 48px;
  padding-bottom: 42px;
}
.footer-brand img { width: 158px; }
.footer-brand p { max-width: 285px; margin: 13px 0 17px; color: #778078; font-size: 11px; line-height: 1.65; }
.footer-brand > span { display: inline-flex; align-items: center; gap: 8px; color: #788078; font-size: 9px; font-weight: 700; }
.footer-brand > span i { width: 7px; height: 7px; border-radius: 50%; background: #56b477; box-shadow: 0 0 0 4px rgba(86,180,119,.1); }
.footer-main nav { display: grid; align-content: start; gap: 11px; }
.footer-main nav strong { margin-bottom: 5px; color: #d0d5d0; font-size: 9px; letter-spacing: .14em; }
.footer-main nav a { color: #747d75; font-size: 10px; text-decoration: none; transition: color .2s ease; }
.footer-main nav a:hover { color: #e5e7e3; }
.footer-access { padding: 20px; border: 1px solid rgba(255,255,255,.09); background: #0e1310; }
.footer-access > span { color: #788178; font-size: 8px; font-weight: 800; letter-spacing: .13em; }
.footer-access > b { display: block; margin-top: 8px; color: #e0e3df; font-size: 13px; }
.footer-access button {
  display: flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding: 0 13px;
  border: 1px solid #dcd7ca;
  background: #dcd7ca;
  color: #171b18;
  font-size: 10px;
  font-weight: 800;
}
.footer-access button:hover { background: #fff; }
.footer-bottom {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  margin-top: 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.08);
}

@media (max-width: 1050px) {
  .footer-trust { grid-template-columns: 1fr; gap: 20px; }
  .footer-trust-grid { grid-template-columns: repeat(2,1fr); }
  .footer-main { grid-template-columns: 1.2fr .7fr .8fr; }
  .footer-access { grid-column: 1/-1; }
}

@media (max-width: 820px) {
  .final-cta-grid { grid-template-columns: 1fr; }
  .barber-tools { min-height: 430px; }
  .barber-tool { min-height: 305px; }
  .barber-tool svg { height: 200px; }
  .footer-main { grid-template-columns: 1.1fr 1fr 1fr; gap: 32px; }
}

@media (max-width: 580px) {
  .final-cta { padding: 76px 0 64px; }
  .final-cta-copy h2 { max-width: 360px; font-size: clamp(42px,13vw,56px); }
  .final-cta-copy p { font-size: 15px; }
  .barber-tools {
    min-height: 0;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 6px;
    padding: 69px 8px 8px;
  }
  .barber-tools-head { right: 12px; left: 12px; }
  .barber-tool,
  .barber-tool:nth-child(3),
  .barber-tool:nth-child(4) {
    min-height: 225px;
    padding: 10px 7px 12px;
    transform: none;
  }
  .barber-tool svg { height: 155px; stroke-width: 2.4; }
  .barber-tool span { display: grid; gap: 2px; font-size: 8px; }
  .footer-trust { padding-top: 28px; padding-bottom: 28px; }
  .footer-trust-grid { grid-template-columns: 1fr 1fr; gap: 7px; }
  .trust-badge { min-height: 64px; gap: 9px; padding: 9px; }
  .trust-badge > i { width: 29px; height: 29px; flex-basis: 29px; }
  .trust-badge b { font-size: 9px; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 34px 22px; padding-top: 38px; padding-bottom: 34px; }
  .footer-brand { grid-column: 1/-1; }
  .footer-brand img { width: 150px; }
  .footer-brand p { max-width: 310px; font-size: 12px; }
  .footer-main nav strong { font-size: 10px; }
  .footer-main nav a { min-height: 30px; font-size: 11px; }
  .footer-access { grid-column: 1/-1; padding: 18px; }
  .footer-access button { min-height: 48px; font-size: 11px; }
  .footer-bottom { grid-template-columns: 1fr; gap: 8px; padding-top: 18px; }
  .footer-bottom span:last-child { text-align: left; }
}

@media (max-width: 380px) {
  .footer-trust-grid { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: 1fr; }
  .footer-brand,.footer-access { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .barber-tool { transition: none; }
}

/* Versão final do encerramento: produto real e marcas oficiais coloridas. */
.barber-tools { display: none !important; }
.final-product-preview {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  background: #0b0f0c;
  box-shadow: 0 38px 95px rgba(0,0,0,.46);
  transform: perspective(1200px) rotateY(-4deg) rotateX(2deg);
}
.final-product-preview::after {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: inherit;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  content: "";
  pointer-events: none;
}
.final-product-bar {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 17px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #8b938c;
  font-size: 8px;
  letter-spacing: .13em;
}
.final-product-bar > span { display: flex; gap: 5px; }
.final-product-bar > span i { width: 6px; height: 6px; border-radius: 50%; background: #394039; }
.final-product-bar em { display: inline-flex; align-items: center; gap: 7px; color: #879087; font-style: normal; }
.final-product-bar em i { width: 6px; height: 6px; border-radius: 50%; background: #48bb72; box-shadow: 0 0 0 4px rgba(72,187,114,.12); }
.final-product-preview > img { display: block; width: 100%; height: auto; opacity: .9; }
.final-product-caption {
  position: absolute;
  right: 17px;
  bottom: 17px;
  left: 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(8,11,9,.82);
  backdrop-filter: blur(12px);
}
.final-product-caption span { color: #8d958e; font-size: 9px; }
.final-product-caption b { color: #f0eee7; font-size: 11px; }
.footer-trust { display: block; }
.footer-trust-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.trust-badge {
  appearance: none;
  color: inherit;
  font: inherit;
  text-decoration: none;
}
.trust-badge > b { color: #e4e7e3; font-size: 11px; font-weight: 700; white-space: nowrap; }
.trust-badge:hover { border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.045); }
.trust-google { cursor: pointer; }
.google-provider-logo { border-color: #dadce0 !important; background: #fff; }
.google-provider-logo svg { width: 20px; height: 20px; stroke: none; }
.trust-stripe { justify-content: center; background: #f6f4ff; }
.trust-stripe:hover { background: #fff; }
.trust-stripe img { display: block; width: 112px; height: auto; }
.trust-whatsapp > i { border: 0; background: transparent; }
.trust-whatsapp > i svg { width: 31px; height: 31px; stroke: none; }
.trust-https > i { border-color: rgba(81,177,116,.34); background: rgba(81,177,116,.1); color: #65c487; }

@media (max-width: 820px) {
  .final-product-preview { width: min(720px,100%); transform: none; }
  .footer-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 580px) {
  .final-product-bar { min-height: 42px; padding-inline: 12px; }
  .final-product-bar b { font-size: 7px; }
  .final-product-caption { position: static; border-width: 1px 0 0; }
  .footer-trust-grid { grid-template-columns: 1fr; }
  .trust-badge { min-height: 62px; padding-inline: 15px; }
  .trust-stripe { justify-content: flex-start; }
  .trust-stripe img { width: 116px; }
}

/* Faixa de confiança: uma assinatura contínua, não uma coleção de cards. */
.footer-trust {
  display: grid;
  grid-template-columns: minmax(190px,.72fr) minmax(0,2.28fr);
  align-items: center;
  gap: clamp(28px,4vw,64px);
  padding-top: 30px;
  padding-bottom: 30px;
}
.footer-trust-copy span {
  color: #d8c28c;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .16em;
}
.footer-trust-copy p {
  max-width: 230px;
  margin: 7px 0 0;
  color: #747c75;
  font-size: 11px;
  line-height: 1.55;
}
.footer-trust-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 0;
  min-height: 58px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.085);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
  overflow: hidden;
}
.trust-badge {
  min-width: 0;
  min-height: 58px;
  padding: 10px clamp(12px,1.4vw,20px);
  border: 0;
  border-radius: 0;
  background: transparent;
}
.trust-badge + .trust-badge { border-left: 1px solid rgba(255,255,255,.075); }
.trust-badge:hover { border-color: rgba(255,255,255,.075); background: rgba(255,255,255,.035); }
.trust-badge > i {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 0;
  background: transparent;
}
.trust-badge > span { min-width: 0; }
.trust-badge small {
  display: block;
  margin-bottom: 4px;
  color: #646c65;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .13em;
  line-height: 1;
}
.trust-badge b,
.trust-badge > b {
  display: block;
  overflow: hidden;
  color: #e4e7e3;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.google-provider-logo {
  width: 26px !important;
  height: 26px !important;
  border: 0 !important;
  border-radius: 6px;
  background: #fff;
}
.google-provider-logo svg { width: 17px; height: 17px; }
.trust-stripe {
  justify-content: flex-start;
  background: transparent;
}
.trust-stripe:hover { background: rgba(255,255,255,.035); }
.trust-stripe img { width: 94px; }
.trust-whatsapp > i svg { width: 27px; height: 27px; }
.trust-https > i {
  border: 1px solid rgba(81,177,116,.28);
  border-radius: 7px;
  background: rgba(81,177,116,.075);
}

@media (max-width: 1050px) {
  .footer-trust { grid-template-columns: 1fr; gap: 18px; }
  .footer-trust-copy p { max-width: none; }
}

@media (max-width: 720px) {
  .footer-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .trust-badge:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.075); }
  .trust-badge:nth-child(4) { border-top: 1px solid rgba(255,255,255,.075); }
}

@media (max-width: 420px) {
  .footer-trust { padding-top: 25px; padding-bottom: 25px; }
  .footer-trust-grid { grid-template-columns: 1fr; border-radius: 12px; }
  .trust-badge { min-height: 55px; padding-inline: 14px; }
  .trust-badge + .trust-badge,
  .trust-badge:nth-child(3) { border-top: 1px solid rgba(255,255,255,.075); border-left: 0; }
}

/* Encerramento definitivo: simples, direto e sem imagens ou ornamentos. */
.final-cta {
  min-height: 0;
  padding: clamp(82px,9vw,126px) 0;
  background: #0b0f0c;
}
.final-cta::before,
.final-cta::after,
.final-product-preview { display: none !important; }
.final-cta-grid {
  display: block;
  width: min(1180px,calc(100% - 40px));
}
.final-cta-copy {
  display: grid;
  max-width: 820px;
  justify-items: start;
}
.final-cta-copy h2 {
  max-width: 790px;
  margin: 24px 0 20px;
  font-size: clamp(48px,5.7vw,80px);
  line-height: .98;
  letter-spacing: -.06em;
}
.final-cta-copy p {
  max-width: 560px;
  margin: 0;
  color: #9aa29a;
  font-size: 16px;
}
.final-actions { margin-top: 32px; }

@media (max-width: 580px) {
  .final-cta { padding: 70px 0; }
  .final-cta-grid { width: min(100% - 32px,1180px); }
  .final-cta-copy h2 {
    max-width: 340px;
    font-size: clamp(40px,12vw,52px);
    line-height: 1;
  }
  .final-cta-copy p { max-width: 330px; font-size: 15px; }
}

/* Instalação do PWA: prompt nativo no Android e orientação guiada no iOS. */
.hero-actions .btn-install-app {
  min-height: 56px;
  gap: 10px;
  border: 1px solid rgba(216,194,140,.48);
  border-radius: 2px;
  background: rgba(216,194,140,.08);
  color: #f3e7c7;
}
.btn-install-app svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.hero-actions .btn-install-app:hover,
.hero-actions .btn-install-app.install-ready {
  border-color: #d8c28c;
  background: #d8c28c;
  color: #111411;
}
.hero-actions .btn-install-app.is-installed {
  border-color: rgba(127,181,139,.48);
  background: rgba(74,130,87,.13);
  color: #c8e5ce;
}
.pwa-install-dialog {
  width: min(92vw,480px);
  padding: 0;
  border: 1px solid rgba(216,194,140,.36);
  border-radius: 18px;
  background: #111512;
  color: #f2f0e9;
  box-shadow: 0 28px 90px rgba(0,0,0,.55);
}
.pwa-install-dialog::backdrop { background: rgba(3,6,4,.76); backdrop-filter: blur(6px); }
.pwa-install-dialog form { padding: 26px; }
.pwa-install-dialog header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px;
}
.pwa-install-icon {
  display: grid;
  width: 58px;
  height: 58px;
  overflow: hidden;
  place-items: center;
  border-radius: 15px;
  background: #0b0f0c;
}
.pwa-install-icon img { width: 54px; height: 54px; object-fit: cover; }
.pwa-install-dialog header small { color: #a99362; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.pwa-install-dialog h2 { margin: 4px 0 0; font-size: 24px; letter-spacing: -.03em; }
.pwa-install-close {
  display: grid;
  width: 38px;
  height: 38px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  background: transparent;
  color: #d9ddd7;
  font-size: 25px;
}
.pwa-install-dialog p { margin: 0 0 16px; color: #c7ccc5; line-height: 1.6; }
.pwa-install-dialog ol { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; counter-reset: install-step; }
.pwa-install-dialog li {
  counter-increment: install-step;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  min-height: 46px;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  background: rgba(255,255,255,.035);
  color: #d8dcd5;
}
.pwa-install-dialog li::before {
  content: counter(install-step);
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 50%;
  background: #d8c28c;
  color: #111411;
  font-size: 11px;
  font-weight: 900;
}
.ios-share-symbol { margin-left: 5px; color: #d8c28c; font-weight: 800; }
.pwa-install-done {
  width: 100%;
  min-height: 48px;
  margin-top: 22px;
  border: 0;
  border-radius: 8px;
  background: #e5d3a5;
  color: #111411;
  font-weight: 850;
}

@media (max-width: 580px) {
  .hero-actions .btn-install-app { width: 100%; }
  .pwa-install-dialog form { padding: 21px; }
  .pwa-install-dialog h2 { font-size: 21px; }
}

/* Conversão: produto em primeiro plano e onboarding progressivo. */
.hero-atmosphere,.visual-orbit { display:none!important; }
.hero-microcopy { margin:16px 0 0; color:#a9ac9e; font-size:12px; line-height:1.5; }
.trust-strip .container { grid-template-columns:repeat(5,1fr); }
.comparison-section { background:#f4f1e8; }
.comparison-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:38px; }
.comparison-grid article { padding:34px; border:1px solid #ded8ca; background:#fffdf8; }
.comparison-grid article > span,.demo-panel span,.recommended-plan > span { color:#8f6d2b; font-size:11px; font-weight:800; letter-spacing:.12em; }
.comparison-grid ul { display:grid; gap:15px; margin:24px 0 0; padding:0; list-style:none; color:#555a51; }
.comparison-grid li { padding-left:20px; position:relative; }
.comparison-grid li::before { position:absolute; left:0; content:'—'; color:#9c7b37; }
.comparison-grid .comparison-positive { background:#121611; color:#f8f4e9; border-color:#282d25; }
.comparison-positive ul { color:#d6d8cf; }
.demo-section { background:#111510; }
.demo-section .section-intro h2,.demo-section .section-intro p { color:#f5f1e8; }
.demo-tabs { display:flex; justify-content:center; gap:8px; margin:30px 0 22px; overflow:auto; }
.demo-tabs button { flex:0 0 auto; padding:11px 19px; border:1px solid rgba(229,216,181,.23); background:transparent; color:#c8c8bd; font:700 12px var(--sans); cursor:pointer; }
.demo-tabs button[aria-selected="true"] { border-color:#c89f4c; background:#c89f4c; color:#161711; }
.demo-panel { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr); gap:34px; align-items:center; padding:22px; border:1px solid rgba(239,224,189,.14); background:#161b15; animation:demo-fade .25s ease; }
.demo-panel img { width:100%; aspect-ratio:16/9; object-fit:cover; border:1px solid rgba(239,224,189,.16); }
.demo-panel div { padding:8px; }
.demo-panel h3 { margin:12px 0; color:#f7f2e7; font:600 clamp(23px,2.8vw,38px)/1.05 var(--display); }
.demo-panel p { margin:0; color:#b9bcb1; line-height:1.65; }
.social-proof-section { background:#f7f4ed; text-align:center; }
.social-proof { max-width:720px; }
.social-proof h2 { margin:14px 0; color:#20231e; font:600 clamp(29px,4vw,48px)/1.08 var(--display); }
.social-proof p { color:#676b62; line-height:1.7; }
.app-section { background:#101510; }
.app-section-grid { display:flex; align-items:center; justify-content:space-between; gap:32px; padding-block:72px; }
.app-section h2 { margin:12px 0; color:#f5f1e9; font:600 clamp(28px,4vw,46px)/1.08 var(--display); }
.app-section p { max-width:620px; margin:0; color:#b7bbb0; }
.team-size-picker { display:grid; gap:10px; margin:0 0 20px; border:0; padding:0; }
.team-size-picker legend { margin-bottom:10px; color:#454940; font-weight:700; }
.team-size-picker label { display:flex; align-items:center; gap:12px; padding:15px; border:1px solid #dedbd2; cursor:pointer; }
.team-size-picker label:has(input:checked) { border-color:#b98b32; background:#fbf7ed; }
.team-size-picker input { accent-color:#b98b32; }
.team-size-picker b,.team-size-picker small { display:block; }
.team-size-picker small { margin-top:3px; color:#74786e; }
.recommended-plan { margin:0 0 18px; padding:17px; border:1px solid #d8c490; background:#fdf9ed; }
.recommended-plan > div { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-top:8px; }
.recommended-plan b { color:#292b25; font:600 23px var(--display); }
.recommended-plan strong { color:#71541f; font-size:14px; }
.recommended-plan p { margin:8px 0; color:#60655a; font-size:12px; }
.recommended-plan button { padding:0; border:0; background:transparent; color:#765719; font-weight:700; text-decoration:underline; cursor:pointer; }
@keyframes demo-fade { from { opacity:.45; transform:translateY(5px); } to { opacity:1; transform:none; } }
@media (max-width:820px) { .trust-strip .container { grid-template-columns:1fr; } .comparison-grid,.demo-panel { grid-template-columns:1fr; } .demo-panel { gap:18px; padding:14px; } .demo-tabs { justify-content:flex-start; padding-bottom:2px; } .app-section-grid { display:grid; padding-block:54px; } .app-section-grid .btn { width:100%; } }
@media (max-width:520px) { .comparison-grid article { padding:24px 20px; } .demo-panel h3 { font-size:27px; } .recommended-plan > div { align-items:flex-start; flex-direction:column; gap:4px; } }

/* Premium mobile showcase and final header refinements */
:root {
  --agency-bg: #070906;
  --agency-surface: #0d120e;
  --agency-paper: #f1ede3;
  --agency-cream: #f7f3ea;
  --agency-accent: #d6b86f;
  --agency-green: #214b3e;
}

@media (min-width: 981px) {
  .site-header {
    top: 16px;
    right: 24px;
    left: 24px;
    width: min(1320px, calc(100% - 48px));
    min-height: 68px;
    margin-inline: auto;
    padding: 0 22px;
    border: 1px solid rgba(226,204,151,.16);
    border-radius: 18px;
    background: rgba(7,10,8,.9);
    box-shadow: 0 18px 55px rgba(0,0,0,.26);
    backdrop-filter: blur(20px);
  }
  .site-nav { gap: 28px; }
  .site-nav a { color: #b8b9b0; letter-spacing: .02em; }
  .header-actions { gap: 10px; }
  .header-cta { min-height: 42px; border-radius: 10px; background: #d6b86f; }
}

.showcase-section {
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 15%, rgba(214,184,111,.13), transparent 29%),
    radial-gradient(circle at 15% 55%, rgba(33,75,62,.24), transparent 34%),
    #070906;
  color: #f5f0e4;
}
.showcase-heading { max-width: 850px; padding-bottom: 72px; text-align: center; }
.showcase-heading .kicker { color: #d6b86f; }
.showcase-heading h2 {
  margin: 18px 0;
  color: #f7f1e5;
  font: 600 clamp(44px,6vw,82px)/.98 var(--display);
  letter-spacing: -.055em;
}
.showcase-heading p { max-width: 650px; margin: 0 auto; color: #999f96; font-size: 16px; line-height: 1.7; }
.showcase-list { display: grid; gap: 24px; }
.showcase-item {
  position: relative;
  display: grid;
  min-height: 680px;
  grid-template-columns: minmax(280px,.72fr) minmax(420px,1.28fr);
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(226,204,151,.14);
  border-radius: 32px;
  background: linear-gradient(135deg,rgba(19,26,21,.96),rgba(8,11,9,.98));
  box-shadow: inset 0 1px rgba(255,255,255,.04), 0 38px 90px rgba(0,0,0,.24);
}
.showcase-item.reverse { grid-template-columns: minmax(420px,1.28fr) minmax(280px,.72fr); }
.showcase-item.reverse .showcase-copy { order: 2; }
.showcase-item.reverse figure { order: 1; }
.showcase-copy { position: relative; z-index: 2; padding: clamp(40px,6vw,88px); }
.showcase-copy span { color: #d6b86f; font: 700 13px var(--sans); letter-spacing: .18em; }
.showcase-copy h3 { margin: 20px 0 16px; color: #fbf5e9; font: 600 clamp(42px,5vw,72px)/.95 var(--display); letter-spacing: -.045em; }
.showcase-copy p { max-width: 390px; margin: 0; color: #aeb2aa; font-size: clamp(16px,1.6vw,21px); line-height: 1.55; }
.showcase-item figure { height: 680px; margin: 0; overflow: hidden; }
.showcase-item figure::after { position: absolute; inset: 0; pointer-events: none; content: ""; box-shadow: inset 0 0 90px rgba(0,0,0,.12); }
.showcase-item img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.93) contrast(1.03); }

.footer-access { border-color: rgba(214,184,111,.18); background: linear-gradient(145deg,#111812,#0b0f0c); }
.footer-access button { background: #d6b86f; color: #10120f; }
.footer-bottom { border-color: rgba(214,184,111,.12); }

@media (max-width: 820px) {
  .dashboard-frame.real-panel-frame { max-width: 390px; margin-inline: auto; border: 0; background: transparent; box-shadow: none; }
  .real-panel-frame .frame-top,
  .real-panel-frame .glass-stat,
  .product-caption { display: none; }
  .real-panel-frame picture { display: block; overflow: hidden; border-radius: 28px; }
  .real-panel-frame picture img { display: block; width: 100%; height: auto; aspect-ratio: 2/3; object-fit: cover; object-position: center; }
  .product-visual { transform: none; }
  .showcase-heading { padding-bottom: 42px; text-align: left; }
  .showcase-heading h2 { font-size: clamp(40px,12vw,58px); }
  .showcase-heading p { margin: 0; }
  .showcase-list { gap: 16px; }
  .showcase-item,
  .showcase-item.reverse {
    min-height: 0;
    grid-template-columns: 1fr;
    border-radius: 24px;
  }
  .showcase-item.reverse .showcase-copy,
  .showcase-item.reverse figure { order: initial; }
  .showcase-copy { padding: 32px 26px 24px; }
  .showcase-copy h3 { margin: 12px 0 9px; font-size: 43px; }
  .showcase-copy p { font-size: 16px; }
  .showcase-item figure { height: auto; aspect-ratio: 2/3; }
  .showcase-item img { object-position: center; }
}

@media (max-width: 520px) {
  .site-header { min-height: 64px; background: rgba(7,10,8,.94); }
  .site-logo img.site-logo-official { width: 132px; }
  .hero { padding-top: 64px; }
  .hero-grid { gap: 42px; }
  .showcase-section { padding-block: 78px; }
  .showcase-item figure { aspect-ratio: 4/5; }
  .showcase-item img { object-position: center 42%; }
}

/* Landing oficial: celulares 3D transparentes e cadastro estabilizado. */
.hero-phone-visual{position:relative;display:grid;min-height:700px;place-items:center;perspective:1200px}
.hero-phone-glow{position:absolute;width:min(72%,520px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(214,184,111,.22),rgba(33,75,62,.12) 45%,transparent 72%);filter:blur(12px)}
.hero-phone-3d{position:relative;width:min(100%,520px);height:auto;filter:drop-shadow(0 42px 45px rgba(0,0,0,.48));transform:rotateY(-7deg) rotateZ(1.5deg);animation:phone-float 5s ease-in-out infinite}
.hero-phone-visual .product-caption{position:absolute;bottom:18px;left:50%;width:max-content;max-width:100%;transform:translateX(-50%)}
@keyframes phone-float{0%,100%{transform:rotateY(-7deg) rotateZ(1.5deg) translateY(0)}50%{transform:rotateY(-4deg) rotateZ(.5deg) translateY(-16px)}}

.showcase-heading{max-width:920px;padding-bottom:54px}
.showcase-heading h2{max-width:820px;margin-inline:auto;text-wrap:balance}
.showcase-heading p{font-size:clamp(16px,1.6vw,20px);text-wrap:balance}
.showcase-list{gap:28px}
.showcase-item,.showcase-item.reverse{min-height:590px;grid-template-columns:minmax(280px,.78fr) minmax(360px,1.22fr);overflow:visible}
.showcase-item.reverse{grid-template-columns:minmax(360px,1.22fr) minmax(280px,.78fr)}
.showcase-item figure{position:relative;display:grid;height:590px;place-items:center;overflow:visible;margin:0}
.showcase-item figure::before{position:absolute;width:68%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(214,184,111,.16),transparent 68%);content:"";filter:blur(8px)}
.showcase-item figure::after{display:none}
.showcase-item img{position:relative;width:auto;max-width:92%;height:540px;object-fit:contain;object-position:center;filter:drop-shadow(0 32px 36px rgba(0,0,0,.46));animation:showcase-phone-float-left 6.4s ease-in-out infinite;will-change:transform}
.showcase-item.reverse img{animation-name:showcase-phone-float-right}
.showcase-item:nth-child(2) img{animation-delay:-2.1s}.showcase-item:nth-child(3) img{animation-delay:-4.3s}.showcase-item:nth-child(4) img{animation-delay:-1.2s}.showcase-item:nth-child(5) img{animation-delay:-3.4s}
@keyframes showcase-phone-float-left{0%,100%{transform:rotateY(-5deg) translate3d(0,0,0)}50%{transform:rotateY(-2deg) translate3d(0,-18px,0)}}
@keyframes showcase-phone-float-right{0%,100%{transform:rotateY(5deg) translate3d(0,0,0)}50%{transform:rotateY(2deg) translate3d(0,-18px,0)}}
@keyframes showcase-phone-float-mobile{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-12px,0)}}

.team-size-picker label{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:14px;min-height:78px;padding:16px 18px}
.team-size-picker input[type="radio"]{display:block!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0!important;padding:0!important;appearance:auto!important;accent-color:#b98b32}
.team-size-picker label>span{min-width:0}

@media(max-width:980px){.hero-phone-visual{min-height:620px}.hero-phone-3d{width:min(76vw,470px)}.showcase-item,.showcase-item.reverse{grid-template-columns:1fr;overflow:hidden}.showcase-item.reverse .showcase-copy,.showcase-item.reverse figure{order:initial}.showcase-item figure{height:540px}.showcase-item img{height:500px;animation-name:showcase-phone-float-mobile}}
@media(max-width:580px){.hero-phone-visual{min-height:500px}.hero-phone-3d{width:min(92vw,370px)}.hero-phone-visual .product-caption{bottom:0}.showcase-heading{padding-bottom:38px}.showcase-heading h2{font-size:clamp(38px,12vw,54px)}.showcase-item,.showcase-item.reverse{min-height:0;border-radius:22px}.showcase-copy{padding:28px 22px 18px}.showcase-copy h3{font-size:40px}.showcase-item figure{height:450px;aspect-ratio:auto}.showcase-item img{width:auto;max-width:94%;height:420px;object-fit:contain}}
@media(prefers-reduced-motion:reduce){.hero-phone-3d,.showcase-item img{animation:none}}

/* Comparação compacta: título visível e sem vazio excessivo. */
.comparison-section{padding-block:72px 78px}
.comparison-section .section-intro.centered{max-width:820px;margin:0 auto 30px;text-align:center}
.comparison-section .section-intro h2{margin:12px auto 0;color:#171a15;font-size:clamp(36px,4.5vw,60px);line-height:1.02;text-wrap:balance}
.comparison-section .comparison-grid{margin-top:0}
@media(max-width:820px){.comparison-section{padding-block:58px}.comparison-section .section-intro.centered{margin-bottom:24px;text-align:left}.comparison-section .section-intro h2{margin-left:0;font-size:clamp(34px,9vw,48px)}}
