
:root{
  --paper:#F7F5F0; --sand:#E8E1D5; --sand-2:#DED6C7;
  --ink:#252526; --ink-2:#323234;
  --fg:#252526; --muted:#5F625C;
  --champ:#D2BC98; --champ-hi:#E3D3B8; --gold:#735E3C;
  --line:rgba(37,37,38,.16); --line-ink:rgba(247,245,240,.16);
  --on-ink:#F7F5F0; --on-ink-2:#CFCBC2; --on-ink-3:#A3A19D;
  --serif:"Lora", Georgia, "Times New Roman", serif;
  --sans:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --g:clamp(20px, 5vw, 72px);
  --hh:76px;
  --ov:clamp(72px, 15vh, 180px);
  --r:clamp(14px, 1.6vw, 24px);
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:80px; }
body{
  margin:0; background:var(--paper); color:var(--fg);
  font:400 17px/1.62 var(--sans);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{ display:block; max-width:100%; height:auto; }
a{ color:inherit; text-decoration:none; }
a:hover{ color:inherit; }
h1,h2,h3,p,dl,dd,figure,blockquote{ margin:0; }
h1,h2,h3{ font-weight:500; }
ul,ol{ margin:0; padding:0; list-style:none; }
button{ font:inherit; color:inherit; background:none; border:0; padding:0; cursor:pointer; }
::selection{ background:var(--champ); color:var(--ink); }
:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:2px; }
.dark :focus-visible{ outline-color:var(--champ); }
.wrap{ width:min(1320px, 100% - 2 * var(--g)); margin-inline:auto; }
.g12{ display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:24px; }
.nw{ white-space:nowrap; }
.skip{ position:absolute; left:16px; top:-80px; z-index:100; background:var(--ink); color:var(--paper); padding:12px 18px; border-radius:4px; font:600 14px/1 var(--sans); }
.skip:focus{ top:16px; }

