/* =========================================================
   PG ENTERPRISES — Black Finance · Executive Premium
   Tokens, temas de seção, componentes e responsividade
   ========================================================= */

/* ---------- TOKENS ---------- */
:root{
  --black-exec:#0B0B0C;
  --black-graphite:#171719;
  --gold-inst:#C99A3E;
  --gold-premium:#E5B95C;
  --champagne:#F1D99A;
  --silver:#C7C7C7;
  --white:#F5F5F3;
  --gold-deep:#8A6218;

  --font-head:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --container:1180px;
  --radius:16px;
  --ease:cubic-bezier(.16,.8,.3,1);
}

/* ---------- TEMAS DE SEÇÃO ----------
   Cada seção define as próprias variáveis; os componentes só leem var(--*). */
:root,.theme-dark{
  --bg:#0B0B0C;--fg:#E4E4E1;--heading:#F5F5F3;--muted:#C7C7C7;
  --card:#171719;--line:rgba(199,199,199,.14);--line-strong:rgba(201,154,62,.45);
  --accent:#E5B95C;--accent-strong:#C99A3E;
}
.theme-graphite{
  --bg:#171719;--fg:#E4E4E1;--heading:#F5F5F3;--muted:#C7C7C7;
  --card:#0B0B0C;--line:rgba(199,199,199,.14);--line-strong:rgba(201,154,62,.45);
  --accent:#E5B95C;--accent-strong:#C99A3E;
}
.theme-light{
  --bg:#F5F5F3;--fg:#2B2B2E;--heading:#0B0B0C;--muted:#55555B;
  --card:#FFFFFF;--line:rgba(11,11,12,.1);--line-strong:rgba(138,98,24,.5);
  --accent:#8A6218;--accent-strong:#B8862F;
}
.theme-white{
  --bg:#FFFFFF;--fg:#2B2B2E;--heading:#0B0B0C;--muted:#55555B;
  --card:#F5F5F3;--line:rgba(11,11,12,.1);--line-strong:rgba(138,98,24,.5);
  --accent:#8A6218;--accent-strong:#B8862F;
}
.theme-gold{
  --bg:#E5B95C;--fg:#2A1F08;--heading:#0B0B0C;--muted:#3A2C0C;
  --card:rgba(255,255,255,.28);--line:rgba(11,11,12,.22);--line-strong:rgba(11,11,12,.5);
  --accent:#0B0B0C;--accent-strong:#0B0B0C;
  background:linear-gradient(135deg,#F1D99A 0%,#E5B95C 48%,#CFA047 100%);
}
.inverse{
  --bg:#0B0B0C;--fg:#E4E4E1;--heading:#F5F5F3;--muted:#C7C7C7;
  --card:#171719;--line:rgba(199,199,199,.14);--line-strong:rgba(201,154,62,.45);
  --accent:#E5B95C;--accent-strong:#C99A3E;
  background:var(--bg);color:var(--fg);
}

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;}
body{
  background:var(--black-exec);color:#E4E4E1;
  font-family:var(--font-body);line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
html.nav-open body{overflow:hidden;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button{font-family:inherit;cursor:pointer;}
input,select,textarea{font-family:inherit;}
address{font-style:normal;}
/* Links de âncora abrem direto na seção (sem rolagem animada), como as páginas de serviço.
   A seção encosta no topo e o respiro interno (padding) deixa o título logo abaixo do cabeçalho fixo. */
section[id],header[id]{scroll-margin-top:0;}
section[id]:target > .container{animation:sectionIn .55s var(--ease) both;}
@keyframes sectionIn{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
:focus-visible{outline:2px solid var(--gold-premium);outline-offset:3px;}
.theme-light :focus-visible,.theme-white :focus-visible{outline-color:var(--gold-deep);}

.skip-link{position:absolute;left:-999px;top:0;background:var(--gold-inst);color:#0B0B0C;padding:12px 20px;z-index:999;font-weight:700;}
.skip-link:focus{left:12px;top:12px;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

.container{max-width:var(--container);margin:0 auto;padding:0 24px;}

/* ---------- TIPOGRAFIA ---------- */
.eyebrow{
  display:flex;align-items:center;gap:12px;
  font-family:var(--font-body);text-transform:uppercase;letter-spacing:.18em;
  font-size:.74rem;font-weight:700;color:var(--accent);margin-bottom:18px;
}
.eyebrow::before{content:'';width:28px;height:1px;background:currentColor;flex-shrink:0;}
.h2{
  font-family:var(--font-head);font-weight:700;color:var(--heading);
  font-size:clamp(1.75rem,3.3vw,2.6rem);line-height:1.2;letter-spacing:-.01em;
  max-width:860px;margin-bottom:20px;
}
.h3{font-family:var(--font-head);font-weight:700;color:var(--heading);font-size:1.15rem;line-height:1.3;}
.gold{color:var(--accent);}
.lead{font-size:clamp(1rem,1.35vw,1.12rem);color:var(--muted);max-width:660px;}
.closing-line{font-size:1.08rem;color:var(--accent);font-weight:600;max-width:700px;margin-top:40px;}
.note{font-size:.86rem;color:var(--muted);margin-top:22px;max-width:680px;}
.highlight-quote{
  font-family:var(--font-head);font-size:clamp(1.2rem,2.2vw,1.55rem);font-weight:600;
  color:var(--heading);max-width:720px;margin-top:52px;line-height:1.45;
  border-left:2px solid var(--accent-strong);padding-left:24px;
}
.prose p{color:var(--muted);margin-bottom:16px;max-width:680px;}
.prose p strong{color:var(--heading);font-weight:600;}
.prose a,.link-inline{color:var(--accent);text-decoration:underline;text-underline-offset:3px;}

.section{padding:104px 0;background:var(--bg);color:var(--fg);position:relative;}
.section-head{max-width:780px;margin-bottom:52px;}
.section-head--center{margin-left:auto;margin-right:auto;text-align:center;}
.section-head--center .eyebrow{justify-content:center;}
.section-head--center .eyebrow::before{display:none;}
.section-head--center .h2,.section-head--center .lead{margin-left:auto;margin-right:auto;}
.section-head .h2:last-child,.section-head .lead:last-child{margin-bottom:0;}

/* ---------- REVEAL ---------- */
.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.js [data-reveal].is-visible{opacity:1;transform:none;}

/* ---------- BOTÕES ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:15px 30px;border-radius:999px;font-weight:600;font-size:.92rem;line-height:1.2;
  border:1px solid transparent;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .3s,color .3s,border-color .3s;
  text-align:center;
}
.btn--gold{background:linear-gradient(135deg,#E5B95C,#C99A3E);color:#0B0B0C;}
.btn--gold:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(201,154,62,.32);}
.btn--dark{background:#0B0B0C;color:#F1D99A;}
.btn--dark:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.35);}
.btn--ghost{background:transparent;color:var(--heading);border-color:var(--line-strong);}
.btn--ghost:hover{border-color:var(--accent);color:var(--accent);}
.btn--sm{padding:12px 22px;font-size:.85rem;width:100%;}
.btn--block{width:100%;padding:17px;font-size:1rem;}
.btn--lg{padding:18px 38px;font-size:1rem;}
.link-arrow{
  display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;color:var(--accent);
  border-bottom:1px solid transparent;transition:gap .3s var(--ease),border-color .3s;
}
.link-arrow::after{content:'→';transition:transform .3s var(--ease);}
.link-arrow:hover{border-color:currentColor;}
.link-arrow:hover::after{transform:translateX(4px);}

/* ---------- NAVBAR ---------- */
.navbar{
  position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 0;
  background:transparent;border-bottom:1px solid transparent;
  transition:background .4s var(--ease),border-color .4s var(--ease),padding .4s var(--ease),backdrop-filter .4s;
}
.navbar--scrolled,html.nav-open .navbar{
  background:rgba(11,11,12,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom-color:rgba(199,199,199,.12);padding:13px 0;
}
.navbar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1400px;}
.navbar__logo{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.navbar__logo{gap:10px;}
.navbar__logo-mark{height:38px;width:auto;}
.navbar__logo-name{height:17px;width:auto;}
.navbar__menu{display:flex;align-items:center;gap:17px;flex:1;justify-content:center;}
.navbar__menu a:not(.btn){
  display:inline-flex;align-items:center;min-height:44px;
  font-size:.82rem;line-height:1;color:var(--silver);font-weight:500;position:relative;white-space:nowrap;
  transition:color .3s;
}
.navbar__menu a:not(.btn)::after{content:'';position:absolute;left:0;bottom:8px;width:0;height:1px;background:var(--gold-premium);transition:width .3s var(--ease);}
.navbar__menu a:not(.btn):hover,.navbar__menu a:not(.btn):focus-visible,
.navbar__menu a[aria-current]{color:var(--white);}
.navbar__menu a:not(.btn):hover::after,.navbar__menu a:not(.btn):focus-visible::after,
.navbar__menu a[aria-current]::after{width:100%;}
.navbar__menu-cta{display:none;}
.navbar__cta{flex-shrink:0;min-height:44px;padding:0 20px;font-size:.84rem;}
.navbar__burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:10px;flex-shrink:0;}
.navbar__burger span{width:22px;height:1.5px;background:var(--white);transition:all .3s var(--ease);}
.navbar__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.navbar__burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.navbar__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* ---------- HERO ---------- */
.hero{
  position:relative;padding:158px 0 112px;overflow:hidden;
  background:radial-gradient(900px 560px at 82% 20%,rgba(201,154,62,.13),transparent 62%),var(--bg);
}
.hero__bg{position:absolute;inset:0;z-index:0;pointer-events:none;}
.hero__grid{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(245,245,243,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(245,245,243,.03) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(ellipse at 70% 30%,#000,transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at 70% 30%,#000,transparent 72%);
}
.hero__layout{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;}
.hero__title{
  font-family:var(--font-head);font-weight:800;color:var(--heading);
  font-size:clamp(2.1rem,4.3vw,3.4rem);line-height:1.12;letter-spacing:-.015em;margin-bottom:22px;
}
.hero__subtitle{font-size:1.06rem;color:var(--muted);max-width:560px;margin-bottom:34px;}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px;}
.hero__chips{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px;}
.hero__chips a{
  display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;font-size:.84rem;font-weight:600;
  border:1px solid var(--line-strong);color:var(--champagne);transition:background .3s,border-color .3s;
}
.hero__chips a::after{content:'→';}
.hero__chips a:hover{background:rgba(201,154,62,.12);border-color:var(--accent);}
.hero__note{font-size:.85rem;color:var(--muted);display:flex;align-items:center;gap:9px;}
.dot-gold{width:7px;height:7px;border-radius:50%;background:var(--gold-premium);box-shadow:0 0 12px var(--gold-premium);flex-shrink:0;}
.hero__visual{position:relative;max-width:480px;margin-left:auto;width:100%;}

/* ---------- FOTOS ---------- */
.photo{position:relative;isolation:isolate;margin:0;}
.photo img{width:100%;height:auto;border-radius:18px;box-shadow:0 30px 70px rgba(0,0,0,.28);}
.photo::before{
  content:'';position:absolute;inset:18px -16px -18px 16px;border:1px solid var(--accent-strong);
  border-radius:18px;z-index:-1;opacity:.65;
}
.photo--left::before{inset:18px 16px -18px -16px;}
.theme-light .photo img,.theme-white .photo img{box-shadow:0 24px 60px rgba(11,11,12,.18);}
.photo--cover img{aspect-ratio:4/3;object-fit:cover;}

/* Foto do hero: degradê inferior para integrar ao fundo preto e dar leitura ao card */
.hero__visual .photo::after{
  content:'';position:absolute;left:0;right:0;bottom:0;height:42%;border-radius:0 0 18px 18px;pointer-events:none;
  background:linear-gradient(to top,rgba(11,11,12,.78),rgba(11,11,12,0));
}

/* Card flutuante de dashboard (hero) */
.dash-card{
  position:absolute;left:-64px;bottom:34px;width:276px;padding:16px 16px 12px;
  background:rgba(14,14,16,.94);border:1px solid rgba(201,154,62,.4);border-radius:14px;
  box-shadow:0 22px 50px rgba(0,0,0,.55);backdrop-filter:blur(6px);
}
.dash-card__label{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--silver);margin-bottom:6px;font-weight:600;}
.dash-card svg{width:100%;height:auto;display:block;}
.dash-line{stroke-dasharray:420;stroke-dashoffset:420;animation:drawLine 2.2s var(--ease) .6s forwards;}
@keyframes drawLine{to{stroke-dashoffset:0;}}
.dash-bars rect{transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);animation:growBar 1s var(--ease) forwards;}
.dash-bars rect:nth-child(1){animation-delay:1.2s}.dash-bars rect:nth-child(2){animation-delay:1.3s}
.dash-bars rect:nth-child(3){animation-delay:1.4s}.dash-bars rect:nth-child(4){animation-delay:1.5s}
.dash-bars rect:nth-child(5){animation-delay:1.6s}
@keyframes growBar{to{transform:scaleY(1);}}
.dash-dot{opacity:0;animation:dotIn .5s ease 2.2s forwards;}
@keyframes dotIn{to{opacity:1;}}

/* ---------- LAYOUTS ---------- */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center;}
.split--reverse{grid-template-columns:.95fr 1.05fr;}
.split--top{align-items:start;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;
  transition:border-color .35s var(--ease),transform .35s var(--ease),box-shadow .35s var(--ease);
}
.card:hover{border-color:var(--accent-strong);transform:translateY(-4px);}
.theme-light .card:hover,.theme-white .card:hover{box-shadow:0 18px 40px rgba(11,11,12,.08);}
.card .h3{margin-bottom:8px;}
.card p{color:var(--muted);font-size:.92rem;}

.checklist{display:flex;flex-direction:column;gap:12px;margin:20px 0 28px;}
.checklist li{position:relative;padding-left:30px;color:var(--fg);font-size:.97rem;}
.checklist li::before{
  content:'';position:absolute;left:0;top:.45em;width:16px;height:9px;
  border-left:2px solid var(--accent-strong);border-bottom:2px solid var(--accent-strong);transform:rotate(-45deg) scale(.9);
}

/* ---------- SERVIÇOS (home) ---------- */
.service-card{
  display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;
  transition:border-color .35s,box-shadow .35s var(--ease),transform .35s var(--ease);
}
.service-card:hover{border-color:var(--accent-strong);transform:translateY(-4px);box-shadow:0 24px 50px rgba(11,11,12,.12);}
.service-card__img{display:block;overflow:hidden;aspect-ratio:16/10;background:#222;}
.service-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.service-card:hover .service-card__img img{transform:scale(1.04);}
.service-card__body{padding:30px 30px 32px;display:flex;flex-direction:column;flex:1;}
.service-card__tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--accent);margin-bottom:8px;}
.service-card .h3{font-size:1.45rem;margin-bottom:10px;}
.service-card p{color:var(--muted);font-size:.95rem;}
.service-card .checklist{margin-bottom:24px;}
.service-card .link-arrow{margin-top:auto;}

.diff{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;}
.diff__item{padding:26px 24px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);}
.diff__item--accent{background:#0B0B0C;border-color:var(--gold-inst);--heading:#F5F5F3;--muted:#C7C7C7;--accent:#E5B95C;}
.diff__item p{font-size:.92rem;color:var(--muted);}
.diff__label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--accent);margin-bottom:8px;}

