/* ============================================================
   C.S.A ASSESSORIA EMPRESARIAL — DESIGN SYSTEM
   ============================================================ */

:root{
  /* Color tokens */
  --navy-900:#0A2440;
  --navy-800:#0F3357;
  --navy-700:#164272;
  --blue-600:#1C63A8;
  --blue-500:#2878C7;
  --blue-050:#EAF2FA;
  --gray-025:#FBFBFC;
  --gray-050:#F5F6F8;
  --gray-100:#EBEDF1;
  --gray-300:#C7CCD4;
  --gray-400:#5B6675;   /* texto secundário — contraste AA (≈5.8:1 no branco) */
  --gray-700:#3C4551;
  --ink:#0B1420;
  /* Laranja da logo C.S.A */
  --brand-orange:#E8702E;
  --brand-gold:#F2A62A;
  --accent:#C9531A;        /* botões (contraste com texto branco) */
  --accent-dark:#A8430F;   /* textos e ícones em laranja */
  --accent-tint:#FDF1E7;
  --whatsapp:#1FA855;
  --white:#FFFFFF;

  --shadow-sm: 0 1px 2px rgba(10,36,64,.06), 0 1px 1px rgba(10,36,64,.04);
  --shadow-md: 0 6px 20px rgba(10,36,64,.08);
  --shadow-lg: 0 20px 48px rgba(10,36,64,.14);

  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;

  --container: 1160px;
  --header-h: 76px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{overflow-x:clip;}
body{
  margin:0;
  font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--gray-700);
  background:var(--gray-025);
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
  font-size:16px;
}
h1,h2,h3,h4{
  font-family:"Sora", "Inter", sans-serif;
  color:var(--navy-900);
  line-height:1.22;
  margin:0 0 .5em;
  font-weight:600;
  letter-spacing:-.01em;
}
h1{font-size:clamp(2.1rem,3.6vw,3.2rem); font-weight:700;}
h2{font-size:clamp(1.65rem,2.6vw,2.25rem);}
h3{font-size:1.2rem;}
p{margin:0 0 1em;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
ul{margin:0; padding:0;}
li{list-style:none;}
button{font-family:inherit; cursor:pointer;}

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

.eyebrow{
  color:var(--accent-dark);
  font-weight:600;
  font-size:.9rem;
  margin-bottom:.6em;
  display:inline-flex; align-items:center; gap:10px;
}
.eyebrow::before{
  content:""; width:22px; height:2px; border-radius:2px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold));
}
.section-head.center .eyebrow{justify-content:center;}

.muted{color:var(--gray-400);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:13px 24px;
  border-radius:var(--radius-sm);
  font-weight:600;
  font-size:.97rem;
  border:1px solid transparent;
  transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease;
  white-space:nowrap;
}
.btn-primary{
  background:var(--accent);
  color:var(--white);
  box-shadow:var(--shadow-sm);
}
.btn-primary:hover{background:var(--accent-dark);}
.btn-secondary{
  background:transparent;
  color:var(--navy-900);
  border-color:var(--gray-300);
}
.btn-secondary:hover{border-color:var(--navy-900); background:var(--gray-050);}
.btn-ghost-light{
  background:rgba(255,255,255,.08);
  color:var(--white);
  border-color:rgba(255,255,255,.35);
}
.btn-ghost-light:hover{background:rgba(255,255,255,.16);}
.btn-block{width:100%; justify-content:center;}
.btn-sm{padding:9px 16px; font-size:.87rem;}

/* ---------- Header ---------- */
.site-header{
  position:sticky; top:0; z-index:100;
  height:var(--header-h);
  display:flex; align-items:center;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--gray-100);
}
.site-header::before{
  content:""; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold) 45%, var(--navy-700));
}
.site-header .container{
  display:flex; align-items:center; justify-content:space-between;
  gap:24px;
}
.brand{
  display:flex; align-items:center; gap:10px;
  font-family:"Sora",sans-serif; font-weight:700; font-size:1.18rem;
  color:var(--navy-900);
  flex:none;
}
.brand-logo{height:54px; width:auto;}
@media (max-width:600px){.brand-logo{height:42px;}}
.footer-brand .brand-logo{height:50px;}
.brand-mark{
  width:38px; height:38px; border-radius:9px;
  background:linear-gradient(155deg, var(--navy-900), var(--blue-600));
  color:var(--white);
  display:flex; align-items:center; justify-content:center;
  font-weight:700; font-size:1rem; font-family:"Sora",sans-serif;
  flex:none;
}
.brand-full{display:flex; flex-direction:column; line-height:1.05;}
.brand-full small{font-family:"Inter",sans-serif; font-weight:500; font-size:.66rem; letter-spacing:.02em; color:var(--gray-400); margin-top:3px;}

.main-nav{display:flex; align-items:center; gap:2px;}
.main-nav a{
  padding:10px 14px;
  font-size:.95rem; font-weight:500;
  color:var(--gray-700);
  border-radius:var(--radius-sm);
  transition:color .15s, background-color .15s;
  position:relative;
}
.main-nav a:hover{color:var(--navy-900); background:var(--gray-050);}
.main-nav a.is-active{color:var(--navy-900); font-weight:600;}
.main-nav a.is-active::after{
  content:""; position:absolute; left:14px; right:14px; bottom:4px; height:2px; border-radius:2px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold));
}
@media (max-width:900px){.main-nav a.is-active::after{display:none;} .main-nav a.is-active{color:var(--accent-dark);}}

.header-actions{display:flex; align-items:center; gap:10px;}
.header-actions .btn{padding:11px 20px;}

.nav-toggle{
  display:none;
  width:42px; height:42px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-sm);
  background:var(--white);
  align-items:center; justify-content:center;
  flex:none;
}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{
  content:""; display:block; width:18px; height:2px; background:var(--navy-900);
  position:relative; transition:transform .2s ease, opacity .2s ease;
}
.nav-toggle span::before{position:absolute; top:-6px;}
.nav-toggle span::after{position:absolute; top:6px;}
.nav-toggle.is-open span{background:transparent;}
.nav-toggle.is-open span::before{transform:translateY(6px) rotate(45deg);}
.nav-toggle.is-open span::after{transform:translateY(-6px) rotate(-45deg);}

/* ---------- Mobile nav ---------- */
@media (max-width:900px){
  .main-nav{
    position:fixed; inset:var(--header-h) 0 0 0;
    background:var(--white);
    flex-direction:column;
    align-items:stretch;
    padding:18px 20px;
    gap:4px;
    transform:translateX(100%);
    visibility:hidden;
    transition:transform .25s ease, visibility 0s linear .25s;
    overflow-y:auto;
  }
  .main-nav.is-open{transform:translateX(0); visibility:visible; transition:transform .25s ease;}
  /* backdrop-filter prenderia o menu fixo dentro do cabeçalho */
  .site-header{backdrop-filter:none; background:var(--white);}
  .main-nav a{padding:14px 12px; font-size:1.05rem; border-bottom:1px solid var(--gray-100);}
  .header-actions .btn-secondary-label{display:none;}
  .nav-toggle{display:flex;}
  .header-mobile-cta{display:inline-flex !important;}
  #header-desktop-cta{display:none;}
}
.header-mobile-cta{display:none;}