.kick{ font:600 12.5px/1.4 var(--sans); letter-spacing:.16em; text-transform:uppercase; color:var(--gold); }
.dark .kick{ color:var(--champ); }
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:12px;
  min-height:54px; padding:0 26px; border-radius:4px;
  font:600 15px/1.2 var(--sans); letter-spacing:.01em; text-align:center;
  transition:background-color .3s var(--ease), color .3s var(--ease), transform .3s var(--ease);
}
.btn:hover{ transform:translateY(-1px); }
.btn--ink{ background:var(--ink); color:var(--paper); }
.btn--ink:hover{ background:#19191A; color:var(--paper); }
.btn--champ{ background:var(--champ); color:var(--ink); }
.btn--champ:hover{ background:var(--champ-hi); color:var(--ink); }
.lnk{ display:inline-block; padding:6px 0; font:600 15px/1.4 var(--sans); border-bottom:1px solid var(--gold); transition:color .3s var(--ease); }
.lnk:hover{ color:var(--gold); }
.dark .lnk{ border-color:rgba(210,188,152,.7); }
.dark .lnk:hover{ color:var(--champ); }
.arr{ display:inline-block; margin-left:8px; transition:transform .35s var(--ease); }
a:hover .arr{ transform:translate(2px,-2px); }
a:hover .arr--d{ transform:translateY(3px); }
.q{ font:italic 500 clamp(22px, 2vw, 30px)/1.36 var(--serif); letter-spacing:-.006em; text-wrap:pretty; }
.q-by{ margin-top:14px; font:500 14px/1.4 var(--sans); color:var(--muted); }
.dark .q-by{ color:var(--on-ink-3); }
.br{ color:var(--gold); font-style:normal; }
.dark .br{ color:var(--champ); }

/* header */
.hd{ position:fixed; inset:0 0 auto 0; z-index:50; height:var(--hh); transition:background-color .4s var(--ease), box-shadow .4s var(--ease); }
.hd.is-solid{ background:rgba(247,245,240,.94); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); box-shadow:0 1px 0 var(--line); }
.hd__in{ height:100%; display:flex; align-items:center; gap:clamp(20px, 2.6vw, 40px); }
.hd__brand{ display:flex; align-items:center; gap:12px; margin-right:auto; min-height:44px; }
.hd__mono{ width:30px; height:30px; }
.hd__name{ font:500 19px/1 var(--serif); white-space:nowrap; opacity:0; transform:translateY(6px); transition:opacity .4s var(--ease), transform .4s var(--ease); }
.hd.is-solid .hd__name{ opacity:1; transform:none; }
.hd__nav{ display:flex; gap:clamp(18px, 2.2vw, 32px); }
.hd__nav a{ position:relative; padding:10px 0; font:500 15px/1 var(--sans); color:var(--muted); transition:color .3s var(--ease); }
.hd__nav a::after{ content:""; position:absolute; left:0; right:0; bottom:3px; height:1px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.hd__nav a:hover{ color:var(--fg); }
.hd__nav a:hover::after{ transform:scaleX(1); }
.hd__cta{ display:inline-flex; align-items:center; min-height:44px; padding:0 18px; border-radius:4px; background:var(--ink); color:var(--paper); font:600 14px/1 var(--sans); white-space:nowrap; transition:background-color .3s var(--ease); }
.hd__cta:hover{ background:#19191A; color:var(--paper); }
.hd__menu{ display:none; align-items:center; min-height:44px; font:600 13px/1 var(--sans); letter-spacing:.14em; text-transform:uppercase; }
@media (max-width:899px){
  .hd__nav, .hd__cta{ display:none; }
  .hd__menu{ display:inline-flex; }
  .hd__name{ opacity:1; transform:none; }
}
.menu{
  position:fixed; inset:0; z-index:70; background:var(--paper); color:var(--fg);
  display:flex; flex-direction:column; padding:0 var(--g) 32px; overflow-y:auto;
  visibility:hidden; opacity:0; transition:opacity .35s var(--ease), visibility 0s .35s;
}
.menu.is-open{ visibility:visible; opacity:1; transition:opacity .35s var(--ease), visibility 0s; }
.menu__top{ height:var(--hh); display:flex; align-items:center; justify-content:space-between; flex:none; }
.menu__close{ min-height:44px; font:600 13px/1 var(--sans); letter-spacing:.14em; text-transform:uppercase; }
.menu nav{ margin-top:16px; border-top:1px solid var(--line); display:flex; flex-direction:column; }
.menu nav a{ font:500 clamp(32px, 9vw, 44px)/1.1 var(--serif); padding:14px 0; border-bottom:1px solid var(--line); }
.menu__foot{ margin-top:auto; padding-top:40px; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.menu__foot .btn{ width:100%; }
.menu__foot span{ font-size:14px; color:var(--muted); }

/* capa */
.capa{ position:relative; z-index:2; padding-top:calc(var(--hh) + clamp(8px, 2vw, 28px)); }
.capa h1{
  font:500 min(10.6vw, 172px)/.88 var(--serif); letter-spacing:-.034em;
  white-space:nowrap; margin-left:-.04em;
}
.capa h1 .ln{ display:inline-block; overflow:hidden; padding:.04em .02em .12em; margin:-.04em -.02em -.12em; vertical-align:top; }
.capa h1 .ln > span{ display:inline-block; }
.capa__row{ margin-top:clamp(28px, 3.4vw, 48px); align-items:start; }
.capa__l{ grid-column:1 / 5; padding-top:4px; }
.capa__lede{ margin-top:18px; max-width:34ch; font-size:clamp(17px, 1.25vw, 19px); line-height:1.6; text-wrap:pretty; }
.capa__acts{ margin-top:30px; display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.capa__acts .btn{ white-space:nowrap; padding:0 22px; }
.capa__ph{ grid-column:5 / 10; position:relative; margin-bottom:calc(-1 * var(--ov)); }
.capa__ph .fr{ aspect-ratio:4/5; max-height:calc(100svh - 120px); width:100%; border-radius:var(--r); overflow:hidden; background:#BDBBB7; }
.capa__ph img{ width:100%; height:100%; object-fit:cover; object-position:50% 18%; }
.capa__r{ grid-column:10 / 13; padding-top:4px; }
.capa__r ul{ margin-top:14px; border-top:1px solid var(--line); }
.capa__r li{ border-bottom:1px solid var(--line); }
.capa__r li a{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:12px 0; font:500 clamp(17px, 1.35vw, 21px)/1.3 var(--serif); transition:color .3s var(--ease), padding .4s var(--ease); }
.capa__r li a span{ font:500 13px/1 var(--sans); color:var(--gold); }
.capa__r li a:hover{ color:var(--gold); padding-left:6px; }
.capa__cro{ margin-top:18px; font-size:14px; color:var(--muted); }
@media (max-width:899px){
  .capa h1{ white-space:normal; font-size:clamp(54px, 17vw, 96px); line-height:.92; }
  .capa h1 .ln{ display:block; }
  .capa__l, .capa__ph, .capa__r{ grid-column:1 / -1; }
  .capa__ph{ margin-top:40px; }
  .capa__ph .fr{ max-height:none; }
  .capa__r{ display:none; }
  .capa__acts{ flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px 26px; }
}

/* ordem */
.dark{ background:var(--ink); color:var(--on-ink); }
.ordem{ position:relative; z-index:1; padding:calc(var(--ov) + clamp(64px, 8vw, 120px)) 0 clamp(88px, 10vw, 152px); }
.ordem__head{ align-items:end; row-gap:20px; }
.ordem__head .kick{ grid-column:1 / 4; padding-bottom:.7em; }
.ordem h2{ grid-column:4 / 13; font:500 clamp(34px, 4.2vw, 64px)/1.08 var(--serif); letter-spacing:-.018em; text-wrap:balance; }
.ordem h2 + .q-by{ grid-column:4 / 13; margin-top:0; }
.passos{ margin-top:clamp(56px, 7vw, 100px); border-top:1px solid var(--line-ink); }
.passo{ padding:clamp(28px, 3.4vw, 44px) 0; border-bottom:1px solid var(--line-ink); align-items:baseline; row-gap:14px; }
.passo__n{ grid-column:1 / 2; font:600 13px/1 var(--sans); letter-spacing:.1em; color:var(--champ); }
.passo h3{ grid-column:2 / 8; font:500 clamp(48px, 7.4vw, 116px)/.98 var(--serif); letter-spacing:-.03em; color:var(--on-ink-3); transition:color .9s var(--ease); }
.passo__t{ grid-column:8 / 13; color:var(--on-ink-2); text-wrap:pretty; max-width:44ch; }
.passo__t .q{ display:block; margin-top:16px; font-size:clamp(19px, 1.5vw, 23px); color:var(--on-ink); }
.passo.on h3{ color:var(--on-ink); }
@media (max-width:899px){
  .ordem__head .kick, .ordem h2, .ordem h2 + .q-by{ grid-column:1 / -1; }
  .passo__n{ grid-column:1 / -1; }
  .passo h3, .passo__t{ grid-column:1 / -1; }
  .passo h3{ font-size:clamp(46px, 14vw, 72px); }
}

/* perfil */
.perfil{ padding:clamp(88px, 10vw, 152px) 0; }
.perfil__g{ row-gap:48px; }
.perfil__ph{ grid-column:1 / 6; grid-row:1 / 4; align-self:start; position:sticky; top:104px; }
.perfil__ph .fr{ aspect-ratio:4/5; border-radius:var(--r); overflow:hidden; background:var(--sand-2); }
.perfil__ph img{ width:100%; height:100%; object-fit:cover; object-position:42% 30%; }
.perfil__head{ grid-column:7 / 13; }
.perfil h2{ margin-top:22px; font:500 clamp(32px, 3.3vw, 50px)/1.14 var(--serif); letter-spacing:-.016em; text-wrap:balance; }
.perfil__txt{ grid-column:7 / 13; max-width:56ch; }
.perfil__txt p + p{ margin-top:1.1em; }
.perfil__txt .q-wrap{ margin-top:40px; padding-top:28px; border-top:1px solid var(--line); }
.linha{ grid-column:7 / 13; }
.linha h3{ margin-bottom:6px; }
.linha li{ display:grid; grid-template-columns:minmax(96px, .26fr) minmax(0,1fr); gap:20px; align-items:baseline; padding:18px 0; border-bottom:1px solid var(--line); }
.linha li:first-child{ border-top:1px solid var(--line); }
.linha b{ font:500 clamp(30px, 2.6vw, 40px)/1 var(--serif); letter-spacing:-.02em; }
.linha span{ font-size:17px; }
@media (max-width:899px){
  .perfil__ph{ position:relative; top:auto; grid-row:auto; grid-column:1 / -1; max-width:560px; }
  .perfil__head{ grid-row:1; }
  .perfil__head, .perfil__txt, .linha{ grid-column:1 / -1; }
  .perfil__g{ row-gap:40px; }
}

/* atuação */
.atuacao{ background:var(--sand); padding:clamp(88px, 10vw, 152px) 0; }
.atu__side{ grid-column:1 / 5; align-self:start; position:sticky; top:104px; }
.atu__side h2{ margin-top:22px; font:500 clamp(36px, 4vw, 60px)/1.06 var(--serif); letter-spacing:-.018em; }
.atu__side p{ margin-top:20px; max-width:34ch; color:var(--fg); }
.atu__list{ grid-column:6 / 13; border-top:1px solid var(--line); }
.termo{ padding:clamp(26px, 2.8vw, 36px) 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); gap:12px 32px; align-items:baseline; }
.termo h3{ font:500 clamp(26px, 2.3vw, 36px)/1.12 var(--serif); letter-spacing:-.012em; }
.termo p{ color:var(--fg); text-wrap:pretty; }
.termo__lbl{ display:block; margin-bottom:8px; }
.termo--sed{ background:var(--paper); margin:24px 0 0; padding:28px; border:0; border-radius:var(--r); }
@media (max-width:899px){
  .atu__side{ position:relative; top:auto; grid-column:1 / -1; margin-bottom:40px; }
  .atu__list{ grid-column:1 / -1; }
  .termo{ grid-template-columns:1fr; }
  .termo--sed{ padding:24px; }
}

/* consultório */
.cons{ padding:clamp(88px, 10vw, 152px) 0; }
.cons__head{ align-items:end; row-gap:20px; }
.cons__head .kick{ grid-column:1 / 4; padding-bottom:.6em; }
.cons h2{ grid-column:4 / 11; font:500 clamp(34px, 4.2vw, 64px)/1.06 var(--serif); letter-spacing:-.018em; text-wrap:balance; }
.ensaio{ margin-top:clamp(48px, 6vw, 80px); display:grid; grid-template-columns:minmax(0,5fr) minmax(0,3.2fr) minmax(0,3.2fr); gap:clamp(12px, 1.6vw, 24px); align-items:end; }
.ensaio .fr{ border-radius:var(--r); overflow:hidden; background:var(--sand-2); }
.ensaio img{ width:100%; height:100%; object-fit:cover; }
.ensaio figure:nth-child(1) .fr{ aspect-ratio:4/5; }
.ensaio figure:nth-child(1) img{ object-position:50% 55%; }
.ensaio figure:nth-child(2) .fr{ aspect-ratio:3/4; }
.ensaio figure:nth-child(2) img{ object-position:50% 45%; }
.ensaio figure:nth-child(3) .fr{ aspect-ratio:2/3; }
.ensaio figure:nth-child(3) img{ object-position:50% 55%; }
.ensaio figcaption{ margin-top:12px; font:500 14px/1.4 var(--sans); color:var(--muted); }
.cons__dados{ margin-top:clamp(48px, 5vw, 72px); display:grid; grid-template-columns:minmax(0,1.5fr) repeat(3, minmax(0,1fr)); gap:28px 32px; padding-top:28px; border-top:1px solid var(--line); }
.cons__dados dt{ font:600 12.5px/1.4 var(--sans); letter-spacing:.16em; text-transform:uppercase; color:var(--gold); }
.cons__dados dd{ margin-top:10px; }
.cons__end{ font:500 clamp(24px, 2.1vw, 32px)/1.2 var(--serif); letter-spacing:-.01em; }
.cons__dados .lnk{ margin-top:14px; }
@media (max-width:899px){
  .cons__head .kick, .cons h2{ grid-column:1 / -1; }
  .ensaio{ grid-template-columns:1fr 1fr; }
  .ensaio figure:nth-child(1){ grid-column:1 / -1; }
  .ensaio figure:nth-child(2) .fr, .ensaio figure:nth-child(3) .fr{ aspect-ratio:3/4; }
  .cons__dados{ grid-template-columns:1fr 1fr; }
  .cons__dados > div:first-child{ grid-column:1 / -1; }
}
@media (max-width:480px){ .cons__dados{ grid-template-columns:1fr; } }

/* agendamento */
.agenda{ padding:clamp(88px, 10vw, 152px) 0 clamp(80px, 9vw, 128px); }
.agenda__g{ align-items:end; row-gap:56px; }
.agenda__main{ grid-column:1 / 8; }
.agenda h2{ margin-top:22px; font:500 clamp(36px, 4.4vw, 68px)/1.04 var(--serif); letter-spacing:-.02em; }
.agenda__sub{ margin-top:18px; color:var(--on-ink-2); }
.agenda__tel{
  display:inline-block; margin-top:clamp(28px, 3vw, 44px);
  font:500 clamp(40px, 5.6vw, 88px)/1.04 var(--serif); letter-spacing:-.026em; white-space:nowrap;
  background:linear-gradient(var(--champ), var(--champ)) 0 100% / 0 1px no-repeat;
  transition:color .35s var(--ease), background-size .6s var(--ease);
}
.agenda__tel:hover{ color:var(--champ); background-size:100% 1px; }
.agenda__acts{ margin-top:32px; }
.agenda__dl{ margin-top:clamp(44px, 5vw, 64px); padding-top:24px; border-top:1px solid var(--line-ink); display:grid; grid-template-columns:repeat(auto-fit, minmax(190px, 1fr)); gap:28px 32px; }
.agenda__dl dt{ font:600 12.5px/1.4 var(--sans); letter-spacing:.16em; text-transform:uppercase; color:var(--champ); }
.agenda__dl dd{ margin-top:10px; color:var(--on-ink-2); }
.agenda__dl a{ color:var(--on-ink); border-bottom:1px solid rgba(210,188,152,.6); transition:color .3s var(--ease); }
.agenda__dl a:hover{ color:var(--champ); }
.agenda__side{ grid-column:9 / 13; }
.agenda__side .fr{ aspect-ratio:3/4; border-radius:var(--r); overflow:hidden; background:var(--ink-2); }
.agenda__side img{ width:100%; height:100%; object-fit:cover; object-position:50% 22%; }
.agenda__side blockquote{ margin-top:28px; }
@media (max-width:899px){
  .agenda__main, .agenda__side{ grid-column:1 / -1; }
  .agenda__side{ max-width:440px; }
  .agenda__tel{ font-size:min(10.6vw, 56px); }
  .agenda__acts .btn{ width:100%; }
}

/* rodapé */
.ft{ background:var(--ink); color:var(--on-ink-2); border-top:1px solid var(--line-ink); padding:clamp(56px, 6vw, 80px) 0 32px; }
.ft__g{ row-gap:40px; align-items:start; }
.ft__brand{ grid-column:1 / 6; }
.ft__logo{ width:clamp(180px, 16vw, 228px); }
.ft__col{ grid-column:span 3; }
.ft__h{ font:600 12.5px/1.4 var(--sans); letter-spacing:.16em; text-transform:uppercase; color:var(--champ); margin-bottom:14px; }
.ft__col ul{ display:grid; gap:8px; font-size:15.5px; }
.ft__col a{ color:var(--on-ink); transition:color .3s var(--ease); }
.ft__col a:hover{ color:var(--champ); }
.ft__base{ margin-top:clamp(40px, 5vw, 64px); padding-top:24px; border-top:1px solid var(--line-ink); display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px 32px; font-size:14px; color:var(--on-ink-3); }
@media (max-width:899px){
  .ft__brand{ grid-column:1 / -1; }
  .ft__col{ grid-column:span 6; }
  .ft{ padding-bottom:104px; }
}
@media (max-width:480px){ .ft__col{ grid-column:1 / -1; } }


/* movimento */
.js [data-r]{ opacity:0; transform:translateY(18px); transition:opacity .9s var(--ease) var(--d, 0s), transform .9s var(--ease) var(--d, 0s); }
.js [data-r].in{ opacity:1; transform:none; }
.js .fr img{ transform:scale(1.05); transition:transform 1.8s var(--ease); }
.js .in .fr img, .js .fr.in img{ transform:none; }
.js .capa h1 .ln > span{ transform:translateY(108%); }
.js.ready .capa h1 .ln > span{ transform:none; transition:transform 1.2s var(--ease) var(--d, 0s); }
.js .capa [data-h]{ opacity:0; transform:translateY(14px); }
.js.ready .capa [data-h]{ opacity:1; transform:none; transition:opacity .9s var(--ease) var(--d, 0s), transform .9s var(--ease) var(--d, 0s); }
.js .capa__ph .fr{ clip-path:inset(100% 0 0 0 round var(--r)); }
.js.ready .capa__ph .fr{ clip-path:inset(0 0 0 0 round var(--r)); transition:clip-path 1.4s cubic-bezier(.65,0,.2,1) .2s; }
.js.ready .capa__ph .fr img{ transform:none; transition:transform 2.2s var(--ease) .2s; }
.no-js .passo h3{ color:var(--on-ink); }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition-duration:.01ms !important; transition-delay:0s !important; animation:none !important; }
  .js [data-r], .js .capa [data-h], .js .capa h1 .ln > span, .js .fr img{ opacity:1 !important; transform:none !important; }
  .js .capa__ph .fr{ clip-path:none !important; }
  .passo h3{ color:var(--on-ink) !important; }
}

/* páginas internas */
.pg .hd{ background:rgba(247,245,240,.94); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); box-shadow:0 1px 0 var(--line); }
.pg .hd__name{ opacity:1; transform:none; }
.hd__nav a[aria-current="page"]{ color:var(--fg); }
.hd__nav a[aria-current="page"]::after{ transform:scaleX(1); }
.crumbs ol{ display:flex; flex-wrap:wrap; gap:6px 10px; font:500 14px/1.4 var(--sans); color:var(--muted); }
.crumbs li + li::before{ content:"/"; margin-right:10px; color:var(--muted); opacity:.6; }
.crumbs a{ border-bottom:1px solid transparent; transition:border-color .3s var(--ease), color .3s var(--ease); }
.crumbs a:hover{ color:var(--fg); border-color:var(--gold); }
.ph-hero{ padding:calc(var(--hh) + clamp(28px, 4vw, 56px)) 0 clamp(48px, 5.5vw, 80px); }
.ph-hero__g{ margin-top:clamp(28px, 3.5vw, 52px); align-items:end; row-gap:40px; }
.ph-hero__txt{ grid-column:1 / 8; }
.ph-hero__txt--w{ grid-column:1 / 11; }
.ph-hero h1{ margin-top:20px; font:500 clamp(46px, 6.6vw, 104px)/.98 var(--serif); letter-spacing:-.028em; text-wrap:balance; }
.ph-lede{ margin-top:28px; max-width:54ch; font-size:clamp(18px, 1.4vw, 21px); line-height:1.6; text-wrap:pretty; }
.ph-by{ margin-top:20px; font-size:14.5px; color:var(--muted); }
.ph-hero__fig{ grid-column:9 / 13; }
.ph-hero__fig .fr{ aspect-ratio:4/5; border-radius:var(--r); overflow:hidden; background:var(--sand-2); }
.ph-hero__fig img{ width:100%; height:100%; object-fit:cover; object-position:40% 25%; }
.art{ padding:clamp(64px, 7vw, 112px) 0; border-top:1px solid var(--line); }
.art__toc{ grid-column:1 / 4; align-self:start; position:sticky; top:104px; }
.art__toc ol{ margin-top:14px; display:grid; gap:2px; }
.art__toc a{ display:block; padding:7px 0; font:500 15px/1.4 var(--sans); color:var(--muted); transition:color .3s var(--ease); }
.art__toc a:hover{ color:var(--fg); }
.art__body{ grid-column:5 / 12; }
.art__body--full{ grid-column:1 / -1; border-top:1px solid var(--line); }
.termo__h{ font:500 clamp(26px, 2.3vw, 36px)/1.12 var(--serif); letter-spacing:-.012em; }
.termo__h a{ transition:color .3s var(--ease); }
.termo__h a:hover{ color:var(--gold); }
.prose h2{ margin:0 0 18px; font:500 clamp(28px, 2.6vw, 40px)/1.15 var(--serif); letter-spacing:-.014em; text-wrap:balance; }
.prose > section + section{ margin-top:clamp(44px, 5vw, 68px); padding-top:clamp(40px, 4vw, 56px); border-top:1px solid var(--line); }
.prose p{ max-width:64ch; text-wrap:pretty; }
.prose p + p{ margin-top:1em; }
.prose b{ font-weight:600; }
.prose blockquote{ margin-top:32px; }
.dots{ margin-top:8px; border-top:1px solid var(--line); }
.dots li{ position:relative; max-width:64ch; padding:13px 0 13px 24px; border-bottom:1px solid var(--line); }
.dots li::before{ content:""; position:absolute; left:2px; top:1.32em; width:7px; height:7px; border-radius:50%; background:var(--gold); }
.dots + p{ margin-top:24px; }
.ficha > div{ display:grid; grid-template-columns:minmax(128px, .34fr) minmax(0,1fr); gap:16px; padding:16px 0; border-bottom:1px solid var(--line); }
.ficha > div:first-child{ border-top:1px solid var(--line); }
.ficha dt{ padding-top:.25em; font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.prose .linha{ margin-top:8px; }
.prose .linha li{ display:grid; grid-template-columns:minmax(96px, .24fr) minmax(0,1fr); gap:20px; align-items:baseline; padding:18px 0; border-bottom:1px solid var(--line); }
.prose .linha li:first-child{ border-top:1px solid var(--line); }
.faq{ background:var(--sand); padding:clamp(72px, 8vw, 120px) 0; }
.faq__h{ grid-column:1 / 5; align-self:start; }
.faq__h h2{ margin-top:22px; font:500 clamp(32px, 3.4vw, 52px)/1.08 var(--serif); letter-spacing:-.016em; text-wrap:balance; }
.faq__list{ grid-column:6 / 13; border-top:1px solid var(--line); }
.faq details{ border-bottom:1px solid var(--line); }
.faq summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:baseline; gap:24px; padding:22px 0; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary h3{ font:500 clamp(20px, 1.7vw, 25px)/1.3 var(--serif); text-wrap:pretty; }
.faq summary::after{ content:"+"; flex:none; font:400 26px/1 var(--sans); color:var(--gold); }
.faq details[open] summary::after{ content:"−"; }
.faq details p{ padding:0 0 26px; max-width:62ch; text-wrap:pretty; }
.rel{ padding:clamp(64px, 7vw, 104px) 0; }
.rel__list{ margin-top:24px; display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); column-gap:32px; border-top:1px solid var(--line); }
.rel__list a{ display:flex; justify-content:space-between; gap:16px; padding:20px 0; border-bottom:1px solid var(--line); font:500 clamp(20px, 1.6vw, 24px)/1.3 var(--serif); transition:color .3s var(--ease); }
.rel__list a span{ color:var(--gold); }
.rel__list a:hover{ color:var(--gold); }
.cta{ padding:clamp(80px, 9vw, 128px) 0; }
.cta__g{ align-items:end; row-gap:36px; }
.cta__l{ grid-column:1 / 8; }
.cta h2{ margin-top:22px; font:500 clamp(34px, 4vw, 60px)/1.06 var(--serif); letter-spacing:-.02em; text-wrap:balance; }
.cta__sub{ margin-top:18px; max-width:48ch; color:var(--on-ink-2); }
.cta__r{ grid-column:8 / 13; display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
.cta .agenda__tel{ margin-top:0; font-size:clamp(34px, 3.6vw, 56px); }
.cons__info{ margin-top:clamp(56px, 6vw, 88px); row-gap:40px; align-items:start; }
.cons__info-l{ grid-column:1 / 7; }
.cons__info-r{ grid-column:8 / 13; }
.mapa{ aspect-ratio:4/3; border-radius:var(--r); overflow:hidden; background:var(--sand-2); }
.mapa iframe{ width:100%; height:100%; border:0; display:block; }
.ft__trat{ margin-top:40px; padding-top:32px; border-top:1px solid var(--line-ink); }
.ft__wide{ grid-column:1 / -1; }
.ft__wide ul{ display:flex; flex-wrap:wrap; gap:8px 28px; font-size:15.5px; }
.ft__wide a{ color:var(--on-ink); transition:color .3s var(--ease); }
.ft__wide a:hover{ color:var(--champ); }
@media (max-width:899px){
  .ph-hero__txt, .ph-hero__txt--w, .ph-hero__fig, .art__body, .faq__h, .faq__list, .cta__l, .cta__r, .cons__info-l, .cons__info-r{ grid-column:1 / -1; }
  .ph-hero__fig{ max-width:480px; }
  .art__toc{ display:none; }
  .faq__h{ margin-bottom:32px; }
  .cta__r .btn{ width:100%; }
  .cta .agenda__tel{ font-size:min(10.6vw, 52px); }
}
@media (max-width:520px){
  .ficha > div, .prose .linha li{ grid-template-columns:1fr; gap:6px; }
}
.termo__a{ transition:color .3s var(--ease); }
.termo__a:hover{ color:var(--gold); }
.atu__side .lnk{ margin-top:0; }

/* artigos */
.artigo__hd{ padding:calc(var(--hh) + clamp(28px, 4vw, 56px)) 0 clamp(40px, 5vw, 64px); }
.artigo__col{ width:min(760px, 100%); margin-inline:auto; }
.artigo__hd .artigo__col{ margin-top:clamp(40px, 5vw, 72px); }
.artigo h1{ margin-top:20px; font:500 clamp(40px, 5vw, 72px)/1.04 var(--serif); letter-spacing:-.024em; text-wrap:balance; }
.artigo__meta{ margin-top:24px; display:flex; flex-wrap:wrap; gap:6px 24px; font-size:14.5px; color:var(--muted); }
.resumo{ padding:28px clamp(22px, 3vw, 36px); border-radius:var(--r); background:var(--sand); }
.resumo .kick{ margin-bottom:10px; }
.resumo p + p{ font:500 clamp(19px, 1.5vw, 22px)/1.5 var(--serif); }
.artigo__txt{ margin-top:clamp(40px, 5vw, 64px); }
.artigo__txt > section:first-child h2 + p::first-letter{ float:left; font:500 3.6em/.82 var(--serif); margin:.06em .1em 0 0; color:var(--gold); }
.passos-lista{ counter-reset:p; border-top:1px solid var(--line); }
.passos-lista li{ counter-increment:p; display:grid; grid-template-columns:48px 1fr; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--line); }
.passos-lista li::before{ content:counter(p, decimal-leading-zero); font:500 22px/1 var(--serif); color:var(--gold); }
.fonte{ margin-top:clamp(48px, 5vw, 72px); padding-top:24px; border-top:1px solid var(--line); font-size:15px; color:var(--muted); text-wrap:pretty; }
.fonte .lnk{ padding:0; font-size:15px; }
.leia{ margin:clamp(48px, 5vw, 72px) 0 clamp(88px, 9vw, 128px); }
.rel__list--1{ grid-template-columns:1fr; }
.indice{ border-top:1px solid var(--line); }
.indice a{ display:grid; grid-template-columns:72px minmax(0,1fr) auto; gap:8px 32px; align-items:baseline; padding:clamp(24px, 2.6vw, 34px) 0; border-bottom:1px solid var(--line); transition:background-color .3s var(--ease); }
.indice__n{ font:500 22px/1 var(--serif); color:var(--gold); }
.indice__t b{ display:block; font:500 clamp(24px, 2.4vw, 36px)/1.15 var(--serif); letter-spacing:-.012em; transition:color .3s var(--ease); }
.indice__t span{ display:block; margin-top:10px; max-width:70ch; color:var(--muted); text-wrap:pretty; }
.indice__d{ font-size:14.5px; color:var(--muted); white-space:nowrap; }
.indice a:hover b{ color:var(--gold); }
.faq__list--full{ grid-column:1 / -1; }
.faq__q{ font:500 clamp(20px, 1.8vw, 26px)/1.3 var(--serif); text-wrap:pretty; }
@media (max-width:899px){
  .indice a{ grid-template-columns:44px minmax(0,1fr); }
  .indice__d{ grid-column:2; }
}

/* princípios */
.pg-dark .ph-hero{ background:var(--ink); color:var(--on-ink); }
.pg-dark .ph-hero .kick{ color:var(--champ); }
.pg-dark .ph-hero .crumbs ol{ color:var(--on-ink-3); }
.pg-dark .ph-hero .crumbs a:hover{ color:var(--on-ink); border-color:var(--champ); }
.princ{ padding:0 0 clamp(88px, 10vw, 140px); }
.princ__i{ padding:clamp(40px, 5vw, 72px) 0; border-top:1px solid var(--line-ink); row-gap:20px; align-items:start; }
.princ__n{ grid-column:1 / 2; padding-top:.6em; font:500 20px/1 var(--serif); color:var(--champ); }
.princ__q{ grid-column:2 / 9; }
.princ__q p{ font:500 clamp(30px, 3.6vw, 56px)/1.12 var(--serif); letter-spacing:-.018em; text-wrap:balance; }
.princ__q footer{ margin-top:16px; font-size:14.5px; }
.princ__q footer a{ color:var(--on-ink-3); border-bottom:1px solid rgba(210,188,152,.5); }
.princ__q footer a:hover{ color:var(--champ); }
.princ__t{ grid-column:9 / 13; padding-top:.6em; color:var(--on-ink-2); text-wrap:pretty; }
.princ__t .lnk{ margin-top:16px; color:var(--on-ink); }
/* casos */
.casos{ padding:0 0 clamp(88px, 10vw, 140px); }
.filtro{ display:flex; flex-wrap:wrap; gap:10px; }
.chip{ min-height:44px; padding:0 18px; border:1px solid var(--line); border-radius:999px; font:500 15px/1 var(--sans); transition:background-color .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease); }
.chip:hover{ border-color:var(--fg); }
.chip[aria-pressed="true"]{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
.no-js .filtro, .no-js .filtro__n{ display:none; }
.filtro__n{ margin-top:16px; font-size:14.5px; color:var(--muted); }
.casos__g{ margin-top:28px; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); column-gap:clamp(28px, 4vw, 64px); }
.caso{ padding:28px 0 clamp(36px, 4vw, 52px); border-top:1px solid var(--fg); display:flex; flex-direction:column; gap:18px; }
.caso[hidden]{ display:none; }
.caso__top{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 16px; font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.caso__tags{ font-weight:500; font-size:14px; letter-spacing:0; text-transform:none; color:var(--muted); }
.caso__t{ font:500 clamp(24px, 2.2vw, 32px)/1.15 var(--serif); letter-spacing:-.012em; text-wrap:balance; }
.caso__dl > div{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:16px; padding:14px 0; border-top:1px solid var(--line); }
.caso__dl dt{ padding-top:.2em; font:600 12.5px/1.5 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.caso__q{ font:italic 500 clamp(19px, 1.5vw, 22px)/1.4 var(--serif); text-wrap:pretty; }
.caso__src{ align-self:flex-start; margin-top:auto; padding:4px 0; border-bottom:1px solid var(--gold); font:600 14.5px/1.3 var(--sans); }
.caso__src:hover{ color:var(--gold); }
.casos__nota{ margin-top:24px; font-size:14.5px; color:var(--muted); }
/* mitos e verdades */
.mv{ background:var(--sand); padding:clamp(64px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); }
.mv__placar{ grid-column:1 / 4; align-self:start; position:sticky; top:104px; }
.mv__score{ margin-top:10px; display:flex; align-items:baseline; gap:12px; font:500 clamp(56px, 6vw, 96px)/1 var(--serif); letter-spacing:-.03em; }
.mv__de{ font:500 18px/1 var(--sans); letter-spacing:0; color:var(--muted); }
.mv__hint{ margin-top:12px; max-width:24ch; font-size:15px; color:var(--muted); }
.no-js .mv__placar{ display:none; }
.mv__list{ grid-column:5 / 13; }
.mito{ display:grid; grid-template-columns:56px minmax(0,1fr); column-gap:16px; padding:28px 0; border-top:1px solid var(--line); }
.mito > *:not(.mito__n){ grid-column:2; }
.mito__n{ grid-row:1 / 4; font:500 20px/1.3 var(--serif); color:var(--gold); }
.mito__t{ font:500 clamp(22px, 2vw, 30px)/1.25 var(--serif); letter-spacing:-.01em; text-wrap:pretty; }
.mito__btns{ margin-top:18px; display:flex; flex-wrap:wrap; gap:10px; }
.mito__btns button{ min-height:44px; padding:0 22px; border:1px solid var(--fg); border-radius:999px; font:600 15px/1 var(--sans); transition:background-color .3s var(--ease), color .3s var(--ease), opacity .3s var(--ease); }
.mito__btns button:hover{ background:var(--ink); color:var(--paper); }
.mito.done .mito__btns button{ pointer-events:none; opacity:.4; }
.mito.done .mito__btns button.sel{ opacity:1; background:var(--ink); color:var(--paper); }
.no-js .mito__btns{ display:none; }
.js .mito:not(.done) .mito__exp{ display:none; }
.mito__exp{ margin-top:18px; padding:20px 22px; border-radius:var(--r); background:var(--paper); }
.mito__res b, .mito__fb{ font-weight:600; }
.mito.ok .mito__fb{ color:var(--gold); }
.mito__src{ margin-top:10px; font-size:14.5px; color:var(--muted); }
.mito__src a, .situ__src a{ border-bottom:1px solid var(--gold); color:var(--fg); }
/* boca e corpo */
.situ{ padding:0 0 clamp(88px, 10vw, 140px); }
.situ__tabs{ grid-column:1 / 5; align-self:start; position:sticky; top:104px; display:flex; flex-direction:column; border-top:1px solid var(--line); }
.situ__tabs button{ display:flex; align-items:baseline; gap:16px; min-height:44px; padding:16px 0; border-bottom:1px solid var(--line); text-align:left; font:500 clamp(20px, 1.7vw, 26px)/1.2 var(--serif); color:var(--muted); transition:color .3s var(--ease), padding .4s var(--ease); }
.situ__tabs button span{ font:500 13px/1 var(--sans); color:var(--gold); }
.situ__tabs button:hover{ color:var(--fg); }
.situ__tabs button[aria-selected="true"]{ color:var(--fg); padding-left:12px; }
.situ__panels{ grid-column:6 / 13; }
.situ__p h2{ margin-top:16px; font:500 clamp(40px, 4.6vw, 72px)/1.02 var(--serif); letter-spacing:-.024em; }
.situ__p p{ max-width:58ch; text-wrap:pretty; }
.situ__p p + p{ margin-top:16px; }
.situ__lead{ margin-top:24px; font:500 clamp(20px, 1.7vw, 26px)/1.45 var(--serif); }
.situ__src{ font-size:14.5px; color:var(--muted); }
.js .situ__p:not(.on){ display:none; }
.no-js .situ__tabs{ display:none; }
.no-js .situ__panels{ grid-column:1 / -1; }
.no-js .situ__p + .situ__p{ margin-top:64px; }
/* trajetória */
.traj{ padding:0 0 clamp(88px, 10vw, 140px); }
.traj__ano{ padding:clamp(32px, 4vw, 56px) 0; border-top:1px solid var(--line); align-items:start; row-gap:24px; }
.traj__y{ grid-column:1 / 5; position:sticky; top:96px; font:500 clamp(64px, 9vw, 148px)/.9 var(--serif); letter-spacing:-.04em; color:var(--gold); }
.traj__list{ grid-column:5 / 13; }
.traj__list li{ position:relative; padding:0 0 36px 32px; border-left:1px solid var(--line); }
.traj__list li:last-child{ padding-bottom:4px; }
.traj__list li::before{ content:""; position:absolute; left:-5px; top:.35em; width:9px; height:9px; border-radius:50%; background:var(--ink); }
.traj__m{ font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.traj__list h3{ margin-top:8px; font:500 clamp(22px, 2vw, 30px)/1.2 var(--serif); letter-spacing:-.01em; }
.traj__list p:not(.traj__m){ margin-top:8px; max-width:56ch; text-wrap:pretty; }
.traj__src{ display:inline-block; margin-top:10px; padding:2px 0; border-bottom:1px solid var(--gold); font:600 14px/1.3 var(--sans); }
@media (max-width:899px){
  .princ__n, .princ__q, .princ__t{ grid-column:1 / -1; }
  .princ__n{ padding-top:0; }
  .casos__g{ grid-template-columns:1fr; }
  .mv__placar{ position:relative; top:auto; grid-column:1 / -1; margin-bottom:24px; display:flex; align-items:baseline; gap:20px; flex-wrap:wrap; }
  .mv__score{ margin-top:0; font-size:48px; }
  .mv__list{ grid-column:1 / -1; }
  .mito{ grid-template-columns:40px minmax(0,1fr); }
  .situ__tabs{ position:relative; top:auto; grid-column:1 / -1; flex-direction:row; gap:8px; overflow-x:auto; border:0; padding-bottom:8px; margin-bottom:32px; scrollbar-width:none; }
  .situ__tabs button{ flex:none; padding:0 16px; border:1px solid var(--line); border-radius:999px; font:500 15px/1 var(--sans); white-space:nowrap; }
  .situ__tabs button span{ display:none; }
  .situ__tabs button[aria-selected="true"]{ padding-left:16px; background:var(--ink); color:var(--paper); border-color:var(--ink); }
  .situ__panels{ grid-column:1 / -1; }
  .traj__y{ position:relative; top:auto; grid-column:1 / -1; font-size:64px; }
  .traj__list{ grid-column:1 / -1; }
}
@media (max-width:520px){ .caso__dl > div{ grid-template-columns:1fr; gap:6px; } }

.hd__brand{ flex:none; }
.hd__nav a{ white-space:nowrap; }

.dd{ position:relative; }
.dd__btn{ display:inline-flex; align-items:center; gap:9px; padding:10px 0; font:500 15px/1 var(--sans); color:var(--muted); white-space:nowrap; transition:color .3s var(--ease); }
.dd__btn:hover, .dd.is-open .dd__btn{ color:var(--fg); }
.dd__btn::after{ content:""; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform .3s var(--ease); }
.dd.is-open .dd__btn::after{ transform:translateY(1px) rotate(225deg); }
.dd__menu{ position:absolute; top:calc(100% + 14px); right:-20px; z-index:60; width:min(560px, 80vw); padding:10px; display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--paper); border-radius:var(--r); box-shadow:0 0 0 1px var(--line), 0 28px 60px -28px rgba(37,37,38,.4); }
.dd__menu[hidden]{ display:none; }
.dd__menu::before{ content:""; position:absolute; left:0; right:0; top:-16px; height:16px; }
.hd__nav .dd__menu a{ display:block; padding:14px 16px; border-radius:10px; color:var(--fg); white-space:normal; transition:background-color .25s var(--ease); }
.hd__nav .dd__menu a::after{ content:none; }
.hd__nav .dd__menu a:hover, .hd__nav .dd__menu a[aria-current="page"]{ background:var(--sand); }
.dd__menu b{ display:block; font:500 19px/1.2 var(--serif); }
.dd__menu span{ display:block; margin-top:4px; font:400 14px/1.4 var(--sans); color:var(--muted); }
.js .dd__menu:not([hidden]){ animation:ddIn .28s var(--ease); }
@keyframes ddIn{ from{ opacity:0; transform:translateY(-6px); } to{ opacity:1; transform:none; } }

/* ===== tema das páginas de conteúdo ===== */
body.pg{ background:var(--sand); }
.pg .hd, .pg .hd.is-solid{ background:var(--ink); box-shadow:0 1px 0 var(--line-ink); -webkit-backdrop-filter:none; backdrop-filter:none; }
.pg .hd__name{ color:var(--on-ink); }
.pg .hd__nav a, .pg .dd__btn, .pg .hd__menu{ color:var(--on-ink-2); }
.pg .hd__nav a:hover, .pg .hd__nav a[aria-current="page"], .pg .dd__btn:hover, .pg .dd.is-open .dd__btn{ color:var(--on-ink); }
.pg .hd__nav a::after{ background:var(--champ); }
.pg .hd__nav .dd__menu a{ color:var(--fg); }
.pg .hd__cta{ background:var(--champ); color:var(--ink); }
.pg .hd__cta:hover{ background:var(--champ-hi); color:var(--ink); }
.pg .hd :focus-visible, .pg .ph-hero :focus-visible, .pg .artigo__hd :focus-visible{ outline-color:var(--champ); }
.pg .ph-hero, .pg .artigo__hd{ position:relative; overflow:hidden; background:var(--ink); color:var(--on-ink); }
.pg .ph-hero .kick, .pg .artigo__hd .kick{ color:var(--champ); }
.pg .ph-hero .crumbs ol, .pg .artigo__hd .crumbs ol, .pg .artigo__meta, .pg .ph-by{ color:var(--on-ink-3); }
.pg .ph-hero .crumbs a:hover, .pg .artigo__hd .crumbs a:hover{ color:var(--on-ink); border-color:var(--champ); }
.pg .ph-lede{ color:var(--on-ink-2); }
.pg .ph-hero h1{ font-size:clamp(48px, 6.6vw, 104px); }
@media (min-width:1100px){
  .ph-hero__txt--w{ grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,8fr) minmax(0,4fr); column-gap:clamp(40px, 5vw, 80px); align-items:end; }
  .ph-hero__txt--w .kick{ grid-column:1 / -1; }
  .ph-hero__txt--w .ph-lede{ margin-top:0; padding-bottom:.5em; }
}
.pg .ph-hero::before, .pg .ph-hero::after, .pg .artigo__hd::after{ content:""; position:absolute; border-radius:50%; pointer-events:none; border:1px solid rgba(210,188,152,.28); }
.pg .ph-hero::before{ width:46vw; height:46vw; right:-12vw; bottom:-26vw; }
.pg .ph-hero::after{ width:30vw; height:30vw; right:-4vw; bottom:-18vw; border-style:dashed; }
.pg .artigo__hd::after{ width:38vw; height:38vw; right:-14vw; top:-10vw; }
.pg .ph-hero .wrap, .pg .artigo__hd .wrap{ position:relative; z-index:1; }

/* rolagem horizontal */
.hs__track{ position:relative; display:flex; gap:clamp(16px, 2vw, 28px); overflow-x:auto; scroll-snap-type:x mandatory; padding:0 var(--g) 10px; scroll-padding-inline:var(--g); scrollbar-width:none; }
.hs__track::-webkit-scrollbar{ display:none; }
.hs__track:focus-visible{ outline-offset:-2px; }
.hs__ctrl{ margin-top:28px; display:flex; align-items:center; gap:18px; }
.hs__btn{ width:52px; height:52px; display:inline-flex; align-items:center; justify-content:center; border:1px solid currentColor; border-radius:50%; font-size:20px; transition:background-color .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease), opacity .3s; }
.hs__btn:hover{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
.dark .hs__btn:hover{ background:var(--champ); color:var(--ink); border-color:var(--champ); }
.hs__btn:disabled{ opacity:.3; pointer-events:none; }
.hs__pos{ font:500 15px/1 var(--sans); letter-spacing:.08em; }

/* princípios: baralho */
.deck{ padding:clamp(40px, 5vw, 72px) 0 clamp(56px, 6vw, 88px); }
.deck__card{ flex:0 0 min(84vw, 940px); scroll-snap-align:start; min-height:min(58vh, 500px); display:flex; flex-direction:column; justify-content:space-between; gap:40px; padding:clamp(28px, 4vw, 56px); border-radius:var(--r); background:var(--ink-2); color:var(--on-ink); }
.deck__card--1{ background:var(--champ); color:var(--ink); }
.deck__card--2{ background:var(--paper); color:var(--ink); }
.deck__n{ font:600 13px/1 var(--sans); letter-spacing:.14em; }
.deck__n span{ margin-right:6px; font:500 clamp(40px, 4vw, 64px)/1 var(--serif); letter-spacing:-.02em; }
.deck__card--0 .deck__n span{ color:var(--champ); }
.deck__card--2 .deck__n span{ color:var(--gold); }
.deck__q p{ font:500 clamp(28px, 3.4vw, 50px)/1.12 var(--serif); letter-spacing:-.02em; text-wrap:balance; }
.deck__foot{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:24px; align-items:end; font-size:16.5px; }
.deck__links{ font-size:14.5px; text-align:right; }
.deck__links a{ border-bottom:1px solid currentColor; }

/* casos: mosaico */
.pg .casos{ padding-top:clamp(48px, 6vw, 80px); }
.mosaico{ margin-top:28px; display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); grid-auto-flow:dense; gap:clamp(12px, 1.4vw, 20px); }
.caso.tile{ grid-column:span 2; min-height:0; padding:clamp(24px, 2.6vw, 36px); border:0; border-radius:var(--r); display:flex; flex-direction:column; gap:16px; }
.caso.tile--s0, .caso.tile--s1{ grid-column:span 3; }
.tile--ink{ background:var(--ink); color:var(--on-ink); }
.tile--ink2{ background:var(--ink-2); color:var(--on-ink); }
.tile--champ{ background:var(--champ); color:var(--ink); }
.tile--paper{ background:var(--paper); color:var(--fg); }
.tile__top{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 16px; font:600 12.5px/1.4 var(--sans); letter-spacing:.12em; text-transform:uppercase; color:var(--gold); }
.tile--ink .tile__top, .tile--ink2 .tile__top{ color:var(--champ); }
.tile--champ .tile__top{ color:var(--ink); }
.tile__t{ font:500 clamp(24px, 2.2vw, 34px)/1.12 var(--serif); letter-spacing:-.014em; text-wrap:balance; }
.tile--s0 .tile__t{ font-size:clamp(30px, 3vw, 44px); }
.tile__ped{ font:500 clamp(18px, 1.4vw, 21px)/1.45 var(--serif); text-wrap:pretty; }
.tile__cam{ font-size:16px; text-wrap:pretty; }
.tile__cam b{ font-weight:600; }
.tile--ink .tile__cam, .tile--ink2 .tile__cam{ color:var(--on-ink-2); }
.tile__q{ font:italic 500 19px/1.4 var(--serif); }
.tile__src{ align-self:flex-start; margin-top:auto; padding:3px 0; border-bottom:1px solid currentColor; font:600 14px/1.3 var(--sans); }

