/* =========================================================
   SEGALA — Educação Executiva para Dentistas
   Sistema: azul-petróleo (#092C40) = marca/estrutura
            mostarda/ocre (#A9770E) = ação/interação, uso exclusivo
            branco                  = base
   Composição: painéis assimétricos + numeração fantasma de dossiê
   Zilla Slab + Inter
   ========================================================= */

:root{
  --color-ink:        #092C40;
  --color-ink-2:       #0F3A52;
  --color-ink-line:    rgba(255,255,255,0.14);
  --color-paper:       #FFFFFF;
  --color-paper-2:     #F4F2EC;
  --color-charcoal:    #14232D;
  --color-charcoal-70: rgba(20,35,45,0.7);
  --color-line:        #DEE6EA;

  /* cor de ação — única, reservada a botões, links e estados interativos */
  --color-action:       #A9770E;
  --color-action-hover: #8A620B;

  /* numeração-fantasma de fundo (marca d'água de seção) */
  --color-ghost-on-light: rgba(9,44,64,0.05);
  --color-ghost-on-dark:  rgba(255,255,255,0.07);

  --font-display: 'Zilla Slab', Georgia, serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'IBM Plex Mono', 'Courier New', monospace;

  --noise-bg: url("data:image/png;base64,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");

  --container-w: 1120px;
  --radius: 2px;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ---------- Reset ---------- */
*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{ margin:0; }
img, svg{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
button{ font: inherit; background:none; border:none; cursor:pointer; color:inherit; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,p{ margin:0; }
input, select{ font: inherit; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *, *::before, *::after{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; }
}

body{
  font-family: var(--font-body);
  color: var(--color-charcoal);
  background: var(--color-paper);
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
}

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

/* ---------- Focus ---------- */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible{
  outline: 2px solid var(--color-action);
  outline-offset: 3px;
}

/* ---------- Typography helpers ---------- */
.eyebrow{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--color-ink);
  margin-bottom: 14px;
}
.eyebrow--light{ color: rgba(255,255,255,0.65); }

.section__title{
  font-family: var(--font-display);
  font-weight: 500;
  font-size: clamp(1.9rem, 3.2vw, 2.6rem);
  line-height: 1.18;
  letter-spacing: -0.01em;
  max-width: 16ch;
  color: var(--color-ink);
}
.section__title--light{ color: var(--color-paper); }

.section__intro{
  font-size: 1.05rem;
  color: var(--color-charcoal-70);
  max-width: 46ch;
  margin-top: 18px;
}
.section__intro--light{ color: rgba(255,255,255,0.72); }

/* ---------- Buttons ---------- */
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.95rem;
  padding: 15px 28px;
  border-radius: var(--radius);
  transition: transform 0.35s var(--ease), background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
  white-space: nowrap;
}
.btn--primary{
  background: var(--color-action);
  color: var(--color-paper);
}
.btn--primary:hover{ background: var(--color-action-hover); transform: translateY(-1px); }
.btn--ghost{
  border: 1px solid currentColor;
  color: var(--color-paper);
  background: transparent;
}
.site-header .btn--ghost{ color: var(--color-ink); border-color: var(--color-ink); }
.btn--ghost:hover{ background: var(--color-ink); color: var(--color-paper); }
.btn--small{ padding: 10px 18px; font-size: 0.82rem; }
.btn--full{ width: 100%; }

/* ---------- Header ---------- */
.site-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  padding: 20px 0;
  transition: background 0.3s ease, padding 0.3s ease, box-shadow 0.3s ease;
}
.site-header__inner{
  display:flex;
  align-items:center;
  justify-content: space-between;
}
.site-header.is-scrolled{
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(10px);
  padding: 12px 0;
  box-shadow: 0 1px 0 var(--color-line);
}
.brand{ display:flex; align-items:center; gap:16px; line-height:1.1; }
.brand__mark{
  position: relative;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 1.9rem;
  letter-spacing: 0.03em;
  color: var(--color-paper);
}
.site-header.is-scrolled .brand__mark{ color: var(--color-ink); }
.brand__divider{
  width: 1px;
  height: 30px;
  background: rgba(255,255,255,0.35);
  flex: none;
  transition: background 0.3s ease;
}
.site-header.is-scrolled .brand__divider{ background: rgba(9,44,64,0.2); }
.brand__tag{
  display: block;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.64rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.65);
}
.site-header.is-scrolled .brand__tag{ color: var(--color-ink); }