/* ---------- Sections ---------- */
section{padding:88px 0;}
.section-tight{padding:56px 0;}
.section-head{max-width:640px; margin-bottom:44px;}
.section-head.center{margin-left:auto; margin-right:auto; text-align:center;}
.bg-navy{background:var(--navy-900); color:var(--gray-300);}
.bg-navy h2,.bg-navy h3{color:var(--white);}
.bg-tint{
  background:
    radial-gradient(circle at 1px 1px, rgba(10,36,64,.07) 1px, transparent 0) 0 0/22px 22px,
    linear-gradient(180deg, var(--gray-050), #F1F3F7);
  border-top:1px solid var(--gray-100); border-bottom:1px solid var(--gray-100);
}
.bg-blue-tint{
  background:
    radial-gradient(700px 320px at 100% 0%, rgba(242,166,42,.10), transparent 70%),
    radial-gradient(800px 380px at 0% 100%, rgba(28,99,168,.10), transparent 70%),
    var(--blue-050);
}
.bg-navy{position:relative; overflow:hidden;
  background:
    radial-gradient(700px 360px at 90% 0%, rgba(232,112,46,.16), transparent 65%),
    radial-gradient(600px 400px at 0% 100%, rgba(40,120,199,.22), transparent 65%),
    var(--navy-900);
}
.bg-navy > .container{position:relative;}

/* Arcos decorativos inspirados no símbolo da logo */
.deco-arcs{position:relative; isolation:isolate;}
.deco-arcs::before{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  width:560px; height:560px; right:-180px; top:-160px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23E8702E'/%3E%3Cstop offset='1' stop-color='%23F2A62A'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='url(%23g)' stroke-linecap='round'%3E%3Cpath d='M165 55A80 80 0 1 0 170 140' stroke-width='3' opacity='.55'/%3E%3Cpath d='M150 62A62 62 0 1 0 156 132' stroke-width='2' opacity='.4'/%3E%3Cpath d='M136 70A44 44 0 1 0 140 124' stroke-width='1.5' opacity='.3'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  opacity:.5;
}

/* ---------- Hero ---------- */
/* Para trocar a imagem de fundo, substitua assets/img/hero-fundo.jpg
   (de preferência 1920×1080 ou maior, mantendo o mesmo nome). */
.hero{
  position:relative;
  min-height:calc(88vh - var(--header-h));
  display:flex; align-items:center;
  padding:96px 0 104px;
  background:
    linear-gradient(90deg, rgba(7,26,48,.92) 0%, rgba(7,26,48,.72) 45%, rgba(7,26,48,.15) 100%),
    url("../img/hero-fundo.jpg") center right/cover no-repeat,
    var(--navy-900);
  color:rgba(255,255,255,.82);
  overflow:hidden;
}
.hero::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:3px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold) 45%, transparent);
}
.hero .container{width:100%;}
.hero-copy{max-width:640px;}
.hero-copy .eyebrow{color:var(--brand-gold);}
.hero-copy h1{color:var(--white); margin-bottom:.42em;}
.hero-copy p.lede{font-size:1.15rem; color:rgba(255,255,255,.8); max-width:540px; margin-bottom:1.8em;}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap;}

@media (max-width:900px){
  .hero{
    min-height:0; padding:72px 0 80px;
    background:
      linear-gradient(180deg, rgba(7,26,48,.88), rgba(7,26,48,.78)),
      url("../img/hero-fundo.jpg") 70% center/cover no-repeat,
      var(--navy-900);
  }
}

/* ---------- Trust bar ---------- */
.trust-bar{
  border-top:1px solid var(--gray-100); border-bottom:1px solid var(--gray-100);
  padding:26px 0;
  background:var(--white);
}
.trust-bar .container{
  display:flex; flex-wrap:wrap; gap:18px 28px; justify-content:space-between;
}
@media (min-width:1100px){.trust-bar .container{flex-wrap:nowrap; gap:16px;} .trust-item{font-size:.88rem; white-space:nowrap;}}
.trust-item{
  display:flex; align-items:center; gap:10px;
  font-size:.92rem; font-weight:500; color:var(--gray-700);
}
.trust-item .ic{
  width:34px; height:34px; border-radius:8px; background:var(--accent-tint); color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center; flex:none;
}

/* ---------- Cards / Grid ---------- */
.grid{display:grid; gap:22px;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.grid-3,.grid-4,.grid-2{grid-template-columns:1fr;}}

.card{
  background:var(--white);
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  padding:28px;
  box-shadow:var(--shadow-sm);
  display:flex; flex-direction:column;
  transition:box-shadow .18s ease, border-color .18s ease, transform .18s ease;
}
.card{position:relative; overflow:hidden;}
.card::before{
  content:""; position:absolute; left:0; right:0; top:0; height:3px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold));
  transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
.card:hover{box-shadow:var(--shadow-md); border-color:var(--gray-100); transform:translateY(-2px);}
.card:hover::before{transform:scaleX(1);}
.card .ic{
  width:44px; height:44px; border-radius:10px;
  background:var(--accent-tint); color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:18px; flex:none;
}
.card h3{margin-bottom:.4em; font-size:1.08rem;}
.card p{color:var(--gray-400); font-size:.95rem; margin-bottom:1.2em; flex:1;}
.card .card-link{font-size:.9rem; font-weight:600; color:var(--navy-900); display:inline-flex; align-items:center; gap:6px;}
.card .card-link .arrow{transition:transform .15s ease;}
.card:hover .card-link .arrow{transform:translateX(3px);}

.card-simple{
  padding:24px;
  border-radius:var(--radius-md);
  background:var(--white);
  border:1px solid var(--gray-100);
  border-left:3px solid var(--brand-orange);
  box-shadow:var(--shadow-sm);
}
.card-simple h3{font-size:1.02rem;}
.card-simple p{color:var(--gray-400); font-size:.92rem; margin:0;}

/* ---------- Segmentos (home) ---------- */
.segments-strip{
  display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center;
}
.segments-strip h2{margin-bottom:.6em;}
.segments-strip .card-link{font-size:.92rem; font-weight:600; color:var(--accent-dark); display:inline-flex; gap:6px;}
.segments-strip .card-link:hover .arrow{transform:translateX(3px);}
.segments-strip .card-link .arrow{transition:transform .15s ease;}
.pill-list{display:flex; flex-wrap:wrap; gap:10px;}
.pill-list li{
  background:var(--white); border:1px solid var(--gray-100); box-shadow:var(--shadow-sm);
  padding:10px 16px; border-radius:999px; font-size:.93rem; font-weight:500; color:var(--navy-900);
  display:inline-flex; align-items:center; gap:8px;
}
.pill-list li::before{
  content:""; width:7px; height:7px; border-radius:50%;
  background:linear-gradient(135deg, var(--brand-orange), var(--brand-gold));
}
@media (max-width:900px){.segments-strip{grid-template-columns:1fr; gap:24px;}}

/* ---------- Steps ---------- */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; counter-reset:step;}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.steps{grid-template-columns:1fr;}}
.step{position:relative; padding:26px 22px; background:var(--white); border:1px solid var(--gray-100); border-radius:var(--radius-md);}
.step .num{
  font-family:"Sora",sans-serif; font-weight:700; font-size:.85rem; color:var(--accent-dark);
  background:var(--accent-tint); width:30px; height:30px; border-radius:8px;
  display:flex; align-items:center; justify-content:center; margin-bottom:14px;
}
.step h3{font-size:1rem;}
.step p{color:var(--gray-400); font-size:.9rem; margin:0;}

