/* =====================================================================
   NOVA FASE — renovação visual dos 10 anos (2016–2026)
   Camada sobre o tema original: mesma estrutura, identidade atualizada.
   Marinho + latão (o dourado do escritório), títulos em Spectral, texto em Lato.
   ===================================================================== */
:root {
  --ib-noite: #16213a;      /* marinho profundo: rodapé, faixas escuras */
  --ib-marinho: #233252;    /* marinho: botões, títulos sobre claro */
  --ib-latao: #b08a4e;      /* dourado (decorativo, textos grandes) */
  --ib-latao-texto: #86652f;/* dourado legível em fundo claro */
  --ib-latao-claro: #dcc6a0;/* dourado sobre fundo escuro */
  --ib-nevoa: #eef1f5;      /* fundo alternado (frio, sem amarelado) */
  --ib-tinta: #1c2230;      /* texto */
  --ib-cinza: #5b6270;      /* texto secundário */
  --ib-linha: #d9dee6;
  --ib-titulo: "Spectral", Georgia, "Times New Roman", serif;
}

/* ---------- Tipografia ---------- */
body { color: var(--ib-tinta); }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--ib-titulo); font-style: normal; font-weight: 600; letter-spacing: -.01em; color: var(--ib-marinho);
}
h3, .h3 { font-weight: 500; }
.text-dark, .text-dark p { color: var(--ib-tinta) !important; }
a { color: var(--ib-latao-texto); }
a:hover { color: var(--ib-marinho); }
::selection { background: var(--ib-latao-claro); color: var(--ib-noite); }