/* ---------- Hero ---------- */
.hero{
  position: relative;
  background: var(--color-ink);
  background-image: var(--noise-bg);
  background-repeat: repeat;
  background-size: 64px 64px;
  background-blend-mode: overlay;
  padding: 180px 0 120px;
  overflow: hidden;
}
.hero__ledger-lines{
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(
    to bottom,
    var(--color-ink-line) 0,
    var(--color-ink-line) 1px,
    transparent 1px,
    transparent 42px
  );
  opacity: 0.6;
}
.hero__line{
  position: absolute;
  inset: 0;
  opacity: 0.65;
}
.hero__line svg{ width:100%; height:100%; }
.hero__line-path{
  fill: none;
  stroke: var(--color-action);
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-dasharray: 3600;
  stroke-dashoffset: 3600;
  animation: drawLine 2.6s var(--ease) 0.3s forwards;
}
@keyframes drawLine{ to{ stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce){
  .hero__line-path{ animation: none; stroke-dashoffset: 0; }
}

.hero__content{ position: relative; z-index: 1; max-width: 760px; }
.hero__title{
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--color-paper);
  font-size: clamp(2.4rem, 5.6vw, 4rem);
  line-height: 1.12;
  letter-spacing: -0.01em;
}
.hero__title em{
  font-style: normal;
  font-weight: 700;
  color: inherit;
  position: relative;
  display: inline-block;
}
.hero__title em::after{
  content: "";
  position: absolute;
  left: 0; right: 0;
  bottom: -0.05em;
  height: 3px;
  background: var(--color-action);
}
.hero__subtitle{
  margin-top: 26px;
  font-size: 1.15rem;
  color: rgba(255,255,255,0.78);
  max-width: 52ch;
}
.hero__cta{ margin-top: 40px; }
.hero__microcopy{
  margin-top: 16px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.85rem;
  color: rgba(255,255,255,0.5);
  letter-spacing: 0.01em;
}

/* ---------- Sections ---------- */
.section{ padding: 110px 0; position: relative; overflow: hidden; }
.section--light{ background: var(--color-paper); }
.section--dark{ background: var(--color-ink); }
.section--paper2{ background: var(--color-paper-2); }
.section--framed{ background: var(--color-paper); padding: 70px 0; }

/* numeração-fantasma — marca d'água de "capítulo de dossiê" atrás do título */
.ghost-index{
  position: absolute;
  top: -0.28em;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(9rem, 16vw, 13rem);
  line-height: 1;
  color: var(--color-ghost-on-light);
  pointer-events: none;
  user-select: none;
  z-index: 0;
}
.ghost-index--right{ right: -0.03em; }
.ghost-index--left{ left: -0.04em; }
.ghost-index--dark{ color: var(--color-ghost-on-dark); }
.section > .container{ position: relative; z-index: 1; }

/* painel escuro flutuante — margem branca visível ao redor, não faixa cheia */
.dark-panel{
  position: relative;
  background: var(--color-ink);
  background-image: var(--noise-bg);
  background-repeat: repeat;
  background-size: 64px 64px;
  background-blend-mode: overlay;
  padding: 70px 60px;
  overflow: hidden;
}

/* ---------- Symptom list (Dores) ---------- */
.symptom-list{
  margin-top: 56px;
  border-top: 1px solid var(--color-line);
}
.symptom-item{
  display:flex;
  gap: 20px;
  align-items: flex-start;
  padding: 26px 0;
  border-bottom: 1px solid var(--color-line);
}
.symptom-item p{
  font-size: 1.08rem;
  color: var(--color-charcoal);
  max-width: 58ch;
}
.symptom-mark{
  flex: none;
  width: 18px; height: 22px;
  margin-top: 2px;
  position: relative;
}
.symptom-mark::before{
  content: "";
  position: absolute;
  left: 0; top: 9px;
  width: 14px; height: 2px;
  background: var(--color-ink);
}