/* mito ou verdade: cartas */
.pg .mv{ padding:clamp(48px, 6vw, 80px) 0 clamp(88px, 10vw, 140px); }
.mv__bar{ max-width:880px; margin:0 auto 24px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 28px; }
.mv__prog{ font:500 15px/1 var(--sans); letter-spacing:.08em; }
.mv__dots{ flex:1; min-width:160px; display:flex; gap:6px; }
.mv__dots i{ flex:1; height:4px; border-radius:2px; background:var(--line); transition:background-color .3s; }
.mv__dots i.cur{ background:var(--muted); }
.mv__dots i.ok{ background:var(--gold); }
.mv__dots i.erro{ background:var(--ink); }
.mv__bar .mv__placar{ position:static; display:block; margin:0; font-size:15px; color:var(--muted); }
.mv .mv__list{ max-width:880px; margin:0 auto; }
.mv .mito{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px; min-height:min(46vh, 400px); padding:clamp(32px, 5vw, 64px); border:0; border-radius:calc(var(--r) * 1.4); background:var(--paper); text-align:center; box-shadow:0 30px 60px -44px rgba(37,37,38,.45); }
.mv .mito__n{ font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.mv .mito__t{ max-width:18ch; font:500 clamp(30px, 4vw, 56px)/1.12 var(--serif); letter-spacing:-.02em; text-wrap:balance; }
.mv .mito__btns{ margin-top:4px; justify-content:center; gap:14px; }
.mv .mito__btns button{ min-height:60px; padding:0 36px; font-size:17px; }
.mv .mito__exp{ margin-top:0; max-width:56ch; background:var(--sand); text-align:left; }
.mito__next{ margin-top:16px; min-height:48px; padding:0 22px; border-radius:999px; background:var(--ink); color:var(--paper); font:600 15px/1 var(--sans); }
.js .mv--deck .mito{ display:none; }
.js .mv--deck .mito.cur{ display:flex; animation:cardIn .5s var(--ease); }
@keyframes cardIn{ from{ opacity:0; transform:translateY(16px) scale(.985); } to{ opacity:1; transform:none; } }
.no-js .mito__next, .no-js .mv__bar{ display:none; }
.no-js .mv .mito + .mito{ margin-top:20px; }
.mv__fim{ max-width:880px; margin:0 auto; padding:clamp(32px, 5vw, 64px); border-radius:calc(var(--r) * 1.4); background:var(--ink); color:var(--on-ink); text-align:center; }
.mv__fim[hidden]{ display:none; }
.mv__fim .kick{ color:var(--champ); }
.mv__fim-n{ margin:12px 0; font:500 clamp(64px, 9vw, 140px)/1 var(--serif); letter-spacing:-.03em; }
.mv__fim-acts{ margin-top:28px; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px; }
.mv__fim .btn--ink{ background:var(--champ); color:var(--ink); }
.mv__fim .lnk{ color:var(--on-ink); border-color:var(--champ); }

/* boca e corpo: órbita */
.orbita{ padding:clamp(56px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); }
.orb{ grid-column:1 / 7; position:sticky; top:110px; align-self:start; width:100%; max-width:560px; aspect-ratio:1; }
.orb__ring{ position:absolute; inset:6%; border:1px dashed rgba(115,94,60,.5); border-radius:50%; }
.orb__ring::after{ content:""; position:absolute; inset:22%; border:1px solid var(--line); border-radius:50%; }
.orb__c{ position:absolute; left:50%; top:50%; width:32%; aspect-ratio:1; display:flex; align-items:center; justify-content:center; margin:0; border-radius:50%; background:var(--ink); color:var(--champ); transform:translate(-50%,-50%); font:italic 500 clamp(28px, 3vw, 44px)/1 var(--serif); }
.orbita .situ__tabs{ position:absolute; inset:0; align-self:stretch; display:block; grid-column:auto; margin:0; padding:0; border:0; overflow:visible; }
.orbita .situ__tabs button{ position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); min-height:46px; padding:0 18px; border:1px solid var(--line); border-radius:999px; background:var(--paper); font:500 15px/1 var(--sans); color:var(--fg); white-space:nowrap; transition:background-color .3s var(--ease), color .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease); }
.orbita .situ__tabs button:hover{ transform:translate(-50%,-50%) scale(1.05); }
.orbita .situ__tabs button[aria-selected="true"]{ padding-left:18px; background:var(--ink); color:var(--paper); border-color:var(--ink); box-shadow:0 12px 30px -14px rgba(37,37,38,.6); }
.orbita .situ__panels{ grid-column:8 / 13; align-self:center; }
.no-js .orb{ display:none; }