/* ---------- Topo ---------- */
.rd-navbar-default .rd-navbar-aside-wrap,
.rd-navbar-static .rd-navbar-aside-wrap { background: var(--ib-noite); border-bottom: 0; box-shadow: 0 0 0 100vmax var(--ib-noite); clip-path: inset(0 -100vmax); }
.rd-navbar-static .rd-navbar-aside-wrap a, .rd-navbar-static .rd-navbar-aside-wrap .link-dark,
.rd-navbar-static .rd-navbar-aside-wrap .link-dusty-gray,
.rd-navbar-static .rd-navbar-aside-wrap [class*='fa-'] { color: #c9cfdb !important; }
.rd-navbar-static .rd-navbar-aside-wrap a:hover { color: #fff !important; }
.rd-navbar-static .rd-navbar-aside-wrap .link-agendar-topo { color: var(--ib-latao-claro) !important; }
@media (min-width: 1200px) {
  .rd-navbar-static .rd-navbar-nav > li + li { margin-left: 26px !important; }
  .marca-topo { margin-right: 24px; }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .rd-navbar-static .rd-navbar-nav > li + li { margin-left: 18px !important; }
  .rd-navbar-static .rd-navbar-nav > li > a { font-size: 13px !important; }
}
.rd-navbar-static .rd-navbar-nav > li > a { white-space: nowrap; font-size: 14px; font-weight: 700; letter-spacing: .01em; color: var(--ib-marinho); }
.rd-navbar-static .rd-navbar-nav > li > a:after { background: var(--ib-latao); }
.rd-navbar-static .rd-navbar-nav > li.active > a, .rd-navbar-static .rd-navbar-nav > li > a:hover { color: var(--ib-latao-texto); }
.rd-navbar-static .rd-navbar-nav > li.active > a:after { width: 100%; }
.rd-navbar-static.rd-navbar--is-stuck, .rd-navbar-static.rd-navbar--is-clone { box-shadow: 0 1px 0 var(--ib-linha); }

/* Logo + selo dos 10 anos */
.marca-topo { display: inline-flex; align-items: center; gap: 16px; }
.selo-10 { display: inline-flex; align-items: center; gap: 8px; padding-left: 16px; border-left: 1px solid var(--ib-latao); color: var(--ib-marinho); text-decoration: none; }
.selo-10:hover { color: var(--ib-marinho); }
.selo-10-num { font: 500 32px/1 var(--ib-titulo); color: var(--ib-latao); letter-spacing: -.04em; }
.selo-10-txt { display: flex; flex-direction: column; font: 600 12px/1.25 "Lato", Arial, sans-serif; color: var(--ib-marinho); white-space: nowrap; }
.selo-10-txt small { font-weight: 400; font-size: 11px; color: var(--ib-cinza); }
.rd-navbar-fixed .selo-10 { position: fixed; top: 13px; right: 14px; z-index: 17; padding-left: 10px; gap: 6px; }
.rd-navbar-fixed .selo-10-num { font-size: 26px; }
.rd-navbar-fixed .selo-10-txt small { display: none; }
@media (max-width: 359px) { .rd-navbar-fixed .selo-10 { display: none; } }

/* ---------- Banner principal ---------- */
.swiper-variant-1 .swiper-slide:after { display: block !important; background: linear-gradient(100deg, rgba(22,33,58,.88) 0%, rgba(22,33,58,.55) 55%, rgba(22,33,58,.25) 100%); opacity: 1; }
.swiper-variant-1 .swiper-slide.banner-escuro:after { background: rgba(13,20,36,var(--escurecer, .7)) !important; opacity: 1 !important; }
.swiper-variant-1 .slider-header { font-family: var(--ib-titulo); font-style: normal; font-weight: 500; letter-spacing: -.02em; line-height: 1.12; color: #fff; }
.swiper-variant-1 .header-decorated h3 { font: 600 17px/1.4 "Lato", Arial, sans-serif; letter-spacing: .02em; color: var(--ib-latao-claro) !important; }
.swiper-variant-1 .header-decorated > *:before, .swiper-variant-1 .header-decorated > *:after { opacity: .8; border-color: var(--ib-latao-claro); width: 32px; }
.swiper-variant-1 .slider-text { color: #e3e7ee; max-width: 640px; margin-left: auto; margin-right: auto; }
@media (min-width: 1200px) {
  .swiper-variant-1 .slider-header { font-size: 54px; }
}

/* ---------- Botões ---------- */
.button { letter-spacing: .02em; }
.bg-dark.button-dark, .btn-dark, .button.bg-dark {
  background: var(--ib-marinho) !important; border-color: var(--ib-marinho) !important; color: #fff !important; transition: background .2s, border-color .2s;
}
.bg-dark.button-dark:hover, .btn-dark:hover, .button.bg-dark:hover, .bg-dark.button-dark:focus-visible {
  background: var(--ib-latao-texto) !important; border-color: var(--ib-latao-texto) !important;
}
html .button-primary-outline-v2 { border-color: var(--ib-latao-claro); color: #fff; }
html .button-primary-outline-v2:hover { background: var(--ib-latao); border-color: var(--ib-latao); }
html .button-primary, html .button-primary:focus { background: var(--ib-latao-texto); border-color: var(--ib-latao-texto); color: #fff; }
html .button-primary:hover { background: var(--ib-marinho); border-color: var(--ib-marinho); }
html .button-primary-outline { border-color: var(--ib-latao); color: var(--ib-latao-texto); }
html .button-primary-outline:hover { background: var(--ib-latao); border-color: var(--ib-latao); color: #fff; }
a:focus-visible, button:focus-visible, .button:focus-visible { outline: 3px solid var(--ib-latao); outline-offset: 2px; }

/* ---------- Faixa de título das páginas ---------- */
.page-title-wrap { position: relative; background-attachment: scroll; }
.page-title-wrap:before { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(22,33,58,.94) 0%, rgba(22,33,58,.72) 60%, rgba(22,33,58,.5) 100%); }
.page-title-wrap > .container { position: relative; }
.page-title { text-align: left; }
.page-title .page-title-left, .page-title .page-title-right { display: none; }
.page-title .page-title-inner { display: block; }
.page-title h1, .page-title .h2 { font-family: var(--ib-titulo); font-style: normal; font-weight: 500; color: #fff; letter-spacing: -.02em; }
.page-title h1:after, .page-title > .h2:after, .page-title-center > *:after {
  content: ''; display: block; width: 56px; height: 2px; margin-top: 18px; background: var(--ib-latao);
}

/* ---------- Áreas de atuação (mantém a moldura deslocada, agora em latão) ---------- */
.icon-box:before, .icon-box:after { border-color: var(--ib-latao); opacity: .55; }
.icon-box:hover:before, .icon-box:hover:after { opacity: 1; }
.icon-box .box-icon [class*='fa-'] { color: var(--ib-latao) !important; }
.icon-box h5, .icon-box h5 a { font-family: var(--ib-titulo); font-weight: 600; font-size: 21px; color: var(--ib-marinho); }
.icon-box h5 a:hover { color: var(--ib-latao-texto); }
.icon-box .divider { background: var(--ib-latao) !important; }
.icon-box .box-body p { color: var(--ib-cinza) !important; }

/* ---------- Quadro "Isidório & Barreto" da página inicial ---------- */
.box-cart.bg-ebony-clay { background: var(--ib-noite); }
.box-cart .blockquote-complex h3 { font-family: var(--ib-titulo); font-weight: 500; font-size: 38px; }
.box-cart .blockquote-complex q { color: #d2d8e3; font-style: normal; font-size: 16px; line-height: 1.75; }
.box-cart .blockquote-complex q:before, .box-cart .blockquote-complex q:after { content: none; }

/* ---------- Equipe ---------- */
.thumbnail-variant-2 .thumbnail-caption { background: var(--ib-noite); border-top: 3px solid var(--ib-latao); }
.thumbnail-variant-2 .thumbnail-caption .text-header, .thumbnail-variant-2 .thumbnail-caption .text-header a { font-family: var(--ib-titulo); font-weight: 600; font-size: 18px; }
.thumbnail-variant-2 .thumbnail-caption .text-caption { color: var(--ib-latao-claro) !important; font-style: normal; }
.thumbnail-variant-2 .divider { background: var(--ib-latao) !important; }
.block-wrap-1 h3 { font-size: 40px; }
.block-wrap-1 .text-style-4 { font-family: var(--ib-titulo); font-style: italic; font-weight: 400; color: var(--ib-latao-texto); }

/* ---------- Faixa de contatos (telefone / WhatsApp / e-mail) ---------- */
.parallax-container.bg-black .parallax-content { background: rgba(22,33,58,.9); }
.parallax-container .box-counter [class*='fa-'] { color: var(--ib-latao-claro) !important; }
.parallax-container .box-counter .box-header, .parallax-container .box-counter .box-header a { font-family: "Lato", Arial, sans-serif; font-size: 18px; color: #fff !important; }
.box-counter .text-dark[class*='fa-'] { color: var(--ib-latao) !important; }
.box-counter .box-header.text-dark, .box-counter .box-header .text-dark { font-family: "Lato", Arial, sans-serif; font-size: 18px; color: var(--ib-marinho) !important; }

/* ---------- Depoimentos ---------- */
.quote-bordered .quote-open svg path { fill: var(--ib-latao); }
.quote-bordered h6 { font-family: var(--ib-titulo); font-weight: 600; font-size: 18px; color: var(--ib-marinho); }
.quote-minimal q { font-family: var(--ib-titulo); font-weight: 400; }
.quote-minimal cite { font-family: var(--ib-titulo); }

/* ---------- Seções em fundo alternado ---------- */
.bg-whisper, .bg-gray-lighter, .bg-wild-sand, .bg-athens-gray { background-color: var(--ib-nevoa) !important; }

/* ---------- Blog ---------- */
.post-boxed .post-boxed-title, .post-boxed .post-boxed-title a { font-family: var(--ib-titulo); font-weight: 600; font-size: 19px; letter-spacing: 0; line-height: 1.35; color: var(--ib-marinho); }
.post-boxed-categoria a, .post-boxed-categoria { color: var(--ib-latao-texto) !important; }
.post-boxed-meta a { color: var(--ib-latao-texto); }

/* ---------- Rodapé ---------- */
.page-foot { background: var(--ib-noite) !important; border-top: 3px solid var(--ib-latao); }
.page-foot .h7, .page-foot h6 { font-family: var(--ib-titulo); font-weight: 600; font-size: 19px; letter-spacing: 0; text-transform: none; color: #fff; }
.page-foot p, .page-foot .rights, .page-foot .link-white { color: #c9cfdb !important; }
.page-foot a.link-white:hover, .page-foot a:hover { color: var(--ib-latao-claro) !important; }
.page-foot hr { border-color: rgba(220,198,160,.25); }
.rodape-10 { display: inline-flex; align-items: baseline; gap: 8px; margin-top: 18px; color: var(--ib-latao-claro); font: 400 15px/1.3 var(--ib-titulo); font-style: italic; }
.rodape-10 strong { font-style: normal; font-weight: 500; font-size: 28px; color: var(--ib-latao); }

/* ---------- Faixa comemorativa dos 10 anos (página inicial) ---------- */
.faixa-10 { background: var(--ib-nevoa); padding: 64px 0; border-bottom: 1px solid var(--ib-linha); }
.faixa-10-grade { display: grid; grid-template-columns: auto 1fr; gap: 56px; align-items: center; max-width: 1040px; margin: 0 auto; }
.faixa-10-numero { display: flex; align-items: baseline; gap: 14px; font: 300 clamp(150px, 19vw, 230px)/.8 var(--ib-titulo); letter-spacing: -.07em; color: var(--ib-latao); }
.faixa-10-numero span { font: italic 400 30px/1 var(--ib-titulo); letter-spacing: 0; color: var(--ib-marinho); }
.faixa-10-texto h2 { font-size: clamp(28px, 3.2vw, 40px); line-height: 1.15; font-weight: 500; margin: 0 0 18px; max-width: 18em; }
.faixa-10-texto .conteudo-editavel { color: var(--ib-cinza); font-size: 16px; line-height: 1.75; max-width: 38em; }
.faixa-10-periodo { display: block; margin-bottom: 14px; font: 600 14px/1 "Lato", Arial, sans-serif; color: var(--ib-latao-texto); letter-spacing: .03em; }
.faixa-10-acoes { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.faixa-10-acoes a.link-sobre { color: var(--ib-marinho); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 767px) {
  .faixa-10 { padding: 44px 0; }
  .faixa-10-grade { grid-template-columns: 1fr; gap: 20px; text-align: left; }
  .faixa-10-numero { font-size: 120px; }
  .faixa-10-numero span { font-size: 24px; }
}
@media (prefers-reduced-motion: no-preference) {
  .faixa-10-numero { animation: ib-surgir .9s ease-out both; }
  @keyframes ib-surgir { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
}

/* ---------- Formulários ---------- */
.form-input:focus { border-color: var(--ib-latao) !important; }

/* ---------- Formulário de contato (campos claros) ---------- */
.rd-mailform .form-input { background: #fff !important; border: 1px solid var(--ib-linha) !important; color: var(--ib-tinta) !important; }
.rd-mailform .form-input:focus { border-color: var(--ib-latao) !important; box-shadow: 0 0 0 3px rgba(176,138,78,.15); }
.rd-mailform .form-label { color: var(--ib-cinza) !important; }
.rd-mailform textarea.form-input { background-image: none !important; }
.contact-info [class*='fa-'].text-dark { color: var(--ib-latao) !important; }
.contact-info a.text-dark { color: var(--ib-tinta) !important; }
.textarea-lined-wrap { background: none !important; }
