/* Ana e trabalho clínico: movimento discreto dentro de uma única dobra. */
.signature {
  --paper: #ece2d3;
  --line: #d1c4af;
  background: #ece2d3;
}
.signature .site-header { background: #e8dcc9f5; border-bottom-color: #d0bfa5; }
.signature .expert-hero {
  background: radial-gradient(ellipse at 86% 16%, #e2ccca85 0, transparent 58%),
    radial-gradient(ellipse at 3% 100%, #d8c4a6 0, transparent 58%), #e8dcc9;
  border-bottom: 1px solid #d0bfa5;
}
.signature .hero-inner { padding-block: 34px 36px; gap: 40px; grid-template-columns: .95fr 1.25fr; }
.signature .hero h1 { font-size: clamp(48px, 4.6vw, 66px); }
.signature .hero-course { color: #4a624a; font-size: 10px; }
.signature .language-label { background: #d9cbb5; color: #253d28; font-size: 10px; margin-bottom: 21px; }
.signature .hero-description { color: #40513f; font-size: 14px; }
.signature .hero-actions { gap: 15px; margin-top: 24px; }
.signature .hero-actions .btn { font-size: 10px; min-height: 52px; }
.signature .hero-secondary { font-size: 9px; color: #284a3e; }
.signature .expert-visual { grid-template-columns: 1.4fr .85fr; gap: 19px; align-items: center; }
.signature .expert-portrait { min-width: 0; }
.signature .expert-portrait img { border-radius: 24px; box-shadow: 0 18px 40px #6a4b3018; }
.signature .expert-portrait figcaption { font-size: 10px; }
.signature .expert-portrait figcaption span { font-size: 8px; color: #476146; }
.signature .case-reel { min-width: 0; align-self: center; }
.signature .reel-heading { display: flex; align-items: center; justify-content: space-between; gap: 5px; margin-bottom: 10px; min-height: 28px; }
.signature .reel-heading > span { font-size: 8px; color: #355038; font-weight: 600; letter-spacing: .045em; }
.signature .reel-heading [data-reel-pause] { border: 1px solid #c2ad90; border-radius: 17px; padding: 7px 10px; color: #354b35; background: #e8dcc9; font-size: 9px; cursor: pointer; }
.signature .reel-viewport { height: 400px; max-height: 44vw; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; scrollbar-color: #84725a #ddceb7; border-radius: 18px; background: #d8c6ab; padding: 8px; overscroll-behavior-y: auto; }
.signature .reel-viewport:focus-visible { outline-offset: 4px; }
.signature .reel-track { display: flex; flex-direction: column; gap: 14px; }
.signature .reel-slide { flex: 0 0 auto; min-width: 0; }
.signature .reel-slide .photo-button { background: #efe5d5; padding: 5px; border-radius: 11px; width: 100%; }
.signature .reel-slide .photo-button img { width: 100%; height: auto; border-radius: 0; object-fit: contain; }
.signature .reel-slide .photo-button::after { width: 25px; height: 25px; font-size: 13px; right: 8px; bottom: 8px; }
.signature .reel-controls { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin-top: 8px; }
.signature .reel-controls > button { border: 1px solid #c2ad90; border-radius: 50%; width: 35px; height: 35px; color: #284a3e; background: #e8dcc9; cursor: pointer; flex-shrink: 0; font-size: 16px; }
.signature .reel-controls > a { font-size: 7px; line-height: 1.5; color: #2e4b31; font-weight: 500; }
.signature .reel-controls > a span { margin-left: 3px; }
.signature .reel-heading button:hover, .signature .reel-controls > button:hover { background: #dfceb4; }
.signature .case-gallery { background: #e7dece; }
.signature .about { background: #e5d7d2; }
.signature .program { background: #ece2d3; }
.signature .audience { background: #ded2be; }
.signature .faq { background: #e6dcd0; }
.signature .site-footer { background: #d3c5ae; }
.signature .about .section-copy, .signature .program .section-copy, .signature .audience .section-copy { color: #475341; }
.signature .case-gallery .eyebrow, .signature .about .eyebrow, .signature .program .eyebrow, .signature .audience .eyebrow, .signature .faq .eyebrow { color: #536448; }
.signature .gallery-disclaimer, .signature .case-grid figcaption { color: #536448; }
.signature .case-gallery .photo-button { background: #f3ebdf; }
.signature .event-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 19px; }
.signature .event-grid figcaption, .signature .expert-bio-layout figcaption { color: #59624d; }

/* Seção preparada, nunca um player falso. Vídeo real será incorporado ao recebê-lo. */
.signature .lesson-section { background: #ddceb8; padding-block: 52px; }
.signature .lesson-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; align-items: center; }
.signature .lesson-copy h2 { color: #284a3e; }
.signature .lesson-copy .section-copy { color: #40523b; max-width: 400px; }
.signature .lesson-copy .eyebrow { color: #385436; }
.signature .lesson-language { color: #384f32; font-size: 10px; font-weight: 600; letter-spacing: .04em; margin-top: 22px; }
.signature .lesson-copy .text-link { display: inline-flex; margin-top: 23px; }
.signature .lesson-cover { position: relative; aspect-ratio: 16 / 9; background: #ccb99b; border-radius: 22px; }
.signature .lesson-cover img { position: absolute; inset: 9px; width: calc(100% - 18px); height: calc(100% - 18px); object-fit: contain; border-radius: 12px; }
.signature .lesson-media figcaption { display: flex; flex-direction: column; gap: 6px; color: #3e5036; background: #e8dcc9; margin-top: 10px; padding: 12px 16px; border-radius: 12px; font-size: 11px; line-height: 1.6; }
.signature .lesson-media figcaption strong { font-size: 9px; letter-spacing: .03em; font-weight: 600; }
.signature .lesson-media video { width: 100%; aspect-ratio: 16 / 9; border-radius: 20px; background: #173c2c; }

@media (max-width: 1050px) {
  .signature .hero-inner { gap: 28px; grid-template-columns: .95fr 1.05fr; }
  .signature .hero h1 { font-size: 50px; }
  .signature .expert-visual { grid-template-columns: 1.35fr .9fr; gap: 13px; }
  .signature .reel-viewport { height: 325px; max-height: 35vw; padding: 6px; }
  .signature .reel-heading { flex-wrap: wrap; }
  .signature .hero-actions .btn { font-size: 9px; }
  .signature .lesson-layout { gap: 40px; }
}
@media (max-width: 760px) {
  .signature .site-nav { background: #e8dcc9; }
  .signature .hero-inner { display: flex; gap: 14px; padding-block: 21px 28px; }
  .signature .language-label { font-size: 8px; margin: 0; padding: 7px 11px; }
  .signature .hero h1 { font-size: 40px; }
  .signature .hero-title-intro { font-size: 15px; }
  .signature .expert-visual { grid-template-columns: 1.35fr .9fr; gap: 12px; align-items: center; max-width: 540px; }
  .signature .expert-portrait img { border-radius: 18px; }
  .signature .expert-portrait figcaption { font-size: 8px; margin-top: 8px; }
  .signature .expert-portrait figcaption span { font-size: 6px; }
  .signature .reel-heading { gap: 4px; min-height: 19px; margin-bottom: 6px; }
  .signature .reel-heading > span { font-size: 6px; }
  .signature .reel-heading [data-reel-pause] { font-size: 7px; padding: 4px 7px; }
  .signature .reel-viewport { height: 220px; max-height: 50vw; padding: 5px; border-radius: 12px; }
  .signature .reel-track { gap: 10px; }
  .signature .reel-slide .photo-button { padding: 4px; border-radius: 9px; }
  .signature .reel-controls { gap: 4px; margin-top: 6px; }
  .signature .reel-controls > button { width: 29px; height: 29px; font-size: 14px; }
  .signature .reel-controls > a { font-size: 6px; }
  .signature .hero-promise { font-size: 17px; }
  .signature .hero-actions { gap: 13px; margin: 0; }
  .signature .hero-actions .btn { min-height: 46px; font-size: 8px; padding-inline: 14px; }
  .signature .hero-secondary { font-size: 7px; }
  .signature .hero-description { font-size: 12px; }
  .signature .event-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 14px; }
  .signature .lesson-section { padding-block: 40px; }
  .signature .lesson-layout { grid-template-columns: 1fr; gap: 24px; }
  .signature .lesson-language { margin-top: 17px; }
  .signature .lesson-copy .text-link { margin-top: 19px; }
  .signature .lesson-cover { border-radius: 17px; }
  .signature .lesson-media figcaption { font-size: 10px; }
}
@media (max-width: 390px) {
  .signature .hero h1 { font-size: 35px; }
  .signature .hero-actions { gap: 10px; }
  .signature .hero-actions .btn { font-size: 7px; padding-inline: 11px; }
  .signature .hero-secondary { font-size: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .signature .reel-viewport { scroll-behavior: auto; }
}
