/* ===========================================================
   Agência Taiada, camada de apresentação compartilhada pelo site.
   .inner-page adapta a escala aos serviços, guias e documentos legais.
   =========================================================== */

.home-cinematic {
  --creme: #FFFFFF;
  --creme-2: #F6F7F6;
  --superficie: #FFFFFF;
  --ink: #24282B;
  --ink-2: #555E63;
  --terracota-texto: #A93618;
  --linha: rgba(36, 40, 43, .13);
  --linha-terracota: rgba(207, 81, 46, .35);
  --sombra-card: 0 8px 28px rgba(36, 40, 43, .055);
  background: #FFFFFF;
  color: var(--ink);
}

.home-cinematic h1,
.home-cinematic h2,
.home-cinematic h3 { color: #24282B; }

.home-cinematic .gold { color: var(--terracota-texto); }

.home-cinematic .skip-link:focus {
  background: var(--preto);
  color: #FFFFFF;
}

/* ---------- Entrada ---------- */
.cinematic-intro {
  --intro-fade: 700ms;
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  place-items: center;
  overflow: hidden;
  background: #FFFFFF;
  transition: opacity var(--intro-fade) ease, visibility var(--intro-fade) ease;
}

.js .cinematic-intro { display: grid; }

.cinematic-intro.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.intro-brand {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: min(430px, 72vw);
  aspect-ratio: 1.15;
  animation: intro-brand-in .95s cubic-bezier(.2,.8,.2,1) both;
}

.cinematic-intro.is-exiting .intro-brand {
  animation: none;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity .18s ease, transform .3s ease;
}

.intro-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  animation: none;
}

.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1001;
  width: 0;
  height: 2px;
  background: var(--terracota);
  box-shadow: none;
}

