/* Menvia Contabilidade | personalização da base Jailma v18.
   Estrutura de interação e animações originais preservadas em styles-v05.css / main-v05.js. */
:root {
  --ink-990:#332F2B;
  --ink-960:#332F2B;
  --ink-930:#473F38;
  --green-760:#332F2B;
  --green-690:#6D6660;
  --green-620:#998E83;
  --green-540:#C9C0B6;
  --mist-200:#E8E1D8;
  --mist-100:#F6F2EF;
  --gold-460:#D06223;
  --white:#F6F2EF;
  --muted:#6D6660;
  --line:rgba(109,102,96,.22);
  --font-title:'Cinzel',Georgia,serif;
  --font-body:'Manrope',Arial,sans-serif;
}
body {background:#F6F2EF;color:#332F2B;font-family:var(--font-body)}
body::-webkit-scrollbar-track {background:#E8E1D8}
body::-webkit-scrollbar-thumb {background:linear-gradient(180deg,#D06223,#C9C0B6);border-color:#E8E1D8}
body::-webkit-scrollbar-thumb:hover {background:#D06223}
/* Cabeçalho flutuante em vidro bege, mantendo funcionamento do menu. */
.site-header {
  background:linear-gradient(130deg,rgba(246,242,239,.96),rgba(232,225,216,.91));
  border:1px solid rgba(201,192,182,.75);
  box-shadow:0 14px 44px rgba(51,47,43,.15),inset 0 1px 0 rgba(255,255,255,.85);
}
.site-header::before {background:linear-gradient(105deg,rgba(255,255,255,.58),transparent 44%,rgba(208,98,35,.04))}
.site-header::after {opacity:.40;background:linear-gradient(90deg,#F6F2EF,#C9C0B6,#D06223,#F6F2EF)}
.brand-shell {
  width:228px;height:56px;padding:3px 12px;
  border-radius:25px;background:transparent;border:0;box-shadow:none;overflow:visible;
}
.brand-shell img {width:auto;height:54px;max-height:54px;max-width:100%;object-fit:contain;filter:none}
.main-nav a {color:#332F2B;font-size:12px}
.main-nav a:hover,.main-nav a:focus-visible {
  color:#D06223;background:rgba(208,98,35,.085);
  box-shadow:0 0 0 1px rgba(208,98,35,.20),0 8px 22px rgba(51,47,43,.08)
}
.menu-toggle {background:rgba(208,98,35,.075);border-color:#C9C0B6}
.menu-toggle span {background:#332F2B}
/* HERO: superfície clara independente e retrato real fornecido, sem bloco laranja. */
.hero {
  background:radial-gradient(ellipse at 82% 31%,rgba(201,192,182,.64),transparent 48%),
             linear-gradient(126deg,#F6F2EF 3%,#EEE9E3 50%,#E8E1D8 100%);
  color:#332F2B;min-height:94svh;
}
.hero-bg {
  background-image:
   radial-gradient(ellipse at 82% 52%,rgba(208,98,35,.095),transparent 47%),
   radial-gradient(ellipse at 4% 80%,rgba(201,192,182,.28),transparent 55%),
   linear-gradient(114deg,rgba(246,242,239,.98),rgba(246,242,239,.16) 62%,rgba(232,225,216,.22));
  background-size:100% 100%;filter:none;
}
.hero::before {
  background:radial-gradient(circle at 77% 39%,rgba(246,242,239,.90),transparent 36%),
             radial-gradient(circle at 0% 62%,rgba(201,192,182,.20),transparent 40%);
}
.hero::after {box-shadow:inset 0 0 95px rgba(201,192,182,.18),inset 0 -70px 80px rgba(232,225,216,.20)}
.hero-depth-left {background:rgba(208,98,35,.10);opacity:.55}
.hero-depth-right {background:radial-gradient(circle,rgba(208,98,35,.14),rgba(201,192,182,.20) 47%,transparent 73%);opacity:.8}
.hero-grid {opacity:.19;background-image:linear-gradient(rgba(109,102,96,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(109,102,96,.13) 1px,transparent 1px)}
.hero-copy {max-width:630px}
.hero-eyebrow {color:#D06223;text-shadow:none}
.hero-eyebrow::after {background:linear-gradient(90deg,#D06223,transparent)}
h1 {color:#332F2B;font-size:clamp(29px,4.05vw,55px);line-height:1.11;text-shadow:none;letter-spacing:-.025em}
.hero-subtitle {color:#6D6660;font-family:var(--font-body);font-size:clamp(16px,1.26vw,18px);line-height:1.8;text-shadow:none;font-weight:500;letter-spacing:0;max-width:580px}
.hero-inner {grid-template-columns:minmax(0,1.13fr) minmax(360px,.87fr)}
.hero-visual {min-height:min(735px,calc(100svh - 160px));margin-left:-10px;margin-right:-25px;align-self:end;}
.hero-visual img {
  width:auto;height:min(81svh,760px);min-width:0;max-width:min(100%,615px);max-height:none;
  object-fit:contain;object-position:center bottom;margin-bottom:-4px;
  filter:drop-shadow(0 24px 26px rgba(51,47,43,.19)) saturate(1.02) contrast(1.01) brightness(1.01);
}
.portrait-light {background:radial-gradient(circle at 47% 44%,rgba(255,255,255,.72),rgba(201,192,182,.17) 56%,transparent 78%);opacity:.86}
.portrait-shadow {background:radial-gradient(ellipse at 50% 80%,rgba(109,102,96,.22),transparent 72%);filter:blur(22px)}
.hero-visual::before {background:linear-gradient(110deg,rgba(201,192,182,.23),transparent 36%,rgba(208,98,35,.10));opacity:.35}
.hero-visual::after {height:15%;bottom:-3%;background:linear-gradient(180deg,rgba(232,225,216,0),rgba(232,225,216,.56) 75%,#E8E1D8);filter:blur(3px)}
.hero-bottom-fade {height:94px;background:linear-gradient(180deg,rgba(232,225,216,0),#E8E1D8)}
/* CTA V05 — apenas sombra laranja pulsante. Sem reflexo, sem brilho de borda ou deformação. */
.hero-btn {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:300px;
  min-height:50px;
  height:50px;
  line-height:normal;
  padding:0 22px;
  border:1px solid rgba(149,64,22,.40);
  border-radius:11px;
  background:linear-gradient(135deg,#B65322 0%,#D06223 60%,#C65A20 100%);
  color:#fff;
  filter:none;
  isolation:isolate;
  animation:menvia-button-pulse 2.2s ease-in-out infinite;
  transition:transform .28s cubic-bezier(.22,1,.36,1),background-color .28s ease;
}
.hero-btn span {
  position:relative;
  display:block;
  inset:auto;
  top:auto;right:auto;bottom:auto;left:auto;
  z-index:2;
  width:auto;height:auto;
  background:transparent;
  border:0;border-radius:0;
  box-shadow:none;
  padding:0;
  line-height:1.35;
  font-family:var(--font-body);
  font-size:14px;
  font-weight:800;
  letter-spacing:.07em;
  color:#fff;
  text-shadow:0 1px 2px rgba(51,47,43,.20);
  transition:color .28s ease;
}
/* Elimina os gradientes anteriores que comprimiam a aparência das bordas. */
.hero-btn::before,.hero-btn::after,.hero-btn span::before {
  content:none!important;
  display:none!important;
  background:none!important;
  filter:none!important;
}
.hero-btn-wrap {margin-bottom:20px;}
.hero-btn:hover,.hero-btn:focus-visible {
  transform:translateY(-2px);
  filter:none;
  background:linear-gradient(135deg,#B44F1B 0%,#D76B2E 65%,#C65A20 100%);
}
.hero-btn:hover span,.hero-btn:focus-visible span {color:#fff}
.hero-btn:focus-visible {outline:2px solid #332F2B;outline-offset:5px}
@keyframes menvia-button-pulse {
  0%,100% {
    box-shadow:0 9px 23px rgba(51,47,43,.16),
               0 0 0 2px rgba(208,98,35,.12),
               0 0 19px 5px rgba(208,98,35,.25),
               inset 0 1px 0 rgba(255,255,255,.17);
  }
  50% {
    box-shadow:0 12px 29px rgba(51,47,43,.20),
               0 0 0 9px rgba(208,98,35,.16),
               0 0 42px 13px rgba(208,98,35,.43),
               inset 0 1px 0 rgba(255,255,255,.17);
  }
}
@media (prefers-reduced-motion:reduce) {
  .hero-btn {animation:none;box-shadow:0 9px 23px rgba(51,47,43,.18),0 0 0 4px rgba(208,98,35,.14),0 0 24px 7px rgba(208,98,35,.27)}
}
/* Serviços: fundo próprio bege, cards de largura uniforme com artes inteiras. */
.services-section {
  /* A faixa final funde o bege ao off-white da seção Sobre. */
  background:linear-gradient(180deg,#E8E1D8 0%,#E8E1D8 calc(100% - 235px),#F6F2EF 100%);
  padding-top:clamp(52px,6vw,88px);
  padding-bottom:clamp(65px,7vw,105px);
}
.services-bg {
  inset:0;
  background:radial-gradient(circle at 12% 12%,rgba(246,242,239,.92),transparent 32%),radial-gradient(circle at 88% 74%,rgba(201,192,182,.39),transparent 45%);
  /* As decorações também desaparecem suavemente nas duas extremidades. */
  mask-image:linear-gradient(180deg,transparent 0%,#000 95px,#000 calc(100% - 235px),transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 95px,#000 calc(100% - 235px),transparent 100%);
}
.services-bg::before {opacity:.36;background-image:linear-gradient(rgba(109,102,96,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(109,102,96,.07) 1px,transparent 1px)}
.services-section::before {background:radial-gradient(ellipse at center,rgba(208,98,35,.065),transparent 72%)}
.services-sticky {
  background:linear-gradient(145deg,rgba(246,242,239,.96),rgba(240,235,228,.91));
  border:1px solid #C9C0B6;box-shadow:0 19px 60px rgba(51,47,43,.10),inset 0 1px rgba(255,255,255,.80);
}
.services-sticky::before {background:linear-gradient(135deg,rgba(208,98,35,.43),transparent,rgba(201,192,182,.52))}
.services-eyebrow,.about-eyebrow,.contact-eyebrow {color:#D06223;text-shadow:none}
.services-eyebrow::after,.about-eyebrow::after,.contact-eyebrow::after {background:linear-gradient(90deg,#D06223,transparent)}
.services-sticky h2 {color:#332F2B;text-shadow:none}
.services-sticky p {font-size:15.5px;line-height:1.85;color:#6D6660}
.services-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.service-card,.service-card:hover,.service-card:focus-within {
  border:1px solid rgba(201,192,182,.95) !important;background:#F6F2EF;
  box-shadow:0 18px 46px rgba(51,47,43,.10),0 3px 12px rgba(51,47,43,.04)!important
}
.service-card:hover,.service-card:focus-within {border-color:rgba(208,98,35,.5)!important;box-shadow:0 26px 54px rgba(51,47,43,.17),0 2px 14px rgba(208,98,35,.09)!important}
.service-card::before {opacity:0}
.service-card::after {height:0;background:none}
.service-card img {width:100%;height:auto;aspect-ratio:auto!important;object-fit:contain!important;filter:none;}
.service-copy {background:linear-gradient(180deg,#F6F2EF,#F2ECE6);min-height:0;padding:20px 23px 25px;align-items:flex-start;border-top:1px solid rgba(201,192,182,.56)}
.service-copy p {font-family:var(--font-body);font-size:14px;line-height:1.75;color:#6D6660;font-weight:500}
/* Nono card centralizado, mesma largura dos demais no desktop. */
.services-grid > .service-card:last-child:nth-child(odd) {grid-column:1/-1;width:calc((100% - 24px)/2);justify-self:center}
/* Sobre V02: repetição dos monogramas dimensionada como na Jailma (31px, malha ~65px). */
.about-section {
  /* Chega no off-white dos Serviços e termina no bege do Contato. */
  background:linear-gradient(180deg,#F6F2EF 0%,#F6F2EF calc(100% - 210px),#E8E1D8 100%);
  padding:clamp(70px,7vw,110px) 0;
}
.about-bg {
  background:linear-gradient(180deg,#F6F2EF 0%,#EEE9E3 45%,#F6F2EF calc(100% - 210px),#E8E1D8 100%);
  background-size:cover;
}
.about-bg::before {
  inset:0;
  opacity:.32;
  background-image:url('../images/fundo-sobre-menvia-padrao-v02.png');
  background-size:520px 520px;
  background-repeat:repeat;
  background-position:center top;
  /* O motivo repetido não forma linha horizontal na saída da seção. */
  mask-image:linear-gradient(180deg,transparent 0%,#000 65px,#000 calc(100% - 180px),transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 65px,#000 calc(100% - 180px),transparent 100%);
}
.about-bg::after {background:linear-gradient(90deg,rgba(246,242,239,.20),rgba(246,242,239,.06) 55%,rgba(246,242,239,.20));}
.about-portrait {background:#C9C0B6;border-color:rgba(208,98,35,.24);box-shadow:0 26px 68px rgba(51,47,43,.17),inset 0 1px rgba(255,255,255,.7)}
.about-portrait::before,.about-portrait::after {background-image:linear-gradient(90deg,transparent,#C9C0B6,#D06223,#E8E1D8,#D06223,#C9C0B6,transparent)}
.about-portrait img {aspect-ratio:4/5;object-fit:cover;object-position:center center;filter:saturate(1) contrast(1.01) brightness(1.01);box-shadow:0 12px 38px rgba(51,47,43,.18)}
.about-copy {background:linear-gradient(155deg,rgba(246,242,239,.97),rgba(232,225,216,.92));border:1px solid #C9C0B6;box-shadow:0 21px 66px rgba(51,47,43,.13),inset 0 1px rgba(255,255,255,.8)}
.about-copy::before {background:linear-gradient(135deg,rgba(208,98,35,.48),transparent,rgba(201,192,182,.7))}
.about-copy::after {background:radial-gradient(circle,rgba(208,98,35,.07),transparent 67%)}
.about-copy h2 {color:#332F2B;text-shadow:none;font-size:clamp(30px,3.2vw,45px);line-height:1.18}
.about-copy p,.about-copy .about-lead {font-family:var(--font-body);font-weight:500;color:#6D6660;font-size:14px;line-height:1.8}
.about-copy .about-lead {font-size:15.3px;color:#332F2B;font-weight:600}
.about-copy .about-credentials {color:#B9511D;font-size:13px;font-weight:800;letter-spacing:.035em;margin:0 0 20px}
/* Contato: seção autônoma cinza-bege, três canais e animações originais mantidas. */
.contact-section {
  /* Desaparece gradualmente no grafite do rodapé (sem faixa abrupta). */
  background:linear-gradient(180deg,#E8E1D8 0%,#E8E1D8 calc(100% - 190px),#332F2B 100%);
  padding-bottom:clamp(145px,13vw,200px);
}
.contact-bg {
  background:radial-gradient(circle at 82% 19%,rgba(246,242,239,.66),transparent 41%),
             radial-gradient(circle at 16% 67%,rgba(201,192,182,.44),transparent 38%),
             linear-gradient(180deg,#E8E1D8 0%,#EDE7E0 54%,#E8E1D8 calc(100% - 190px),#332F2B 100%);
}
.contact-bg::before {
  opacity:.3;
  background-image:linear-gradient(rgba(109,102,96,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(109,102,96,.075) 1px,transparent 1px);
  mask-image:linear-gradient(180deg,transparent 0%,#000 110px,#000 calc(100% - 220px),transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 110px,#000 calc(100% - 220px),transparent 100%);
}
.contact-bg::after {background:linear-gradient(180deg,rgba(232,225,216,.12),transparent 28%,transparent 78%,rgba(51,47,43,.06))}
.contact-shell {background:linear-gradient(156deg,rgba(246,242,239,.96),rgba(239,233,226,.95));border:1px solid #C9C0B6;box-shadow:0 24px 65px rgba(51,47,43,.11),inset 0 1px rgba(255,255,255,.8)}
.contact-shell::before {background:linear-gradient(135deg,rgba(208,98,35,.35),rgba(246,242,239,.15),rgba(201,192,182,.5))}
.contact-shell::after {background:radial-gradient(circle,rgba(208,98,35,.09),transparent 68%)}
.contact-shell > .contact-logo {width:min(195px,15vw)!important;max-width:195px!important;top:27px!important;right:45px!important;filter:none}
.contact-heading h2 {color:#332F2B;text-shadow:none;font-size:clamp(30px,3.45vw,49px);line-height:1.16}
.contact-heading p {color:#6D6660;font-size:15px;line-height:1.8}
.contact-card,.contact-card:hover,.contact-card:focus-visible {color:#332F2B;border:1px solid #C9C0B6!important;background:linear-gradient(180deg,#F6F2EF,#F0E9E1);box-shadow:0 11px 34px rgba(51,47,43,.09),inset 0 1px rgba(255,255,255,.9)}
.contact-card:hover,.contact-card:focus-visible {border-color:rgba(208,98,35,.55)!important;background:linear-gradient(180deg,#FFF9F4,#F1EAE4);box-shadow:0 18px 42px rgba(51,47,43,.13),0 0 16px rgba(208,98,35,.06)}
.contact-card strong {color:#332F2B;font-family:var(--font-body);font-size:18px;letter-spacing:.03em}
.contact-card em {color:#6D6660;font-family:var(--font-body);font-size:13px;overflow-wrap:anywhere;font-weight:600}
.contact-card-animated .contact-anim-item {color:#D06223}
.contact-card-animated .contact-anim-svg {background:linear-gradient(135deg,rgba(208,98,35,.12),rgba(255,255,255,.75));box-shadow:inset 0 1px 8px rgba(255,255,255,.83),0 5px 10px rgba(51,47,43,.14)}
.contact-card-animated .contact-anim-layer {background:rgba(208,98,35,.03)}
.contact-card-animated .contact-anim-text {background-color:#F6F2EF}
/* Rodapé em grafite quente: único plano escuro neutro, sem laranja de fundo. */
.site-footer {background:#332F2B;color:#F6F2EF}
.site-footer-shell {background:linear-gradient(145deg,rgba(109,102,96,.25),rgba(51,47,43,.64));border-color:rgba(201,192,182,.35);box-shadow:0 14px 42px rgba(17,15,12,.2)}
.site-footer-shell::before {background:linear-gradient(135deg,rgba(208,98,35,.66),rgba(201,192,182,.28),transparent)}
.site-footer a,.site-footer a:hover,.site-footer a:focus-visible,.site-footer a:active,.site-footer a:visited {color:#E8B79B!important}
@media (max-width:1180px) {
  .hero-inner {grid-template-columns:minmax(0,1.09fr) minmax(0,.91fr)}
  .services-grid {gap:20px}
  .services-grid > .service-card:last-child:nth-child(odd) {width:calc((100% - 20px)/2)}
}
@media (max-width:1080px) {
  .hero {padding-top:128px}
  .hero-inner {grid-template-columns:1fr;gap:15px;min-height:auto}
  .hero-copy {max-width:760px;margin-inline:auto;text-align:center}
  .hero-subtitle {margin-inline:auto}
  .hero-visual {margin:0;min-height:440px}
  .hero-visual img {width:auto;height:min(53svh,535px);max-width:96vw}
}
@media (max-width:980px) {
  .services-layout {grid-template-columns:1fr}
  .services-side {position:relative}
  .services-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .contact-shell > .contact-logo {position:static!important;width:190px!important;max-width:190px!important;margin:0 auto 20px!important}
  .contact-heading {max-width:100%!important;text-align:center}
  .contact-heading p {margin-inline:auto}
  .contact-grid-three {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px) {
  .site-header {top:10px;height:68px;background:rgba(246,242,239,.97)}
  .brand-shell {width:135px;height:52px;padding:0}
  .brand-shell img {height:52px;max-height:52px;width:auto}
  .main-nav {top:68px;background:rgba(246,242,239,.98);border-color:#C9C0B6;box-shadow:0 18px 42px rgba(51,47,43,.16)}
  .main-nav a {background:rgba(232,225,216,.56);color:#332F2B}
  .hero {padding:103px 0 15px;min-height:0}
  .hero-inner {width:calc(100% - 32px);padding-top:10px;gap:0}
  .hero-copy {text-align:center;padding:8px 0 0}
  .hero-eyebrow {justify-content:center;letter-spacing:.12em;font-size:10px}
  h1 {font-size:clamp(27px,7.7vw,41px);line-height:1.11;margin:16px 0 14px}
  .hero-subtitle,.hero-copy p {font-family:var(--font-body);font-size:clamp(14px,3.9vw,17px)!important;line-height:1.7;letter-spacing:0}
  .hero-visual {min-height:0;margin-top:8px;align-items:flex-end}
  .hero-visual img {height:min(58svh,520px);width:auto;max-height:none;max-width:min(85vw,420px);margin-bottom:-3px}
  .hero-visual::after {height:16%}
  .hero .hero-btn-wrap {margin-top:24px;margin-bottom:78px}
  .hero-bottom-fade {height:48px}
  .services-section {padding:52px 0 70px}
  .services-sticky {background:#F6F2EF;text-align:left}
  .services-grid {grid-template-columns:1fr;gap:18px;max-width:470px}
  .services-grid > .service-card:last-child:nth-child(odd) {grid-column:auto;width:100%}
  .service-copy {padding:18px 21px 23px;min-height:0}
  .service-copy p {font-size:14px;line-height:1.8}
  .about-section {padding:65px 0 82px}
  .about-bg::before {background-size:240px 240px;opacity:.33}
  .about-inner {gap:25px}
  .about-portrait {order:1}
  .about-portrait img {aspect-ratio:4/5;object-position:center center}
  .about-copy {order:2;padding:27px 22px;background:rgba(246,242,239,.96)}
  .about-copy h2 {font-size:clamp(28px,7.3vw,39px)}
  .about-copy p,.about-copy .about-lead {font-size:14px!important;line-height:1.8}
  .about-copy .about-credentials {font-size:12px!important}
  .contact-shell > .contact-logo {position:static!important;display:block;width:155px!important;max-width:155px!important;margin:0 auto 22px!important}
  .contact-heading {max-width:100%!important;text-align:center}
  .contact-heading h2 {font-size:clamp(27px,7.5vw,38px)}
  .contact-heading p {margin-inline:auto}
  .contact-grid-three {grid-template-columns:1fr}
  .contact-card {min-height:135px;padding:18px 21px}
  .contact-card em {font-size:13px}
  .site-footer-shell {border-radius:24px}
}
@media (max-width:420px) {
  .hero-inner {width:calc(100% - 28px)}
  .brand-shell {width:128px}
  .hero-visual img {height:min(51svh,455px)}
  .hero-btn {width:min(300px,87vw)}
  .contact-card strong {font-size:17px}
}
@media (prefers-reduced-motion:reduce) {
 .hero-visual,.hero-visual img,.service-card,.contact-card {transition:none!important}
}