/* ---------- CTA band ---------- */
.cta-band{
  position:relative; overflow:hidden; isolation:isolate;
  background:
    radial-gradient(520px 260px at 100% 100%, rgba(232,112,46,.30), transparent 70%),
    radial-gradient(420px 240px at 0% 0%, rgba(40,120,199,.35), transparent 70%),
    linear-gradient(120deg, var(--navy-900), var(--navy-700));
  color:var(--white);
  border-radius:var(--radius-lg);
  padding:52px;
  display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap;
}
.cta-band::after{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  width:380px; height:380px; right:-90px; top:-120px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none'%3E%3Cg stroke='%23F2A62A' stroke-linecap='round'%3E%3Cpath d='M165 55A80 80 0 1 0 170 140' stroke-width='2.4' opacity='.5'/%3E%3Cpath d='M150 62A62 62 0 1 0 156 132' stroke-width='1.6' opacity='.35'/%3E%3Cpath d='M136 70A44 44 0 1 0 140 124' stroke-width='1.1' opacity='.25'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.cta-band h2{color:var(--white); margin-bottom:.3em;}
.cta-band p{color:rgba(255,255,255,.7); margin:0; max-width:460px;}
.cta-band .actions{display:flex; gap:12px; flex-wrap:wrap;}

/* ---------- FAQ ---------- */
.accordion{border-top:1px solid var(--gray-100);}
.accordion-item{border-bottom:1px solid var(--gray-100);}
.accordion-trigger{
  width:100%; display:flex; align-items:center; justify-content:space-between;
  gap:16px; background:none; border:none; text-align:left;
  padding:22px 4px; font-family:"Sora",sans-serif; font-weight:600; font-size:1rem; color:var(--navy-900);
}
.accordion-trigger .plus{
  flex:none; width:26px; height:26px; border-radius:50%; border:1px solid var(--gray-300);
  display:flex; align-items:center; justify-content:center; position:relative;
  transition:transform .2s ease, background-color .2s ease, border-color .2s ease;
}
.accordion-trigger .plus::before,.accordion-trigger .plus::after{
  content:""; position:absolute; background:var(--navy-900); transition:transform .2s ease;
}
.accordion-trigger .plus::before{width:10px; height:1.6px;}
.accordion-trigger .plus::after{width:1.6px; height:10px;}
.accordion-item.is-open .accordion-trigger .plus{background:var(--accent); border-color:var(--accent);}
.accordion-item.is-open .accordion-trigger .plus::before,.accordion-item.is-open .accordion-trigger .plus::after{background:var(--white);}
.accordion-item.is-open .accordion-trigger .plus::after{transform:scaleY(0);}
.accordion-panel{max-height:0; overflow:hidden; transition:max-height .25s ease;}
.accordion-panel-inner{padding:0 4px 22px; color:var(--gray-400); font-size:.96rem; max-width:760px;}

/* ---------- Footer ---------- */
.site-footer{
  position:relative; overflow:hidden; isolation:isolate;
  background:
    radial-gradient(700px 300px at 100% 0%, rgba(232,112,46,.12), transparent 70%),
    radial-gradient(800px 400px at 0% 100%, rgba(40,120,199,.18), transparent 70%),
    var(--navy-900);
  color:rgba(255,255,255,.62); padding:64px 0 0;
}
.site-footer::before{
  content:""; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--brand-orange), var(--brand-gold) 45%, var(--navy-700));
}
.site-footer::after{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  width:460px; height:460px; left:-200px; bottom:-240px; opacity:.25;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none'%3E%3Cg stroke='%23F2A62A' stroke-linecap='round'%3E%3Cpath d='M165 55A80 80 0 1 0 170 140' stroke-width='2' opacity='.5'/%3E%3Cpath d='M150 62A62 62 0 1 0 156 132' stroke-width='1.4' opacity='.35'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.footer-grid{
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:36px;
  padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.1);
}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}
.footer-grid h4{color:var(--white); font-size:.85rem; text-transform:none; margin-bottom:16px; font-family:"Sora",sans-serif;}
.footer-grid ul li{margin-bottom:10px;}
.footer-grid a{font-size:.92rem; color:rgba(255,255,255,.62); transition:color .15s;}
.footer-grid a:hover{color:var(--white);}
.footer-brand .brand{color:var(--white);}
.footer-brand p{font-size:.9rem; margin-top:14px; max-width:280px; color:rgba(255,255,255,.55);}
.footer-bottom{
  padding:22px 0 28px; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap;
  font-size:.82rem; color:rgba(255,255,255,.45);
}
.footer-bottom a{color:rgba(255,255,255,.45);}
.footer-bottom a:hover{color:var(--white);}

/* ---------- WhatsApp floating button ---------- */
.wa-float{
  position:fixed; right:22px; bottom:22px; z-index:200;
  width:58px; height:58px; border-radius:50%;
  background:var(--whatsapp);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 24px rgba(31,168,85,.35);
  color:var(--white);
  transition:transform .15s ease;
}
.wa-float:hover{transform:scale(1.06);}
@media (max-width:600px){.wa-float{right:16px; bottom:16px; width:52px; height:52px;}}

/* ---------- Breadcrumbs ---------- */
.breadcrumbs{padding:18px 0 0; font-size:.85rem; color:var(--gray-400); background:var(--blue-050);}
.breadcrumbs a{color:var(--gray-400);}
.breadcrumbs a:hover{color:var(--navy-900);}
.breadcrumbs .sep{margin:0 8px; color:var(--gray-300);}

/* ---------- Page hero (inner pages) ---------- */
.page-hero{
  position:relative; overflow:hidden; isolation:isolate;
  padding:34px 0 64px;
  background:
    radial-gradient(520px 320px at 92% 10%, rgba(242,166,42,.14), transparent 70%),
    radial-gradient(900px 420px at 60% 0%, rgba(40,120,199,.12), transparent 70%),
    linear-gradient(180deg, var(--blue-050), var(--gray-025) 90%);
  border-bottom:1px solid var(--gray-100);
}
.page-hero::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(circle at 1px 1px, rgba(10,36,64,.09) 1px, transparent 0) 0 0/24px 24px;
  -webkit-mask-image:linear-gradient(90deg, transparent 30%, #000 85%);
          mask-image:linear-gradient(90deg, transparent 30%, #000 85%);
}
.page-hero::after{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  width:440px; height:440px; right:-110px; top:-90px; opacity:.4;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23E8702E'/%3E%3Cstop offset='1' stop-color='%23F2A62A'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='url(%23g)' stroke-linecap='round'%3E%3Cpath d='M165 55A80 80 0 1 0 170 140' stroke-width='2.4' opacity='.55'/%3E%3Cpath d='M150 62A62 62 0 1 0 156 132' stroke-width='1.6' opacity='.4'/%3E%3Cpath d='M136 70A44 44 0 1 0 140 124' stroke-width='1.1' opacity='.3'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
@media (max-width:600px){.page-hero::after{opacity:.2;}}
.page-hero h1{margin-bottom:.35em;}
.page-hero .lede{max-width:620px; font-size:1.05rem; color:var(--gray-700);}
.page-hero .actions{margin-top:22px; display:flex; gap:12px; flex-wrap:wrap;}

.service-pill{
  display:inline-flex; align-items:center; gap:8px;
  background:var(--white); border:1px solid var(--gray-100);
  padding:7px 14px; border-radius:999px; font-size:.82rem; font-weight:600; color:var(--navy-900);
  margin-bottom:18px;
}
.service-pill .ic{width:20px; height:20px; color:var(--accent-dark);}

/* ---------- Content blocks (service pages) ---------- */
.two-col{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start;}
@media (max-width:900px){.two-col{grid-template-columns:1fr;}}
.check-list li{
  display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid var(--gray-100); font-size:.96rem;
}
.check-list li:last-child{border-bottom:none;}
.check-list .ic{flex:none; width:20px; height:20px; color:var(--accent-dark); margin-top:2px;}

/* ---------- Form ---------- */
.form-card{
  background:var(--white); border:1px solid var(--gray-100); border-radius:var(--radius-lg);
  padding:34px; box-shadow:var(--shadow-md);
}
.field{margin-bottom:18px;}
.field label{display:block; font-size:.86rem; font-weight:600; color:var(--navy-900); margin-bottom:7px;}
.field input,.field select,.field textarea{
  width:100%; padding:12px 14px; border:1px solid var(--gray-300); border-radius:var(--radius-sm);
  font-family:inherit; font-size:.95rem; color:var(--gray-700); background:var(--white);
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);
}
.field-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media (max-width:560px){.field-row{grid-template-columns:1fr;}}
.form-note{font-size:.82rem; color:var(--gray-400); margin-top:12px;}
.form-success{
  display:none; background:var(--accent-tint); color:var(--accent-dark); border-radius:var(--radius-sm);
  padding:14px 16px; font-size:.92rem; font-weight:600; margin-bottom:18px;
}
.form-success.is-visible{display:block;}

.contact-info-list{display:flex; flex-direction:column; gap:18px;}
.contact-info-item{display:flex; gap:14px; align-items:flex-start;}
.contact-info-item .ic{
  width:42px; height:42px; border-radius:10px; background:var(--accent-tint); color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center; flex:none;
}
.contact-info-item strong{display:block; color:var(--navy-900); font-size:.95rem; margin-bottom:2px;}
.contact-info-item span,.contact-info-item a{font-size:.92rem; color:var(--gray-400);}
.map-frame{
  border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--gray-100); margin-top:22px; height:220px;
}
.map-frame iframe{width:100%; height:100%; border:0;}