/* ---------- Benefit grid ---------- */
.benefit-list{
  margin-top: 56px;
  border-top: 1px solid var(--color-ink-line);
}
.benefit-row{
  display: flex;
  gap: 26px;
  align-items: flex-start;
  padding: 28px 6px;
  border-bottom: 1px solid var(--color-ink-line);
}
.benefit-row:nth-child(even){ background: rgba(255,255,255,0.03); }
.benefit-row__icon{
  flex: none;
  width: 28px; height: 28px;
  margin-top: 3px;
  color: var(--color-paper);
}
.benefit-row h3{
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 1.2rem;
  color: var(--color-paper);
  margin-bottom: 6px;
}
.benefit-row p{
  color: rgba(255,255,255,0.65);
  font-size: 0.98rem;
  max-width: 52ch;
}

/* ---------- Pillar grid (Programa) ---------- */
.pillar-list{
  margin-top: 56px;
  border-top: 1px solid var(--color-line);
}
.pillar-row{
  display: flex;
  gap: 36px;
  align-items: flex-start;
  padding: 30px 0;
  border-bottom: 1px solid var(--color-line);
}
.pillar-row__num{
  flex: none;
  width: 34px;
  padding-top: 4px;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.82rem;
  color: var(--color-charcoal-70);
}
.pillar-row__name{
  flex: 0 0 200px;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 1.4rem;
  color: var(--color-ink);
}
.pillar-row p{
  flex: 1;
  color: var(--color-charcoal-70);
  font-size: 1rem;
  max-width: 46ch;
}

.format-row{
  margin-top: 44px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 8px;
  border-top: 1px solid var(--color-line);
}
.format-item{
  display:flex;
  align-items: baseline;
  gap: 14px;
  padding: 16px 0;
  border-bottom: 1px dashed var(--color-line);
}
.format-item__label{
  flex: none;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--color-charcoal-70);
  width: 120px;
}
.format-item__leader{
  flex: 1;
  border-bottom: 1px dotted var(--color-line);
  height: 1px;
  transform: translateY(-4px);
}
.format-item__value{
  flex: none;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 1.1rem;
  color: var(--color-ink);
}

/* ---------- Authority ---------- */
.authority-layout{
  margin-top: 56px;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 64px;
  align-items: start;
}
.authority-bio__quote{
  font-family: var(--font-display);
  font-style: normal;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.42;
  color: var(--color-ink);
  padding-left: 22px;
  border-left: 3px solid var(--color-ink);
}
.authority-bio__name{
  margin-top: 22px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.01em;
  color: var(--color-ink);
}
.authority-facts{
  display: flex;
  flex-direction: column;
  gap: 26px;
}
.authority-fact{
  padding-left: 20px;
  border-left: 2px solid var(--color-ink);
}
.authority-fact__label{
  display:block;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--color-charcoal-70);
  margin-bottom: 6px;
}
.authority-fact p{ font-size: 0.98rem; color: var(--color-charcoal); max-width: 40ch; }

/* ---------- Form ---------- */
.form-container{
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 64px;
}
.form-intro{ padding-top: 8px; }
.lead-form{
  background: var(--color-ink-2);
  border: 1px solid var(--color-ink-line);
  padding: 40px;
}
.field{ margin-bottom: 20px; display:flex; flex-direction:column; gap:8px; }
.field label{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}
.field input, .field select, .field textarea{
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--color-ink-line);
  color: var(--color-paper);
  padding: 13px 14px;
  border-radius: var(--radius);
  font-size: 0.98rem;
  font-family: var(--font-body);
}
.field textarea{ resize: vertical; min-height: 70px; }
.field input::placeholder, .field textarea::placeholder{ color: rgba(255,255,255,0.35); }
.field select{ appearance: none; }
.field select option{
  color: var(--color-charcoal);
  background: var(--color-paper);
}
.field input:focus, .field select:focus, .field textarea:focus{ border-color: var(--color-action); }
.lead-form__privacy{
  margin-top: 16px;
  font-size: 0.8rem;
  color: rgba(255,255,255,0.45);
  text-align: center;
}
.lead-form__success{ text-align:center; padding: 30px 10px; }
.lead-form__success h3{
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--color-action);
  margin-bottom: 10px;
}
.lead-form__success p{ color: rgba(255,255,255,0.7); }

