:root{
  --adp-cream:#FBF5EA; --adp-sand:#F3E8D6; --adp-ink:#1A1714;
  --adp-accent:#C15A2B; --adp-accent-dark:#8F3F1C; --adp-gold:#D9A441;
  --adp-muted:#6B6155; --adp-line:#E2D4BE;
}
body{background:var(--adp-cream);color:var(--adp-ink);font-family:'DM Sans',system-ui,sans-serif;}
h1,h2,h3,h4,h5{font-family:'Archivo',system-ui,sans-serif;}
a{color:var(--adp-accent);text-decoration:none;}
a:hover{color:var(--adp-accent-dark);text-decoration:underline;}

.navbar{background:var(--adp-cream);border-color:var(--adp-line)!important;}
.navbar-brand{color:var(--adp-ink);letter-spacing:-.02em;}
.navbar-brand:hover{color:var(--adp-ink);text-decoration:none;}
.nav-cap{color:var(--adp-ink);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.06em;}
.nav-cap:hover{color:var(--adp-accent);text-decoration:none;}
.nav-cap.active{color:var(--adp-accent)!important;}

.bg-ink{background:var(--adp-ink);color:var(--adp-cream);}
.bg-sand{background:var(--adp-sand);}
.text-accent{color:var(--adp-accent);}
.text-muted-adp{color:var(--adp-muted);}
.text-on-ink{color:rgba(251,245,234,.75);}
.eyebrow{text-transform:uppercase;font-weight:700;font-size:.78rem;letter-spacing:.22em;color:var(--adp-accent);}
.eyebrow-gold{text-transform:uppercase;font-weight:700;font-size:.78rem;letter-spacing:.22em;color:var(--adp-gold);}
.title-xl{font-size:clamp(2.2rem,5.2vw,3.9rem);line-height:1.02;letter-spacing:-.02em;font-weight:900;}
.title-lg{font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.06;font-weight:900;}
.title-md{font-size:clamp(1.5rem,3vw,2.3rem);font-weight:800;}
/* Subtítulo de seção e título de cartão: um tamanho só para todo h3. */
.title-sm{font-size:1.25rem;font-weight:700;line-height:1.35;}