/* ---------- PERGUNTAS ---------- */
.questions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px;}
.question-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;
  transition:border-color .35s var(--ease),transform .35s var(--ease);
}
.question-card:hover{border-color:var(--accent-strong);transform:translateY(-4px);}
.question-card__num{display:block;font-family:var(--font-head);font-weight:700;font-size:1.4rem;color:var(--accent-strong);margin-bottom:14px;opacity:.75;transition:opacity .3s,transform .4s var(--ease);}
.question-card:hover .question-card__num{opacity:1;transform:translateX(6px);}
.question-card p{color:var(--heading);font-size:.98rem;font-weight:500;}

/* ---------- CONVERGÊNCIA ---------- */
.converge__problems{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.mini-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 18px;font-size:.92rem;color:var(--fg);text-align:center;font-weight:500;}
.converge__arrow{display:flex;justify-content:center;margin:18px 0;}
.converge__arrow svg{width:30px;height:64px;}
.converge__result{display:flex;justify-content:center;}
.converge__result span{
  font-family:var(--font-head);font-weight:800;letter-spacing:.06em;font-size:clamp(1.05rem,2.3vw,1.5rem);
  color:#E5B95C;background:#0B0B0C;border:1px solid var(--gold-inst);padding:18px 38px;border-radius:999px;text-align:center;
}