/* ---------- Legal text pages ---------- */
.legal-content h2{margin-top:1.6em;}
.legal-content p,.legal-content li{color:var(--gray-700); font-size:.98rem;}
.legal-content ul{margin:0 0 1.2em 1.2em;}
.legal-content li{list-style:disc; margin-bottom:.5em;}
.legal-content{max-width:760px;}

/* ---------- Aviso de cookies (só aparece com Google Analytics configurado) ---------- */
.cookie-bar{
  position:fixed; left:20px; right:20px; bottom:20px; z-index:300;
  max-width:560px; margin-right:auto;
  background:var(--white); border:1px solid var(--gray-100); border-radius:var(--radius-md);
  box-shadow:var(--shadow-lg); padding:18px 20px;
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  transform:translateY(20px); opacity:0; transition:transform .25s ease, opacity .25s ease;
}
.cookie-bar.is-visible{transform:none; opacity:1;}
.cookie-bar p{margin:0; flex:1 1 260px; font-size:.88rem; color:var(--gray-700);}
.cookie-bar a{color:var(--accent-dark); text-decoration:underline;}
.cookie-actions{display:flex; gap:8px;}
@media (max-width:600px){.cookie-bar{left:12px; right:12px; bottom:12px;} .cookie-actions{width:100%;} .cookie-actions .btn{flex:1; justify-content:center;}}

/* ---------- Utility ---------- */
.mt-0{margin-top:0;}
.text-center{text-align:center;}
.small{font-size:.86rem;}
.hidden{display:none !important;}
:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

@media (prefers-reduced-motion: reduce){
  *{transition:none !important; scroll-behavior:auto !important;}
}

/* ============================================================
   CSA 2026 — refinamento premium da nova identidade visual
   ============================================================ */