/* trajetória: linha horizontal */
.pg .traj{ padding:clamp(56px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); }
.traj__track{ padding-top:8px; }
.tl{ flex:0 0 clamp(260px, 24vw, 340px); scroll-snap-align:start; position:relative; padding-top:100px; }
.tl::before{ content:""; position:absolute; left:0; right:calc(-1 * clamp(16px, 2vw, 28px)); top:76px; height:1px; background:var(--fg); opacity:.28; }
.tl:last-child::before{ right:0; }
.tl__y{ position:absolute; left:0; top:0; margin:0; font:500 clamp(48px, 5vw, 72px)/1 var(--serif); letter-spacing:-.03em; color:var(--gold); }
.tl__dot{ position:absolute; left:0; top:71px; width:11px; height:11px; border-radius:50%; background:var(--ink); }
.tl--ano .tl__dot{ top:70px; width:13px; height:13px; background:var(--gold); }
.tl__m{ font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.tl__t{ margin-top:10px; font:500 clamp(22px, 1.9vw, 28px)/1.18 var(--serif); letter-spacing:-.01em; text-wrap:balance; }
.tl__p{ margin-top:10px; font-size:16.5px; text-wrap:pretty; }
.tl__s{ display:inline-block; margin-top:14px; padding:2px 0; border-bottom:1px solid var(--gold); font:600 14px/1.3 var(--sans); }

/* trajetória: linha que percorre os marcos */
.traj--v{ padding:clamp(56px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); overflow:hidden; }
.tv{ --gap:clamp(64px, 9vw, 128px); --spring:cubic-bezier(.34,1.56,.64,1); position:relative; max-width:1080px; margin:0 auto; padding:8px 0 24px; }
.tv__line{ position:absolute; left:50%; top:0; bottom:0; width:2px; margin-left:-1px; border-radius:2px; background:repeating-linear-gradient(to bottom, rgba(37,37,38,.18) 0 6px, transparent 6px 12px); }
.tv__fill{ position:absolute; left:0; top:0; width:100%; height:calc(var(--p, 0) * 100%); border-radius:2px; background:linear-gradient(to bottom, rgba(115,94,60,.25), var(--gold) 120px); }
.tv__head{ position:absolute; left:50%; top:calc(var(--p, 0) * 100%); width:16px; height:16px; margin:-8px 0 0 -8px; border-radius:50%; background:var(--gold); opacity:var(--ho, 0); transition:opacity .3s var(--ease); animation:tvPulso 1.6s ease-out infinite; }
.tv__head::after{ content:""; position:absolute; left:50%; bottom:100%; width:2px; height:90px; margin-left:-1px; background:linear-gradient(to top, rgba(210,188,152,.95), transparent); filter:blur(1px); }
@keyframes tvPulso{ 0%{ box-shadow:0 0 0 0 rgba(115,94,60,.45), 0 0 18px 4px rgba(210,188,152,.55); } 100%{ box-shadow:0 0 0 16px rgba(115,94,60,0), 0 0 18px 4px rgba(210,188,152,.55); } }

.tv__i{ position:relative; display:grid; grid-template-columns:1fr 1fr; column-gap:var(--gap); }
.tv__i + .tv__i{ margin-top:clamp(36px, 4.4vw, 64px); }
.tv__i--ano + .tv__i, .tv__i + .tv__i--ano{ margin-top:clamp(56px, 7vw, 104px); }
.tv__line + .tv__i{ margin-top:0; }
.tv__c{ grid-column:1; padding-top:18px; text-align:right; }
.tv__i:nth-child(odd) .tv__c{ grid-column:2; text-align:left; }
.tv__m{ font:600 12.5px/1.4 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.tv__t{ margin-top:8px; font:500 clamp(22px, 2vw, 30px)/1.2 var(--serif); letter-spacing:-.01em; text-wrap:balance; }
.tv__p{ max-width:44ch; margin-top:8px; font-size:16.5px; text-wrap:pretty; }
.tv__i:not(:nth-child(odd)) .tv__p{ margin-left:auto; }
.tv__s{ display:inline-block; margin-top:12px; padding:2px 0; border-bottom:1px solid var(--gold); font:600 14px/1.3 var(--sans); transition:color .3s var(--ease); }
.tv__s:hover{ color:var(--gold); }

/* lado oposto ao texto: ano + cena animada */
.tv__c{ grid-row:1; }
.tv__x{ grid-row:1; grid-column:2; min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.tv__i:nth-child(odd) .tv__x{ grid-column:1; align-items:flex-end; }
.tv__y{ margin:calc(32px - .5em) 0 0; font:500 clamp(48px, 5.8vw, 88px)/1 var(--serif); letter-spacing:-.03em; color:var(--gold); font-variant-numeric:lining-nums tabular-nums; }
.tv__defs{ position:absolute; width:0; height:0; overflow:hidden; }

/* ícone */
.tv__ic{ position:absolute; left:50%; top:0; z-index:2; width:64px; height:64px; margin-left:-32px; display:grid; place-items:center; border-radius:50%; background:var(--sand); border:1.5px dashed rgba(37,37,38,.28); color:var(--champ); cursor:pointer; transition:background-color .45s var(--ease), border-color .45s var(--ease), box-shadow .45s var(--ease); }
.tv__ic::before, .tv__ic::after{ content:""; position:absolute; inset:-2px; border-radius:50%; border:2px solid var(--gold); opacity:0; pointer-events:none; }
.tv__ic svg{ position:relative; z-index:1; width:36px; height:36px; overflow:visible; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.tv__ic svg *{ stroke-dasharray:1; stroke-dashoffset:1; transition:stroke-dashoffset .9s var(--ease) .25s; }
.tv__ic .a *{ transition-delay:.7s; }
.tv__ic .a, .tv__ic svg{ transform-box:fill-box; transform-origin:50% 50%; }
.tv__i.on .tv__ic{ background:var(--ink); border:1.5px solid var(--ink); box-shadow:0 18px 34px -18px rgba(37,37,38,.8), 0 0 0 6px rgba(232,225,213,1), 0 0 0 7px rgba(115,94,60,.35); animation:tvPop .75s var(--spring) both; }
.tv__i.on .tv__ic::before{ animation:tvOnda 1.1s .1s ease-out both; }
.tv__i.on .tv__ic::after{ animation:tvOnda 1.1s .38s ease-out both; }
.tv__i.on .tv__ic svg *{ stroke-dashoffset:0; }
@keyframes tvPop{ 0%{ transform:scale(.55); } 55%{ transform:scale(1.2); } 75%{ transform:scale(.96); } 100%{ transform:scale(1.04); } }
@keyframes tvOnda{ 0%{ transform:scale(1); opacity:.85; } 100%{ transform:scale(2.3); opacity:0; } }

/* faíscas (criadas pelo JS) */
.tv__burst{ position:absolute; left:50%; top:50%; width:0; height:0; pointer-events:none; }
.tv__burst i{ position:absolute; left:-3px; top:-3px; width:6px; height:6px; border-radius:50%; background:var(--gold); opacity:0; }
.tv__burst i:nth-child(3n){ background:var(--champ); }
.tv__burst i:nth-child(4n){ width:4px; height:9px; border-radius:1px; background:var(--ink); }
.tv__i.on .tv__burst i{ animation:tvFaisca .95s calc(.18s + var(--k) * 14ms) cubic-bezier(.15,.7,.3,1) both; }
@keyframes tvFaisca{ 0%{ opacity:1; transform:rotate(var(--a)) translateY(0) scale(1); } 70%{ opacity:1; } 100%{ opacity:0; transform:rotate(calc(var(--a) + var(--s))) translateY(calc(-1 * var(--r))) scale(.3); } }

/* texto entra vindo da linha, em sequência */
.js .tv__c > *{ opacity:.14; transform:translateX(18px); transition:opacity .55s var(--ease), transform .7s var(--spring); }
.js .tv__i:nth-child(odd) .tv__c > *{ transform:translateX(-18px); }
.js .tv__i.on .tv__c > *{ opacity:1; transform:none; }
.js .tv__i.on .tv__c > :nth-child(1){ transition-delay:.18s; }
.js .tv__i.on .tv__c > :nth-child(2){ transition-delay:.26s; }
.js .tv__i.on .tv__c > :nth-child(3){ transition-delay:.34s; }
.js .tv__i.on .tv__c > :nth-child(4){ transition-delay:.42s; }
.js .tv__y{ opacity:.12; transform:translateY(14px) scale(.9); filter:blur(4px); transition:opacity .6s var(--ease) .1s, transform .8s var(--spring) .1s, filter .6s var(--ease) .1s; }
.js .tv__i.on .tv__y{ opacity:1; transform:none; filter:none; }
.no-js .tv__ic svg *{ stroke-dashoffset:0; }
.no-js .tv__ic{ background:var(--ink); border-style:solid; }

/* animação própria de cada marco (repete com pausa enquanto está aceso) */
.tv__i.on .ic-lapis .a{ animation:icEscreve 2.6s 1.2s ease-in-out infinite; }
.tv__i.on .ic-canudo .a{ animation:icCapelo 3.2s 1.1s var(--ease) infinite; }
.tv__i.on .ic-canudo svg{ animation:icRola 3.2s 1.1s ease-in-out infinite; }
.tv__i.on .ic-dente .a{ animation:icBrilho 1.8s 1.1s ease-in-out infinite; }
.tv__i.on .ic-dente svg{ animation:icSorri 3s 1.1s ease-in-out infinite; }
.tv__i.on .ic-osso svg{ animation:icTreme 2.8s 1.1s ease-in-out infinite; }
.tv__i.on .ic-gengiva .a{ animation:icOnda 1.6s 1.1s ease-in-out infinite alternate; }
.tv__i.on .ic-implante .a{ animation:icParafusa 3s 1s ease-in-out infinite; }
.tv__i.on .ic-bola svg{ animation:icQuica 1.6s 1.1s ease-in-out infinite; }
.tv__i.on .ic-mic .a, .tv__i.on .ic-radio .a{ animation:icOndas 1.4s 1.1s ease-in-out infinite; }
.tv__i.on .ic-mic svg{ animation:icFala 2.8s 1.1s ease-in-out infinite; }
.tv__i.on .ic-fones .a{ animation:icEq .45s 1.1s ease-in-out infinite alternate; }
.tv__i.on .ic-fones svg{ animation:icBalanca2 1.8s 1.1s ease-in-out infinite; }
.tv__i.on .ic-cracha .a{ transform-origin:50% 0; animation:icBalanca 3s 1s ease-in-out infinite; }
.tv__i.on .ic-chave svg{ transform-origin:31% 50%; animation:icChave 3.2s 1s var(--ease) infinite; }
.tv__i.on .ic-bolhas .a{ animation:icBolhas 2.2s 1.1s ease-in infinite; }
.tv__i.on .ic-bolo .a{ transform-origin:50% 100%; animation:icChama .45s 1.1s ease-in-out infinite alternate; }
.tv__i.on .ic-coracao svg{ animation:icBate 1.3s 1.1s ease-in-out infinite; }
.tv__i.on .ic-pin svg{ animation:icPino 2.6s .9s var(--ease) infinite; }
.tv__i.on .ic-ecg .a *{ animation:icEcg 2s 1.4s linear infinite; }
.tv__i.on .ic-ecg svg{ animation:icBate 2s 1.4s ease-in-out infinite; }
.tv__i.on .ic-scanner .a{ animation:icVarre 1.3s 1.1s ease-in-out infinite alternate; }
@keyframes icEscreve{ 0%,60%,100%{ transform:none; } 10%{ transform:translate(-4px,1px) rotate(-8deg); } 20%{ transform:translate(2px,-1px) rotate(5deg); } 30%{ transform:translate(-3px,1px) rotate(-6deg); } 40%{ transform:translate(3px,0) rotate(4deg); } }
@keyframes icCapelo{ 0%,55%,100%{ transform:none; } 15%{ transform:translateY(-16px) rotate(-180deg) scale(1.1); } 30%{ transform:translateY(-20px) rotate(-360deg) scale(1.1); } 45%{ transform:translateY(2px) rotate(-360deg); } }
@keyframes icRola{ 0%,40%,100%{ transform:none; } 47%{ transform:rotate(-8deg); } 54%{ transform:rotate(6deg); } }
@keyframes icBrilho{ 0%,100%{ transform:scale(.4) rotate(0); opacity:.3; } 50%{ transform:scale(1.4) rotate(90deg); opacity:1; } }
@keyframes icSorri{ 0%,70%,100%{ transform:none; } 78%{ transform:translateY(-4px) rotate(-6deg); } 86%{ transform:translateY(0) rotate(5deg); } }
@keyframes icTreme{ 0%,55%,100%{ transform:none; } 62%{ transform:rotate(-14deg) scale(1.08); } 72%{ transform:rotate(12deg) scale(1.08); } 82%{ transform:rotate(-6deg); } }
@keyframes icOnda{ from{ transform:translateX(-3px) scaleY(.85); } to{ transform:translateX(3px) scaleY(1.1); } }
@keyframes icParafusa{ 0%{ transform:translateY(-12px); } 12%{ transform:translateY(-9px) skewX(10deg); } 24%{ transform:translateY(-6px) skewX(-10deg); } 36%{ transform:translateY(-3px) skewX(10deg); } 48%,80%{ transform:none; } 100%{ transform:translateY(-12px); } }
@keyframes icQuica{ 0%,100%{ transform:translateY(0) scale(1.08,.9); } 15%{ transform:translateY(-3px) scale(.95,1.05); } 50%{ transform:translateY(-14px) rotate(-180deg); } 85%{ transform:translateY(-2px) rotate(-340deg); } }
@keyframes icOndas{ 0%,100%{ opacity:.15; transform:scale(.8); } 50%{ opacity:1; transform:scale(1.12); } }
@keyframes icFala{ 0%,100%{ transform:none; } 20%{ transform:rotate(-7deg); } 40%{ transform:rotate(5deg); } 60%{ transform:none; } }
@keyframes icEq{ from{ transform:scaleY(.3); } to{ transform:scaleY(1.5); } }
@keyframes icBalanca2{ 0%,100%{ transform:rotate(-6deg); } 50%{ transform:rotate(6deg); } }
@keyframes icBalanca{ 0%,100%{ transform:rotate(0); } 10%{ transform:rotate(22deg); } 25%{ transform:rotate(-16deg); } 40%{ transform:rotate(9deg); } 55%{ transform:rotate(-4deg); } 70%{ transform:none; } }
@keyframes icChave{ 0%{ transform:translateX(12px); opacity:.4; } 25%{ transform:none; opacity:1; } 45%,70%{ transform:rotate(-90deg); } 85%{ transform:none; } 100%{ transform:translateX(12px); opacity:.4; } }
@keyframes icBolhas{ 0%{ transform:translateY(8px) scale(.4); opacity:0; } 30%{ opacity:1; } 100%{ transform:translateY(-12px) scale(1.2); opacity:0; } }
@keyframes icChama{ from{ transform:scale(.8,1.15) rotate(-7deg); } to{ transform:scale(1.15,.85) rotate(7deg); } }
@keyframes icBate{ 0%,40%,100%{ transform:none; } 10%{ transform:scale(1.25); } 20%{ transform:scale(.96); } 30%{ transform:scale(1.15); } }
@keyframes icPino{ 0%{ transform:translateY(-22px); opacity:0; } 20%{ transform:none; opacity:1; } 28%{ transform:translateY(-7px) scale(1,1.05); } 36%{ transform:scale(1.06,.94); } 44%,85%{ transform:none; opacity:1; } 100%{ transform:translateY(-22px); opacity:0; } }
@keyframes icEcg{ 0%{ stroke-dashoffset:1; } 50%,100%{ stroke-dashoffset:0; } }
@keyframes icVarre{ from{ transform:translateY(-1px); } to{ transform:translateY(18px); } }


/* cenas: uma ilustração animada por marco */
.tv__cena{ position:relative; width:min(100%, 420px); cursor:pointer; aspect-ratio:8 / 5; border-radius:20px; overflow:hidden; background:var(--ink); box-shadow:0 30px 60px -36px rgba(37,37,38,.8), inset 0 0 0 1px rgba(210,188,152,.16); }
.js .tv__cena{ opacity:.16; transform:translateY(26px) scale(.93); transition:opacity .6s var(--ease), transform .9s var(--spring); }
.js .tv__i.on .tv__cena{ opacity:1; transform:none; }
.tv__cena svg{ display:block; width:100%; height:100%; fill:none; stroke:var(--champ); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.tv__cena [class]{ transform-box:fill-box; transform-origin:50% 50%; }
.tv__cena .o0{ transform-box:view-box; transform-origin:0 0; }
.tv__cena .ob{ transform-origin:50% 100%; }
.tv__cena .ot{ transform-origin:50% 0; }
.tv__cena .ol{ transform-origin:0 50%; }
.tv__cena .or{ transform-origin:100% 50%; }
.tv__cena .w{ stroke:var(--paper); }
.tv__cena .m{ stroke:rgba(210,188,152,.34); stroke-width:1.6; }
.tv__cena .k{ stroke:var(--ink); }
.tv__cena .gd{ stroke:var(--gold); }
.tv__cena .F{ fill:var(--champ); stroke:none; }
.tv__cena .P{ fill:var(--paper); stroke:none; }
.tv__cena .K{ fill:var(--ink-2); }
.tv__cena .I{ fill:var(--ink); stroke:none; }
.tv__cena .N{ stroke:none; }
.tv__cena .Q{ fill:#161617; stroke:none; }
.tv__cena .Gd{ fill:var(--gold); stroke:none; }
.tv__cena .Gc{ fill:var(--champ-hi); stroke:none; }
.tv__cena .Gm{ fill:#B98F7E; stroke:none; }
.tv__cena text{ font:700 9px var(--sans); letter-spacing:.16em; fill:var(--champ); stroke:none; }
.tv__cena .tc{ text-anchor:middle; }
.tv__cena .tk{ fill:var(--ink); font-size:10px; }
.tv__cena .Gd.tc{ font-size:15px; letter-spacing:.12em; }
.tv__cena .gol{ font:italic 500 34px var(--serif); letter-spacing:0; fill:var(--champ); text-anchor:middle; }
.tv__cena .neon-t{ font:700 19px var(--sans); letter-spacing:.1em; fill:none; stroke:var(--champ-hi); stroke-width:1.1; text-anchor:middle; }
.tv__cena .neon-s{ stroke:var(--champ-hi); stroke-width:2; }
.tv__cena .fita{ stroke:var(--champ); stroke-width:6; }

/* estado antes de a linha chegar */
.js .tv__cena .d{ stroke-dasharray:1; stroke-dashoffset:1; }
.js .tv__cena :is(.pp, .fi, .sl, .gr, .tw, .h0){ opacity:0; }

/* peças genéricas */
.tv__i.on .tv__cena .d{ animation:cD var(--t, .8s) var(--d, 0s) var(--e, ease) both; }
.tv__i.on .tv__cena .pp{ animation:cPop var(--t, .6s) var(--d, 0s) var(--spring) both; }
.tv__i.on .tv__cena .fi{ animation:cFi var(--t, .5s) var(--d, 0s) ease both; }
.tv__i.on .tv__cena .fo{ animation:cFo var(--t, .35s) var(--d, 0s) ease both; }
.tv__i.on .tv__cena .sl{ animation:cSl var(--t, .8s) var(--d, 0s) var(--spring) both; }
.tv__i.on .tv__cena .gr{ transform-origin:50% 100%; animation:cGr var(--t, .7s) var(--d, 0s) var(--spring) both; }
.tv__i.on .tv__cena .tw{ animation:cTw var(--t, 1.8s) var(--d, 0s) ease-in-out infinite both; }
@keyframes cD{ from{ stroke-dashoffset:1; } to{ stroke-dashoffset:0; } }
@keyframes cPop{ from{ opacity:0; transform:scale(0); } to{ opacity:1; transform:none; } }
@keyframes cFi{ from{ opacity:0; } to{ opacity:1; } }
@keyframes cFo{ from{ opacity:1; } to{ opacity:0; } }
@keyframes cSl{ from{ opacity:0; transform:translate(var(--x, 0px), var(--y, 40px)) rotate(var(--r, 0deg)); } to{ opacity:1; transform:none; } }
@keyframes cGr{ from{ opacity:1; transform:scaleY(0); } to{ opacity:1; transform:none; } }
@keyframes cTw{ 0%, 100%{ opacity:0; transform:scale(.2) rotate(0); } 50%{ opacity:1; transform:scale(1) rotate(90deg); } }

/* loops (rodam enquanto o marco está aceso) */
.tv__i.on .tv__cena .L-bob{ animation:cBob var(--t, 2.4s) var(--d, 0s) ease-in-out infinite; }
.tv__i.on .tv__cena .L-pend{ animation:cPend var(--t, 2.6s) var(--d, 0s) ease-in-out infinite; }
.tv__i.on .tv__cena .L-onda{ animation:cOnda 1.8s var(--d, 0s) ease-out infinite both; }
.tv__i.on .tv__cena .L-sobe{ animation:cSobe var(--t, 2.4s) var(--d, 0s) ease-out infinite both; }
.tv__i.on .tv__cena .L-cai{ animation:cCai var(--t, 3s) var(--d, 0s) linear infinite both; }
.tv__i.on .tv__cena .L-pisca{ animation:cPisca 1.2s var(--d, 0s) steps(1) infinite; }
.tv__i.on .tv__cena .L-pulsa{ animation:cPulsa var(--t, .8s) var(--d, 0s) ease-in-out infinite alternate; }
.tv__i.on .tv__cena .L-bate{ animation:cBate var(--t, 1.1s) var(--d, 0s) ease-in-out infinite; }
.tv__i.on .tv__cena .L-chama{ animation:cChama .42s var(--d, 0s) ease-in-out infinite alternate; }
.tv__i.on .tv__cena .L-vapor{ animation:cVapor 2.4s var(--d, 0s) ease-out infinite both; }
.tv__i.on .tv__cena .L-fala{ animation:cFala var(--t, 2.4s) var(--d, 0s) ease-in-out infinite; }
.tv__i.on .tv__cena .L-digita{ animation:cDigita .9s var(--d, 0s) ease-in-out infinite; }
.tv__i.on .tv__cena .L-holo{ animation:cHolo 3.2s ease-in-out infinite alternate; }
.tv__i.on .tv__cena .L-holo2{ animation:cHolo2 2.8s ease-in-out infinite alternate; }
.tv__i.on .tv__cena .L-zumbe{ animation:cZumbe 2.6s var(--d, 0s) linear infinite; }
.tv__i.on .tv__cena .L-impacto{ animation:cImpacto .4s var(--d, 0s) ease-out both; }
@keyframes cBob{ 0%, 100%{ transform:none; } 50%{ transform:translateY(var(--b, -6px)) rotate(2deg); } }
@keyframes cPend{ 0%, 100%{ transform:rotate(var(--a, 8deg)); } 50%{ transform:rotate(calc(-1 * var(--a, 8deg))); } }
@keyframes cOnda{ 0%{ opacity:0; transform:scale(.4); } 30%{ opacity:1; } 100%{ opacity:0; transform:scale(1.25); } }
@keyframes cSobe{ 0%{ opacity:0; transform:translate(0, 0) scale(.4); } 20%{ opacity:1; } 80%{ opacity:.8; } 100%{ opacity:0; transform:translate(var(--x, 0px), var(--y, -90px)) scale(1.15); } }
@keyframes cCai{ 0%{ opacity:0; transform:translateY(0) rotate(0); } 6%{ opacity:1; } 100%{ opacity:1; transform:translateY(240px) rotate(var(--r, 540deg)); } }
@keyframes cPisca{ 0%{ opacity:1; } 50%{ opacity:.15; } }
@keyframes cPulsa{ from{ transform:scale(.94); } to{ transform:scale(1.07); } }
@keyframes cBate{ 0%, 45%, 100%{ transform:none; } 12%{ transform:scale(1.18); } 24%{ transform:scale(.97); } 34%{ transform:scale(1.1); } }
@keyframes cChama{ from{ transform:scale(.85, 1.12) rotate(-6deg); } to{ transform:scale(1.12, .9) rotate(6deg); } }
@keyframes cVapor{ 0%{ opacity:0; transform:translateY(6px) scaleX(.8); } 40%{ opacity:1; } 100%{ opacity:0; transform:translateY(-16px) scaleX(1.2); } }
@keyframes cFala{ 0%, 100%{ transform:none; } 20%{ transform:scale(1.06) rotate(-1.5deg); } 40%{ transform:none; } }
@keyframes cDigita{ 0%, 60%, 100%{ transform:none; } 30%{ transform:translateY(-6px); } }
@keyframes cHolo{ from{ transform:rotate(-30deg); } to{ transform:rotate(16deg); } }
@keyframes cHolo2{ from{ transform:rotate(30deg); } to{ transform:rotate(-16deg); } }
@keyframes cZumbe{ 0%, 100%{ opacity:1; } 46%{ opacity:1; } 48%{ opacity:.55; } 50%{ opacity:1; } 52%{ opacity:.7; } 54%{ opacity:1; } }
@keyframes cImpacto{ 0%{ transform:none; } 30%{ transform:translateY(4px) scale(.99); } 60%{ transform:translateY(-2px); } 100%{ transform:none; } }

/* 1 vestibular */
.tv__i.on .tv__cena .lapis{ animation:cLapis 2.2s 1s linear both; }
.tv__i.on .tv__cena .carimbo{ animation:cCarimbo .6s 3.35s cubic-bezier(.5,0,.75,0) both; }
@keyframes cLapis{ 0%{ opacity:0; transform:translate(-50px,-40px); } 10%{ opacity:1; transform:none; } 36%{ transform:translate(72px,0); } 39%{ transform:translate(0,20px); } 65%{ transform:translate(72px,20px); } 68%{ transform:translate(0,40px); } 92%{ opacity:1; transform:translate(60px,40px); } 100%{ opacity:0; transform:translate(120px,90px); } }
@keyframes cCarimbo{ 0%{ opacity:0; transform:scale(2.6) rotate(14deg); } 60%{ opacity:1; transform:scale(.94); } 80%{ opacity:1; transform:scale(1.05); } 100%{ opacity:1; transform:none; } }
/* 2 formatura */
.tv__i.on .tv__cena .ux{ animation:cUx .8s .9s var(--spring) both; }
.tv__i.on .tv__cena .capelo{ animation:cJoga 1.5s 1.1s cubic-bezier(.3,.7,.4,1) both; }
@keyframes cUx{ from{ opacity:1; transform:scaleX(.06); } to{ opacity:1; transform:none; } }
@keyframes cJoga{ 0%{ opacity:0; transform:translateY(150px) rotate(0); } 10%{ opacity:1; } 55%{ opacity:1; transform:translateY(-34px) rotate(-540deg); } 80%{ transform:translateY(6px) rotate(-700deg); } 100%{ opacity:1; transform:rotate(-720deg); } }
/* 3 começa a atender */
.tv__i.on .tv__cena .lampada{ animation:cLampada 1.3s .5s var(--spring) both; }
.tv__i.on .tv__cena .luz{ animation:cLuz 1.4s 1.5s linear both; }
@keyframes cLampada{ 0%{ opacity:0; transform:rotate(-80deg); } 20%{ opacity:1; } 65%{ transform:rotate(10deg); } 85%{ transform:rotate(-4deg); } 100%{ opacity:1; transform:none; } }
@keyframes cLuz{ 0%{ opacity:0; } 12%{ opacity:.5; } 20%{ opacity:.05; } 34%{ opacity:.55; } 42%{ opacity:.12; } 100%{ opacity:.3; } }
/* 4 osso */
.tv__i.on .tv__cena .cai{ animation:cDrop .8s var(--d, 0s) var(--ease) both; }
.tv__i.on .tv__cena .espatula{ animation:cEspatula 2.4s .9s ease-in-out both; }
.tv__i.on .tv__cena .brilha{ animation:cBrilha 1.3s 2.6s ease both; }
@keyframes cDrop{ 0%{ opacity:0; transform:translateY(-110px); } 45%{ opacity:1; } 65%{ transform:translateY(0) scale(1.12,.84); } 82%{ transform:translateY(-6px) scale(.96,1.05); } 100%{ opacity:1; transform:none; } }
@keyframes cEspatula{ 0%{ opacity:0; transform:translate(-40px,-30px); } 14%{ opacity:1; transform:none; } 25%, 45%, 65%{ transform:rotate(-10deg); } 35%, 55%, 75%{ transform:rotate(5deg); } 88%{ opacity:1; transform:none; } 100%{ opacity:0; transform:translate(-40px,-34px); } }
@keyframes cBrilha{ 0%{ opacity:0; } 35%{ opacity:1; } 100%{ opacity:0; } }
/* 5 gengiva */
.tv__i.on .tv__cena .gum{ animation:cGengiva 1.1s 1.6s var(--spring) both; }
@keyframes cGengiva{ from{ transform:none; } to{ transform:translateY(-15px); } }
.tv__i.on .tv__cena .mede{ animation:cGum 1.1s 1.6s var(--spring) both; }
@keyframes cGum{ from{ transform:none; } to{ transform:scaleY(.6); } }
/* 6 implante */
.tv__i.on .tv__cena .fura{ animation:cFura 1.6s .9s cubic-bezier(.2,.6,.3,1) both; }
.tv__i.on .tv__cena .rosca{ animation:cRosca .18s .9s linear 9; }
.tv__i.on .tv__cena .po{ animation:cPo .55s var(--d, 0s) ease-out 2 both; }
.tv__i.on .tv__cena .anel{ animation:cAnel 1.2s var(--d, 0s) ease-out 2 both; }
@keyframes cFura{ 0%{ opacity:0; transform:translateX(-150px); } 10%{ opacity:1; } 100%{ opacity:1; transform:none; } }
@keyframes cRosca{ from{ transform:none; } to{ transform:translateX(8px); } }
@keyframes cPo{ 0%{ opacity:1; transform:none; } 100%{ opacity:0; transform:translate(var(--x, -14px), var(--y, 8px)) scale(.4); } }
@keyframes cAnel{ 0%{ opacity:1; transform:scale(.3); } 100%{ opacity:0; transform:scale(2.2); } }
/* 7 gol */
.tv__i.on .tv__cena .bola{ animation:cBola 2.4s .6s cubic-bezier(.3,.6,.4,1) both; }
.tv__i.on .tv__cena .chute{ animation:cChute 2.4s .6s ease-out both; }
.tv__i.on .tv__cena .rede{ animation:cRede .7s 2.33s ease-out both; }
@keyframes cBola{ 0%{ opacity:0; transform:translate(74px,161px); } 6%, 21%{ opacity:1; transform:translate(74px,161px); } 50%{ transform:translate(150px,62px) rotate(300deg); } 72%{ transform:translate(256px,112px) rotate(560deg); } 80%{ transform:translate(264px,126px) rotate(600deg); } 90%{ transform:translate(252px,160px) rotate(640deg); } 100%{ opacity:1; transform:translate(246px,160px) rotate(660deg); } }
@keyframes cChute{ 0%{ opacity:0; transform:none; } 6%{ opacity:1; } 16%{ transform:rotate(45deg); } 22%{ transform:rotate(-38deg); } 34%{ opacity:1; transform:rotate(-22deg); } 55%, 100%{ opacity:0; transform:rotate(-10deg) translateY(-10px); } }
@keyframes cRede{ 0%, 100%{ transform:none; } 35%{ transform:translateX(5px) scale(1.06,1.03); } 70%{ transform:scale(.99); } }
/* 8 rádio / 18 julho neon */
.tv__i.on .tv__cena .neon{ animation:cNeon 1.2s var(--d, 0s) linear both; }
@keyframes cNeon{ 0%{ opacity:0; } 8%{ opacity:1; } 12%{ opacity:.1; } 20%{ opacity:1; } 24%{ opacity:.3; } 34%, 100%{ opacity:1; } }
/* 11 inauguração */
.tv__i.on .tv__cena .tesoura{ animation:cTesoura 2s 1.2s ease-in-out both; }
.tv__i.on .tv__cena .lamA{ animation:cLamA 2s 1.2s ease-in-out both; }
.tv__i.on .tv__cena .lamB{ animation:cLamB 2s 1.2s ease-in-out both; }
.tv__i.on .tv__cena .fitaE{ animation:cFitaE 1s 2.1s cubic-bezier(.5,0,.8,.6) both; }
.tv__i.on .tv__cena .fitaD{ animation:cFitaD 1s 2.1s cubic-bezier(.5,0,.8,.6) both; }
.tv__i.on .tv__cena .laco{ animation:cLaco .9s 2.1s cubic-bezier(.5,0,.8,.6) both; }
.tv__cena .porta{ transform-origin:0 50%; }
.tv__i.on .tv__cena .porta{ animation:cPorta 1s 2.7s var(--spring) both; }
.tv__i.on .tv__cena .luzporta{ animation:cFi .6s 2.7s ease both; }
.tv__cena .luzporta{ fill-opacity:.6; }
@keyframes cTesoura{ 0%{ opacity:0; transform:translate(90px,-60px) rotate(-30deg); } 30%{ opacity:1; transform:none; } 75%{ opacity:1; transform:none; } 100%{ opacity:0; transform:translate(70px,-50px) rotate(20deg); } }
@keyframes cLamA{ 0%, 35%{ transform:rotate(18deg); } 45%{ transform:none; } 52%{ transform:rotate(12deg); } 62%, 100%{ transform:none; } }
@keyframes cLamB{ 0%, 35%{ transform:rotate(-18deg); } 45%{ transform:none; } 52%{ transform:rotate(-12deg); } 62%, 100%{ transform:none; } }
@keyframes cFitaE{ 0%{ opacity:1; transform:none; } 70%{ opacity:1; } 100%{ opacity:0; transform:rotate(84deg); } }
@keyframes cFitaD{ 0%{ opacity:1; transform:none; } 70%{ opacity:1; } 100%{ opacity:0; transform:rotate(-84deg); } }
@keyframes cLaco{ 0%{ opacity:1; transform:none; } 100%{ opacity:0; transform:translateY(70px) rotate(40deg); } }
@keyframes cPorta{ from{ transform:none; } to{ transform:scaleX(.14); } }
/* 12 sedação */
.tv__i.on .tv__cena .cejaE{ animation:cCejaE .6s 2.2s ease both; }
.tv__i.on .tv__cena .cejaD{ animation:cCejaD .6s 2.2s ease both; }
.tv__i.on .tv__cena .pinga{ animation:cPinga .8s 2s ease-in both; }
@keyframes cCejaE{ to{ transform:rotate(-18deg) translateY(-2px); } }
@keyframes cCejaD{ to{ transform:rotate(18deg) translateY(-2px); } }
@keyframes cPinga{ to{ opacity:0; transform:translateY(40px); } }
/* 13 Balneário Camboriú */
.tv__i.on .tv__cena .mar{ animation:cMar 1.8s linear infinite; }
.tv__i.on .tv__cena .mar2{ animation:cMar 2.6s linear infinite reverse; }
.tv__i.on .tv__cena .gaivota{ animation:cGaivota 7s var(--d, 0s) linear infinite both; }
@keyframes cMar{ from{ transform:none; } to{ transform:translateX(-20px); } }
@keyframes cGaivota{ 0%{ opacity:0; transform:translate(-190px,20px) scaleY(1); } 8%{ opacity:1; } 25%{ transform:translate(-110px,0) scaleY(.4); } 50%{ transform:translate(-20px,10px) scaleY(1); } 75%{ transform:translate(70px,-6px) scaleY(.4); } 92%{ opacity:1; } 100%{ opacity:0; transform:translate(190px,4px) scaleY(1); } }
/* 15 Jovem Pan */
.tv__i.on .tv__cena .mer{ animation:cMer 3.6s var(--d, 0s) linear infinite; }
@keyframes cMer{ 0%{ transform:scaleX(1); } 25%{ transform:scaleX(.7); } 50%{ transform:scaleX(0); } 75%{ transform:scaleX(.7); } 100%{ transform:scaleX(1); } }
/* 16 motoclube */
.tv__i.on .tv__cena .chega{ animation:cChega 1.8s .3s cubic-bezier(.2,.8,.3,1) both; }
.tv__i.on .tv__cena .roda{ animation:cGira .45s var(--d, .3s) linear 4; }
.tv__i.on .tv__cena .fuma{ animation:cFuma 1s var(--d, 0s) ease-out 3 both; }
@keyframes cChega{ 0%{ opacity:1; transform:translateX(-230px); } 70%{ transform:translateX(6px); } 85%{ transform:translateX(-3px); } 100%{ opacity:1; transform:none; } }
@keyframes cGira{ to{ transform:rotate(360deg); } }
@keyframes cFuma{ 0%{ opacity:.9; transform:scale(.5); } 100%{ opacity:0; transform:translate(-30px,-10px) scale(1.8); } }
/* 17 Maringá */
.tv__i.on .tv__cena .voo{ animation:cVoo 1.6s 1s ease-in-out both; }
.tv__i.on .tv__cena .anel2{ animation:cAnel 1.6s var(--d, 0s) ease-out infinite both; }
@keyframes cVoo{ 0%{ transform:translate(252.0px,156.0px) rotate(-105deg); opacity:1; } 10%{ transform:translate(245.2px,140.4px) rotate(-123deg); opacity:1; } 20%{ transform:translate(234.7px,128.7px) rotate(-141deg); opacity:1; } 30%{ transform:translate(221.1px,120.1px) rotate(-154deg); opacity:1; } 40%{ transform:translate(205.0px,113.6px) rotate(-161deg); opacity:1; } 50%{ transform:translate(186.8px,108.0px) rotate(-164deg); opacity:1; } 60%{ transform:translate(167.0px,102.4px) rotate(-164deg); opacity:1; } 70%{ transform:translate(146.4px,95.9px) rotate(-161deg); opacity:1; } 80%{ transform:translate(125.3px,87.3px) rotate(-155deg); opacity:1; } 90%{ transform:translate(104.3px,75.6px) rotate(-147deg); opacity:1; } 100%{ transform:translate(84.0px,60.0px) rotate(-138deg); opacity:0; } }
/* 19 boca e coração */
.tv__cena .ecgp{ stroke-dasharray:.22 .78; }
.tv__i.on .tv__cena .ecgp{ animation:cEcgP 1.5s var(--d, 0s) linear infinite both; }
@keyframes cEcgP{ from{ opacity:1; stroke-dashoffset:.22; } to{ opacity:1; stroke-dashoffset:-.78; } }
/* 20 scanner */
.tv__cena .barra{ transform-origin:0 50%; }
.tv__i.on .tv__cena .barra{ animation:cBarra 1.6s 1.3s linear both; }
.tv__i.on .tv__cena .varre{ animation:cVarre 1.5s var(--d, 0s) ease-in-out infinite alternate; }
@keyframes cBarra{ from{ opacity:1; transform:scaleX(0); } to{ opacity:1; transform:none; } }
@keyframes cVarre{ from{ transform:none; } to{ transform:translateX(112px); } }

/* cenas refeitas a partir das fotos */
.tv__cena .geng2{ transform:translateY(12px); }
.tv__i.on .tv__cena .geng2{ animation:cGeng 1.2s 2s var(--spring) both; }
@keyframes cGeng{ from{ transform:translateY(12px); } to{ transform:none; } }
.tv__cena .cortina{ transform-origin:100% 50%; }
.tv__i.on .tv__cena .cortina{ animation:cCortina 1.1s var(--d, 1.2s) ease-in-out both; }
@keyframes cCortina{ from{ transform:none; } to{ transform:scaleX(0); } }
.tv__i.on .tv__cena .brindeE{ animation:cBrindeE 1.6s 3s var(--ease) both; }
.tv__i.on .tv__cena .brindeD{ animation:cBrindeD 1.6s 3s var(--ease) both; }
@keyframes cBrindeE{ 0%{ opacity:0; transform:translate(-30px,20px); } 35%{ opacity:1; transform:none; } 52%{ transform:translateX(3px) rotate(14deg); } 62%{ transform:rotate(9deg); } 100%{ opacity:1; transform:rotate(7deg); } }
@keyframes cBrindeD{ 0%{ opacity:0; transform:translate(30px,20px); } 35%{ opacity:1; transform:none; } 52%{ transform:translateX(-3px) rotate(-14deg); } 62%{ transform:rotate(-9deg); } 100%{ opacity:1; transform:rotate(-7deg); } }
.tv__i.on .tv__cena .L-sway{ animation:cSway 3.4s var(--d, 0s) ease-in-out infinite; }
@keyframes cSway{ 0%, 100%{ transform:rotate(-2deg); } 50%{ transform:rotate(2.5deg); } }
.tv__i.on .tv__cena .ponteiro{ animation:cPonteiro 1.2s var(--d, 0s) var(--spring) both; }
.tv__cena .ponteiro{ transform:rotate(-130deg); }
@keyframes cPonteiro{ from{ transform:rotate(-130deg); } to{ transform:rotate(35deg); } }
.tv__i.on .tv__cena .boia{ animation:cBoia 1.4s var(--d, 0s) var(--spring) both, cBoiaLoop 1.6s calc(var(--d, 0s) + 1.4s) ease-in-out infinite; }
@keyframes cBoia{ from{ opacity:1; transform:none; } to{ opacity:1; transform:translateY(var(--y, -14px)); } }
@keyframes cBoiaLoop{ 0%, 100%{ opacity:1; transform:translateY(var(--y, -14px)); } 50%{ opacity:1; transform:translateY(calc(var(--y, -14px) + 2px)); } }
.tv__i.on .tv__cena .L-respira{ animation:cRespira 2.8s var(--d, 0s) ease-in-out infinite; }
@keyframes cRespira{ 0%, 100%{ transform:none; } 50%{ transform:scale(1.18, 1.1); } }
.tv__i.on .tv__cena .fluxo{ animation:cFi .4s var(--d, 0s) both, cFluxo .9s var(--d, 0s) linear infinite; }
@keyframes cFluxo{ from{ stroke-dashoffset:0; } to{ stroke-dashoffset:-18; } }
.tv__cena .flip{ transform-origin:50% 50%; }
.js .tv__cena .flip{ transform:scaleX(0); }
.tv__i.on .tv__cena .flip{ animation:cFlip .5s var(--d, 0s) var(--spring) both; }
@keyframes cFlip{ from{ transform:scaleX(0); } to{ transform:none; } }
.tv__i.on .tv__cena .L-flash{ animation:cFlash var(--t, 2.6s) var(--d, 0s) linear infinite both; }
@keyframes cFlash{ 0%, 86%, 100%{ opacity:0; transform:scale(.4); } 88%{ opacity:.95; transform:scale(1.4); } 93%{ opacity:.2; transform:scale(2); } }
.tv__i.on .tv__cena .L-brilho{ animation:cBrilho2 var(--t, 1.8s) var(--d, 0s) ease-in-out infinite alternate; }
@keyframes cBrilho2{ from{ opacity:.15; } to{ opacity:1; } }
.tv__i.on .tv__cena .rola{ animation:cRola 1.6s 1.6s cubic-bezier(.2,.7,.3,1) both; }
@keyframes cRola{ 0%{ opacity:1; transform:translate(-90px,-40px) rotate(-200deg); } 40%{ transform:translate(-30px,0) rotate(-80deg); } 60%{ transform:translate(-14px,-14px) rotate(-40deg); } 80%{ transform:translate(-4px,0) rotate(-10deg); } 100%{ opacity:1; transform:none; } }
.tv__i.on .tv__cena .braco{ animation:cBraco 1.2s var(--d, .5s) var(--spring) both; }
@keyframes cBraco{ from{ opacity:0; transform:rotate(-50deg); } to{ opacity:1; transform:none; } }
.tv__i.on .tv__cena .tampa{ animation:cTampa .9s 1.1s var(--ease) both; }
@keyframes cTampa{ 0%{ transform:none; opacity:1; } 30%{ transform:translateY(-8px); } 100%{ transform:translate(44px,-36px) rotate(28deg); opacity:0; } }
.tv__cena .sobeW{ transform:translateY(60px); }
.tv__i.on .tv__cena .sobeW{ animation:cSobeW 1.1s 1.6s var(--spring) both, cBob 2.4s 2.8s ease-in-out infinite; }
@keyframes cSobeW{ from{ transform:translateY(60px); } to{ transform:none; } }
.tv__cena .barra2{ transform-origin:0 50%; }
.tv__i.on .tv__cena .barra2{ animation:cBarra 1.6s 2.4s linear both; }

.tv__i.on .tv__cena .fura2{ animation:cFura2 1.5s var(--d, 0s) cubic-bezier(.2,.6,.3,1) both; }
@keyframes cFura2{ 0%{ opacity:0; transform:translateX(-110px); } 12%{ opacity:1; } 100%{ opacity:1; transform:none; } }
.tv__i.on .tv__cena .zona{ animation:cZona 2.2s 2.6s ease-in-out infinite both; }
@keyframes cZona{ 0%, 100%{ opacity:.18; } 50%{ opacity:.6; } }
.tv__i.on .tv__cena :is(.chega2, .chega3){ animation:cChega 1.9s var(--d, 0s) cubic-bezier(.2,.8,.3,1) both; }
.tv__cena .geng3{ transform:translateY(18px); }
.tv__i.on .tv__cena .geng3{ animation:cGeng3 1.1s 3.1s var(--ease) both; }
@keyframes cGeng3{ from{ transform:translateY(18px); } to{ transform:none; } }
.tv__i.on .tv__cena .bisturi{ animation:cBisturi 1.6s 1.4s linear both, cBistOp 2.3s 1s linear both; }
@keyframes cBistOp{ 0%{ opacity:0; } 17%{ opacity:1; } 86%{ opacity:1; } 100%{ opacity:0; } }
@keyframes cBisturi{ 0.00%{ transform:translate(33.5px,82.0px); } 1.28%{ transform:translate(38.3px,83.6px); } 2.65%{ transform:translate(42.6px,86.8px); } 4.23%{ transform:translate(46.5px,91.6px); } 6.09%{ transform:translate(50.0px,98.0px); } 9.14%{ transform:translate(54.2px,86.8px); } 11.46%{ transform:translate(58.5px,78.8px); } 13.12%{ transform:translate(62.8px,73.8px); } 14.30%{ transform:translate(67.0px,72.0px); } 15.43%{ transform:translate(71.2px,73.3px); } 16.99%{ transform:translate(75.5px,77.8px); } 19.20%{ transform:translate(79.8px,85.3px); } 22.13%{ transform:translate(84.0px,96.0px); } 24.18%{ transform:translate(88.0px,89.0px); } 25.82%{ transform:translate(92.0px,84.0px); } 27.09%{ transform:translate(96.0px,81.0px); } 28.14%{ transform:translate(100.0px,80.0px); } 29.19%{ transform:translate(104.0px,81.0px); } 30.46%{ transform:translate(108.0px,84.0px); } 32.09%{ transform:translate(112.0px,89.0px); } 34.14%{ transform:translate(116.0px,96.0px); } 37.00%{ transform:translate(121.5px,86.2px); } 39.31%{ transform:translate(127.0px,79.0px); } 41.16%{ transform:translate(132.5px,74.2px); } 42.68%{ transform:translate(138.0px,72.0px); } 44.08%{ transform:translate(143.5px,72.2px); } 45.64%{ transform:translate(149.0px,75.0px); } 47.58%{ transform:translate(154.5px,80.2px); } 50.00%{ transform:translate(160.0px,88.0px); } 52.42%{ transform:translate(165.5px,80.2px); } 54.36%{ transform:translate(171.0px,75.0px); } 55.92%{ transform:translate(176.5px,72.2px); } 57.32%{ transform:translate(182.0px,72.0px); } 58.84%{ transform:translate(187.5px,74.2px); } 60.69%{ transform:translate(193.0px,79.0px); } 63.00%{ transform:translate(198.5px,86.2px); } 65.86%{ transform:translate(204.0px,96.0px); } 67.91%{ transform:translate(208.0px,89.0px); } 69.54%{ transform:translate(212.0px,84.0px); } 70.81%{ transform:translate(216.0px,81.0px); } 71.86%{ transform:translate(220.0px,80.0px); } 72.91%{ transform:translate(224.0px,81.0px); } 74.18%{ transform:translate(228.0px,84.0px); } 75.82%{ transform:translate(232.0px,89.0px); } 77.87%{ transform:translate(236.0px,96.0px); } 80.80%{ transform:translate(240.2px,85.3px); } 83.01%{ transform:translate(244.5px,77.8px); } 84.57%{ transform:translate(248.8px,73.3px); } 85.70%{ transform:translate(253.0px,72.0px); } 86.88%{ transform:translate(257.2px,73.8px); } 88.54%{ transform:translate(261.5px,78.8px); } 90.86%{ transform:translate(265.8px,86.8px); } 93.91%{ transform:translate(270.0px,98.0px); } 95.77%{ transform:translate(273.5px,91.6px); } 97.35%{ transform:translate(277.4px,86.8px); } 98.72%{ transform:translate(281.7px,83.6px); } 100.00%{ transform:translate(286.5px,82.0px); } }
.tv__cena .tela{ transform-origin:50% 100%; }
.tv__i.on .tv__cena .tela{ animation:cTela .9s var(--d, 0s) var(--spring) both; }
@keyframes cTela{ from{ opacity:0; transform:scaleY(0); } to{ opacity:1; transform:none; } }
.tv__cena .pagina{ transform-origin:0 50%; }
.tv__i.on .tv__cena .pagina{ animation:cPagina 1.1s var(--d, 0s) ease-in-out 2 both; }
@keyframes cPagina{ 0%{ opacity:0; transform:none; } 6%{ opacity:1; } 90%{ opacity:1; transform:scaleX(-1); } 100%{ opacity:0; transform:scaleX(-1); } }
.tv__i.on .tv__cena .rosca2{ animation:cRosca2 .32s var(--d, 0s) linear 8; }
@keyframes cRosca2{ from{ transform:none; } to{ transform:translateX(var(--b, 6px)); } }
.tv__i.on .tv__cena .brilho3{ animation:cBrilho3 1.4s var(--d, 0s) ease-in-out both; }
@keyframes cBrilho3{ 0%{ opacity:0; transform:translateX(50px); } 15%{ opacity:1; } 85%{ opacity:1; } 100%{ opacity:0; transform:translateX(300px); } }
.tv__cena .cota{ transform-origin:0 50%; }
.tv__i.on .tv__cena .cota{ animation:cCota .8s var(--d, 0s) var(--ease) both; }
@keyframes cCota{ from{ opacity:0; transform:scaleX(0); } to{ opacity:1; transform:none; } }
.js .tv__cena .cota{ opacity:0; }
.tv__i.on .tv__cena :is(.folhaE, .folhaD){ animation:cFolha 1.2s var(--d, 0s) var(--ease) both; }
@keyframes cFolha{ from{ transform:none; } to{ transform:scaleX(.28); } }
.tv__i.on .tv__cena .abre{ animation:cAbre .7s .9s var(--ease) both; }
@keyframes cAbre{ from{ transform:none; } to{ transform:rotate(var(--a, -60deg)); } }
.js .tv__cena .fecha{ opacity:0; }
.tv__i.on .tv__cena .fecha{ animation:cFecha .8s var(--d, 3.2s) var(--ease) both; }
@keyframes cFecha{ 0%{ opacity:0; transform:rotate(var(--a, -60deg)); } 1%{ opacity:1; } 100%{ opacity:1; transform:none; } }
.tv__i.on .tv__cena .sai{ animation:cSai .8s var(--d, 0s) cubic-bezier(.5,0,.75,.4) both; }
@keyframes cSai{ 0%{ opacity:1; transform:none; } 25%{ opacity:1; transform:translateY(-2px); } 100%{ opacity:0; transform:translate(var(--x, 0px), 56px) rotate(var(--r, 0deg)); } }
.js .tv__cena .aba{ opacity:0; }
.tv__i.on .tv__cena .aba{ animation:cAba 3.3s .9s var(--ease) both; }
@keyframes cAba{ 0%{ opacity:0; transform:rotate(var(--a)); } 9%{ opacity:1; transform:rotate(var(--a)); } 76%{ opacity:1; transform:rotate(var(--a)); } 100%{ opacity:1; transform:none; } }
.tv__cena .bola{ transform:translate(246px,160px) rotate(660deg); }
.tv__cena .luz{ opacity:.3; }
/* fora da tela: pausa os loops */
.tv__i.fora .tv__cena *{ animation-play-state:paused !important; }

@media (max-width:899px){
  .tv{ padding-left:62px; }
  .tv__line{ left:22px; }
  .tv__i{ grid-template-columns:1fr; }
  .tv__c, .tv__i:nth-child(odd) .tv__c{ grid-column:1; padding-top:4px; text-align:left; }
  .tv__ic{ left:-40px; width:50px; height:50px; margin-left:-25px; }
  .tv__ic svg{ width:28px; height:28px; }
  .tv__x{ display:contents; }
  .tv__c{ grid-row:auto; }
  .tv__y{ order:-1; margin:0 0 2px; font-size:46px; }
  .tv__cena{ order:1; width:min(100%, 360px); margin-top:18px; }
  .tv__i:not(:nth-child(odd)) .tv__p{ margin-left:0; }
  .js .tv__c > *, .js .tv__i:nth-child(odd) .tv__c > *{ transform:translateX(-14px); }
  .js .tv__i.on .tv__c > *{ transform:none; }
}
@media (prefers-reduced-motion:reduce){
  .js .tv__c > *, .js .tv__y{ opacity:1 !important; transform:none !important; filter:none !important; }
  .tv__burst{ display:none; }
  .js .tv__cena, .js .tv__cena *{ animation:none !important; }
  .js .tv__cena{ opacity:1; transform:none; }
  .js .tv__cena .d{ stroke-dashoffset:0; }
  .js .tv__cena :is(.pp, .fi, .sl, .gr, .tw, .h0){ opacity:1; }
  .tv__cena .x, .tv__cena .ecgp{ display:none; }
  .js .tv__cena .luz{ opacity:.3; }
  .js .tv__cena :is(.brilha, .po, .anel, .anel2){ opacity:0; }
  .js .tv__cena .zona{ opacity:.3; }
  .js .tv__cena .cota{ opacity:1; }
  .js .tv__cena :is(.fecha, .aba){ opacity:1; transform:none; }
  .js .tv__cena .brilho3{ opacity:0; }
  .tv__cena :is(.geng2, .geng3, .sobeW, .ponteiro), .js .tv__cena .flip{ transform:none; }
  .tv__cena .fo{ display:none; }
  .js .tv__cena .cortina, .js .tv__cena .tampa{ display:none; }
  .tv__cena .porta{ transform:scaleX(.14); }
}

/* saúde bucal: capa de revista */
.revista{ padding:clamp(56px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); }
.revista__g{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:clamp(12px, 1.4vw, 20px); }
.rv a{ height:100%; min-height:260px; display:flex; flex-direction:column; gap:14px; padding:clamp(24px, 2.6vw, 36px); border-radius:var(--r); transition:transform .4s var(--ease), box-shadow .4s var(--ease); }
.rv a:hover{ transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(37,37,38,.5); }
.rv--cap{ grid-column:1 / -1; }
.rv--cap a{ min-height:clamp(300px, 28vw, 400px); display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); grid-template-rows:1fr auto auto auto; column-gap:clamp(32px, 5vw, 80px); align-items:end; background:var(--ink); color:var(--on-ink); }
.rv--cap .rv__n{ grid-column:1 / -1; align-self:start; }
.rv--cap .rv__t{ grid-column:1; grid-row:2 / 5; }
.rv--cap .rv__r, .rv--cap .rv__d, .rv--cap .rv__a{ grid-column:2; }
.rv--champ a{ background:var(--champ); color:var(--ink); }
.rv--paper a{ background:var(--paper); color:var(--fg); }
.rv__n{ font:500 clamp(40px, 4vw, 64px)/1 var(--serif); letter-spacing:-.03em; color:var(--gold); }
.rv--cap .rv__n{ color:var(--champ); }
.rv--champ .rv__n{ color:var(--ink); }
.rv__t{ font:500 clamp(22px, 1.9vw, 28px)/1.18 var(--serif); letter-spacing:-.012em; text-wrap:balance; }
.rv--cap .rv__t{ font-size:clamp(34px, 3.6vw, 58px); }
.rv__r{ max-width:52ch; font-size:17px; color:var(--on-ink-2); }
.rv__d{ margin-top:auto; font-size:14px; }
.rv--cap .rv__d{ margin-top:0; color:var(--on-ink-3); }
.rv__a{ font:600 14.5px/1 var(--sans); }

/* dúvidas: conversa */
.conversa{ padding:clamp(56px, 7vw, 104px) 0 clamp(88px, 10vw, 140px); }
.chat{ max-width:860px; margin:0 auto; display:flex; flex-direction:column; gap:clamp(28px, 3vw, 40px); }
.chat__par{ display:flex; flex-direction:column; gap:12px; }
.chat__q{ align-self:flex-end; max-width:min(560px, 86%); padding:16px 22px; border-radius:22px 22px 6px 22px; background:var(--ink); color:var(--on-ink); font:500 clamp(18px, 1.5vw, 22px)/1.35 var(--serif); text-wrap:pretty; }
.chat__a{ align-self:flex-start; max-width:min(660px, 94%); display:flex; align-items:flex-end; gap:12px; }
.chat__a img{ flex:none; width:40px; height:40px; padding:8px; border-radius:50%; background:var(--ink); }
.chat__a p{ padding:16px 22px; border-radius:22px 22px 22px 6px; background:var(--paper); text-wrap:pretty; }
.chat__fim{ max-width:860px; margin:48px auto 0; text-align:center; }
@media (min-width:1100px){
  .chat{ max-width:none; display:block; columns:2; column-gap:clamp(48px, 6vw, 96px); }
  .chat__par{ break-inside:avoid; padding-bottom:clamp(28px, 3vw, 40px); }
}

/* artigos */
.pg .artigo{ background:var(--sand); }
.pg .artigo > .wrap > .artigo__col{ width:min(1080px, 100%); }
.pg .resumo{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:12px 32px; padding:clamp(48px, 6vw, 80px) 0 0; border-radius:0; background:transparent; }
.pg .resumo p + p{ font:500 clamp(24px, 2.4vw, 36px)/1.35 var(--serif); letter-spacing:-.01em; }
.pg .artigo__txt > section{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:0 32px; }
.pg .artigo__txt > section > *:not(h2){ grid-column:2; }
.pg .artigo__txt > section > :not(h2) ~ :not(h2){ margin-top:12px; }
.pg .artigo__txt > section > p + p{ margin-top:calc(12px + 1em); }
.pg .artigo__txt > section > h2{ grid-row:1 / span 9; align-self:start; position:sticky; top:100px; font-size:clamp(26px, 2.4vw, 36px); }
.pg .dots{ display:flex; flex-wrap:wrap; gap:8px; margin-top:0; border:0; }
.pg .dots li{ max-width:none; padding:10px 16px; border:0; border-radius:999px; background:var(--paper); }
.pg .dots li::before{ display:none; }
.pg .passos-lista{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; border:0; }
.pg .passos-lista li{ display:flex; flex-direction:column; gap:12px; padding:20px; border:0; border-radius:var(--r); background:var(--paper); }
.pg .passos-lista li::before{ font-size:36px; }
.pg .rel__list--1{ grid-template-columns:1fr 1fr; gap:12px; border:0; }
.pg .rel__list--1 a{ min-height:140px; align-items:flex-end; padding:24px; border:0; border-radius:var(--r); background:var(--paper); }

@media (max-width:899px){
  .deck__card{ flex-basis:86vw; min-height:auto; }
  .deck__foot{ grid-template-columns:1fr; }
  .deck__links{ text-align:left; }
  .mosaico{ grid-template-columns:1fr; }
  .caso.tile, .caso.tile--s0, .caso.tile--s3, .caso.tile--s4{ grid-column:1 / -1; grid-row:auto; min-height:0; }
  .mv .mito{ min-height:0; }
  .mv .mito__btns button{ min-height:54px; padding:0 28px; }
  .orb{ position:relative; top:auto; grid-column:1 / -1; max-width:none; aspect-ratio:auto; }
  .orb__ring, .orb__c{ display:none; }
  .orbita .situ__tabs{ position:static; display:flex; flex-wrap:wrap; gap:8px; }
  .orbita .situ__tabs button, .orbita .situ__tabs button:hover{ position:static; transform:none; }
  .orbita .situ__panels{ grid-column:1 / -1; margin-top:32px; }
  .tl{ flex-basis:76vw; }
  .revista__g{ grid-template-columns:1fr; }
  .rv a{ min-height:0; }
  .rv--cap a{ min-height:380px; display:flex; justify-content:flex-end; }
  .rv--cap .rv__n{ margin-bottom:auto; }
  .pg .resumo, .pg .artigo__txt > section{ grid-template-columns:1fr; }
  .pg .artigo__txt > section > *:not(h2){ grid-column:1; }
  .pg .artigo__txt > section > h2{ position:static; grid-row:auto; margin-bottom:30px; }
  .pg .passos-lista, .pg .rel__list--1{ grid-template-columns:1fr; }
}
.pg .menu .hd__name{ color:var(--fg); }

.tile__top span:first-child{ white-space:nowrap; }
.orbita .situ__tabs button{ max-width:46%; white-space:normal; text-align:center; line-height:1.2; padding-block:10px; }
@media (max-width:1199px){
  .mosaico{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .caso.tile, .caso.tile--s3, .caso.tile--s4{ grid-column:span 1; min-height:0; }
  .caso.tile--s0{ grid-column:1 / -1; grid-row:auto; min-height:0; }
  .orb{ position:relative; top:auto; grid-column:1 / -1; max-width:none; aspect-ratio:auto; }
  .orb__ring, .orb__c{ display:none; }
  .orbita .situ__tabs{ position:static; display:flex; flex-direction:row; flex-wrap:wrap; align-items:flex-start; gap:8px; }
  .orbita .situ__tabs button, .orbita .situ__tabs button:hover{ position:static; transform:none; max-width:none; white-space:nowrap; flex:none; }
  .orbita .situ__panels{ grid-column:1 / -1; margin-top:32px; }
}
@media (max-width:899px){ .mosaico{ grid-template-columns:1fr; } .caso.tile{ grid-column:1 / -1; } }

/* WhatsApp: verde para chamar atenção */
a.btn[href^="https://wa.me"], a.hd__cta[href^="https://wa.me"], a.barra{ background:#0F8241; color:#fff; box-shadow:0 10px 24px -12px rgba(15,130,65,.7); }
a.btn[href^="https://wa.me"]:hover, a.hd__cta[href^="https://wa.me"]:hover, a.barra:hover{ background:#0B6E36; color:#fff; }
a.barra span:last-child{ color:rgba(255,255,255,.88); }

/* ---- páginas de tratamento ---- */
.etapas{ margin-top:8px; display:flex; flex-direction:column; gap:clamp(22px, 2.4vw, 30px); counter-reset:none; }
.etapas li{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(16px, 2vw, 28px); align-items:baseline; }
.etapas__n{ font:500 clamp(30px, 3vw, 42px)/1 var(--serif); color:var(--gold); }
.etapas h3{ font:500 clamp(20px, 1.7vw, 24px)/1.3 var(--serif); margin-bottom:6px; }
.cmp{ margin-top:8px; display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:clamp(12px, 1.4vw, 20px); }
.cmp__c{ padding:24px clamp(20px, 2.4vw, 28px); border-radius:var(--r); background:var(--paper); }
.cmp__c h3{ font:500 clamp(21px, 1.8vw, 26px)/1.25 var(--serif); margin-bottom:12px; }
.cmp__c p{ font-size:16px; }
.cmp + p{ margin-top:20px; }
.trat__faq{ margin-top:clamp(56px, 6vw, 88px); }
.trat__faq > h2{ font:500 clamp(28px, 2.6vw, 40px)/1.15 var(--serif); letter-spacing:-.014em; margin-bottom:clamp(24px, 3vw, 36px); }
.trat__casos{ margin-top:clamp(64px, 7vw, 104px); padding:clamp(56px, 6vw, 88px) 0; background:var(--sand-2); }
.trat__casos h2{ font:500 clamp(28px, 2.6vw, 40px)/1.15 var(--serif); letter-spacing:-.014em; margin-top:8px; }
.trat__mais{ margin-top:28px; }
.trat__lista{ margin:clamp(40px, 5vw, 64px) 0 clamp(88px, 9vw, 128px); display:grid; gap:clamp(12px, 1.4vw, 18px); }
.trat__item a{ display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:24px; padding:clamp(22px, 2.4vw, 30px) clamp(20px, 2.4vw, 32px); border-radius:var(--r); background:var(--paper); transition:background .3s var(--ease); }
.trat__item a:hover{ background:var(--sand-2); }
.trat__item h2{ font:500 clamp(24px, 2.2vw, 32px)/1.2 var(--serif); }
.trat__item p{ grid-column:1; margin-top:6px; color:var(--muted); max-width:60ch; }
.trat__item .arr{ grid-row:1 / span 2; grid-column:2; align-self:center; color:var(--gold); font-size:22px; }
.termo__mais{ display:inline-block; margin-top:10px; }