/* ---------- PILARES ---------- */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;position:relative;}
.pillars::before{content:'';position:absolute;top:16px;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--accent-strong),transparent);opacity:.6;}
.pillar{padding:0 22px 0 0;position:relative;}
.pillar__num{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:var(--accent-strong);color:#0B0B0C;font-family:var(--font-head);font-weight:800;font-size:.8rem;margin-bottom:18px;position:relative;
}
.pillar h3{font-family:var(--font-head);font-size:1.12rem;margin-bottom:8px;color:var(--heading);}
.pillar p{color:var(--muted);font-size:.92rem;}

/* ---------- COMPARAÇÃO BPO ---------- */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:8px;}
.compare__col{border:1px solid var(--line);border-radius:var(--radius);padding:32px 28px;background:var(--card);}
.compare__col h3{font-family:var(--font-head);letter-spacing:.12em;font-size:.82rem;color:var(--muted);margin-bottom:20px;}
.compare__col--after{background:#0B0B0C;border-color:var(--gold-inst);--fg:#E4E4E1;--line:rgba(199,199,199,.14);}
.compare__col--after h3{color:#E5B95C;}
.compare__flow{display:flex;flex-direction:column;}
.compare__flow span{padding:13px 4px 13px 30px;border-bottom:1px dashed var(--line);color:var(--fg);font-size:.95rem;position:relative;}
.compare__flow span::before{content:'↓';position:absolute;left:4px;color:var(--accent-strong);}
.compare__flow span:last-child{border-bottom:none;}
.compare__flow span:last-child::before{content:'●';font-size:.6rem;top:19px;}
.compare__flow .is-bad{color:#B2403F;font-weight:700;}
.compare__flow .is-good{color:#E5B95C;font-weight:700;}

/* ---------- SOLUÇÕES ---------- */
.solution-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;
  transition:border-color .35s,transform .35s var(--ease),box-shadow .35s var(--ease);position:relative;
}
.solution-card:hover{border-color:var(--accent-strong);transform:translateY(-4px);box-shadow:0 18px 40px rgba(201,154,62,.14);}
.solution-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.solution-card__icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--accent);transition:background .3s,color .3s;}
.solution-card__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.solution-card:hover .solution-card__icon{background:var(--accent-strong);color:#0B0B0C;border-color:var(--accent-strong);}
.solution-card__num{font-family:var(--font-head);color:var(--accent-strong);font-weight:700;font-size:.95rem;opacity:.7;}
.solution-card h3{font-family:var(--font-head);font-size:1.05rem;margin-bottom:8px;color:var(--heading);}
.solution-card p{color:var(--muted);font-size:.9rem;}

/* ---------- DIFERENCIAL ---------- */
.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 32px;margin-top:8px;}
.step{border-top:1px solid var(--accent-strong);padding-top:18px;}
.step__num{font-family:var(--font-head);font-size:1.15rem;color:var(--accent);font-weight:800;}
.step h3{font-family:var(--font-head);font-size:1.08rem;margin:8px 0 6px;color:var(--heading);}
.step p{color:var(--muted);font-size:.92rem;}
.statement{
  font-family:var(--font-head);font-weight:700;font-size:clamp(1.25rem,2.4vw,1.8rem);line-height:1.4;
  color:var(--heading);border-left:3px solid var(--accent-strong);padding-left:26px;margin:56px 0 22px;max-width:820px;
}

/* ---------- NÍVEIS ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
.plan-card{
  background:var(--card);border:1px solid var(--line);border-radius:20px;padding:38px 30px 32px;
  display:flex;flex-direction:column;position:relative;transition:transform .4s var(--ease),box-shadow .4s var(--ease);
}
.plan-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(11,11,12,.1);}
.plan-card--featured{
  --heading:#F5F5F3;--muted:#C7C7C7;--fg:#E4E4E1;--accent:#E5B95C;--line:rgba(199,199,199,.16);
  background:linear-gradient(180deg,#1b170e,#0B0B0C 45%);border-color:var(--gold-inst);
  transform:scale(1.035);box-shadow:0 28px 64px rgba(0,0,0,.28);
}
.plan-card--featured:hover{transform:scale(1.035) translateY(-4px);}
.plan-card__badge{
  position:absolute;top:-13px;left:30px;background:linear-gradient(135deg,#E5B95C,#C99A3E);color:#0B0B0C;
  font-size:.7rem;font-weight:800;padding:5px 14px;border-radius:999px;letter-spacing:.06em;text-transform:uppercase;
}
.plan-card__eyebrow{font-size:.74rem;letter-spacing:.16em;color:var(--accent);font-weight:700;margin-bottom:8px;}
.plan-card__title{font-family:var(--font-head);font-size:1.5rem;font-weight:800;margin-bottom:10px;color:var(--heading);}
.plan-card__desc{color:var(--muted);font-size:.92rem;margin-bottom:18px;}
.plan-card__inherit{color:var(--accent);font-size:.86rem;font-weight:700;margin-bottom:14px;}
.plan-card__list{display:flex;flex-direction:column;gap:10px;margin-bottom:28px;flex:1;}
.plan-card__list li{font-size:.9rem;color:var(--fg);padding-left:20px;position:relative;}
.plan-card__list li::before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--accent-strong);}

/* ---------- MOMENTO ---------- */
.moment{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.moment__card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;text-align:center;transition:border-color .3s,transform .35s var(--ease);}
.moment__card:hover{border-color:var(--accent-strong);transform:translateY(-4px);}
.moment__card p{color:var(--muted);font-size:.95rem;min-height:48px;}
.moment__arrow{display:block;color:var(--accent-strong);font-size:1.4rem;margin:12px 0;}
.moment__card strong{font-family:var(--font-head);font-size:1.3rem;color:var(--accent);}
.center-cta{display:flex;justify-content:center;margin-top:40px;}

/* ---------- LINHA DO TEMPO (reestruturação) ---------- */
.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;position:relative;margin-top:8px;}
.timeline::before{content:'';position:absolute;top:13px;left:12px;right:12px;height:1px;background:var(--line-strong);}
.timeline__item{position:relative;padding-top:42px;}
.timeline__num{
  position:absolute;top:0;left:0;width:28px;height:28px;border-radius:50%;background:var(--accent-strong);color:#0B0B0C;
  font-size:.72rem;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);
  box-shadow:0 0 0 6px var(--bg);
}
.timeline__item h3{font-family:var(--font-head);font-size:1.05rem;margin-bottom:8px;color:var(--heading);}
.timeline__item p{color:var(--muted);font-size:.88rem;}
.help-card h3{font-family:var(--font-head);font-size:1rem;margin-bottom:8px;color:var(--accent);}
.help-card p{color:var(--muted);font-size:.88rem;}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}