:root{
  --navy-950:#071521;
  --navy-900:#0B1F2E;
  --navy-800:#123149;
  --navy-700:#1A4867;
  --ink:#142534;
  --gray-025:#FCFBF8;
  --gray-050:#F5F4F0;
  --gray-100:#E8E6DF;
  --gray-300:#D0CEC5;
  --gray-400:#66717A;
  --gray-700:#3D4A53;
  --brand-orange:#D5A65A;
  --brand-gold:#F0CF8A;
  --accent:#B58335;
  --accent-dark:#815C24;
  --accent-tint:#F8F1E4;
  --white:#FFFFFF;
  --shadow-sm:0 8px 24px rgba(9,31,46,.06);
  --shadow-md:0 18px 42px rgba(9,31,46,.10);
  --shadow-lg:0 26px 70px rgba(9,31,46,.18);
  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:22px;
  --container:1200px;
  --header-h:84px;
}
body{background:var(--gray-025); color:var(--gray-700);}
.site-header{height:var(--header-h); background:rgba(252,251,248,.92); border-bottom-color:rgba(11,31,46,.10);}
.site-header::before{height:2px; background:linear-gradient(90deg,var(--navy-900),var(--brand-orange),var(--brand-gold));}
.site-header .container{max-width:1240px;}
.brand-logo{height:47px; max-width:232px; object-fit:contain; object-position:left center;}
.footer-brand .brand-logo{height:68px; max-width:280px;}
.main-nav{gap:6px;}
.main-nav a{font-size:.88rem; letter-spacing:.01em; color:#52616B; padding:10px 13px;}
.main-nav a:hover{background:var(--accent-tint); color:var(--navy-900);}
.main-nav a.is-active{color:var(--navy-900);}
.main-nav a.is-active::after{background:var(--accent); height:3px; bottom:2px;}
.header-actions .btn{border-radius:999px; padding:11px 18px;}
.btn{border-radius:999px; padding:14px 22px; font-size:.91rem; letter-spacing:.01em; transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease;}
.btn:hover{transform:translateY(-2px); box-shadow:0 10px 22px rgba(9,31,46,.12);}
.btn-primary{background:var(--accent); box-shadow:0 8px 18px rgba(181,131,53,.22);}
.btn-primary:hover{background:var(--accent-dark);}
.btn-secondary{border-color:var(--gray-300); background:rgba(255,255,255,.55);}
.btn-ghost-light{background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.28);}
.eyebrow{font-size:.76rem; letter-spacing:.13em; text-transform:uppercase; color:var(--accent-dark); font-weight:700;}
.eyebrow::before{width:28px; height:1px; background:var(--brand-orange);}
h1,h2,h3,h4{font-family:"Sora","Inter",sans-serif; color:var(--navy-900);}
h1{font-size:clamp(2.65rem,5vw,4.9rem); line-height:1.04; letter-spacing:-.045em;}
h2{font-size:clamp(1.8rem,3vw,2.65rem); letter-spacing:-.035em;}
h3{font-size:1.12rem; letter-spacing:-.02em;}
section{padding:104px 0;}
.section-head{max-width:680px; margin-bottom:50px;}
.section-head p:not(.eyebrow){font-size:1.02rem; color:var(--gray-400);}
.bg-tint{background:linear-gradient(180deg,#F5F4F0 0%,#EEEDE7 100%); border-color:var(--gray-100);}
.bg-blue-tint{background:linear-gradient(135deg,#F2F5F4 0%,#F7F1E6 100%);}
.hero{min-height:calc(86vh - var(--header-h)); padding:86px 0 92px; background:linear-gradient(100deg,rgba(7,21,33,.98) 0%,rgba(8,27,42,.89) 50%,rgba(8,27,42,.34) 100%),url("../img/hero-fundo.jpg") center right/cover no-repeat;}
.hero::after{height:2px; background:linear-gradient(90deg,var(--brand-orange),transparent 75%);}
.hero-layout{display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:76px; align-items:center;}
.hero-copy{max-width:700px;}
.hero-copy .eyebrow{color:var(--brand-gold);}
.hero-copy h1{max-width:680px; margin-bottom:.35em;}
.hero-copy p.lede{max-width:610px; font-size:1.08rem; line-height:1.8; color:rgba(255,255,255,.76); margin-bottom:2em;}
.hero-actions{gap:12px;}
.hero-note{display:flex; align-items:center; gap:9px; margin-top:24px; color:rgba(255,255,255,.58); font-size:.82rem;}
.hero-note-dot{width:7px; height:7px; border-radius:50%; background:var(--brand-orange); box-shadow:0 0 0 5px rgba(213,166,90,.13);}
.hero-card{position:relative; padding:30px; border:1px solid rgba(240,207,138,.3); border-radius:var(--radius-lg); background:linear-gradient(145deg,rgba(14,44,63,.94),rgba(8,25,39,.88)); box-shadow:0 25px 65px rgba(0,0,0,.2); color:rgba(255,255,255,.74);}
.hero-card::before{content:""; position:absolute; top:0; left:30px; right:30px; height:2px; background:var(--brand-gold);}
.hero-card-mark{width:46px; height:46px; border-radius:50%; display:grid; place-items:center; border:1px solid rgba(240,207,138,.45); margin-bottom:24px; overflow:hidden;}
.hero-card-mark img{width:34px; height:34px; object-fit:contain;}
.hero-card-kicker{margin-bottom:10px; color:var(--brand-gold); font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; font-weight:700;}
.hero-card h2{font-size:1.48rem; line-height:1.25; color:#fff; letter-spacing:-.03em; margin-bottom:24px;}
.hero-card ul{border-top:1px solid rgba(255,255,255,.14);}
.hero-card li{display:flex; gap:13px; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.12); font-size:.86rem; line-height:1.45;}
.hero-card li span{color:var(--brand-gold); font-family:"Sora",sans-serif; font-size:.7rem; letter-spacing:.08em; margin-top:2px;}
.trust-bar{padding:20px 0; background:#fff; border-color:var(--gray-100);}
.trust-bar .container{gap:18px;}
.trust-item{font-size:.79rem; letter-spacing:.01em; color:#5E6B73;}
.trust-item .ic{width:30px; height:30px; border-radius:50%; background:var(--accent-tint); color:var(--accent-dark);}
.card{padding:30px; border-radius:var(--radius-md); border-color:var(--gray-100); box-shadow:var(--shadow-sm);}
.card::before{height:2px; background:linear-gradient(90deg,var(--accent),var(--brand-gold));}
.card:hover{box-shadow:var(--shadow-md); transform:translateY(-4px);}
.card .ic{width:46px; height:46px; border-radius:13px; background:var(--accent-tint); color:var(--accent-dark); margin-bottom:22px;}
.card p,.card-simple p{color:var(--gray-400); line-height:1.65;}
.card .card-link,.segments-strip .card-link{color:var(--accent-dark);}
.card-simple{padding:28px; border-radius:var(--radius-md); border:1px solid var(--gray-100); border-left:2px solid var(--accent); background:rgba(255,255,255,.82); box-shadow:none;}
.card-simple h3{margin-bottom:.6em;}
.pill-list li{padding:11px 15px; background:rgba(255,255,255,.8); border-color:var(--gray-100); color:var(--navy-900); font-size:.83rem;}
.pill-list li::before{width:5px; height:5px; background:var(--accent);}
.steps{gap:14px;}
.step{padding:28px 24px; border-radius:var(--radius-md); border-color:var(--gray-100); background:rgba(255,255,255,.8);}
.step .num{color:var(--accent-dark); background:var(--accent-tint); border-radius:50%;}
.step h3{font-size:1.03rem; margin-top:18px;}
.step p{font-size:.9rem; color:var(--gray-400);}
.cta-band{padding:45px 52px; border-radius:var(--radius-lg); background:linear-gradient(110deg,var(--navy-900),#163D57); box-shadow:var(--shadow-lg); position:relative; overflow:hidden;}
.cta-band::after{content:""; position:absolute; right:-100px; top:-140px; width:360px; height:360px; border:1px solid rgba(240,207,138,.22); border-radius:50%; box-shadow:0 0 0 30px rgba(240,207,138,.04),0 0 0 60px rgba(240,207,138,.03);}
.cta-band h2{color:#fff; max-width:570px;}
.cta-band p{color:rgba(255,255,255,.68);}
.cta-band .actions{position:relative; z-index:1;}
.site-footer{background:var(--navy-950); border-top:2px solid var(--brand-orange);}
.site-footer .footer-brand p{color:rgba(255,255,255,.55); max-width:310px; line-height:1.75;}
.site-footer h4{color:var(--brand-gold); font-size:.75rem; text-transform:uppercase; letter-spacing:.11em;}
.site-footer li,.site-footer a{color:rgba(255,255,255,.62);}
.site-footer a:hover{color:#fff;}
.footer-bottom{border-top-color:rgba(255,255,255,.12); color:rgba(255,255,255,.45);}
.page-hero{padding:58px 0 78px; background:linear-gradient(135deg,#F4F5F1,#F7F0E4); border-bottom-color:var(--gray-100);}
.page-hero::before{opacity:.3;}
.page-hero::after{opacity:.28;}
.breadcrumbs{font-size:.78rem; color:var(--gray-400);}
.service-pill{background:rgba(255,255,255,.7); border-color:var(--gray-100); color:var(--navy-900);}
.form-card{border-radius:var(--radius-lg); box-shadow:var(--shadow-md); padding:38px;}
.field input,.field select,.field textarea{border-radius:10px; background:#FCFBF8; border-color:var(--gray-300);}
.contact-info-item .ic{border-radius:50%; background:var(--accent-tint); color:var(--accent-dark);}
.wa-float{background:var(--accent) !important; box-shadow:0 10px 25px rgba(181,131,53,.3) !important;}
@media (max-width:1050px){.hero-layout{grid-template-columns:minmax(0,1fr) 320px; gap:36px;} .main-nav{gap:0;} .main-nav a{padding-left:9px; padding-right:9px;}}
@media (max-width:900px){:root{--header-h:76px;} .brand-logo{height:43px;} .main-nav a.is-active::after{display:none;} .hero{padding:72px 0 78px; background:linear-gradient(180deg,rgba(7,21,33,.94),rgba(8,27,42,.88)),url("../img/hero-fundo.jpg") 72% center/cover no-repeat;} .hero-layout{grid-template-columns:1fr; gap:42px;} .hero-card{max-width:520px;} .cta-band{padding:38px 32px;}}
@media (max-width:600px){section{padding:78px 0;} .container{padding:0 20px;} .hero{padding:62px 0 66px;} h1{font-size:clamp(2.35rem,12vw,3.35rem);} .hero-copy p.lede{font-size:1rem; line-height:1.7;} .hero-actions .btn{width:100%; justify-content:center;} .hero-card{padding:26px 22px;} .cta-band{padding:32px 24px;} .cta-band .actions{align-items:stretch; flex-direction:column;} .cta-band .actions .btn{justify-content:center;} .footer-brand .brand-logo{height:58px;}}

/* ============================================================
   CSA — DIREÇÃO 02: EXECUTIVO CONTEMPORÂNEO
   Alto contraste, preto, branco e dourado.
   ============================================================ */
:root{
  --navy-950:#090909;
  --navy-900:#111111;
  --navy-800:#1B1B1B;
  --navy-700:#303030;
  --ink:#111111;
  --gray-025:#FFFFFF;
  --gray-050:#F5F5F3;
  --gray-100:#E6E5E1;
  --gray-300:#C8C6BF;
  --gray-400:#66645F;
  --gray-700:#373633;
  --brand-orange:#C99A45;
  --brand-gold:#F0C878;
  --accent:#B58532;
  --accent-dark:#805A20;
  --accent-tint:#F8F2E6;
  --shadow-sm:0 5px 18px rgba(0,0,0,.06);
  --shadow-md:0 14px 32px rgba(0,0,0,.12);
  --shadow-lg:0 24px 60px rgba(0,0,0,.2);
  --radius-sm:4px;
  --radius-md:8px;
  --radius-lg:14px;
}
body{background:#fff; color:var(--gray-700);}
.site-header{background:rgba(13,13,13,.96); border-bottom:1px solid rgba(255,255,255,.13);}
.site-header::before{height:2px; background:var(--brand-gold);}
.site-header .brand-logo{filter:none;}
.main-nav a{color:rgba(255,255,255,.68); border-radius:4px;}
.main-nav a:hover{color:#fff; background:rgba(255,255,255,.08);}
.main-nav a.is-active{color:#fff;}
.main-nav a.is-active::after{background:var(--brand-gold); height:2px; bottom:2px;}
.header-actions .btn-primary{background:var(--brand-gold); color:#111; box-shadow:none;}
.header-actions .btn-primary:hover{background:#fff; color:#111;}
.nav-toggle{background:#111; border-color:rgba(255,255,255,.22);}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{background:#fff;}
.nav-toggle.is-open span{background:transparent;}
.btn{border-radius:4px; text-transform:none;}
.btn:hover{transform:translateY(-1px); box-shadow:0 8px 16px rgba(0,0,0,.13);}
.btn-primary{background:#111; color:#fff; box-shadow:0 7px 0 rgba(181,133,50,.95);}
.btn-primary:hover{background:#2B2B2B;}
.btn-secondary{border-color:#111; color:#111; background:#fff;}
.btn-secondary:hover{background:#111; color:#fff; border-color:#111;}
.btn-ghost-light{border-radius:4px; background:transparent; border-color:rgba(255,255,255,.45);}
.btn-ghost-light:hover{background:#fff; border-color:#fff; color:#111;}
.eyebrow{color:var(--accent-dark); letter-spacing:.16em;}
.eyebrow::before{background:var(--brand-gold); width:32px;}
.hero{background:linear-gradient(90deg,rgba(7,7,7,.99) 0%,rgba(12,12,12,.94) 54%,rgba(12,12,12,.62) 100%),url("../img/hero-fundo.jpg") center right/cover no-repeat;}
.hero::after{background:var(--brand-gold); height:2px;}
.hero-copy .eyebrow{color:var(--brand-gold);}
.hero-copy h1{font-weight:700; letter-spacing:-.055em;}
.hero-card{border:1px solid rgba(240,200,120,.52); border-radius:8px; background:#111; box-shadow:16px 18px 0 rgba(201,154,69,.95);}
.hero-card::before{background:var(--brand-gold);}
.hero-card-kicker{color:var(--brand-gold);}
.hero-card li span{color:var(--brand-gold);}
.trust-bar{background:#fff; border-color:#E4E3DF;}
.trust-item{color:#4D4B47;}
.trust-item .ic{border-radius:4px; background:#111; color:var(--brand-gold);}
section{padding:96px 0;}
.bg-tint{background:#F4F4F2; border-color:#E4E3DF;}
.bg-blue-tint{background:#F1F1EF;}
.section-head p:not(.eyebrow){color:#62615D;}
.card{border-radius:6px; border-color:#D8D6D0; box-shadow:0 4px 0 #111;}
.card::before{background:var(--brand-gold); height:3px; transform:scaleX(1);}
.card:hover{box-shadow:0 7px 0 var(--brand-gold); transform:translateY(-2px);}
.card .ic{border-radius:5px; background:#111; color:var(--brand-gold);}
.card h3{color:#111;}
.card p{color:#65635F;}
.card .card-link,.segments-strip .card-link{color:#111;}
.card .card-link:hover,.segments-strip .card-link:hover{color:var(--accent-dark);}
.card-simple{border-radius:6px; border:1px solid #D8D6D0; border-left:4px solid #111; background:#fff; box-shadow:none;}
.card-simple:hover{border-left-color:var(--brand-gold);}
.pill-list li{border-radius:4px; background:#fff; border-color:#D8D6D0; color:#111; box-shadow:none;}
.pill-list li::before{border-radius:0; background:#111;}
.step{border-radius:6px; background:#fff; border-color:#D8D6D0;}
.step .num{border-radius:4px; background:#111; color:var(--brand-gold);}
.cta-band{border-radius:8px; background:#111; box-shadow:12px 12px 0 var(--brand-gold);}
.cta-band::after{border-color:rgba(240,200,120,.3);}
.site-footer{background:#0B0B0B; border-top-color:var(--brand-gold);}
.site-footer h4{color:var(--brand-gold);}
.site-footer a:hover{color:var(--brand-gold);}
.page-hero{background:#F3F3F1; border-bottom-color:#DAD9D4;}
.page-hero::before{background:linear-gradient(90deg,transparent,#000); opacity:.04;}
.page-hero::after{opacity:.2;}
.service-pill{border-radius:4px; background:#fff; border-color:#D8D6D0;}
.form-card{border-radius:8px; box-shadow:8px 8px 0 #111; border-color:#D8D6D0;}
.field input,.field select,.field textarea{border-radius:4px; background:#fff; border-color:#BDBBB4;}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brand-gold); border-color:#111;}
.contact-info-item .ic{border-radius:4px; background:#111; color:var(--brand-gold);}
.wa-float{background:#111 !important; border:2px solid var(--brand-gold); box-shadow:0 7px 0 var(--brand-gold) !important;}
@media (max-width:900px){.main-nav{background:#111;}.main-nav a{color:rgba(255,255,255,.76); border-bottom-color:rgba(255,255,255,.12);}.hero-card{box-shadow:8px 9px 0 rgba(201,154,69,.95);}.cta-band{box-shadow:7px 8px 0 var(--brand-gold);}}
@media (max-width:600px){.cta-band{box-shadow:5px 6px 0 var(--brand-gold);}.form-card{box-shadow:5px 5px 0 #111;}}

/* ============================================================
   CSA — DIREÇÃO 03: ACOLHEDORA ESTRATÉGICA
   Verde petróleo, marfim e terracota; estrutura editorial aberta.
   ============================================================ */
:root{
  --navy-950:#123B3A;
  --navy-900:#1D514E;
  --navy-800:#286B65;
  --navy-700:#3D8377;
  --ink:#1E3330;
  --gray-025:#FFFCF7;
  --gray-050:#F6F1E7;
  --gray-100:#E9E1D4;
  --gray-300:#D5C8B7;
  --gray-400:#6D756D;
  --gray-700:#43514C;
  --brand-orange:#C9774F;
  --brand-gold:#D6A560;
  --accent:#B96744;
  --accent-dark:#8F4D34;
  --accent-tint:#F8EDE5;
  --white:#FFFFFF;
  --shadow-sm:0 8px 24px rgba(29,81,78,.08);
  --shadow-md:0 18px 42px rgba(29,81,78,.12);
  --shadow-lg:0 28px 70px rgba(29,81,78,.16);
  --radius-sm:8px;
  --radius-md:16px;
  --radius-lg:26px;
}
body{background:var(--gray-025); color:var(--gray-700);}
.site-header{background:rgba(255,252,247,.94); border-bottom-color:rgba(29,81,78,.13);}
.site-header::before{background:linear-gradient(90deg,var(--navy-900),var(--brand-gold),var(--brand-orange));}
.main-nav a{color:#52635D; border-radius:999px;}
.main-nav a:hover{background:#F2EBDD; color:var(--navy-900);}
.main-nav a.is-active{color:var(--navy-900);}
.main-nav a.is-active::after{background:var(--brand-orange); height:3px; border-radius:99px; bottom:2px;}
.header-actions .btn-primary{background:var(--navy-900); color:#fff; box-shadow:0 8px 18px rgba(29,81,78,.2);}
.header-actions .btn-primary:hover{background:var(--navy-800);}
.nav-toggle{background:#fff; border-color:var(--gray-100);}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{background:var(--navy-900);}
.btn{border-radius:999px;}
.btn-primary{background:var(--accent); color:#fff; box-shadow:0 8px 18px rgba(185,103,68,.22);}
.btn-primary:hover{background:var(--accent-dark);}
.btn-secondary{border-color:var(--navy-900); color:var(--navy-900); background:transparent;}
.btn-secondary:hover{background:var(--navy-900); color:#fff;}
.btn-ghost-light{background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.48);}
.eyebrow{color:var(--accent-dark); letter-spacing:.13em;}
.eyebrow::before{background:var(--brand-orange); width:28px;}
h1,h2,h3,h4{color:var(--navy-900);}
.hero{min-height:auto; padding:82px 0 94px; background:linear-gradient(112deg,#F7F0E3 0%,#F7F0E3 49%,#E9F0E8 100%); color:var(--gray-700);}
.hero::after{background:var(--brand-orange); height:3px;}
.hero-layout{grid-template-columns:minmax(0,1.02fr) minmax(330px,.98fr); gap:70px; align-items:center;}
.hero-copy{max-width:620px;}
.hero-copy .eyebrow{color:var(--accent-dark);}
.hero-copy h1{color:var(--navy-900); max-width:620px; font-size:clamp(2.6rem,4.5vw,4.55rem);}
.hero-copy p.lede{color:#52645F; max-width:560px; font-size:1.06rem; line-height:1.8;}
.hero-note{color:#6D756D;}
.hero-note-dot{background:var(--brand-orange); box-shadow:0 0 0 5px rgba(201,119,79,.13);}
.hero-actions .btn-ghost-light{color:var(--navy-900); border-color:rgba(29,81,78,.32); background:transparent;}
.hero-actions .btn-ghost-light:hover{background:var(--navy-900); color:#fff; border-color:var(--navy-900);}
.hero-visual{position:relative; min-height:500px; padding:12px 36px 52px 0;}
.hero-image-frame{height:500px; overflow:hidden; border-radius:120px 18px 18px 18px; border:10px solid #fff; box-shadow:var(--shadow-lg); background:#CBDDD1; transform:rotate(1.5deg);}
.hero-image-frame img{width:100%; height:100%; object-fit:cover; display:block;}
.hero-stamp{position:absolute; left:-30px; bottom:86px; display:flex; align-items:center; gap:12px; padding:16px 18px; border-radius:12px; background:#fff; color:var(--navy-900); box-shadow:var(--shadow-md); font-size:.7rem; line-height:1.2; letter-spacing:.08em; text-transform:uppercase;}
.hero-stamp-mark{display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:var(--navy-900); color:var(--brand-gold); font:700 .72rem "Sora",sans-serif; letter-spacing:-.05em;}
.hero-caption{position:absolute; right:0; bottom:0; max-width:220px; padding:14px 0 0 18px; border-left:2px solid var(--brand-orange); color:var(--navy-900); font-size:.86rem; line-height:1.45;}
.hero-caption span{display:block; margin-bottom:6px; color:var(--accent); font:700 .7rem "Sora",sans-serif; letter-spacing:.12em;}
.trust-bar{background:#fff; border-color:var(--gray-100);}
.trust-item{color:#5D6A63;}
.trust-item .ic{background:var(--accent-tint); color:var(--accent-dark);}
.intro-section{padding:92px 0 84px; background:#fff;}
.intro-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:92px; align-items:start;}
.intro-lead{position:sticky; top:120px;}
.intro-lead h2{max-width:410px; font-size:clamp(2rem,3vw,3rem);}
.intro-content{padding-top:8px;}
.intro-text{max-width:600px; margin:0 0 34px; color:#53645E; font-size:1.08rem; line-height:1.85;}
.principles{border-top:1px solid var(--gray-100);}
.principles article{display:grid; grid-template-columns:44px 1fr; gap:18px; padding:22px 0; border-bottom:1px solid var(--gray-100);}
.principles article>span{color:var(--accent); font:700 .74rem "Sora",sans-serif; padding-top:3px;}
.principles strong{display:block; color:var(--navy-900); font:600 1.05rem "Sora",sans-serif; margin-bottom:4px;}
.principles p{margin:0; color:var(--gray-400); font-size:.92rem;}
section{padding:98px 0;}
.bg-tint{background:linear-gradient(180deg,#F5F0E7,#EEF3ED); border-color:var(--gray-100);}
.card{border-color:var(--gray-100); box-shadow:var(--shadow-sm);}
.card::before{background:linear-gradient(90deg,var(--accent),var(--brand-gold)); height:3px;}
.card:hover{box-shadow:var(--shadow-md); transform:translateY(-4px);}
.card .ic{background:var(--accent-tint); color:var(--accent-dark);}
.card-simple{border-left-color:var(--accent); background:rgba(255,255,255,.75);}
.pill-list li{background:#fff; border-color:var(--gray-100); color:var(--navy-900);}
.pill-list li::before{background:var(--accent);}
.step{background:rgba(255,255,255,.78); border-color:var(--gray-100);}
.step .num{background:var(--navy-900); color:var(--brand-gold);}
.cta-band{background:var(--navy-900); box-shadow:0 18px 0 #D7AA69;}
.cta-band::after{border-color:rgba(214,165,96,.28);}
.site-footer{background:var(--navy-950); border-top-color:var(--brand-orange);}
.page-hero{background:linear-gradient(135deg,#F3EFE5,#EAF1EB); border-bottom-color:var(--gray-100);}
.form-card{box-shadow:var(--shadow-md); border-color:var(--gray-100);}
.field input,.field select,.field textarea{background:#fff; border-color:var(--gray-300);}
.field input:focus,.field select:focus,.field textarea:focus{outline-color:var(--brand-orange); border-color:var(--navy-900);}
.contact-info-item .ic{background:var(--accent-tint); color:var(--accent-dark);}
.wa-float{background:var(--navy-900) !important; border:2px solid var(--brand-gold); box-shadow:0 8px 20px rgba(29,81,78,.25) !important;}
@media (max-width:900px){.main-nav{background:#FFFCF7;}.main-nav a{color:var(--navy-900); border-bottom-color:var(--gray-100);}.hero{padding:66px 0 76px;}.hero-layout{grid-template-columns:1fr; gap:40px;}.hero-visual{min-height:400px; padding-right:20px;}.hero-image-frame{height:400px;}.hero-stamp{left:0; bottom:65px;}.hero-caption{right:20px;}.intro-grid{grid-template-columns:1fr; gap:26px;}.intro-lead{position:static;}.intro-content{padding-top:0;}}
@media (max-width:600px){.hero-copy h1{font-size:clamp(2.4rem,12vw,3.4rem);}.hero-visual{min-height:340px; padding:8px 12px 44px 0;}.hero-image-frame{height:340px; border-width:7px; border-radius:90px 16px 16px 16px;}.hero-stamp{left:-4px; bottom:55px; padding:12px 14px;}.hero-caption{right:0; max-width:170px; font-size:.77rem;}.intro-section{padding:72px 0 60px;}.intro-text{font-size:1rem;}.principles article{grid-template-columns:34px 1fr;}}

/* ============================================================
   CSA — DIREÇÃO 04: PRETO, BRANCO E DOURADO
   Mantém a nova estrutura editorial e a nova imagem do hero.
   ============================================================ */
:root{
  --navy-950:#090909;
  --navy-900:#111111;
  --navy-800:#242424;
  --navy-700:#3A3A3A;
  --ink:#141414;
  --gray-025:#FFFFFF;
  --gray-050:#F5F5F3;
  --gray-100:#E5E4E0;
  --gray-300:#C8C7C2;
  --gray-400:#6B6A66;
  --gray-700:#3D3C39;
  --brand-orange:#C99945;
  --brand-gold:#E9C36F;
  --accent:#B68435;
  --accent-dark:#815A21;
  --accent-tint:#F7F0E2;
  --shadow-sm:0 8px 24px rgba(0,0,0,.07);
  --shadow-md:0 18px 42px rgba(0,0,0,.12);
  --shadow-lg:0 28px 70px rgba(0,0,0,.18);
}
body{background:#fff; color:var(--gray-700);}
.site-header{background:rgba(14,14,14,.96); border-bottom-color:rgba(255,255,255,.14);}
.site-header::before{background:var(--brand-gold);}
.main-nav a{color:rgba(255,255,255,.72);}
.main-nav a:hover{background:rgba(255,255,255,.08); color:#fff;}
.main-nav a.is-active{color:#fff;}
.main-nav a.is-active::after{background:var(--brand-gold);}
.header-actions .btn-primary{background:var(--brand-gold); color:#111; box-shadow:none;}
.header-actions .btn-primary:hover{background:#fff;}
.nav-toggle{background:#111; border-color:rgba(255,255,255,.24);}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{background:#fff;}
.nav-toggle.is-open span{background:transparent;}
.hero{background:linear-gradient(100deg,#0B0B0B 0%,#151515 53%,#222 100%); color:rgba(255,255,255,.8);}
.hero::after{background:var(--brand-gold);}
.hero-copy .eyebrow{color:var(--brand-gold);}
.hero-copy h1{color:#fff;}
.hero-copy p.lede{color:rgba(255,255,255,.72);}
.hero-note{color:rgba(255,255,255,.58);}
.hero-note-dot{background:var(--brand-gold); box-shadow:0 0 0 5px rgba(233,195,111,.13);}
.hero-actions .btn-primary{background:var(--brand-gold); color:#111; box-shadow:0 8px 18px rgba(233,195,111,.16);}
.hero-actions .btn-primary:hover{background:#fff;}
.hero-actions .btn-ghost-light{color:#fff; border-color:rgba(255,255,255,.4); background:transparent;}
.hero-actions .btn-ghost-light:hover{background:#fff; color:#111;}
.hero-image-frame{border-color:#fff; box-shadow:var(--shadow-lg);}
.hero-stamp{color:#111;}
.hero-stamp-mark{background:#111; color:var(--brand-gold);}
.hero-caption{color:#fff; border-left-color:var(--brand-gold);}
.hero-caption span{color:var(--brand-gold);}
.trust-bar{background:#fff;}
.trust-item .ic{background:#111; color:var(--brand-gold);}
.intro-section{background:#fff;}
.intro-text{color:#5E5D59;}
.principles article>span{color:var(--accent-dark);}
.principles strong{color:#111;}
.bg-tint{background:linear-gradient(180deg,#F4F4F2,#EDEDEA);}
.card{box-shadow:var(--shadow-sm); border-color:var(--gray-100);}
.card::before{background:linear-gradient(90deg,#111,var(--brand-gold));}
.card .ic{background:#111; color:var(--brand-gold);}
.card h3,.card .card-link{color:#111;}
.card-simple{background:#fff; border-left-color:#111;}
.card-simple:hover{border-left-color:var(--brand-gold);}
.pill-list li{color:#111; border-color:var(--gray-100);}
.pill-list li::before{background:#111;}
.step{background:#fff; border-color:var(--gray-100);}
.step .num{background:#111; color:var(--brand-gold);}
.cta-band{background:#111; box-shadow:0 18px 0 var(--brand-gold);}
.site-footer{background:#0B0B0B; border-top-color:var(--brand-gold);}
.page-hero{background:#F3F3F1; border-bottom-color:var(--gray-100);}
.form-card{border-color:var(--gray-100);}
.contact-info-item .ic{background:#111; color:var(--brand-gold);}
.wa-float{background:#111 !important; border-color:var(--brand-gold);}
@media (max-width:900px){.main-nav{background:#111;}.main-nav a{color:rgba(255,255,255,.8); border-bottom-color:rgba(255,255,255,.12);}.hero-image-frame{box-shadow:8px 10px 0 var(--brand-gold);}.hero-stamp{box-shadow:0 14px 30px rgba(0,0,0,.22);}}

/* ============================================================
   CSA — HERO PANORÂMICO
   Nova imagem maior ocupando toda a abertura da Home.
   ============================================================ */
.hero{
  position:relative;
  min-height:690px;
  padding:0;
  display:flex;
  align-items:center;
  overflow:hidden;
  background-color:#0A0A0A;
  background-image:
    linear-gradient(90deg,rgba(7,7,7,.97) 0%,rgba(10,10,10,.86) 34%,rgba(10,10,10,.38) 67%,rgba(10,10,10,.18) 100%),
    url('../img/hero-home-panorama.webp');
  background-size:cover, cover;
  background-position:center, right center;
  background-repeat:no-repeat, no-repeat;
}
.hero::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.2),transparent 30%,rgba(0,0,0,.24)); pointer-events:none;}
.hero::after{z-index:2;}
.hero-layout{position:relative; z-index:3; width:100%; min-height:690px; display:flex; align-items:center;}
.hero-copy{max-width:650px; padding:72px 0 88px;}
.hero-visual{display:none;}
.hero-copy h1{font-size:clamp(3rem,5.4vw,5.5rem); line-height:1.02; max-width:680px;}
.hero-copy p.lede{max-width:570px; font-size:1.12rem;}
.trust-bar{position:relative; z-index:4;}
@media (max-width:900px){
  .hero{min-height:700px; background-position:center; background-size:cover, cover;}
  .hero-layout{min-height:700px;}
  .hero-copy{padding:90px 0 96px;}
  .hero-copy h1{font-size:clamp(2.75rem,11vw,4.4rem);}
}
@media (max-width:600px){
  .hero{min-height:760px; background-position:center; background-size:cover, cover;}
  .hero-layout{min-height:760px;}
  .hero-copy{padding:92px 0 112px;}
  .hero-copy h1{font-size:clamp(2.65rem,12vw,4rem);}
}
