/* ===== GLOBAL: variaveis, reset, tipografia base ===== */

:root {
    --navy:#1F4759; --navy-deep:#16323F; --cream:#F2EFE9;
    --olive:#7C8C6B; --ink:#16242C; --rose:#D98E73;
  }

* {margin:0;padding:0;box-sizing:border-box;}

html {scroll-behavior:smooth;}

body { font-family:'IBM Plex Sans',sans-serif; color:var(--ink); background:var(--cream); overflow-x:hidden; }

/* ===== COMPONENTES COMPARTILHADOS (identicos em todas as paginas) ===== */

a { text-decoration:none; color:inherit; }

.disp { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; letter-spacing:-0.02em; }

nav {
    position:fixed; top:0; left:0; right:0; z-index:200;
    display:flex; justify-content:space-between; align-items:center;
    padding:1.3rem 4rem;
    background:var(--navy-deep);
    border-bottom:1px solid rgba(255,255,255,0.08);
  }

.logo { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:1.4rem; color:#fff; display:flex; align-items:center; }

.logo img { height:42px; width:auto; display:block; }

.nav-links { display:flex; gap:2.4rem; font-size:0.92rem; font-weight:500; color:rgba(242,239,233,0.85); }

.nav-links a { transition:color 0.2s; }

.nav-links a:hover { color:#fff; }

.btn-cream:hover { transform:translateY(-3px); background:#fff; }

.kicker { font-size:0.92rem; font-weight:700; color:var(--olive); text-transform:uppercase; letter-spacing:0.02em; }

.cd-item .kicker { color:var(--rose); margin-bottom:0.5rem; }

.cd-item a:hover { color:var(--rose); }

footer.site-footer {
    background:#101E26; color:#fff;
    padding:4rem 4rem 0;
  }

.footer-grid {
    max-width:1320px; margin:0 auto;
    display:grid; grid-template-columns:2fr 1.2fr 1.2fr 1fr;
    gap:3rem; padding-bottom:3.5rem;
    border-bottom:1px solid rgba(255,255,255,0.1);
  }

.footer-col .footer-logo {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:1.5rem; color:#fff; margin-bottom:1rem;
  }

.footer-col .footer-tagline {
    font-size:0.9rem; color:rgba(242,239,233,0.55); line-height:1.6; max-width:280px;
  }

.footer-col h4 {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:700;
    font-size:0.78rem; text-transform:uppercase; letter-spacing:0.08em;
    color:var(--rose); margin-bottom:1.2rem;
  }

.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:0.6rem; }

.footer-col ul li { font-size:0.92rem; color:rgba(242,239,233,0.7); line-height:1.5; }

.footer-col ul li a { color:rgba(242,239,233,0.7); transition:color 0.2s; }

.footer-col ul li a:hover { color:#fff; }

.social-row { display:flex; gap:0.8rem; margin-top:0.4rem; }

.social-btn:hover { background:var(--rose); }

.social-btn svg { width:16px; height:16px; fill:#fff; }

.footer-bottom {
    max-width:1320px; margin:0 auto;
    display:flex; justify-content:space-between; align-items:center;
    padding:1.6rem 0; font-size:0.82rem; color:rgba(242,239,233,0.4);
  }

.reveal { opacity:0; transform:translateY(24px); transition:opacity 0.7s ease, transform 0.7s ease; }

.reveal.in { opacity:1; transform:none; }

/* ===== REDESIGN: tipografia distintiva, profundidade e movimento (site inteiro) ===== */

.kicker, .hero-tag, .ns-kicker, .stat-label, .ns-num, .section-kicker,
.toc-num, .knum, .cq-label, .cd-item .kicker, .clientes-head .kicker {
    font-family:'IBM Plex Mono', monospace;
    letter-spacing:0.06em;
  }

/* revelação escalonada: usar junto com .reveal em qualquer página */
.reveal.stag-1 { transition-delay:0.05s; }
.reveal.stag-2 { transition-delay:0.15s; }
.reveal.stag-3 { transition-delay:0.28s; }
.reveal.stag-4 { transition-delay:0.4s; }
.reveal.stag-5 { transition-delay:0.52s; }

/* profundidade: grid de blueprint sutil + gradiente em camadas em qualquer hero do site */
header.hero, header.page-hero { position:relative; overflow:hidden; }

header.hero::before, header.page-hero::before {
    content:'';
    position:absolute; inset:0; z-index:0;
    background:
      radial-gradient(ellipse 900px 600px at 85% 10%, rgba(217,142,115,0.16), transparent 60%),
      radial-gradient(ellipse 700px 500px at 10% 90%, rgba(124,140,107,0.14), transparent 60%);
    pointer-events:none;
  }

header.hero .hero-grid, header.page-hero .hero-grid {
    position:absolute; inset:0; z-index:0; pointer-events:none;
    background-image:
      linear-gradient(rgba(242,239,233,0.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(242,239,233,0.05) 1px, transparent 1px);
    background-size:64px 64px;
    -webkit-mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,0.9) 40%, transparent);
    mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,0.9) 40%, transparent);
  }

header.hero .inner, header.page-hero .inner,
header.page-hero .hero-bg-num { position:relative; z-index:1; }

.band { position:relative; padding:7rem 4rem; overflow:hidden; }

.band-num {
    position:absolute; font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; top:-3rem; right:-2rem; opacity:0.05; pointer-events:none;
  }

.inner { max-width:1320px; margin:0 auto; position:relative; z-index:2; }

footer.fbar {
    display:flex; justify-content:space-between;
    padding:3rem 4rem; font-size:0.84rem; color:#5A6770;
    max-width:1320px; margin:0 auto;
  }

.breadcrumb a { color:rgba(242,239,233,0.6); transition:color 0.2s; }

.breadcrumb a:hover { color:#fff; }

.breadcrumb span { color:rgba(242,239,233,0.25); }

.toc-band { background:#fff; padding:4rem 4rem; }

.toc-band .inner { max-width:1320px; margin:0 auto; }

.toc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }

.toc-item {
    background:var(--cream); border-radius:16px; padding:1.6rem;
    display:flex; flex-direction:column; gap:0.6rem;
    transition:transform 0.25s, box-shadow 0.25s;
    cursor:pointer;
  }

.toc-item:hover { transform:translateY(-4px); box-shadow:0 20px 40px -15px rgba(31,71,89,0.15); }

.toc-num { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:0.8rem; color:var(--rose); }

.toc-item h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1rem; line-height:1.2; }

.toc-arrow { font-size:0.82rem; color:var(--olive); margin-top:auto; font-weight:600; }

.content-band { background:var(--cream); padding:5rem 4rem; }

.content-band .inner {
    max-width:1320px; margin:0 auto;
    display:grid; grid-template-columns:1fr 340px; gap:5rem; align-items:start;
  }

.policy-sections { display:flex; flex-direction:column; gap:4rem; }

.policy-section { scroll-margin-top:6rem; }

.policy-section .sec-tag { font-size:0.8rem; font-weight:700; color:var(--rose); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:0.6rem; }

.policy-section h2 {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:700;
    font-size:clamp(1.6rem,2.5vw,2.2rem); line-height:1.05;
    margin-bottom:1.6rem; color:var(--navy-deep);
  }

.policy-section p { font-size:1rem; line-height:1.8; color:#3C4C56; margin-bottom:1.2rem; }

.policy-section p:last-child { margin-bottom:0; }

.policy-list { list-style:none; display:flex; flex-direction:column; gap:0.8rem; margin:1.2rem 0; }

.policy-list li {
    display:flex; gap:1rem; align-items:flex-start;
    font-size:0.98rem; line-height:1.7; color:#3C4C56;
  }

.policy-list li::before {
    content:''; flex-shrink:0;
    width:6px; height:6px; border-radius:50%;
    background:var(--rose); margin-top:0.6rem;
  }

.section-divider { border:none; border-top:1px solid rgba(31,71,89,0.1); margin:0; }

.sidebar { position:sticky; top:6rem; display:flex; flex-direction:column; gap:1.6rem; }

.sidebar-card {
    background:#fff; border-radius:24px; padding:2rem;
    display:flex; flex-direction:column; gap:1rem;
  }

.sidebar-card.navy { background:var(--navy); color:#fff; }

.sidebar-card h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.1rem; color:var(--navy-deep); }

.sidebar-card p { font-size:0.88rem; line-height:1.6; color:#5A6770; }

.sidebar-card .sc-kicker { font-size:0.78rem; font-weight:700; color:var(--rose); text-transform:uppercase; letter-spacing:0.06em; }

.sidebar-card .sc-info { font-size:0.9rem; font-weight:600; color:var(--navy-deep); }

.nav-index { display:flex; flex-direction:column; gap:0.3rem; }

.nav-index a {
    font-size:0.86rem; color:#5A6770; padding:0.5rem 0.8rem; border-radius:8px;
    transition:background 0.2s, color 0.2s; font-weight:500;
  }

.nav-index a:hover { background:var(--cream); color:var(--navy-deep); }

.nav-index a.active { background:var(--cream); color:var(--navy); font-weight:600; }

.highlight-block {
    background:var(--navy-deep); color:#fff;
    border-radius:20px; padding:2rem;
    margin:1.6rem 0;
  }

.highlight-block p { color:rgba(242,239,233,0.8); font-size:0.95rem; line-height:1.7; margin:0; }

.highlight-block strong { color:#fff; }

.cta-card {
    background:var(--navy); border-radius:32px; padding:4.5rem;
    color:#fff; display:grid; grid-template-columns:1.3fr 1fr; gap:3rem;
    max-width:1320px; margin:0 auto;
  }

.cta-card h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(2rem,3.5vw,2.8rem); line-height:1.05; margin-bottom:1.4rem; }

.cta-card .lead { font-size:1.05rem; line-height:1.7; color:rgba(242,239,233,0.78); margin-bottom:2rem; }

.cta-details { display:flex; flex-direction:column; gap:1.8rem; justify-content:center; }

.form-group label .req { color:var(--rose); margin-left:2px; }

.form-group input:focus,
  .form-group select:focus,
  .form-group textarea:focus {
    border-color:var(--navy); box-shadow:0 0 0 3px rgba(31,71,89,0.1);
  }

.form-group input::placeholder,
  .form-group textarea::placeholder { color:#A0B0BA; }

.btn-navy {
    background:var(--navy); color:#fff;
    padding:1.1rem 2.2rem; border-radius:40px; font-weight:700; font-size:0.98rem;
    border:none; cursor:pointer; display:inline-flex; align-items:center; gap:0.6rem;
    transition:transform 0.25s, background 0.25s; width:100%; justify-content:center;
    font-family:'Inter',sans-serif;
  }

.btn-navy:hover { transform:translateY(-3px); background:var(--navy-deep); }

.btn-navy:disabled { opacity:0.5; cursor:not-allowed; transform:none; }


/* ===== PAGINA: home ===== */
body.page-home .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-home .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-home .hero {
    background:var(--navy); color:var(--cream);
    min-height:100vh; display:flex; align-items:center; padding:0 4rem;
  }

body.page-home .hero .inner { max-width:1320px; width:100%; padding-top:7.5rem; }

body.page-home .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.6rem; text-transform:uppercase; }

body.page-home h1.hero-title { font-size:clamp(3.2rem,7vw,6.4rem); line-height:0.96; color:#fff; margin-bottom:2.2rem; max-width:980px; }

body.page-home .hero-lead { font-size:1.25rem; line-height:1.6; color:rgba(242,239,233,0.78); max-width:560px; margin-bottom:2.6rem; }

body.page-home .hero-ctas { display:flex; gap:1.2rem; align-items:center; margin-bottom:5rem; }

body.page-home .btn-cream {
    background:var(--cream); color:var(--navy-deep);
    padding:1.05rem 2rem; border-radius:40px; font-weight:700; font-size:0.98rem;
    display:inline-flex; align-items:center; gap:0.6rem;
    transition:transform 0.25s, background 0.25s;
  }

body.page-home .btn-outline-light { color:#fff; font-weight:600; font-size:0.98rem; border-bottom:1.5px solid rgba(255,255,255,0.5); padding-bottom:3px; }

body.page-home .stat-row { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; border-top:1px solid rgba(242,239,233,0.2); padding-top:2.2rem; }

body.page-home .stat-num { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:2.6rem; color:#fff; line-height:1; }

body.page-home .stat-label { font-size:0.84rem; color:rgba(242,239,233,0.65); margin-top:0.4rem; }

body.page-home .nav-sections { background:var(--cream); padding:5rem 4rem; }

body.page-home .nav-sections .inner { max-width:1320px; margin:0 auto; }

body.page-home .ns-kicker { font-size:0.92rem; font-weight:700; color:var(--olive); text-transform:uppercase; letter-spacing:0.02em; margin-bottom:2rem; }

body.page-home .ns-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; }

body.page-home .ns-card {
    background:#fff; border-radius:24px; padding:2.4rem;
    transition:transform 0.3s, box-shadow 0.3s;
    display:flex; flex-direction:column; gap:1.2rem;
  }

body.page-home .ns-card:hover { transform:translateY(-6px); box-shadow:0 30px 50px -20px rgba(31,71,89,0.2); }

body.page-home .ns-card.navy { background:var(--navy); color:#fff; }

body.page-home .ns-card.olive { background:var(--olive); color:#fff; }

body.page-home .ns-card.navy-deep { background:var(--navy-deep); color:#fff; }

body.page-home .ns-num { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:0.85rem; color:var(--rose); }

body.page-home .ns-card.navy .ns-num,
body.page-home .ns-card.olive .ns-num,
body.page-home .ns-card.navy-deep .ns-num { color:rgba(242,239,233,0.5); }

body.page-home .ns-card h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.4rem; }

body.page-home .ns-card p { font-size:0.9rem; line-height:1.6; color:#5A6770; }

body.page-home .ns-card.navy p,
body.page-home .ns-card.olive p,
body.page-home .ns-card.navy-deep p { color:rgba(242,239,233,0.7); }

body.page-home .ns-link { font-size:0.88rem; font-weight:600; color:var(--rose); margin-top:auto; }

body.page-home .ns-card.navy .ns-link,
body.page-home .ns-card.olive .ns-link,
body.page-home .ns-card.navy-deep .ns-link { color:rgba(242,239,233,0.8); }

body.page-home .contato-band { background:var(--cream); padding:0 4rem 0; }

body.page-home .contato-card {
    background:var(--navy); border-radius:32px; padding:4.5rem;
    color:#fff; display:grid; grid-template-columns:1.3fr 1fr; gap:3rem;
    max-width:1320px; margin:0 auto;
  }

body.page-home .contato-card h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(2.2rem,4vw,3rem); line-height:1.05; margin-bottom:1.6rem; }

body.page-home .contato-card .hero-lead { color:rgba(242,239,233,0.75); margin-bottom:2rem; }

body.page-home .contato-details { display:flex; flex-direction:column; gap:1.8rem; justify-content:center; }

body.page-home .cd-item a,
body.page-home .cd-item p { font-size:1.1rem; color:#fff; display:block; line-height:1.5; }

body.page-home .clientes-band { background:#fff; padding:5rem 4rem; }

body.page-home .clientes-band .inner { max-width:1320px; margin:0 auto; }

body.page-home .clientes-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:3rem; }

body.page-home .clientes-head .kicker { color:var(--olive); font-size:0.92rem; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; }

body.page-home .clientes-head h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(1.8rem,3vw,2.6rem); line-height:1.05; margin-top:0.6rem; }

body.page-home .clientes-head p { font-size:0.95rem; color:#5A6770; max-width:320px; text-align:right; line-height:1.5; }

body.page-home .clientes-grid {
    display:grid; grid-template-columns:repeat(5,1fr); gap:1px;
    background:rgba(31,71,89,0.08); border-radius:20px; overflow:hidden;
  }

body.page-home .cliente-slot {
    background:#fff; aspect-ratio:16/9;
    display:flex; align-items:center; justify-content:center;
    padding:1.6rem; transition:background 0.2s;
    position:relative;
  }

body.page-home .cliente-slot:hover { background:var(--cream); }

body.page-home .cliente-slot .logo-placeholder {
    display:flex; flex-direction:column; align-items:center; gap:0.5rem;
  }

body.page-home .cliente-slot .logo-placeholder .lp-bar {
    height:3px; background:rgba(31,71,89,0.12); border-radius:2px;
  }

body.page-home .cliente-slot .logo-placeholder .lp-bar:nth-child(1) { width:60px; }

body.page-home .cliente-slot .logo-placeholder .lp-bar:nth-child(2) { width:40px; }

body.page-home .cliente-slot .logo-name {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:700;
    font-size:0.95rem; color:rgba(31,71,89,0.25); text-align:center; line-height:1.2;
    letter-spacing:0.05em; text-transform:uppercase;
  }

body.page-home .cliente-slot.add-slot {
    border:2px dashed rgba(31,71,89,0.15);
    background:transparent; cursor:default;
  }

body.page-home .cliente-slot.add-slot .logo-name { color:rgba(31,71,89,0.2); font-size:0.8rem; }

body.page-home .cliente-slot img.logo-img {
    max-width:100%; max-height:70px; object-fit:contain;
    filter:grayscale(1) opacity(0.55);
    transition:filter 0.25s;
  }

body.page-home .cliente-slot:hover img.logo-img { filter:grayscale(0) opacity(1); }

body.page-home .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }

/* ===== REDESIGN (pilot): tipografia distintiva, profundidade e movimento ===== */

body.page-home { font-family:'IBM Plex Sans', sans-serif; }

body.page-home .hero-tag,
body.page-home .ns-kicker,
body.page-home .kicker,
body.page-home .stat-label,
body.page-home .ns-num,
body.page-home .clientes-head .kicker {
    font-family:'IBM Plex Mono', monospace;
    letter-spacing:0.06em;
  }

body.page-home h1.hero-title { font-weight:800; }

body.page-home .hero-title-light {
    font-weight:200;
    font-style:italic;
    color:rgba(255,255,255,0.55);
  }

/* profundidade: grid de blueprint sutil + gradiente em camadas no hero */
body.page-home .hero { position:relative; overflow:hidden; }

body.page-home .hero::before {
    content:'';
    position:absolute; inset:0;
    background:
      radial-gradient(ellipse 900px 600px at 85% 10%, rgba(217,142,115,0.16), transparent 60%),
      radial-gradient(ellipse 700px 500px at 10% 90%, rgba(124,140,107,0.14), transparent 60%),
      linear-gradient(160deg, var(--navy) 0%, var(--navy-deep) 100%);
    z-index:0;
  }

body.page-home .hero-grid {
    position:absolute; inset:0; z-index:0;
    background-image:
      linear-gradient(rgba(242,239,233,0.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(242,239,233,0.05) 1px, transparent 1px);
    background-size:64px 64px;
    -webkit-mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,0.9) 40%, transparent);
    mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,0.9) 40%, transparent);
  }

body.page-home .hero .inner { position:relative; z-index:1; }

/* movimento: revelação escalonada */
body.page-home .reveal { transition-delay:0s; }
body.page-home .reveal.stag-1 { transition-delay:0.05s; }
body.page-home .reveal.stag-2 { transition-delay:0.15s; }
body.page-home .reveal.stag-3 { transition-delay:0.28s; }
body.page-home .reveal.stag-4 { transition-delay:0.4s; }
body.page-home .reveal.stag-5 { transition-delay:0.52s; }

body.page-home .ns-grid .ns-card:nth-child(1) { transition-delay:0.05s; }
body.page-home .ns-grid .ns-card:nth-child(2) { transition-delay:0.15s; }
body.page-home .ns-grid .ns-card:nth-child(3) { transition-delay:0.25s; }
body.page-home .ns-grid .ns-card:nth-child(4) { transition-delay:0.35s; }

/* variação de layout: quebra o card-grid uniforme com ritmo grande/pequeno alternado */
body.page-home .ns-grid { grid-template-columns:repeat(3,1fr); }

body.page-home .ns-grid .ns-card:nth-child(1),
body.page-home .ns-grid .ns-card:nth-child(3) { grid-column:span 2; }

body.page-home .ns-grid .ns-card:nth-child(1) h3,
body.page-home .ns-grid .ns-card:nth-child(3) h3 { font-size:1.7rem; }

@media (prefers-reduced-motion:reduce) {
  body.page-home .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-home .ns-grid .ns-card:nth-child(1),
  body.page-home .ns-grid .ns-card:nth-child(3) { grid-column:span 1; }

  body.page-home nav { padding:1.2rem 1.6rem; }

  body.page-home .nav-links { display:none; }

  body.page-home .hero { padding:0 1.6rem; }

  body.page-home h1.hero-title { font-size:2.6rem; }

  body.page-home .stat-row { grid-template-columns:repeat(2,1fr); gap:1.6rem; }

  body.page-home .nav-sections { padding:3.5rem 1.6rem; }

  body.page-home .ns-grid { grid-template-columns:1fr 1fr; }

  body.page-home .contato-band { padding:0 1.6rem; }

  body.page-home .contato-card { grid-template-columns:1fr; padding:2.4rem; border-radius:20px; }

  body.page-home .clientes-band { padding:3.5rem 1.6rem; }

  body.page-home .clientes-head { flex-direction:column; align-items:flex-start; gap:0.6rem; }

  body.page-home .clientes-head p { text-align:left; }

  body.page-home .clientes-grid { grid-template-columns:repeat(3,1fr); }

  body.page-home footer.site-footer { padding:3rem 1.6rem 0; }

  body.page-home .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }

  body.page-home .footer-bottom { flex-direction:column; gap:0.4rem; padding:1.4rem 0; text-align:center; }
}

@media (max-width:520px) {
  body.page-home .clientes-grid { grid-template-columns:repeat(2,1fr); }

  body.page-home .footer-grid { grid-template-columns:1fr; }
}


/* ===== PAGINA: atuacao ===== */
body.page-atuacao .nav-links a.active { color:#fff; border-bottom:2px solid var(--rose); padding-bottom:2px; }

body.page-atuacao .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-atuacao .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-atuacao .page-hero {
    background:var(--olive); color:#fff;
    padding:10rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-atuacao .page-hero .inner { max-width:1320px; margin:0 auto; }

body.page-atuacao .hero-bg-num {
    position:absolute; right:-2rem; top:-3rem;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; opacity:0.08; pointer-events:none;
  }

body.page-atuacao .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:rgba(255,255,255,0.7); margin-bottom:1.2rem; text-transform:uppercase; }

body.page-atuacao h1.page-title { font-size:clamp(2.8rem,6vw,5.2rem); line-height:0.96; color:#fff; margin-bottom:1.8rem; }

body.page-atuacao .page-lead { font-size:1.2rem; line-height:1.6; color:rgba(255,255,255,0.82); max-width:560px; }

body.page-atuacao h2.band-title { font-size:clamp(2.2rem,4vw,3.4rem); line-height:1.02; margin:1rem 0 0; }

body.page-atuacao #atuacao { background:var(--olive); color:#fff; }

body.page-atuacao .atuacao-layout { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }

body.page-atuacao .atuacao-text p { font-size:1.15rem; line-height:1.7; color:rgba(255,255,255,0.88); margin-bottom:1.2rem; }

body.page-atuacao .atuacao-text strong { color:#fff; }

body.page-atuacao .chip-row { display:flex; gap:0.8rem; flex-wrap:wrap; margin-top:1.8rem; }

body.page-atuacao .chip { background:rgba(255,255,255,0.15); border-radius:30px; padding:0.6rem 1.3rem; font-size:0.86rem; font-weight:600; }

body.page-atuacao .atuacao-media { position:relative; }

body.page-atuacao .atuacao-map-img {
    width:100%; height:auto; display:block; border-radius:18px;
    box-shadow:0 20px 40px -15px rgba(0,0,0,0.35);
  }

body.page-atuacao #setores { background:var(--cream); }

body.page-atuacao .sector-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; margin-top:3rem; }

body.page-atuacao .sector-card { background:#fff; border-radius:24px; padding:2.4rem; transition:transform 0.3s, box-shadow 0.3s; }

body.page-atuacao .sector-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px -15px rgba(31,71,89,0.18); }

body.page-atuacao .sector-icon { font-size:2.2rem; margin-bottom:1rem; }

body.page-atuacao .sector-card h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.2rem; margin-bottom:0.6rem; }

body.page-atuacao .sector-card p { font-size:0.93rem; line-height:1.6; color:#5A6770; }

body.page-atuacao #diferenciais { background:var(--navy-deep); color:#fff; }

body.page-atuacao .dif-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; margin-top:3rem; }

body.page-atuacao .dif-item { padding:2rem; border-radius:20px; background:rgba(255,255,255,0.06); }

body.page-atuacao .dif-num { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:0.88rem; color:var(--rose); margin-bottom:0.8rem; }

body.page-atuacao .dif-item h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.1rem; margin-bottom:0.6rem; }

body.page-atuacao .dif-item p { font-size:0.92rem; line-height:1.6; color:rgba(242,239,233,0.65); }

@media (prefers-reduced-motion:reduce) {
  body.page-atuacao .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-atuacao nav { padding:1.2rem 1.6rem; }

  body.page-atuacao .nav-links { display:none; }

  body.page-atuacao .band { padding:4.5rem 1.6rem; }

  body.page-atuacao .page-hero { padding:7.5rem 1.6rem 4rem; }

  body.page-atuacao .atuacao-layout { grid-template-columns:1fr; }

  body.page-atuacao .sector-grid,
body.page-atuacao .dif-grid { grid-template-columns:1fr 1fr; }

  body.page-atuacao .band-num { font-size:10rem; }

  body.page-atuacao footer.fbar { flex-direction:column; gap:0.5rem; padding:2.4rem 1.6rem; }
}

@media (max-width:600px) {
  body.page-atuacao .sector-grid,
body.page-atuacao .dif-grid { grid-template-columns:1fr; }
}

body.page-atuacao .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }


/* ===== PAGINA: compliance ===== */
body.page-compliance .nav-links a.active { color:#fff; border-bottom:2px solid var(--rose); padding-bottom:2px; }

body.page-compliance .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-compliance .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-compliance .page-hero {
    background:var(--navy-deep); color:#fff;
    padding:10rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-compliance .page-hero .inner { max-width:1320px; margin:0 auto; }

body.page-compliance .hero-bg-num {
    position:absolute; right:-2rem; top:-3rem;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; opacity:0.05; pointer-events:none;
  }

body.page-compliance .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.2rem; text-transform:uppercase; }

body.page-compliance h1.page-title { font-size:clamp(2.8rem,6vw,5.2rem); line-height:0.96; color:#fff; margin-bottom:1.8rem; }

body.page-compliance .page-lead { font-size:1.2rem; line-height:1.6; color:rgba(242,239,233,0.75); max-width:560px; }

body.page-compliance h2.band-title { font-size:clamp(2.2rem,4vw,3.4rem); line-height:1.02; margin:1rem 0 0; }

body.page-compliance #compliance { background:var(--navy-deep); color:#fff; }

body.page-compliance .compliance-statement {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:600;
    font-size:1.7rem; line-height:1.4; max-width:900px; margin-bottom:3.5rem; color:#fff;
  }

body.page-compliance .compliance-row {
    display:grid; grid-template-columns:repeat(3,1fr); gap:2.5rem;
    border-top:1px solid rgba(255,255,255,0.15); padding-top:2.5rem;
  }

body.page-compliance .ccol .knum { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; color:var(--rose); font-size:0.95rem; }

body.page-compliance .ccol h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.2rem; margin:0.7rem 0 0.7rem; }

body.page-compliance .ccol p { font-size:0.96rem; color:rgba(242,239,233,0.7); line-height:1.6; }

body.page-compliance #pilares { background:var(--cream); }

body.page-compliance .pilares-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.4rem; margin-top:3rem; }

body.page-compliance .pilar-card { background:#fff; border-radius:24px; padding:2.4rem; transition:transform 0.3s, box-shadow 0.3s; }

body.page-compliance .pilar-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px -15px rgba(31,71,89,0.2); }

body.page-compliance .pilar-card:first-child { background:var(--navy); color:#fff; }

body.page-compliance .pilar-card:first-child p { color:rgba(242,239,233,0.75); }

body.page-compliance .pilar-icon { font-size:1.8rem; margin-bottom:1.2rem; }

body.page-compliance .pilar-card h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.25rem; margin-bottom:0.7rem; }

body.page-compliance .pilar-card p { font-size:0.96rem; line-height:1.65; color:#5A6770; }

body.page-compliance #lgpd { background:var(--navy); color:#fff; }

body.page-compliance .lgpd-layout { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:start; }

body.page-compliance .lgpd-lead { font-size:1.15rem; line-height:1.75; color:rgba(242,239,233,0.8); margin-bottom:2rem; }

body.page-compliance .lgpd-items { display:flex; flex-direction:column; gap:1.4rem; }

body.page-compliance .lgpd-item { display:flex; gap:1rem; align-items:flex-start; }

body.page-compliance .lgpd-dot { width:8px; height:8px; border-radius:50%; background:var(--rose); flex-shrink:0; margin-top:0.4rem; }

body.page-compliance .lgpd-item p { font-size:0.98rem; line-height:1.6; color:rgba(242,239,233,0.75); }

body.page-compliance .lgpd-item strong { color:#fff; }

@media (prefers-reduced-motion:reduce) {
  body.page-compliance .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-compliance nav { padding:1.2rem 1.6rem; }

  body.page-compliance .nav-links { display:none; }

  body.page-compliance .band { padding:4.5rem 1.6rem; }

  body.page-compliance .page-hero { padding:7.5rem 1.6rem 4rem; }

  body.page-compliance .compliance-row,
body.page-compliance .pilares-grid,
body.page-compliance .lgpd-layout { grid-template-columns:1fr; }

  body.page-compliance .band-num { font-size:10rem; }

  body.page-compliance footer.fbar { flex-direction:column; gap:0.5rem; padding:2.4rem 1.6rem; }
}

body.page-compliance .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }


/* ===== PAGINA: contato ===== */
body.page-contato .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid rgba(255,255,255,0.4); border-radius:30px;
    background:var(--rose); border-color:var(--rose);
    transition:background 0.2s, color 0.2s;
  }

body.page-contato .nav-cta:hover { background:#c47a60; border-color:#c47a60; }

body.page-contato .page-hero {
    background:var(--navy); color:#fff;
    padding:10rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-contato .page-hero .inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:1.2fr 1fr; gap:4rem; align-items:end; }

body.page-contato .hero-bg-num {
    position:absolute; right:-2rem; top:-3rem;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; opacity:0.05; pointer-events:none;
  }

body.page-contato .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.2rem; text-transform:uppercase; }

body.page-contato h1.page-title { font-size:clamp(2.4rem,5vw,4.4rem); line-height:1; color:#fff; margin-bottom:1.4rem; }

body.page-contato .page-lead { font-size:1.15rem; line-height:1.6; color:rgba(242,239,233,0.75); }

body.page-contato .contact-quick { display:flex; flex-direction:column; gap:1.4rem; }

body.page-contato .cq-item .cq-label { font-size:0.82rem; font-weight:700; text-transform:uppercase; color:var(--rose); letter-spacing:0.04em; margin-bottom:0.3rem; }

body.page-contato .cq-item a,
body.page-contato .cq-item p { font-size:1.05rem; color:rgba(242,239,233,0.9); display:block; line-height:1.5; }

body.page-contato .cq-item a:hover { color:#fff; }

body.page-contato .main-band { background:var(--cream); padding:6rem 4rem; }

body.page-contato .main-inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:1fr 1.3fr; gap:4rem; }

body.page-contato h2.band-title { font-size:clamp(2rem,4vw,3rem); line-height:1.05; margin:0.8rem 0 1.6rem; }

body.page-contato .contact-info { display:flex; flex-direction:column; gap:2rem; }

body.page-contato .ci-block .ci-label { font-size:0.88rem; font-weight:700; text-transform:uppercase; color:var(--olive); letter-spacing:0.03em; margin-bottom:0.6rem; }

body.page-contato .ci-block a,
body.page-contato .ci-block p { font-size:1.08rem; color:var(--ink); display:block; line-height:1.6; transition:color 0.2s; }

body.page-contato .ci-block a:hover { color:var(--rose); }

body.page-contato .address-map {
    background:var(--navy-deep); border-radius:20px; padding:2rem;
    color:#fff; margin-top:1rem;
  }

body.page-contato .address-map p { font-size:0.95rem; color:rgba(242,239,233,0.8); line-height:1.6; }

body.page-contato .form-card { background:#fff; border-radius:28px; padding:3rem; }

body.page-contato .form-card h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.6rem; margin-bottom:0.6rem; }

body.page-contato .form-card p { font-size:0.95rem; color:#5A6770; margin-bottom:2rem; line-height:1.5; }

body.page-contato .form-group { margin-bottom:1.4rem; }

body.page-contato .form-group label { display:block; font-size:0.86rem; font-weight:600; color:#5A6770; margin-bottom:0.5rem; text-transform:uppercase; letter-spacing:0.02em; }

body.page-contato .form-group input,
body.page-contato .form-group select,
body.page-contato .form-group textarea {
    width:100%; padding:0.9rem 1.2rem;
    border:1.5px solid #E4E0D8; border-radius:12px;
    font-family:'Inter',sans-serif; font-size:0.98rem; color:var(--ink);
    background:#fff; outline:none;
    transition:border-color 0.2s;
  }

body.page-contato .form-group input:focus,
body.page-contato .form-group select:focus,
body.page-contato .form-group textarea:focus { border-color:var(--navy); }

body.page-contato .form-group textarea { resize:vertical; min-height:130px; }

body.page-contato .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }

body.page-contato .btn-submit {
    width:100%; padding:1.1rem; border:none; border-radius:40px;
    background:var(--navy-deep); color:#fff;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.05rem;
    cursor:pointer; transition:background 0.2s, transform 0.2s;
  }

body.page-contato .btn-submit:hover { background:var(--navy); transform:translateY(-2px); }

@media (prefers-reduced-motion:reduce) {
  body.page-contato .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-contato nav { padding:1.2rem 1.6rem; }

  body.page-contato .nav-links { display:none; }

  body.page-contato .page-hero { padding:7.5rem 1.6rem 4rem; }

  body.page-contato .page-hero .inner { grid-template-columns:1fr; gap:2.5rem; }

  body.page-contato .main-band { padding:4rem 1.6rem; }

  body.page-contato .main-inner { grid-template-columns:1fr; }

  body.page-contato .form-row { grid-template-columns:1fr; }

  body.page-contato footer.fbar { flex-direction:column; gap:0.5rem; padding:2.4rem 1.6rem; }
}

body.page-contato .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }


/* ===== PAGINA: historia ===== */
body.page-historia .nav-links a.active { color:#fff; border-bottom:2px solid var(--rose); padding-bottom:2px; }

body.page-historia .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-historia .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-historia .page-hero {
    background:var(--navy); color:var(--cream);
    padding:10rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-historia .page-hero .inner { max-width:1320px; margin:0 auto; }

body.page-historia .hero-bg-num {
    position:absolute; right:-2rem; top:-3rem;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; opacity:0.05; pointer-events:none;
  }

body.page-historia .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.2rem; text-transform:uppercase; }

body.page-historia h1.page-title { font-size:clamp(2.8rem,6vw,5.2rem); line-height:0.96; color:#fff; margin-bottom:1.8rem; }

body.page-historia .page-lead { font-size:1.2rem; line-height:1.6; color:rgba(242,239,233,0.75); max-width:560px; }

body.page-historia h2.band-title { font-size:clamp(2.2rem,4vw,3.4rem); line-height:1.02; margin:1rem 0 0; }

body.page-historia .historia-layout {
    display:grid; grid-template-columns:0.7fr 1.3fr; gap:3rem;
  }

body.page-historia .historia-text p { font-size:1.18rem; line-height:1.75; color:#3A4750; margin-bottom:1.4rem; }

body.page-historia .historia-text strong { color:var(--ink); font-weight:700; }

body.page-historia .pull-quote {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:600;
    font-size:1.7rem; line-height:1.3; color:var(--navy-deep);
    border-left:4px solid var(--rose); padding-left:1.6rem; margin-top:2.2rem;
  }

body.page-historia #mvv { background:var(--navy-deep); color:#fff; }

body.page-historia .mvv-top { display:grid; grid-template-columns:1fr 1fr; gap:3rem; margin-bottom:4rem; }

body.page-historia .mvv-block .kicker { color:var(--rose); }

body.page-historia .mvv-block h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.9rem; margin:0.8rem 0 1rem; }

body.page-historia .mvv-block p { font-size:1.08rem; line-height:1.65; color:rgba(242,239,233,0.75); }

body.page-historia .values-marquee { display:flex; flex-wrap:wrap; gap:1px; background:rgba(255,255,255,0.15); }

body.page-historia .vchip { flex:1 1 150px; background:var(--navy-deep); padding:2rem 1.4rem; }

body.page-historia .vletter { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:2.4rem; color:var(--rose); line-height:1; }

body.page-historia .vname { font-weight:700; font-size:0.95rem; margin:0.7rem 0 0.3rem; color:#fff; }

body.page-historia .vdesc { font-size:0.82rem; color:rgba(242,239,233,0.55); line-height:1.4; }

body.page-historia #timeline { background:var(--cream); }

body.page-historia .timeline { position:relative; padding-left:2.5rem; }

body.page-historia .timeline::before { content:''; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--rose); opacity:0.35; }

body.page-historia .titem { position:relative; margin-bottom:3rem; }

body.page-historia .titem:last-child { margin-bottom:0; }

body.page-historia .tdot {
    position:absolute; left:-2.95rem; top:0.3rem;
    width:14px; height:14px; border-radius:50%;
    background:var(--rose); border:3px solid var(--cream);
  }

body.page-historia .tyear { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:0.88rem; color:var(--rose); margin-bottom:0.4rem; }

body.page-historia .titem h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.2rem; margin-bottom:0.5rem; }

body.page-historia .titem p { font-size:0.98rem; line-height:1.6; color:#5A6770; }

@media (prefers-reduced-motion:reduce) {
  body.page-historia .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-historia nav { padding:1.2rem 1.6rem; }

  body.page-historia .nav-links { display:none; }

  body.page-historia .band { padding:4.5rem 1.6rem; }

  body.page-historia .page-hero { padding:7.5rem 1.6rem 4rem; }

  body.page-historia .historia-layout,
body.page-historia .mvv-top { grid-template-columns:1fr; }

  body.page-historia .band-num { font-size:10rem; }

  body.page-historia footer.fbar { flex-direction:column; gap:0.5rem; padding:2.4rem 1.6rem; }
}

body.page-historia .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }


/* ===== PAGINA: lgpd ===== */
body.page-lgpd .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-lgpd .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-lgpd .hero {
    background:var(--navy); color:var(--cream);
    padding:10rem 4rem 6rem;
  }

body.page-lgpd .hero .inner { max-width:1320px; margin:0 auto; }

body.page-lgpd .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.6rem; text-transform:uppercase; }

body.page-lgpd h1.hero-title { font-size:clamp(2.8rem,6vw,5rem); line-height:0.96; color:#fff; margin-bottom:2rem; max-width:860px; }

body.page-lgpd .hero-lead { font-size:1.15rem; line-height:1.7; color:rgba(242,239,233,0.78); max-width:620px; }

body.page-lgpd .breadcrumb {
    background:var(--navy-deep); padding:0.9rem 4rem;
    font-size:0.82rem; color:rgba(242,239,233,0.45);
    display:flex; gap:0.5rem; align-items:center;
  }

body.page-lgpd .section-kicker { font-size:0.88rem; font-weight:700; color:var(--olive); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:1.8rem; }

body.page-lgpd .rights-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.6rem; }

body.page-lgpd .right-card {
    background:#fff; border-radius:16px; padding:1.6rem;
    border-left:3px solid var(--rose);
  }

body.page-lgpd .right-card h5 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1rem; margin-bottom:0.4rem; color:var(--navy-deep); }

body.page-lgpd .right-card p { font-size:0.88rem; line-height:1.6; color:#5A6770; margin:0; }

body.page-lgpd .bases-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.6rem; }

body.page-lgpd .base-card {
    background:var(--navy); border-radius:16px; padding:1.6rem;
    color:#fff;
  }

body.page-lgpd .base-card h5 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:0.98rem; margin-bottom:0.4rem; }

body.page-lgpd .base-card p { font-size:0.86rem; line-height:1.6; color:rgba(242,239,233,0.7); margin:0; }

body.page-lgpd .sidebar-card.navy h4 { color:#fff; }

body.page-lgpd .sidebar-card.navy p { color:rgba(242,239,233,0.7); }

body.page-lgpd .sidebar-card.navy .sc-info { color:#fff; }

body.page-lgpd .btn-cream {
    background:var(--cream); color:var(--navy-deep);
    padding:0.9rem 1.6rem; border-radius:40px; font-weight:700; font-size:0.9rem;
    display:inline-flex; align-items:center; gap:0.5rem;
    transition:transform 0.25s, background 0.25s; text-align:center; justify-content:center;
  }

body.page-lgpd .btn-rose {
    background:var(--rose); color:#fff;
    padding:0.9rem 1.6rem; border-radius:40px; font-weight:700; font-size:0.9rem;
    display:inline-flex; align-items:center; justify-content:center; gap:0.5rem;
    transition:transform 0.25s, filter 0.25s;
  }

body.page-lgpd .btn-rose:hover { transform:translateY(-3px); filter:brightness(1.1); }

body.page-lgpd .cta-band { padding:0 4rem 5rem; }

body.page-lgpd .cd-item a,
body.page-lgpd .cd-item p { font-size:1.05rem; color:#fff; display:block; line-height:1.5; }

body.page-lgpd .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff; font-size:0.85rem; font-weight:700;
  }

@media (prefers-reduced-motion:reduce) {
  body.page-lgpd .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:1080px) {
  body.page-lgpd .content-band .inner { grid-template-columns:1fr; }

  body.page-lgpd .sidebar { position:static; }

  body.page-lgpd .toc-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:980px) {
  body.page-lgpd nav { padding:1.2rem 1.6rem; }

  body.page-lgpd .nav-links { display:none; }

  body.page-lgpd .hero { padding:8rem 1.6rem 4rem; }

  body.page-lgpd .breadcrumb { padding:0.9rem 1.6rem; }

  body.page-lgpd .toc-band { padding:3rem 1.6rem; }

  body.page-lgpd .content-band { padding:3.5rem 1.6rem; }

  body.page-lgpd .rights-grid { grid-template-columns:1fr; }

  body.page-lgpd .bases-grid { grid-template-columns:1fr; }

  body.page-lgpd .cta-band { padding:0 1.6rem 4rem; }

  body.page-lgpd .cta-card { grid-template-columns:1fr; padding:2.4rem; border-radius:20px; }

  body.page-lgpd footer.site-footer { padding:3rem 1.6rem 0; }

  body.page-lgpd .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }

  body.page-lgpd .footer-bottom { flex-direction:column; gap:0.4rem; padding:1.4rem 0; text-align:center; }
}

@media (max-width:640px) {
  body.page-lgpd .toc-grid { grid-template-columns:1fr; }

  body.page-lgpd .footer-grid { grid-template-columns:1fr; }
}


/* ===== PAGINA: servicos ===== */
body.page-servicos .nav-links a.active { color:#fff; border-bottom:2px solid var(--rose); padding-bottom:2px; }

body.page-servicos .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-servicos .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-servicos .page-hero {
    background:var(--navy); color:var(--cream);
    padding:10rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-servicos .page-hero .inner { max-width:1320px; margin:0 auto; }

body.page-servicos .hero-bg-num {
    position:absolute; right:-2rem; top:-3rem;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:24rem; line-height:1; opacity:0.05; pointer-events:none;
  }

body.page-servicos .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.2rem; text-transform:uppercase; }

body.page-servicos h1.page-title { font-size:clamp(2.8rem,6vw,5.2rem); line-height:0.96; color:#fff; margin-bottom:1.8rem; }

body.page-servicos .page-lead { font-size:1.2rem; line-height:1.6; color:rgba(242,239,233,0.75); max-width:560px; }

body.page-servicos h2.band-title { font-size:clamp(2.2rem,4vw,3.4rem); line-height:1.02; margin:1rem 0 0; }

body.page-servicos .servicos-head { max-width:760px; margin-bottom:3.5rem; }

body.page-servicos .service-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.4rem; }

body.page-servicos .scard { background:#fff; border-radius:24px; padding:2.4rem; transition:transform 0.3s, box-shadow 0.3s; }

body.page-servicos .scard:hover { transform:translateY(-6px); box-shadow:0 30px 50px -20px rgba(31,71,89,0.25); }

body.page-servicos .scard.featured {
    background:var(--navy); color:#fff;
    grid-column:1 / -1;
    display:grid; grid-template-columns:1fr auto; align-items:center; gap:2rem;
  }

body.page-servicos .scard.featured p { color:rgba(242,239,233,0.75); }

body.page-servicos .snum { font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:0.95rem; color:var(--olive); display:block; margin-bottom:1rem; }

body.page-servicos .scard.featured .snum { color:var(--rose); }

body.page-servicos .scard h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.4rem; margin-bottom:0.7rem; }

body.page-servicos .scard p { font-size:0.98rem; line-height:1.6; color:#5A6770; }

body.page-servicos .featured-badge {
    background:rgba(242,239,233,0.12); border:1px solid rgba(242,239,233,0.3);
    border-radius:50%; width:120px; height:120px;
    display:flex; align-items:center; justify-content:center; text-align:center;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:0.85rem; flex-shrink:0;
  }

body.page-servicos #gestao { background:var(--cream); }

body.page-servicos .gestao-grid2 { display:grid; grid-template-columns:repeat(2,1fr); gap:1.4rem; }

body.page-servicos .gcard { padding:2.4rem; border-radius:24px; background:#fff; }

body.page-servicos .gcard:nth-child(1) { background:var(--rose); color:#fff; }

body.page-servicos .gcard:nth-child(4) { background:var(--navy); color:#fff; }

body.page-servicos .gcard h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.35rem; margin-bottom:0.8rem; }

body.page-servicos .gcard p { font-size:0.98rem; line-height:1.6; }

body.page-servicos .gcard:not(:nth-child(1)):not(:nth-child(4)) p { color:#5A6770; }

body.page-servicos .gcard:nth-child(1) p,
body.page-servicos .gcard:nth-child(4) p { color:rgba(255,255,255,0.82); }

body.page-servicos .cta-band { background:var(--navy-deep); color:#fff; padding:5rem 4rem; text-align:center; }

body.page-servicos .cta-band h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(2rem,4vw,3rem); margin-bottom:1.2rem; }

body.page-servicos .cta-band p { font-size:1.1rem; color:rgba(242,239,233,0.75); margin-bottom:2rem; max-width:500px; margin-left:auto; margin-right:auto; }

body.page-servicos .btn-cream {
    background:var(--cream); color:var(--navy-deep);
    padding:1.05rem 2rem; border-radius:40px; font-weight:700; font-size:0.98rem;
    display:inline-flex; align-items:center; gap:0.6rem;
    transition:transform 0.25s, background 0.25s;
  }

@media (prefers-reduced-motion:reduce) {
  body.page-servicos .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-servicos nav { padding:1.2rem 1.6rem; }

  body.page-servicos .nav-links { display:none; }

  body.page-servicos .band { padding:4.5rem 1.6rem; }

  body.page-servicos .page-hero { padding:7.5rem 1.6rem 4rem; }

  body.page-servicos .service-grid,
body.page-servicos .gestao-grid2 { grid-template-columns:1fr; }

  body.page-servicos .scard.featured { grid-template-columns:1fr; text-align:left; }

  body.page-servicos .featured-badge { display:none; }

  body.page-servicos .band-num { font-size:10rem; }

  body.page-servicos .cta-band { padding:3.5rem 1.6rem; }

  body.page-servicos footer.fbar { flex-direction:column; gap:0.5rem; padding:2.4rem 1.6rem; }
}

body.page-servicos .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s; color:#fff;
    font-size:0.85rem; font-weight:700;
  }


/* ===== PAGINA: trabalhe-conosco ===== */
body.page-trabalhe-conosco .nav-links a.active { color:#fff; }

body.page-trabalhe-conosco .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-trabalhe-conosco .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-trabalhe-conosco .breadcrumb {
    background:var(--navy-deep); padding:0.9rem 4rem;
    font-size:0.82rem; color:rgba(242,239,233,0.45);
    display:flex; gap:0.5rem; align-items:center;
    margin-top:72px;
  }

body.page-trabalhe-conosco .hero {
    background:var(--navy); color:var(--cream);
    padding:5.5rem 4rem 6rem;
    position:relative; overflow:hidden;
  }

body.page-trabalhe-conosco .hero::after {
    content:''; position:absolute; right:-120px; top:-80px;
    width:520px; height:520px; border-radius:50%;
    background:rgba(217,142,115,0.07); pointer-events:none;
  }

body.page-trabalhe-conosco .hero .inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }

body.page-trabalhe-conosco .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.4rem; text-transform:uppercase; }

body.page-trabalhe-conosco h1.hero-title { font-size:clamp(2.6rem,5vw,4.4rem); line-height:0.96; color:#fff; margin-bottom:1.8rem; }

body.page-trabalhe-conosco .hero-lead { font-size:1.1rem; line-height:1.75; color:rgba(242,239,233,0.78); margin-bottom:2.4rem; }

body.page-trabalhe-conosco .hero-values { display:flex; flex-wrap:wrap; gap:0.7rem; }

body.page-trabalhe-conosco .value-tag {
    font-size:0.82rem; font-weight:600;
    padding:0.45rem 1rem; border-radius:30px;
    border:1px solid rgba(242,239,233,0.2);
    color:rgba(242,239,233,0.75);
  }

body.page-trabalhe-conosco .hero-stats {
    background:rgba(255,255,255,0.05); border-radius:24px;
    padding:2.6rem; display:flex; flex-direction:column; gap:2rem;
    border:1px solid rgba(255,255,255,0.08);
  }

body.page-trabalhe-conosco .stat-item .stat-num {
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800;
    font-size:2.8rem; color:#fff; line-height:1;
  }

body.page-trabalhe-conosco .stat-item .stat-label { font-size:0.86rem; color:rgba(242,239,233,0.55); margin-top:0.35rem; }

body.page-trabalhe-conosco .stat-divider { border:none; border-top:1px solid rgba(255,255,255,0.1); }

body.page-trabalhe-conosco .motivos-band { background:#fff; padding:5.5rem 4rem; }

body.page-trabalhe-conosco .motivos-band .inner { max-width:1320px; margin:0 auto; }

body.page-trabalhe-conosco .section-kicker { font-size:0.88rem; font-weight:700; color:var(--olive); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:2rem; }

body.page-trabalhe-conosco .motivos-header { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:end; margin-bottom:3.5rem; }

body.page-trabalhe-conosco .motivos-header h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(2rem,3.5vw,3rem); line-height:1.05; }

body.page-trabalhe-conosco .motivos-header p { font-size:1rem; line-height:1.75; color:#5A6770; }

body.page-trabalhe-conosco .motivos-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }

body.page-trabalhe-conosco .motivo-card {
    border-radius:24px; padding:2.4rem;
    transition:transform 0.3s, box-shadow 0.3s;
  }

body.page-trabalhe-conosco .motivo-card:hover { transform:translateY(-6px); box-shadow:0 30px 50px -20px rgba(31,71,89,0.18); }

body.page-trabalhe-conosco .motivo-card.light { background:var(--cream); }

body.page-trabalhe-conosco .motivo-card.navy { background:var(--navy); color:#fff; }

body.page-trabalhe-conosco .motivo-card.olive { background:var(--olive); color:#fff; }

body.page-trabalhe-conosco .motivo-card.navy-deep { background:var(--navy-deep); color:#fff; }

body.page-trabalhe-conosco .motivo-icon { font-size:1.8rem; margin-bottom:1.2rem; }

body.page-trabalhe-conosco .motivo-card h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.25rem; margin-bottom:0.7rem; }

body.page-trabalhe-conosco .motivo-card p { font-size:0.92rem; line-height:1.65; color:#5A6770; }

body.page-trabalhe-conosco .motivo-card.navy p,
body.page-trabalhe-conosco .motivo-card.olive p,
body.page-trabalhe-conosco .motivo-card.navy-deep p { color:rgba(242,239,233,0.72); }

body.page-trabalhe-conosco .processo-band { background:var(--cream); padding:5.5rem 4rem; }

body.page-trabalhe-conosco .processo-band .inner { max-width:1320px; margin:0 auto; }

body.page-trabalhe-conosco .processo-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:2.4rem; position:relative; }

body.page-trabalhe-conosco .processo-steps::before {
    content:''; position:absolute; top:2.4rem; left:calc(12.5% + 1rem); right:calc(12.5% + 1rem);
    height:2px; background:linear-gradient(90deg, var(--rose), var(--olive));
    z-index:0;
  }

body.page-trabalhe-conosco .step-card { text-align:center; position:relative; z-index:1; }

body.page-trabalhe-conosco .step-num {
    width:48px; height:48px; border-radius:50%;
    background:var(--navy); color:#fff;
    font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:1rem;
    display:flex; align-items:center; justify-content:center;
    margin:0 auto 1.2rem;
    border:3px solid var(--cream);
  }

body.page-trabalhe-conosco .step-card h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1rem; margin-bottom:0.5rem; }

body.page-trabalhe-conosco .step-card p { font-size:0.86rem; line-height:1.6; color:#5A6770; }

body.page-trabalhe-conosco .form-band { background:#fff; padding:5.5rem 4rem; }

body.page-trabalhe-conosco .form-band .inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:1fr 1.4fr; gap:5rem; align-items:start; }

body.page-trabalhe-conosco .form-side-info { display:flex; flex-direction:column; gap:2.4rem; }

body.page-trabalhe-conosco .form-side-info h2 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:clamp(2rem,3vw,2.8rem); line-height:1.05; margin-top:0.6rem; }

body.page-trabalhe-conosco .form-side-info p { font-size:1rem; line-height:1.75; color:#5A6770; }

body.page-trabalhe-conosco .contact-detail { display:flex; flex-direction:column; gap:0.4rem; }

body.page-trabalhe-conosco .contact-detail .cd-kicker { font-size:0.78rem; font-weight:700; color:var(--rose); text-transform:uppercase; letter-spacing:0.06em; }

body.page-trabalhe-conosco .contact-detail a,
body.page-trabalhe-conosco .contact-detail span { font-size:0.98rem; color:var(--ink); font-weight:500; }

body.page-trabalhe-conosco .contact-detail a:hover { color:var(--rose); }

body.page-trabalhe-conosco .areas-list { display:flex; flex-wrap:wrap; gap:0.6rem; }

body.page-trabalhe-conosco .area-tag {
    font-size:0.8rem; font-weight:600;
    padding:0.4rem 0.9rem; border-radius:20px;
    background:var(--cream); color:var(--navy);
    border:1px solid rgba(31,71,89,0.12);
  }

body.page-trabalhe-conosco .candidatura-form { background:var(--cream); border-radius:28px; padding:3rem; }

body.page-trabalhe-conosco .candidatura-form h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.5rem; margin-bottom:0.5rem; }

body.page-trabalhe-conosco .candidatura-form .form-sub { font-size:0.9rem; color:#5A6770; margin-bottom:2rem; line-height:1.5; }

body.page-trabalhe-conosco .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }

body.page-trabalhe-conosco .form-group { display:flex; flex-direction:column; gap:0.45rem; }

body.page-trabalhe-conosco .form-group.full { grid-column:1/-1; }

body.page-trabalhe-conosco .form-group label { font-size:0.82rem; font-weight:600; color:var(--navy-deep); letter-spacing:0.01em; }

body.page-trabalhe-conosco .form-group input,
body.page-trabalhe-conosco .form-group select,
body.page-trabalhe-conosco .form-group textarea {
    width:100%; padding:0.85rem 1.1rem;
    background:#fff; border:1.5px solid rgba(31,71,89,0.14);
    border-radius:12px; font-family:'Inter',sans-serif; font-size:0.95rem;
    color:var(--ink); transition:border-color 0.2s, box-shadow 0.2s;
    outline:none; appearance:none;
  }

body.page-trabalhe-conosco .form-group select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231F4759' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 1rem center; padding-right:2.5rem; cursor:pointer; }

body.page-trabalhe-conosco .form-group textarea { resize:vertical; min-height:130px; line-height:1.6; }

body.page-trabalhe-conosco .upload-zone {
    border:2px dashed rgba(31,71,89,0.2); border-radius:12px;
    padding:2rem; text-align:center; cursor:pointer;
    transition:border-color 0.2s, background 0.2s;
    background:#fff; position:relative;
  }

body.page-trabalhe-conosco .upload-zone:hover { border-color:var(--navy); background:rgba(31,71,89,0.02); }

body.page-trabalhe-conosco .upload-zone input[type="file"] { position:absolute; inset:0; opacity:0; cursor:pointer; }

body.page-trabalhe-conosco .upload-icon { font-size:1.8rem; margin-bottom:0.6rem; }

body.page-trabalhe-conosco .upload-zone p { font-size:0.88rem; color:#5A6770; line-height:1.5; }

body.page-trabalhe-conosco .upload-zone strong { color:var(--navy); }

body.page-trabalhe-conosco .upload-zone .file-types { font-size:0.78rem; color:#A0B0BA; margin-top:0.3rem; }

body.page-trabalhe-conosco .consent-row { display:flex; gap:0.8rem; align-items:flex-start; }

body.page-trabalhe-conosco .consent-row input[type="checkbox"] { width:18px; height:18px; accent-color:var(--navy); flex-shrink:0; margin-top:2px; cursor:pointer; }

body.page-trabalhe-conosco .consent-row label { font-size:0.84rem; line-height:1.55; color:#5A6770; cursor:pointer; }

body.page-trabalhe-conosco .consent-row a { color:var(--navy); font-weight:600; }

body.page-trabalhe-conosco .form-success {
    display:none; text-align:center; padding:3rem 1rem;
  }

body.page-trabalhe-conosco .form-success .success-icon { font-size:3rem; margin-bottom:1rem; }

body.page-trabalhe-conosco .form-success h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.6rem; margin-bottom:0.7rem; }

body.page-trabalhe-conosco .form-success p { font-size:0.95rem; color:#5A6770; line-height:1.65; }

body.page-trabalhe-conosco .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s;
  }

@media (prefers-reduced-motion:reduce) {
  body.page-trabalhe-conosco .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:980px) {
  body.page-trabalhe-conosco nav { padding:1.2rem 1.6rem; }

  body.page-trabalhe-conosco .nav-links { display:none; }

  body.page-trabalhe-conosco .breadcrumb { padding:0.9rem 1.6rem; }

  body.page-trabalhe-conosco .hero { padding:4rem 1.6rem 4rem; }

  body.page-trabalhe-conosco .hero .inner { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .hero-stats { display:grid; grid-template-columns:1fr 1fr; }

  body.page-trabalhe-conosco .stat-divider { display:none; }

  body.page-trabalhe-conosco .motivos-band { padding:4rem 1.6rem; }

  body.page-trabalhe-conosco .motivos-header { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .motivos-grid { grid-template-columns:1fr 1fr; }

  body.page-trabalhe-conosco .processo-band { padding:4rem 1.6rem; }

  body.page-trabalhe-conosco .processo-steps { grid-template-columns:1fr 1fr; gap:1.5rem; }

  body.page-trabalhe-conosco .processo-steps::before { display:none; }

  body.page-trabalhe-conosco .form-band { padding:4rem 1.6rem; }

  body.page-trabalhe-conosco .form-band .inner { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .form-grid { grid-template-columns:1fr; }

  body.page-trabalhe-conosco footer.site-footer { padding:3rem 1.6rem 0; }

  body.page-trabalhe-conosco .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }

  body.page-trabalhe-conosco .footer-bottom { flex-direction:column; gap:0.4rem; padding:1.4rem 0; text-align:center; }
}

@media (max-width:600px) {
  body.page-trabalhe-conosco .motivos-grid { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .processo-steps { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .footer-grid { grid-template-columns:1fr; }

  body.page-trabalhe-conosco .hero-stats { grid-template-columns:1fr; }
}


/* ===== PAGINA: canal-de-denuncia ===== */
body.page-canal-de-denuncia .nav-cta {
    font-size:0.88rem; font-weight:600; color:#fff;
    padding:0.55rem 1.2rem; border:1.5px solid #fff; border-radius:30px;
    transition:background 0.2s, color 0.2s;
  }

body.page-canal-de-denuncia .nav-cta:hover { background:#fff; color:var(--navy-deep); }

body.page-canal-de-denuncia .hero {
    background:var(--navy); color:var(--cream);
    padding:10rem 4rem 6rem;
  }

body.page-canal-de-denuncia .hero .inner { max-width:1320px; margin:0 auto; }

body.page-canal-de-denuncia .hero-tag { font-size:0.92rem; font-weight:600; letter-spacing:0.02em; color:var(--rose); margin-bottom:1.6rem; text-transform:uppercase; }

body.page-canal-de-denuncia h1.hero-title { font-size:clamp(2.8rem,6vw,5rem); line-height:0.96; color:#fff; margin-bottom:2rem; max-width:860px; }

body.page-canal-de-denuncia .hero-lead { font-size:1.15rem; line-height:1.7; color:rgba(242,239,233,0.78); max-width:640px; }

body.page-canal-de-denuncia .breadcrumb {
    background:var(--navy-deep); padding:0.9rem 4rem;
    font-size:0.82rem; color:rgba(242,239,233,0.45);
    display:flex; gap:0.5rem; align-items:center;
  }

body.page-canal-de-denuncia .section-kicker { font-size:0.88rem; font-weight:700; color:var(--olive); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:1.8rem; }

body.page-canal-de-denuncia .cards-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.6rem; }

body.page-canal-de-denuncia .info-card {
    background:#fff; border-radius:16px; padding:1.6rem;
    border-left:3px solid var(--rose);
  }

body.page-canal-de-denuncia .info-card h5 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1rem; margin-bottom:0.4rem; color:var(--navy-deep); }

body.page-canal-de-denuncia .info-card p { font-size:0.88rem; line-height:1.6; color:#5A6770; margin:0; }

body.page-canal-de-denuncia .dark-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.6rem; }

body.page-canal-de-denuncia .dark-card { background:var(--navy); border-radius:16px; padding:1.6rem; color:#fff; }

body.page-canal-de-denuncia .dark-card h5 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:0.98rem; margin-bottom:0.4rem; }

body.page-canal-de-denuncia .dark-card p { font-size:0.86rem; line-height:1.6; color:rgba(242,239,233,0.7); margin:0; }

body.page-canal-de-denuncia .sidebar-card.olive { background:var(--olive); color:#fff; }

body.page-canal-de-denuncia .sidebar-card.navy h4,
body.page-canal-de-denuncia .sidebar-card.olive h4 { color:#fff; }

body.page-canal-de-denuncia .sidebar-card.navy p,
body.page-canal-de-denuncia .sidebar-card.olive p { color:rgba(242,239,233,0.72); }

body.page-canal-de-denuncia .sidebar-card.navy .sc-kicker { color:rgba(242,239,233,0.5); }

body.page-canal-de-denuncia .sidebar-card.olive .sc-kicker { color:rgba(242,239,233,0.6); }

body.page-canal-de-denuncia .sidebar-card.navy .sc-info,
body.page-canal-de-denuncia .sidebar-card.olive .sc-info { color:#fff; }

body.page-canal-de-denuncia .btn-cream {
    background:var(--cream); color:var(--navy-deep);
    padding:0.9rem 1.6rem; border-radius:40px; font-weight:700; font-size:0.9rem;
    display:inline-flex; align-items:center; gap:0.5rem;
    transition:transform 0.25s, background 0.25s; text-align:center; justify-content:center;
  }

body.page-canal-de-denuncia .denuncia-form {
    background:#fff; border-radius:24px; padding:2.4rem;
    display:flex; flex-direction:column; gap:1.2rem;
    margin-top:1.6rem;
  }

body.page-canal-de-denuncia .denuncia-form .form-sub { font-size:0.88rem; color:#5A6770; line-height:1.55; margin-bottom:0.4rem; }

body.page-canal-de-denuncia .form-group { display:flex; flex-direction:column; gap:0.45rem; }

body.page-canal-de-denuncia .form-group label { font-size:0.82rem; font-weight:600; color:var(--navy-deep); letter-spacing:0.01em; }

body.page-canal-de-denuncia .form-group input,
body.page-canal-de-denuncia .form-group select,
body.page-canal-de-denuncia .form-group textarea {
    width:100%; padding:0.85rem 1.1rem;
    background:var(--cream); border:1.5px solid rgba(31,71,89,0.14);
    border-radius:12px; font-family:'Inter',sans-serif; font-size:0.95rem;
    color:var(--ink); transition:border-color 0.2s, box-shadow 0.2s;
    outline:none; appearance:none;
  }

body.page-canal-de-denuncia .form-group select {
    background-color:var(--cream);
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231F4759' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 1rem center;
    padding-right:2.5rem; cursor:pointer;
  }

body.page-canal-de-denuncia .form-group textarea { resize:vertical; min-height:150px; line-height:1.6; }

body.page-canal-de-denuncia .anonimo-toggle {
    display:flex; gap:0.8rem; align-items:flex-start;
    background:var(--cream); border-radius:12px; padding:1rem 1.2rem;
  }

body.page-canal-de-denuncia .anonimo-toggle input[type="checkbox"] { width:18px; height:18px; accent-color:var(--navy); flex-shrink:0; margin-top:2px; cursor:pointer; }

body.page-canal-de-denuncia .anonimo-toggle label { font-size:0.88rem; line-height:1.55; color:#3C4C56; cursor:pointer; }

body.page-canal-de-denuncia .anonimo-toggle label strong { color:var(--navy-deep); }

body.page-canal-de-denuncia .form-success {
    display:none; text-align:center; padding:3rem 1rem;
    flex-direction:column; gap:1rem; align-items:center;
  }

body.page-canal-de-denuncia .form-success .success-icon { font-size:3rem; }

body.page-canal-de-denuncia .form-success h4 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:1.5rem; color:var(--navy-deep); }

body.page-canal-de-denuncia .form-success p { font-size:0.95rem; color:#5A6770; line-height:1.65; max-width:380px; }

body.page-canal-de-denuncia .anon-badge {
    display:inline-flex; align-items:center; gap:0.5rem;
    background:rgba(124,140,107,0.12); border-radius:30px;
    padding:0.4rem 1rem; font-size:0.82rem; font-weight:600; color:var(--olive);
    margin-bottom:0.6rem;
  }

body.page-canal-de-denuncia .cta-band { padding:0 4rem 5rem; }

body.page-canal-de-denuncia .cd-item a,
body.page-canal-de-denuncia .cd-item p { font-size:1.05rem; color:#fff; display:block; line-height:1.5; }

body.page-canal-de-denuncia .social-btn {
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.08);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.2s;
  }

@media (prefers-reduced-motion:reduce) {
  body.page-canal-de-denuncia .reveal {opacity:1;transform:none;transition:none;}
}

@media (max-width:1080px) {
  body.page-canal-de-denuncia .content-band .inner { grid-template-columns:1fr; }

  body.page-canal-de-denuncia .sidebar { position:static; }

  body.page-canal-de-denuncia .toc-grid { grid-template-columns:repeat(2,1fr); }

  body.page-canal-de-denuncia .cards-grid,
body.page-canal-de-denuncia .dark-grid { grid-template-columns:1fr; }
}

@media (max-width:980px) {
  body.page-canal-de-denuncia nav { padding:1.2rem 1.6rem; }

  body.page-canal-de-denuncia .nav-links { display:none; }

  body.page-canal-de-denuncia .hero { padding:8rem 1.6rem 4rem; }

  body.page-canal-de-denuncia .breadcrumb { padding:0.9rem 1.6rem; }

  body.page-canal-de-denuncia .toc-band { padding:3rem 1.6rem; }

  body.page-canal-de-denuncia .content-band { padding:3.5rem 1.6rem; }

  body.page-canal-de-denuncia .cta-band { padding:0 1.6rem 4rem; }

  body.page-canal-de-denuncia .cta-card { grid-template-columns:1fr; padding:2.4rem; border-radius:20px; }

  body.page-canal-de-denuncia footer.site-footer { padding:3rem 1.6rem 0; }

  body.page-canal-de-denuncia .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }

  body.page-canal-de-denuncia .footer-bottom { flex-direction:column; gap:0.4rem; padding:1.4rem 0; text-align:center; }
}

@media (max-width:640px) {
  body.page-canal-de-denuncia .toc-grid { grid-template-columns:1fr; }

  body.page-canal-de-denuncia .footer-grid { grid-template-columns:1fr; }
}