/* ---------- ANTES / DEPOIS ---------- */
.ba-section{
  background:radial-gradient(800px 420px at 80% 100%,rgba(201,154,62,.16),transparent 65%),
             radial-gradient(600px 360px at 0% 0%,rgba(201,154,62,.07),transparent 65%),var(--bg);
}
.before-after{display:grid;grid-template-columns:1fr auto 1fr;gap:36px;align-items:center;}
.before-after__col{padding:34px 32px;border-radius:var(--radius);border:1px solid var(--line);}
.before-after__col--gold{border-color:var(--gold-inst);background:rgba(201,154,62,.07);}
.before-after__col h3{font-family:var(--font-head);letter-spacing:.12em;font-size:.86rem;color:var(--muted);margin-bottom:18px;}
.before-after__col--gold h3{color:var(--accent);}
.before-after__col li{padding:11px 0;border-bottom:1px solid var(--line);font-size:.98rem;color:var(--muted);}
.before-after__col--gold li{color:var(--champagne);}
.before-after__col li:last-child{border-bottom:none;}
.before-after__divider svg{width:36px;height:180px;}
.mega-statement{margin-top:88px;text-align:center;display:flex;flex-direction:column;gap:4px;}
.mega-statement span{
  font-family:var(--font-head);font-weight:800;font-size:clamp(1.55rem,5vw,3.2rem);line-height:1.15;letter-spacing:-.005em;
  background:linear-gradient(135deg,#F1D99A,#C99A3E);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ---------- METODOLOGIA ---------- */
.method{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;position:relative;margin-top:8px;}
.method::before{content:'';position:absolute;top:18px;left:4%;right:4%;height:1px;background:var(--line-strong);}
.method__item{position:relative;padding-top:46px;text-align:center;}
.method__item span{
  position:absolute;top:0;left:50%;transform:translateX(-50%);width:36px;height:36px;border-radius:50%;
  border:1px solid var(--accent-strong);background:var(--bg);color:var(--accent);
  font-size:.78rem;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);transition:background .3s,color .3s;
}
.method__item:hover span{background:var(--accent-strong);color:#0B0B0C;}
.method__item p{font-size:.84rem;color:var(--heading);font-weight:500;}

/* ---------- TAGS / ENTREGÁVEIS ---------- */
.tags{display:flex;flex-wrap:wrap;gap:12px;}
.tags span{
  border:1px solid var(--line);background:var(--card);border-radius:999px;padding:11px 22px;font-size:.88rem;color:var(--heading);font-weight:500;
  transition:border-color .3s,color .3s,transform .3s var(--ease);
}
.tags span:hover{border-color:var(--accent-strong);color:var(--accent);transform:translateY(-2px);}

/* ---------- POR QUE (declaração) ---------- */
.giant-pillars{display:flex;flex-direction:column;gap:2px;margin-top:36px;}
.giant-pillars span{
  font-family:var(--font-head);font-weight:800;font-size:clamp(1.7rem,4.6vw,3rem);line-height:1.18;letter-spacing:.01em;
  color:transparent;-webkit-text-stroke:1px var(--accent-strong);transition:color .4s,-webkit-text-stroke-color .4s,transform .4s var(--ease);
  cursor:default;
}
.giant-pillars span:hover{color:var(--accent);-webkit-text-stroke-color:var(--accent);transform:translateX(10px);}

/* ---------- CTA DIAGNÓSTICO (dourado) ---------- */
.cta-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:center;}
.cta-layout .h2{color:var(--heading);}
.cta-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:30px;}
.cta-actions .link-arrow{color:#0B0B0C;border-bottom-color:rgba(11,11,12,.35);}
.cta-elements{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
.cta-elements span{border:1px solid var(--line-strong);border-radius:999px;padding:8px 16px;font-size:.8rem;color:#1a1405;font-weight:600;}
.cta-label{font-size:.82rem;font-weight:700;color:#1a1405;margin-top:30px;letter-spacing:.04em;}
.theme-gold .photo::before{border-color:#0B0B0C;opacity:.5;}
.cta-layout .photo{max-width:440px;margin-left:auto;width:calc(100% - 16px);}
.theme-gold .eyebrow{color:#0B0B0C;}

/* ---------- FORMULÁRIO ---------- */
.form-wrap{max-width:860px;margin:0 auto;}
.diag-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field--full{grid-column:1/-1;}
.field label{font-size:.84rem;color:var(--heading);font-weight:600;}
.field input,.field select,.field textarea{
  background:#fff;border:1px solid rgba(11,11,12,.2);border-radius:10px;padding:14px;color:#0B0B0C;font-size:.95rem;
  transition:border-color .3s,box-shadow .3s;resize:vertical;width:100%;
}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold-inst);box-shadow:0 0 0 3px rgba(201,154,62,.25);outline:none;}
.field select{
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px;
}
.form-help{font-size:.8rem;color:var(--muted);margin-top:14px;text-align:center;}
.form-success{text-align:center;padding:56px 32px;border:1px solid var(--gold-inst);border-radius:var(--radius);background:#0B0B0C;}
.form-success p{color:var(--champagne);font-size:1.05rem;font-weight:500;max-width:560px;margin:0 auto 22px;}
.form-error{color:#9b2c2c;font-size:.9rem;margin-top:12px;text-align:center;font-weight:600;}

/* ---------- CONTATO ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:stretch;}
.contact-list{display:flex;flex-direction:column;gap:14px;margin-top:34px;}
.contact-item{
  display:flex;gap:18px;align-items:flex-start;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:var(--card);
  transition:border-color .3s,transform .3s var(--ease);
}
a.contact-item:hover{border-color:var(--accent-strong);transform:translateX(4px);}
.contact-item__icon{width:42px;height:42px;border-radius:11px;border:1px solid var(--line-strong);display:grid;place-items:center;color:var(--accent);flex-shrink:0;}
.contact-item__icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.contact-item__label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:2px;display:block;}
.contact-item__value{display:block;color:var(--heading);font-weight:500;font-size:.98rem;word-break:break-word;}
.contact-item__value a{transition:color .3s;}
.contact-item__value a:hover{color:var(--accent);}
.contact-item__hint{display:block;font-size:.82rem;color:var(--muted);margin-top:4px;}
.map-box{border-radius:18px;overflow:hidden;border:1px solid var(--line-strong);min-height:420px;background:#171719;display:flex;flex-direction:column;}
.map-box iframe{border:0;width:100%;flex:1;min-height:420px;filter:grayscale(.35) contrast(1.05);}
.map-box__link{display:block;padding:14px 18px;font-size:.86rem;font-weight:600;color:var(--accent);border-top:1px solid var(--line);background:var(--card);}
.map-box__link:hover{text-decoration:underline;}

/* ---------- PÁGINAS DE SERVIÇO ---------- */
.page-hero{position:relative;padding:150px 0 104px;overflow:hidden;background:radial-gradient(900px 520px at 85% 15%,rgba(201,154,62,.13),transparent 62%),var(--bg);}
.page-hero .container{position:relative;z-index:1;}
.page-hero__layout{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:center;}
.page-hero h1{font-family:var(--font-head);font-weight:800;color:var(--heading);font-size:clamp(2rem,4vw,3.1rem);line-height:1.15;letter-spacing:-.012em;margin-bottom:22px;}
.page-hero .lead{margin-bottom:32px;}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.82rem;color:var(--muted);margin-bottom:26px;}
.breadcrumb a{color:var(--silver);}
.breadcrumb a:hover{color:var(--gold-premium);}
.breadcrumb li+li::before{content:'›';margin-right:8px;color:var(--gold-inst);}
.breadcrumb [aria-current]{color:var(--champagne);}
.issue-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.issue{display:flex;gap:16px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--card);}
.issue__num{font-family:var(--font-head);font-weight:800;color:var(--accent);font-size:1.05rem;min-width:30px;}
.issue h3{font-family:var(--font-head);font-size:1rem;color:var(--heading);margin-bottom:4px;}
.issue p{font-size:.9rem;color:var(--muted);}

/* ---------- FOOTER ---------- */
.footer{background:#070708;padding:64px 0 0;border-top:1px solid rgba(199,199,199,.1);color:var(--silver);}
.footer__inner{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px;padding-bottom:48px;}
.footer__logo-img{width:min(320px,100%);height:auto;margin-bottom:22px;}
.footer__quote{color:var(--silver);font-size:.9rem;max-width:300px;font-style:italic;}
.footer h2{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-premium);margin-bottom:16px;font-weight:700;}
.footer__links{display:flex;flex-direction:column;gap:11px;}
.footer__links a{color:var(--silver);font-size:.9rem;transition:color .3s;}
.footer__links a:hover{color:var(--gold-premium);}
.footer__bottom{border-top:1px solid rgba(199,199,199,.1);padding:22px 24px;text-align:center;}
.footer__bottom p{color:var(--silver);font-size:.78rem;opacity:.7;}

/* ---------- WHATSAPP ---------- */
.whatsapp-fab{
  position:fixed;bottom:calc(22px + env(safe-area-inset-bottom,0px));right:22px;width:58px;height:58px;border-radius:50%;
  background:#25D366;color:#0B0B0C;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 30px rgba(0,0,0,.4);z-index:90;transition:transform .3s var(--ease);
}
.whatsapp-fab:hover{transform:scale(1.08);}

/* ---------- RESPONSIVO ---------- */
@media (max-width:1360px){
  .navbar__menu{
    position:fixed;top:0;right:0;height:100dvh;width:min(84vw,360px);overflow-y:auto;
    background:#0B0B0C;
    flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;
    padding:92px 28px 32px;transform:translateX(100%);visibility:hidden;
    transition:transform .4s var(--ease),visibility 0s .4s;border-left:1px solid rgba(199,199,199,.12);
  }
  .navbar__menu.is-open{transform:none;visibility:visible;transition:transform .4s var(--ease);}
  .navbar__menu a:not(.btn){font-size:1.02rem;min-height:54px;border-bottom:1px solid rgba(199,199,199,.12);}
  .navbar__menu a:not(.btn)::after{bottom:-1px;background:var(--gold-inst);}
  .navbar__menu-cta{display:inline-flex;margin-top:26px;min-height:52px;}
  .navbar__cta{display:none;}
  .navbar__burger{display:flex;position:relative;z-index:2;}
  .navbar__inner{justify-content:space-between;}
}
@media (max-width:1024px){
  .hero__layout,.page-hero__layout,.split,.split--reverse,.cta-layout,.contact-grid{grid-template-columns:1fr;gap:56px;}
  .hero__visual{margin:0 auto;max-width:420px;}
  .split--reverse .photo{order:-1;}
  .photo{max-width:560px;margin:0 auto;width:calc(100% - 16px);}
  .questions{grid-template-columns:repeat(2,1fr);}
  .converge__problems{grid-template-columns:repeat(2,1fr);}
  .pillars{grid-template-columns:repeat(2,1fr);row-gap:36px;}
  .pillars::before{display:none;}
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-5{grid-template-columns:repeat(2,1fr);}
  .plans{grid-template-columns:1fr;max-width:480px;margin-left:auto;margin-right:auto;}
  .plan-card--featured,.plan-card--featured:hover{transform:none;}
  .moment{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto;}
  .timeline{grid-template-columns:repeat(3,1fr);row-gap:36px;}
  .timeline::before{display:none;}
  .before-after{grid-template-columns:1fr;gap:20px;}
  .before-after__divider{transform:rotate(90deg);margin:0 auto;}
  .before-after__divider svg{height:72px;}
  .method{grid-template-columns:repeat(4,1fr);row-gap:34px;}
  .method::before{display:none;}
  .diff{grid-template-columns:1fr;}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .footer__inner{grid-template-columns:1fr 1fr;}
  .footer__brand{grid-column:1/-1;}
}
@media (max-width:760px){
  .section{padding:76px 0;}
  .hero{padding:128px 0 84px;}
  .page-hero{padding:124px 0 80px;}
  .grid-2,.grid-3,.steps,.issue-list,.compare,.diag-form__grid{grid-template-columns:1fr;}
  .grid-3{grid-template-columns:1fr;}
  .questions,.converge__problems,.pillars,.grid-4,.grid-5,.timeline{grid-template-columns:1fr;}
  .method{grid-template-columns:repeat(2,1fr);}
  .dash-card{left:12px;bottom:12px;width:min(240px,70%);}
  .photo::before{inset:12px -8px -12px 8px;}
  .photo--left::before{inset:12px 8px -12px -8px;}
  .hero__actions .btn,.cta-actions .btn{width:100%;}
  .footer__inner{grid-template-columns:1fr;gap:34px;}
  .map-box,.map-box iframe{min-height:340px;}
  .contact-item{padding:18px;}
  .whatsapp-fab{width:54px;height:54px;right:16px;}
  .section-head{margin-bottom:38px;}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;}
  .js [data-reveal]{opacity:1;transform:none;}
  .dash-line{stroke-dashoffset:0;}
  .dash-bars rect{transform:none;}
  .dash-dot{opacity:1;}
}
@media print{
  .navbar,.whatsapp-fab{display:none;}
  .js [data-reveal]{opacity:1;transform:none;}
}