/* ---------- Header ---------- */
.home-cinematic .site-header { color: #24282B; }
.home-cinematic .site-header.scrolled {
  background: rgba(255,255,255, 0.8);
  border-bottom: 1px solid rgba(36,40,43, 0.07);
  box-shadow: none;
  backdrop-filter: blur(18px) saturate(130%);
}

.home-cinematic .header-inner { max-width: 1320px; height: 82px; }
.home-cinematic .brand-logo { height: 58px; filter: none; }
.home-cinematic .nav { gap: 32px; }
.home-cinematic .nav a { color: rgba(36,40,43, 0.7); font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; }
.home-cinematic .nav a:hover { color: #24282B; }
.home-cinematic .header-cta { border-radius: 999px; clip-path: none; }
.home-cinematic .nav-toggle span { background: #24282B; }

/* ---------- Hero ---------- */
.home-cinematic .cinematic-hero {
  min-height: 100svh;
  padding-top: 82px;
  background: #FFFFFF;
  isolation: isolate;
}

.home-cinematic .hero-bg {
  background: #FFFFFF;
}

.hero-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  opacity: 0.82;
}

.home-cinematic .hero-inner {
  justify-content: center;
  text-align: center;
  min-height: calc(100svh - 82px);
  z-index: 3;
}

.home-cinematic .hero-copy {
  max-width: 980px;
  padding-block: 90px 120px;
}

.home-cinematic .hero-title {
  font-size: clamp(3.2rem, 7.5vw, 7rem);
  line-height: 0.97;
  letter-spacing: -0.055em;
  text-wrap: balance;
  margin-bottom: 30px;
  text-shadow: none;
}

.home-cinematic .hero-title .gold {
  display: inline-block;
  color: var(--terracota-texto);
  animation: none;
}

.home-cinematic .hero-sub {
  max-width: 700px;
  margin-inline: auto;
  color: var(--ink-2);
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.75;
}

.home-cinematic .hero-actions { justify-content: center; }
.home-cinematic .hero-trust { justify-content: center; }
.home-cinematic .hero-trust li { color: rgba(36,40,43,0.58); }
.home-cinematic .hero-trust li::before { color: var(--terracota-claro); }

.home-cinematic .btn {
  border-radius: 999px;
  clip-path: none;
  letter-spacing: 0.02em;
}

.home-cinematic .btn-primary {
  background: #AD3B1D;
  box-shadow: 0 8px 20px rgba(36, 40, 43, .12);
}

.home-cinematic .btn-ghost {
  color: #24282B;
  box-shadow: inset 0 0 0 1px rgba(36,40,43,0.22);
  backdrop-filter: none;
}

.home-cinematic .btn-ghost:hover {
  color: var(--terracota-claro);
  box-shadow: inset 0 0 0 1px rgba(207, 81, 46,0.7);
}

.hero-objects {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  perspective: 1200px;
  opacity: 0;
  transform: translateX(120px);
  transition: opacity 1s ease .25s, transform 1.25s cubic-bezier(.16,1,.3,1) .2s;
}

.home-cinematic.intro-complete .hero-objects {
  opacity: 1;
  transform: translate(var(--pointer-x, 0), var(--pointer-y, 0));
}
.hero-object {
  position: absolute;
  width: clamp(150px, 16vw, 245px);
  aspect-ratio: 0.84;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(207, 81, 46, 0.22);
  border-radius: 22px;
  background: #FFFFFF;
  box-shadow: 0 16px 40px rgba(36,40,43,.10);
  backdrop-filter: none;
  color: rgba(36,40,43,0.48);
  transform-style: preserve-3d;
  animation: object-float 7s ease-in-out infinite;
}

.hero-object span { display: block; font: 600 0.68rem/1 var(--f-titulo); letter-spacing: 0.16em; color: var(--terracota); }
.hero-object strong { display: block; margin: 14px 0 28px; font: 600 clamp(1rem, 1.8vw, 1.45rem)/1.1 var(--f-display); color: #24282B; }
.hero-object i { display: block; width: 100%; height: 1px; margin-top: 16px; background: rgba(36,40,43,.18); }
.hero-object i:nth-of-type(2) { width: 72%; }
.hero-object i:nth-of-type(3) { width: 46%; }
.hero-object--site { left: 3.5vw; top: 19%; transform: rotateY(18deg) rotateZ(-4deg); }
.hero-object--google { right: 3.5vw; top: 28%; transform: rotateY(-20deg) rotateZ(4deg); animation-delay: -2s; }
.hero-object--commerce { right: 13vw; bottom: 3%; width: clamp(120px, 12vw, 185px); transform: rotateY(-12deg) rotateZ(-5deg); animation-delay: -4s; }

.hero-scroll {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 20px;
  display: grid;
  justify-items: center;
  gap: 10px;
  transform: translateX(-50%);
  color: rgba(36,40,43,.45);
  font: 500 .62rem/1 var(--f-titulo);
  letter-spacing: .22em;
  text-transform: uppercase;
}

.hero-scroll i { width: 1px; height: 36px; background: var(--terracota); animation: scroll-line 1.8s ease-in-out infinite; }

/* ---------- Manifesto ---------- */
.cinematic-statement {
  position: relative;
  min-height: 100svh;
  display: grid;
  align-items: center;
  padding-block: clamp(110px, 14vw, 190px);
  overflow: hidden;
  border-top: 1px solid rgba(36,40,43,0.06);
  background: #F6F7F6;
}

.cinematic-statement::before {
  content: "";
  position: absolute;
  width: 560px;
  height: 560px;
  right: -190px;
  top: 50%;
  border: 1px solid rgba(207, 81, 46,.16);
  border-radius: 50%;
  transform: translateY(-50%);
  box-shadow: none;
}

.statement-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .55fr 1.45fr; gap: 70px; align-items: start; }
.statement-kicker { padding-top: 14px; color: var(--terracota); font: 600 .7rem/1 var(--f-titulo); letter-spacing: .25em; text-transform: uppercase; }
.statement-copy { max-width: 860px; }
.statement-lead { margin-bottom: 30px; color: rgba(36,40,43,.54); font-size: clamp(1.05rem, 1.7vw, 1.35rem); }
.statement-copy h2 { font-size: clamp(2.7rem, 6.2vw, 6rem); line-height: 1; letter-spacing: -.055em; }
.statement-copy h2 span { color: transparent; -webkit-text-stroke: 1px rgba(207, 81, 46,.75); }
.statement-copy > p:last-of-type { max-width: 680px; margin-top: 38px; color: rgba(36,40,43,.66); font-size: 1.05rem; }
.statement-signals { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; margin-top: 70px; }
.statement-signals span { padding-top: 14px; border-top: 1px solid rgba(207, 81, 46,.35); color: rgba(36,40,43,.42); font: 600 .65rem/1 var(--f-titulo); letter-spacing: .18em; }

/* ---------- Seções compartilhadas ---------- */
.home-cinematic .section { position: relative; overflow: hidden; padding-block: clamp(100px, 12vw, 160px); background: #FFFFFF; }
.home-cinematic .section-alt { border-color: rgba(36,40,43,0.07); background: #F6F7F6; }
.home-cinematic .section-head { max-width: 860px; margin-inline: auto; text-align: center; }
.home-cinematic .section-head h2 { font-size: clamp(2.5rem, 5vw, 5rem); line-height: 1.02; letter-spacing: -.05em; text-wrap: balance; }
.home-cinematic .section-lead { max-width: 650px; margin-inline: auto; margin-top: 22px; color: rgba(36,40,43,.6); }
.home-cinematic .eyebrow { color: var(--terracota); }
.home-cinematic .eyebrow::before { background: var(--terracota); }

/* ---------- Soluções em profundidade ---------- */
.home-cinematic #solucoes {
  background: #FFFFFF;
}

.home-cinematic .sol-grid { gap: 22px; perspective: 1200px; }
.home-cinematic .sol-card {
  min-height: 390px;
  gap: 16px;
  padding: 38px 36px 32px;
  overflow: hidden;
  border-color: rgba(36,40,43,.1);
  border-radius: 22px;
  background: #FFFFFF;
  box-shadow: 0 32px 90px rgba(0,0,0,.25);
  transform-style: preserve-3d;
  transition: border-color .4s ease, transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease;
}

.home-cinematic .sol-card::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  right: -100px;
  bottom: -130px;
  border-radius: 50%;
  background: none;
  transition: transform .5s ease, opacity .5s ease;
}

.home-cinematic .sol-card::before { border-color: var(--terracota); border-radius: 0 22px 0 0; }
.home-cinematic .sol-card:hover { border-color: rgba(207, 81, 46,.42); transform: translateY(-8px) rotateX(1.2deg); box-shadow: 0 42px 110px rgba(0,0,0,.44); }
.home-cinematic .sol-card:hover::after { transform: scale(1.25); }
.home-cinematic .sol-tag { color: var(--terracota); background: rgba(207, 81, 46,.06); border-color: rgba(207, 81, 46,.22); border-radius: 999px; clip-path: none; }
.home-cinematic .sol-card h3 { font-size: clamp(1.45rem, 2.2vw, 2rem); }
.home-cinematic .sol-card p { color: rgba(36,40,43,.56); }
.home-cinematic .check li { color: rgba(36,40,43,.72); }
.home-cinematic .check li::before { color: var(--terracota-claro); }
.home-cinematic .sol-link { position: relative; z-index: 2; color: var(--terracota-claro); }
.home-cinematic .sol-link:hover { color: #24282B; }

/* ---------- Processo ---------- */
.home-cinematic #como { background: #F6F7F6; }
.home-cinematic .steps { gap: 0; border-top: 1px solid rgba(36,40,43,.1); }
.home-cinematic .step { min-height: 320px; padding: 34px 24px; border-top: 0; border-right: 1px solid rgba(36,40,43,.09); }
.home-cinematic .step:last-child { border-right: 0; }
.home-cinematic .step::before { content: ""; position: absolute; inset: 0; z-index: 0; background: rgba(207,81,46,.055); opacity: 0; transition: opacity .35s ease; }
.home-cinematic .step:hover::before { opacity: 1; }
.home-cinematic .step > * { position: relative; z-index: 1; }
.home-cinematic .step-num { font-size: 3.6rem; -webkit-text-stroke-color: rgba(207, 81, 46,.48); }
.home-cinematic .step h3 { font-size: 1.15rem; }
.home-cinematic .step p { color: rgba(36,40,43,.54); }

/* ---------- Segmentos ---------- */
.home-cinematic .seg-grid { gap: 18px; }
.home-cinematic .seg-card {
  min-height: 220px;
  justify-content: flex-end;
  padding: 30px;
  overflow: hidden;
  border-color: rgba(36,40,43,.09);
  border-radius: 18px;
  background: #FFFFFF;
  box-shadow: none;
}
.home-cinematic .seg-card::before { top: 0; right: 0; width: 100%; height: 2px; border: 0; background: var(--terracota); transform: scaleX(.15); transition: transform .4s ease; }
.home-cinematic .seg-card:hover::before { transform: scaleX(1); }
.home-cinematic .seg-card:hover { border-color: rgba(207, 81, 46,.32); transform: translateY(-5px); box-shadow: 0 25px 70px rgba(0,0,0,.25); }
.home-cinematic .seg-card h3 { font-size: 1.35rem; }
.home-cinematic .seg-card p { color: rgba(36,40,43,.55); }
.home-cinematic .seg-card--cta { background: #FDF2EE; }

/* ---------- Sócios, compromisso e FAQ ---------- */
.home-cinematic .socios { gap: 22px; }
.home-cinematic .socio-card {
  min-height: 270px;
  border-color: rgba(36,40,43,.1);
  border-radius: 22px;
  background: #FFFFFF;
  box-shadow: var(--sombra-card);
}
.home-cinematic .socio-card:hover { border-color: rgba(207, 81, 46,.4); }
.home-cinematic .socio-avatar { color: #FFFFFF; background: var(--terracota-texto); }
.home-cinematic .socio-cargo { color: var(--terracota); }
.home-cinematic .socio-info p { color: rgba(36,40,43,.58); }

.home-cinematic .quote-section {
  background: #FFFFFF;
}
.home-cinematic .compromisso { max-width: 1000px; }
.home-cinematic .compromisso h2 { font-size: clamp(2.6rem, 5.4vw, 5.4rem); letter-spacing: -.055em; }
.home-cinematic .compromisso > p { color: rgba(36,40,43,.58); }
.home-cinematic .compromisso-lista li { border-color: rgba(207, 81, 46,.25); color: rgba(36,40,43,.78); }

.home-cinematic .faq { max-width: 930px; }
.home-cinematic .faq details { border-color: rgba(36,40,43,.1); }
.home-cinematic .faq details[open] { border-color: rgba(207, 81, 46,.38); }
.home-cinematic .faq summary { color: #24282B; }
.home-cinematic .faq details p { color: rgba(36,40,43,.6); }

/* ---------- Fechamento ---------- */
.home-cinematic .cta-final {
  min-height: 86svh;
  display: grid;
  align-items: center;
  overflow: hidden;
  background: #F6F7F6;
}
.home-cinematic .cta-final::before { content: ""; position: absolute; inset: 8% 6%; border: 1px solid rgba(207, 81, 46,.13); border-radius: 42px; pointer-events: none; }
.home-cinematic .cta-inner { max-width: 920px; }
.home-cinematic .cta-inner h2 { font-size: clamp(3rem, 6vw, 6rem); line-height: .98; letter-spacing: -.06em; }
.home-cinematic .cta-inner > p { color: rgba(36,40,43,.62); }
.home-cinematic .cta-note { color: rgba(36,40,43,.44) !important; }

.home-cinematic .site-footer { border-top: 1px solid rgba(36,40,43,.08); background: #FFFFFF; }
.home-cinematic .wa-float { box-shadow: 0 16px 45px rgba(0,0,0,.45); }

/* ---------- Animações ---------- */
@keyframes intro-brand-in { from { opacity: 0; transform: translateX(110px); } to { opacity: 1; transform: translateX(0); } }
@keyframes object-float { 0%,100% { translate: 0 0; } 50% { translate: 0 -15px; } }
@keyframes scroll-line { 0%,100% { transform: scaleY(.25); transform-origin: top; opacity: .35; } 50% { transform: scaleY(1); opacity: 1; } }

/* O movimento da home acontece da direita para a esquerda. */
.js .home-cinematic .reveal {
  opacity: 0;
  filter: blur(3px);
  transform: translate3d(96px, 0, 0);
  transition:
    opacity .85s ease,
    filter .85s ease,
    transform 1.05s cubic-bezier(.16,1,.3,1);
}

.js .home-cinematic .reveal.is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

.js .home-cinematic .hero .reveal {
  opacity: 0;
  filter: blur(4px);
  transform: translate3d(120px, 0, 0);
  transition:
    opacity 1s ease .08s,
    filter 1s ease .08s,
    transform 1.2s cubic-bezier(.16,1,.3,1) .08s;
}

.js .home-cinematic.intro-complete .hero .reveal {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

.js .home-cinematic .sol-card:nth-child(even),
.js .home-cinematic .step:nth-child(even),
.js .home-cinematic .seg-card:nth-child(even) { transition-delay: .08s; }

.js .home-cinematic .sol-card:nth-child(3n),
.js .home-cinematic .step:nth-child(3n),
.js .home-cinematic .seg-card:nth-child(3n) { transition-delay: .16s; }

@media (max-width: 980px) {
  .home-cinematic .nav {
    background: rgba(255,255,255,.97);
    border: 1px solid rgba(36,40,43,.09);
    box-shadow: 0 28px 70px rgba(0,0,0,.55);
  }
  .home-cinematic .nav a { color: rgba(36,40,43,.75); }
  .home-cinematic .hero-object--commerce { width: 140px; right: 6%; bottom: 7%; }
  .home-cinematic .steps { grid-template-columns: repeat(2,1fr); }
  .home-cinematic .step { border-bottom: 1px solid rgba(36,40,43,.09); }
  .statement-grid { grid-template-columns: 1fr; gap: 30px; }
  .statement-signals { margin-top: 38px; }
}

@media (max-width: 720px) {
  .cinematic-intro { --intro-fade: 550ms; }
  .intro-brand {
    width: min(290px, 72vw);
    animation: intro-mobile-in .75s ease-out both;
  }
  .intro-logo { animation: none; }
  .home-cinematic .header-inner { height: 72px; }
  .home-cinematic .brand-logo { height: 50px; }
  .home-cinematic .cinematic-hero { padding-top: 72px; }
  .home-cinematic .hero-inner { min-height: calc(100svh - 72px); }
  .home-cinematic .hero-copy { padding-block: 88px 92px; }
  .home-cinematic .hero-title { font-size: clamp(2.15rem, 10.7vw, 4rem); line-height: 1.05; }
  .home-cinematic .hero-sub { font-size: .98rem; }
  .home-cinematic .hero-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .home-cinematic .hero-actions .btn { width: 100%; }
  .home-cinematic .hero-actions .btn-lg { --pad-x: 20px; font-size: .9rem; }
  .home-cinematic .hero-trust { display: grid; justify-content: start; text-align: left; max-width: 330px; margin-inline: auto; }
  .hero-objects { transform: translateX(28px); transition: opacity .65s ease, transform .85s cubic-bezier(.16,1,.3,1); }
  .hero-object {
    width: clamp(94px, 27vw, 142px);
    aspect-ratio: 1.06;
    padding: 12px;
    border-radius: 14px;
    border-color: rgba(207, 81, 46,.34);
    background-color: rgba(255,255,255,.72);
    opacity: .76;
    backdrop-filter: none;
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    animation-name: object-float-mobile;
  }
  .hero-object span { font-size: .55rem; }
  .hero-object strong { font-size: clamp(.7rem, 3.2vw, .8rem); margin: 9px 0 12px; white-space: nowrap; }
  .hero-object i { margin-top: 9px; }
  .hero-object--site { left: 3%; top: 102px; transform: rotate(-8deg); }
  .hero-object--google { right: 3%; top: 108px; transform: rotate(8deg); }
  .home-cinematic .hero-object--commerce {
    display: block;
    width: clamp(102px, 30vw, 154px);
    left: 50%; right: auto; top: 80px; bottom: auto;
    transform: translateX(-50%) rotate(-3deg);
  }
  .home-cinematic .cinematic-hero .hero-copy { position: relative; }
  .home-cinematic .cinematic-hero .hero-copy::before {
    content: "";
    position: absolute; inset: 126px -8px 65px; z-index: -1;
    pointer-events: none;
    background: none;
  }
  .home-cinematic .cinematic-hero .hero-title { text-shadow: none; }
  .home-cinematic .cinematic-hero .hero-title .gold { text-shadow: none; }
  .home-cinematic .cinematic-hero .hero-sub { color: #555E63; text-shadow: none; }
  .home-cinematic.hero-in-view .wa-float { opacity: 0; visibility: hidden; pointer-events: none; }
  .js .home-cinematic .reveal {
    filter: none;
    transform: translate3d(28px,0,0);
    transition: opacity .5s ease, transform .65s cubic-bezier(.16,1,.3,1);
  }
  .js .home-cinematic .hero .reveal {
    filter: none;
    transform: translate3d(24px,0,0);
    transition: opacity .55s ease, transform .7s cubic-bezier(.16,1,.3,1);
  }
  .js .home-cinematic .reveal.is-visible,
  .js .home-cinematic.intro-complete .hero .reveal { transform: translate3d(0,0,0); }
  .statement-copy h2 { font-size: clamp(2.7rem, 13vw, 4.4rem); }
  .statement-signals { grid-template-columns: repeat(2,1fr); }
  .home-cinematic .section-head { text-align: left; }
  .home-cinematic .section-head h2 { font-size: clamp(2.55rem, 12vw, 4rem); }
  .home-cinematic .section-lead { margin-left: 0; }
  .home-cinematic .sol-grid { grid-template-columns: 1fr; }
  .home-cinematic .sol-card { min-height: 360px; padding: 32px 26px 28px; }
  .home-cinematic .steps { grid-template-columns: 1fr; }
  .home-cinematic .step { min-height: auto; border-right: 0; padding: 30px 14px 34px; }
  .home-cinematic .seg-grid { grid-template-columns: 1fr; }
  .home-cinematic .seg-card { min-height: 190px; }
  .home-cinematic .cta-final { min-height: 78svh; }
  .home-cinematic .cta-final::before { inset: 5% 14px; border-radius: 24px; }
  .home-cinematic .cta-inner h2 { font-size: clamp(2.8rem, 13vw, 4.4rem); }
}

@keyframes intro-mobile-in { from { opacity: 0; transform: translateX(22px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes object-float-mobile { 0%,100% { translate: 0 0; } 50% { translate: 0 -6px; } }

/* Páginas internas usam a mesma identidade com escala adequada à leitura. */
.home-cinematic.inner-page main { overflow-x: clip; }
.home-cinematic.inner-page .hero {
  min-height: auto;
  background: #FFFFFF;
  border-bottom: 1px solid var(--linha);
}
.home-cinematic.inner-page .hero-inner { min-height: auto; }
.home-cinematic.inner-page .hero-copy { max-width: 980px; padding-block: 84px 88px; }
.home-cinematic.inner-page .hero-title {
  font-size: clamp(2.5rem, 5.5vw, 5.1rem);
  line-height: 1.07;
  overflow-wrap: anywhere;
}
.home-cinematic.inner-page .section { padding-block: clamp(72px, 8vw, 110px); }
.home-cinematic.inner-page .section-head h2 {
  font-size: clamp(2rem, 3.9vw, 3.65rem);
  line-height: 1.12;
}
.home-cinematic.inner-page .sol-card { min-height: 0; }
.home-cinematic.inner-page .steps { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.home-cinematic.inner-page .cta-final { min-height: 65svh; }
.home-cinematic.inner-page .cta-inner h2 { font-size: clamp(2.4rem, 4.5vw, 4.3rem); }
.home-cinematic.inner-page .article-hero,
.home-cinematic.inner-page .legal-hero {
  padding-block: 150px 72px;
  background: #FFFFFF;
}
.home-cinematic.inner-page .article-hero .hero-copy,
.home-cinematic.inner-page .legal-hero .hero-copy { padding: 0; }
.home-cinematic.inner-page .article-hero .hero-inner { text-align: left; justify-content: flex-start; }
.home-cinematic.inner-page .article-hero .hero-sub,
.home-cinematic.inner-page .legal-hero .hero-sub { margin-left: 0; }
.home-cinematic.inner-page .article-body,
.home-cinematic.inner-page .article-sidebar,
.home-cinematic.inner-page .legal-body { min-width: 0; }
.home-cinematic.inner-page .article-body,
.home-cinematic.inner-page .legal-body { overflow-wrap: anywhere; }
.home-cinematic.inner-page .article-body h2,
.home-cinematic.inner-page .legal-body h2 { line-height: 1.25; letter-spacing: -.025em; }
.home-cinematic.inner-page .article-body p,
.home-cinematic.inner-page .article-body li,
.home-cinematic.inner-page .legal-body p,
.home-cinematic.inner-page .legal-body li { line-height: 1.85; }
.home-cinematic.inner-page .article-callout,
.home-cinematic.inner-page .article-toc,
.home-cinematic.inner-page .article-side-cta,
.home-cinematic.inner-page .article-table-wrap,
.home-cinematic.inner-page .article-checklist li,
.home-cinematic.inner-page .legal-summary,
.home-cinematic.inner-page .legal-contact {
  border-radius: 18px;
  background-color: #FFFFFF;
}
.home-cinematic.inner-page .article-body a.btn-primary { color: #FFFFFF; text-decoration: none; }
.home-cinematic.inner-page .article-layout { overflow: visible; }
.home-cinematic.inner-page .article-side-cta .btn { padding-inline: 16px; }
html:not(.js) .hero-objects { opacity: 1; transform: none; }

@media (max-width: 860px) {
  .home-cinematic .nav { top: 82px; gap: 0; max-height: calc(100svh - 82px); overflow-y: auto; }
}
@media (max-width: 720px) {
  .home-cinematic .nav { top: 72px; max-height: calc(100svh - 72px); }
  .home-cinematic.inner-page .hero-copy { padding-block: 64px 70px; }
  .home-cinematic.inner-page .hero-title { font-size: clamp(2.15rem, 9.3vw, 3.8rem); letter-spacing: -.045em; }
  .home-cinematic.inner-page .article-hero,
  .home-cinematic.inner-page .legal-hero { padding-block: 126px 56px; }
  .home-cinematic.inner-page .steps { grid-template-columns: 1fr; }
  .home-cinematic.inner-page .legal-body,
  .home-cinematic.inner-page .article-body { max-width: 100%; }
  .home-cinematic.inner-page .cta-inner .btn { white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
  .js .cinematic-intro { display: none; }
  .hero-object,
  .hero-scroll i,
  .home-cinematic .hero-title .gold { animation: none; }
  .home-cinematic .sol-card:hover { transform: none; }
  .js .home-cinematic .reveal,
  .js .home-cinematic .hero .reveal { opacity: 1; filter: none; transform: none; transition: none; }
}

/* ===========================================================
   Identidade Taiada: branco, terracota sólida e grafite.
   A estrutura responsiva e as entradas suaves acima são preservadas.
   =========================================================== */
.home-cinematic {
  --creme: #FFFFFF;
  --creme-2: #F6F7F6;
  --superficie: #FFFFFF;
  --ink: #24282B;
  --ink-2: #555E63;
  --terracota: #CF512E;
  --terracota-claro: #CF512E;
  --terracota-texto: #A93618;
  --linha: rgba(36, 40, 43, .13);
  --linha-terracota: rgba(207, 81, 46, .35);
  --sombra-card: 0 8px 28px rgba(36, 40, 43, .055);
  background: #FFFFFF;
  color: var(--ink);
}
.home-cinematic .sol-card::after,
.intro-aura,
.cta-glow { display: none; }
.home-cinematic h1,
.home-cinematic h2,
.home-cinematic h3 { color: var(--ink); }
.home-cinematic .gold,
.home-cinematic .hero-title .gold {
  color: var(--terracota-texto);
  background: none;
  -webkit-text-fill-color: currentColor;
  animation: none;
}
.home-cinematic .skip-link:focus { background: var(--preto); color: #FFFFFF; }

/* Abertura limpa, sem halo metálico nem filtro sobre o PNG branco. */
.cinematic-intro { background: #FFFFFF; }
.intro-brand { width: min(570px, 82vw); }
.intro-logo { filter: none; animation: none; }
.scroll-progress { background: var(--terracota); box-shadow: none; }
.home-cinematic .site-header { color: var(--ink); background: rgba(255,255,255,.96); }
.home-cinematic .site-header.scrolled {
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid var(--linha);
  box-shadow: 0 4px 20px rgba(36,40,43,.045);
  backdrop-filter: blur(14px);
}
.home-cinematic .brand-logo { height: 62px; filter: none; }
.home-cinematic .nav a { color: var(--ink-2); }
.home-cinematic .nav a:hover { color: var(--terracota-texto); }
.home-cinematic .nav-toggle span { background: var(--ink); }

/* Hero e elementos flutuantes. */
.home-cinematic .cinematic-hero,
.home-cinematic .hero-bg { background: #FFFFFF; }
.hero-canvas { display: none; }
.home-cinematic .hero-title { text-shadow: none; }
.home-cinematic .hero-sub,
.home-cinematic .hero-trust li { color: var(--ink-2); }
.home-cinematic .hero-trust li::before { color: var(--terracota-texto); }
.home-cinematic .btn-primary {
  background: #AD3B1D;
  color: #FFFFFF;
  box-shadow: 0 8px 20px rgba(36,40,43,.12);
}
.home-cinematic .btn-primary:hover { background: #963316; box-shadow: 0 10px 24px rgba(36,40,43,.16); }
.home-cinematic .btn-ghost {
  color: var(--ink);
  background: #FFFFFF;
  box-shadow: inset 0 0 0 1px rgba(36,40,43,.34);
  backdrop-filter: none;
}
.home-cinematic .btn-ghost:hover { color: var(--terracota-texto); box-shadow: inset 0 0 0 1px var(--terracota-texto); }
.hero-object {
  border: 1px solid var(--linha);
  background: #FFFFFF;
  color: var(--ink-2);
  box-shadow: 0 16px 40px rgba(36,40,43,.10);
  backdrop-filter: none;
}
.hero-object span { color: var(--terracota-texto); }
.hero-object strong { color: var(--ink); }
.hero-object i { background: rgba(36,40,43,.18); }
.hero-scroll { color: var(--ink-2); }
.hero-scroll i { background: var(--terracota); }

/* Manifesto e seções de serviço. */
.cinematic-statement {
  border-top: 1px solid var(--linha);
  background: #F6F7F6;
}
.cinematic-statement::before { border-color: rgba(207,81,46,.13); box-shadow: none; }
.statement-kicker { color: var(--terracota-texto); }
.statement-lead,
.statement-copy > p:last-of-type { color: var(--ink-2); }
.statement-copy h2 span { color: var(--terracota-texto); -webkit-text-stroke: 0; }
.statement-signals span { border-top-color: var(--linha-terracota); color: var(--ink-2); }
.home-cinematic .section { background: #FFFFFF; }
.home-cinematic .section-alt { background: #F6F7F6; border-color: var(--linha); }
.home-cinematic .section-lead { color: var(--ink-2); }
.home-cinematic .eyebrow { color: var(--terracota-texto); }
.home-cinematic .eyebrow::before { background: var(--terracota); }
.home-cinematic #solucoes { background: #FFFFFF; }
.home-cinematic .sol-card,
.home-cinematic .seg-card,
.home-cinematic .socio-card {
  border-color: var(--linha);
  background: #FFFFFF;
  box-shadow: var(--sombra-card);
}
.home-cinematic .sol-card::before { border-color: var(--terracota); }
.home-cinematic .sol-card:hover,
.home-cinematic .seg-card:hover,
.home-cinematic .socio-card:hover {
  border-color: var(--linha-terracota);
  box-shadow: 0 14px 36px rgba(36,40,43,.09);
}
.home-cinematic .sol-card:hover { transform: translateY(-5px); }
.home-cinematic .sol-tag {
  color: var(--terracota-texto);
  background: #FDF2EE;
  border-color: var(--linha-terracota);
}
.home-cinematic .sol-card p,
.home-cinematic .check li,
.home-cinematic .seg-card p,
.home-cinematic .socio-info p { color: var(--ink-2); }
.home-cinematic .check li::before,
.home-cinematic .sol-link,
.home-cinematic .socio-cargo { color: var(--terracota-texto); }
.home-cinematic .sol-link:hover { color: var(--ink); }
.home-cinematic #como { background: #F6F7F6; }
.home-cinematic .steps { border-top-color: var(--linha); }
.home-cinematic .step { border-right-color: var(--linha); }
.home-cinematic .step::before { background: rgba(207,81,46,.055); }
.home-cinematic .step-num { -webkit-text-stroke-color: rgba(169,54,24,.65); }
.home-cinematic .step p { color: var(--ink-2); }
.home-cinematic .seg-card::before { background: var(--terracota); }
.home-cinematic .seg-card--cta { background: #FDF2EE; }
.home-cinematic .socio-avatar {
  color: #FFFFFF;
  background: var(--terracota-texto);
  border-color: var(--terracota-texto);
}

/* Compromisso, FAQ, artigos e páginas legais. */
.home-cinematic .quote-section { background: #FFFFFF; }
.home-cinematic .quote-section::before { display: none; }
.home-cinematic .compromisso h2,
.home-cinematic .compromisso-lista strong { color: var(--ink); }
.home-cinematic .compromisso > p,
.home-cinematic .compromisso-lista li { color: var(--ink-2); }
.home-cinematic .compromisso-lista li { border-color: var(--linha-terracota); background: #FFFFFF; }
.home-cinematic .compromisso-lista li::before { color: var(--terracota-texto); }
.home-cinematic .faq details { border-color: var(--linha); background: #FFFFFF; }
.home-cinematic .faq details[open] { border-color: var(--linha-terracota); }
.home-cinematic .faq summary { color: var(--ink); }
.home-cinematic .faq details p { color: var(--ink-2); }
.home-cinematic .cta-final { background: #F6F7F6; }
.home-cinematic .cta-final::before { border-color: var(--linha); }
.home-cinematic .cta-inner > p,
.home-cinematic .cta-note { color: var(--ink-2) !important; }
.home-cinematic.inner-page .hero { background: #FFFFFF; }
.home-cinematic.inner-page .article-hero,
.home-cinematic.inner-page .legal-hero { background: #FFFFFF; }
.home-cinematic.inner-page .article-callout,
.home-cinematic.inner-page .article-toc,
.home-cinematic.inner-page .article-side-cta,
.home-cinematic.inner-page .article-table-wrap,
.home-cinematic.inner-page .article-checklist li,
.home-cinematic.inner-page .legal-summary,
.home-cinematic.inner-page .legal-contact {
  background: #FFFFFF;
  border-color: var(--linha);
  color: var(--ink);
}
.home-cinematic.inner-page .article-callout,
.home-cinematic.inner-page .legal-contact { border-left: 3px solid var(--terracota); }
.home-cinematic.inner-page .article-callout strong,
.home-cinematic.inner-page .legal-contact a { color: var(--terracota-texto); }
.home-cinematic.inner-page .article-callout p,
.home-cinematic.inner-page .legal-contact p { color: var(--ink-2); }
.home-cinematic.inner-page .legal-contact h2 { color: var(--ink); }
.home-cinematic.inner-page .article-body a.btn-primary { color: #FFFFFF; }

/* Rodapé claro integra a arte original sem deixar o retângulo do PNG aparente. */
.home-cinematic .site-footer {
  border-top: 1px solid var(--linha);
  background: #F7F7F6;
  color: var(--ink-2);
  isolation: isolate;
}
.home-cinematic .footer-brand p,
.home-cinematic .footer-nav a,
.home-cinematic .footer-contato a,
.home-cinematic .footer-legal a,
.home-cinematic .footer-cidades,
.home-cinematic .footer-cidades a,
.home-cinematic .footer-bottom { color: var(--ink-2); }
.home-cinematic .footer-contato-titulo,
.home-cinematic .footer-cidades strong { color: var(--terracota-texto); }
.home-cinematic .footer-bottom { border-top-color: var(--linha); }
.home-cinematic .footer-logo { height: 170px; mix-blend-mode: darken; }
.home-cinematic .footer-contato a:hover { color: var(--terracota-texto); }
.home-cinematic .wa-float { box-shadow: 0 10px 24px rgba(36,40,43,.20); }

@media (max-width: 980px) {
  .home-cinematic .nav {
    background: #FFFFFF;
    border-color: var(--linha);
    box-shadow: 0 20px 42px rgba(36,40,43,.10);
  }
  .home-cinematic .nav a { color: var(--ink); }
  .home-cinematic .step { border-bottom-color: var(--linha); }
}
@media (max-width: 720px) {
  .intro-brand { width: min(330px, 82vw); }
  .home-cinematic .brand-logo { height: 54px; }
  .hero-object { border-color: var(--linha); background: #FFFFFF; opacity: .92; }
  .home-cinematic .cinematic-hero .hero-copy::before { display: none; }
  .home-cinematic .cinematic-hero .hero-title,
  .home-cinematic .cinematic-hero .hero-title .gold,
  .home-cinematic .cinematic-hero .hero-sub { text-shadow: none; }
  .home-cinematic .cinematic-hero .hero-sub { color: var(--ink-2); }
}
@media (prefers-reduced-motion: reduce) {
  .home-cinematic .sol-card:hover,
  .home-cinematic .seg-card:hover,
  .home-cinematic .socio-card:hover { transform: none; }
}