.btn-pill{border-radius:2rem;letter-spacing:.06em;}
.btn-accent{background:var(--adp-accent);color:#fff;border:1px solid var(--adp-accent);}
.btn-accent:hover{background:var(--adp-accent-dark);border-color:var(--adp-accent-dark);color:#fff;}
.btn-ink{background:var(--adp-ink);color:var(--adp-cream);border:1px solid var(--adp-ink);}
.btn-ink:hover{background:#000;color:var(--adp-cream);}
.btn-outline-ink{background:transparent;color:var(--adp-ink);border:1px solid var(--adp-ink);}
.btn-outline-ink:hover{background:var(--adp-ink);color:var(--adp-cream);}
/* Só do hero: "Sou profissional" com fundo preto; no hover vira o laranja
   (--adp-accent) do CTA vizinho "Encontre um profissional". Não mexer no
   .btn-outline-ink — ele é usado no resto do site com hover preto. */
.btn-hero{background:var(--adp-ink);color:#fff;border:1px solid var(--adp-ink);}
.btn-hero:hover,.btn-hero:focus-visible{background:var(--adp-accent);border-color:var(--adp-accent);color:#fff;}
.btn-outline-cream{background:transparent;color:var(--adp-cream);border:1px solid rgba(251,245,234,.4);}
.btn-outline-cream:hover{background:var(--adp-cream);color:var(--adp-ink);}
.btn-gold{background:var(--adp-gold);color:var(--adp-ink);border:1px solid var(--adp-gold);}
.btn-gold:hover{background:#c8942f;color:var(--adp-ink);}

.card-adp{background:#fff;border:0;border-radius:1rem;overflow:hidden;box-shadow:0 .125rem .5rem rgba(26,23,20,.06);}
.ph{background:repeating-linear-gradient(135deg,#EFE2CD 0 10px,#F6EDDD 10px 20px);display:flex;align-items:flex-end;padding:1rem;}
.ph-dark{background:repeating-linear-gradient(135deg,rgba(251,245,234,.10) 0 10px,rgba(251,245,234,.03) 10px 20px);border:1px solid rgba(251,245,234,.25);display:flex;align-items:flex-end;justify-content:center;padding:1rem;}
.ph-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:#8A7A63;}
.ph-label-light{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:rgba(251,245,234,.6);}
.ratio-1{aspect-ratio:1;} .ratio-43{aspect-ratio:4/3;} .ratio-34{aspect-ratio:3/4;} .ratio-45{aspect-ratio:4/5;}

.step-num{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0;background:var(--adp-ink);color:var(--adp-cream);}
.step-num-accent{background:var(--adp-accent);color:#fff;}
.kicker{text-transform:uppercase;font-weight:700;font-size:.85rem;letter-spacing:.16em;color:#8A7A63;}
.badge-role{background:var(--adp-sand);color:#8A5A2B;text-transform:uppercase;letter-spacing:.1em;font-weight:700;}
.form-label{font-weight:700;}
.label-cap{text-transform:uppercase;font-weight:700;font-size:.72rem;letter-spacing:.14em;color:#8A7A63;}
.form-control:focus,.form-select:focus{border-color:var(--adp-accent);box-shadow:0 0 0 .2rem rgba(193,90,43,.18);}
.accordion-button:not(.collapsed){background:var(--adp-sand);color:var(--adp-ink);box-shadow:none;}
.accordion-button:focus{box-shadow:none;border-color:var(--adp-line);}
.accordion-item{border:0;border-radius:.75rem!important;overflow:hidden;margin-bottom:.5rem;box-shadow:0 .125rem .5rem rgba(26,23,20,.06);}
.page-link{color:var(--adp-ink);}
.page-item.active .page-link{background:var(--adp-ink);border-color:var(--adp-ink);}

.footer-brand{font-family:'Archivo',sans-serif;font-size:1.5rem;}
.footer-title{text-transform:uppercase;font-weight:700;font-size:.78rem;letter-spacing:.16em;color:rgba(251,245,234,.5);margin-bottom:1rem;}
.footer-link{color:#FBF5EA;}
.footer-link:hover{color:var(--adp-gold);}
.footer-muted{color:rgba(251,245,234,.65);}
.footer-bottom{border-top:1px solid rgba(251,245,234,.15);color:rgba(251,245,234,.5);}

/* Corpo do post: o HTML aqui vem do editor, então o estilo mora no CSS e não
   em atributo inline — conteúdo antigo ganha o mesmo tratamento do novo. */
.post-body{color:var(--adp-muted);line-height:1.75;}
.post-body h2,.post-body h3,.post-body h4{color:var(--adp-ink);font-weight:800;margin-top:2.5rem;margin-bottom:1rem;}
.post-body h2{font-size:1.6rem;} .post-body h3{font-size:1.3rem;} .post-body h4{font-size:1.1rem;}
.post-body p{margin-bottom:1.25rem;}
.post-body ul,.post-body ol{margin-bottom:1.25rem;padding-left:1.25rem;}
.post-body li{margin-bottom:.4rem;}
.post-body img{max-width:100%;height:auto;border-radius:.75rem;margin:1.5rem 0;}
.post-body blockquote{border-left:3px solid var(--adp-accent);padding-left:1.25rem;margin:1.75rem 0;font-style:italic;color:var(--adp-ink);}
.post-body table{width:100%;margin-bottom:1.5rem;border-collapse:collapse;}
.post-body th,.post-body td{border:1px solid var(--adp-line);padding:.6rem .8rem;}
.post-body pre{background:var(--adp-sand);padding:1rem;border-radius:.6rem;overflow-x:auto;}
.post-body figure{margin:1.5rem 0;}
.post-body figcaption{font-size:.875rem;color:var(--adp-muted);text-align:center;margin-top:.5rem;}