/* ---------- FAQ ---------- */
.faq-list{ margin-top: 48px; border-top: 1px solid var(--color-line); }
.faq-item{ border-bottom: 1px solid var(--color-line); }
.faq-question{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 0;
  text-align: left;
  font-family: var(--font-display);
  font-size: 1.08rem;
  color: var(--color-ink);
}
.faq-icon{
  flex: none;
  width: 18px; height: 18px;
  position: relative;
}
.faq-icon::before, .faq-icon::after{
  content: "";
  position: absolute;
  background: var(--color-action);
  transition: transform 0.3s var(--ease);
}
.faq-icon::before{ left:0; right:0; top:50%; height:1.4px; transform: translateY(-50%); }
.faq-icon::after{ top:0; bottom:0; left:50%; width:1.4px; transform: translateX(-50%); }
.faq-question[aria-expanded="true"] .faq-icon::after{ transform: translateX(-50%) scaleY(0); }

.faq-answer{
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s var(--ease);
}
.faq-answer p{
  padding: 0 0 24px;
  color: var(--color-charcoal-70);
  max-width: 60ch;
  font-size: 0.98rem;
}

/* ---------- Footer ---------- */
.site-footer{
  background: var(--color-ink);
  padding: 70px 0 30px;
}
.site-footer__inner{
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--color-ink-line);
}
.brand__mark--footer{ font-size: 2.2rem; }
.site-footer .brand__tag{
  display: block;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,0.25);
  width: fit-content;
  opacity: 0.9;
}
.site-footer__desc{
  margin-top: 16px;
  color: rgba(255,255,255,0.55);
  font-size: 0.92rem;
  max-width: 30ch;
}
.site-footer__contact, .site-footer__cta{ display:flex; flex-direction:column; gap: 10px; }
.site-footer__label{
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: rgba(255,255,255,0.5);
  margin-bottom: 4px;
}
.site-footer__contact a{ color: rgba(255,255,255,0.75); font-size: 0.95rem; }
.site-footer__contact a:hover{ color: var(--color-action); }
.site-footer__cta{ justify-self: end; align-items: flex-start; }
.site-footer__legal{
  margin-top: 26px;
  font-family: var(--font-body);
  font-size: 0.78rem;
  color: rgba(255,255,255,0.4);
}

/* ---------- Mobile sticky CTA ---------- */
.mobile-cta{
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 90;
  padding: 14px 16px calc(14px + env(safe-area-inset-bottom));
  background: rgba(9,44,64,0.96);
  backdrop-filter: blur(8px);
  border-top: 1px solid var(--color-ink-line);
}

/* ---------- Reveal animation ---------- */
.reveal{
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s var(--ease), transform 0.7s var(--ease);
}
.reveal.is-visible{ opacity: 1; transform: translateY(0); }

/* ---------- Textura de grão (papel) ---------- */
/* .hero e .dark-panel já definem a própria textura acima */
.site-footer{
  background-image: var(--noise-bg);
  background-repeat: repeat;
  background-size: 64px 64px;
  background-blend-mode: overlay;
}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 960px){
  .form-container{ grid-template-columns: 1fr; gap: 40px; }
  .authority-layout{ grid-template-columns: 1fr; gap: 44px; }
  .site-footer__inner{ grid-template-columns: 1fr 1fr; }
  .site-footer__cta{ justify-self: start; grid-column: 1 / -1; }
}

@media (max-width: 720px){
  .container{ padding: 0 20px; }
  .hero{ padding: 140px 0 90px; }
  .section{ padding: 80px 0; }
  .section--framed{ padding: 50px 0; }
  .pillar-row{ flex-wrap: wrap; }
  .pillar-row__name{ flex: 1 1 100%; }
  .header-cta{ display: none; }
  .mobile-cta{ display: block; }
  body{ padding-bottom: 78px; }
  .site-footer__inner{ grid-template-columns: 1fr; }
  .site-footer__cta{ grid-column: auto; }
  .format-row{ gap: 26px; }
  .symptom-item p, .hero__subtitle, .section__intro{ max-width: none; }

  /* numeração-fantasma: bem menor no mobile, senão domina a tela */
  .ghost-index{
    font-size: 5.5rem;
    top: -0.1em;
  }
  .ghost-index--right{ right: -0.08em; }
  .ghost-index--left{ left: -0.06em; }

  /* painel flutuante: menos respiro lateral no mobile */
  .dark-panel{ padding: 44px 24px; }
}
