@font-face{font-family:Fraunces;src:url(assets/fraunces.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Fraunces;src:url(assets/fraunces-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Fraunces Abertura";src:url(assets/fraunces-abertura.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces Abertura";src:url(assets/fraunces-italic-abertura.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
:root{
  --paper:#f7f3ea;--stone:#eee7d8;--navy:#132538;--navy-deep:#102232;--ink:#172b3a;
  --body:#34464d;--gold:#96713b;--gold-light:#ddbe86;--line:#cfc8b8;--on-navy:#eae9e1;
  --serif:Fraunces,Georgia,serif;--sans:Manrope,Arial,sans-serif;--mast-height:80px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--mast-height) + 1px);background:var(--paper);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:500 16px/1.63 var(--sans);text-rendering:optimizeLegibility}
h1,h2,h3,p,figure,ol{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:500;text-wrap:balance}
h1,h2{line-height:1.03;letter-spacing:-.062em}
h1 em,h2 em{font-weight:450}
h2{font-size:clamp(52px,5.2vw,82px)}
h3{font-size:clamp(25px,2.05vw,34px);line-height:1.18;letter-spacing:-.045em}
a{color:inherit;text-decoration:none}
.link-arrow{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.125em}
.button .link-arrow{width:19px;height:19px}
img{display:block;width:100%}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
section,footer,[id]{scroll-margin-top:16px}
a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.frame{width:min(1240px,calc(100% - 12%));margin-inline:auto}
.skip{position:absolute;clip-path:inset(100%);z-index:9}
.skip:focus{clip-path:none;left:10px;top:10px;background:white;padding:8px}
.mast{position:sticky;top:0;z-index:6;background:var(--paper);border-bottom:1px solid var(--line)}
.mast-inner{height:var(--mast-height);display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{width:174px;flex:none}
.wide-nav{display:flex;gap:clamp(20px,2.8vw,48px);align-items:center;font-size:13px;font-weight:650}
.wide-nav a:hover,.text-link:hover,.shortcuts a:hover{text-decoration:underline;text-underline-offset:4px}
.city,.eyebrow,.portrait figcaption,.end-name>p,.foot-rule,.end-contact small{font-size:11px;line-height:1.45;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.city{display:flex;align-items:center;gap:9px;white-space:nowrap}
.city i{display:block;height:7px;width:7px;border-radius:50%;background:var(--gold)}
.small-nav{display:none}
.eyebrow{color:#775a30}
.hair{display:flex;align-items:center;gap:12px}
.hair:before{content:"";display:block;width:31px;height:1px;background:currentColor;flex:none}
.hero{padding-block:clamp(32px,3.5vw,54px) clamp(48px,5.5vw,82px);display:grid;column-gap:clamp(34px,5.2vw,90px);grid-template-columns:.91fr 1.08fr}
.intro{grid-column:1;grid-row:1;align-self:end}
.intro h1{font-family:"Fraunces Abertura",var(--serif);margin-block:clamp(20px,2.4vw,33px) 15px;font-size:clamp(72px,6.65vw,102px);line-height:.97}
.intro h1 em{color:#75562f}
.credential{font-size:14px;font-weight:680;letter-spacing:.015em}
.credential span{color:var(--gold);margin:0 3px}
.welcome{grid-column:1;grid-row:2;align-self:start;padding-top:22px}
.welcome>p{max-width:420px;color:var(--body);font-size:clamp(16px,1.23vw,19px);line-height:1.6}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--navy);color:var(--paper);padding:15px 21px;border:1px solid var(--navy);font-size:14px;line-height:1.2;font-weight:720;transition:background .2s}
.button:hover{background:#223d55}
.button span{font:400 19px/1 Arial,sans-serif}
.welcome .button{margin-top:24px}
.shortcuts{display:flex;gap:22px;align-items:center;margin-top:15px;font-weight:650;font-size:13px}
.shortcuts span,.text-link [aria-hidden="true"]{display:inline-block;color:var(--gold);margin-left:3px}
.link-final{white-space:nowrap}
.portrait{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;width:min(100%,530px)}
.portrait picture{display:block}
.portrait img{height:auto;background:var(--stone)}
.portrait figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;color:#675d50;font-size:9px;letter-spacing:.11em}
.portrait figcaption span:last-child{font-weight:580;letter-spacing:.055em;text-transform:none;font-size:11px}
.split{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(40px,8vw,125px)}
.visit{padding-block:clamp(62px,6vw,92px);background:var(--navy-deep);color:var(--paper)}
.visit .eyebrow{color:var(--gold-light)}
.chapter-intro h2{margin:24px 0 0}
.chapter-text{margin-top:22px;font-size:17px;line-height:1.65;max-width:350px}
.visit .chapter-text,.steps p{color:#d4dedf}
.steps{align-self:center;list-style:none;padding:0}
.steps li{display:grid;grid-template-columns:40px 1fr;column-gap:16px;padding:19px 0 20px;border-top:1px solid #51606a}
.steps li:last-child{border-bottom:1px solid #51606a}
.steps .number{font:italic 500 23px/1.2 var(--serif);color:var(--gold-light)}
.steps p{margin-top:7px;font-size:15px;line-height:1.58}
.topics,.practical{padding-block:clamp(62px,7vw,110px)}
.topic-list{min-width:0}
.topic{border-top:1px solid var(--line)}
.topic:last-child{border-bottom:1px solid var(--line)}
.topic summary,.answers summary{display:flex;align-items:center;justify-content:space-between;gap:22px}
.topic summary{padding:17px 0}
.topic strong{display:block;font:500 clamp(24px,2.3vw,34px)/1.19 var(--serif);letter-spacing:-.045em}
.topic small{display:block;color:var(--body);font-size:14px;line-height:1.52;margin-top:5px}
.topic p,.answers p{padding:0 30px 16px 0;font-size:15px;color:var(--body);line-height:1.65}
summary i{position:relative;width:16px;height:16px;flex:0 0 16px;color:var(--gold)}
summary i:before,summary i:after{content:"";position:absolute;left:2px;top:7px;width:12px;height:1.5px;background:currentColor}
summary i:after{transform:rotate(90deg)}
details[open]>summary i:after{display:none}
.location{background:var(--stone);border-block:1px solid #ddd4c1;padding-block:clamp(52px,5.5vw,88px)}
.location h2{margin-top:15px}
.chegada-layout{display:grid;grid-template-columns:minmax(0,1.52fr) minmax(235px,.78fr);grid-template-areas:'fotos endereco' 'fotos online';grid-template-rows:auto 1fr;column-gap:clamp(32px,5vw,80px);row-gap:24px;margin-top:clamp(24px,3vw,42px)}
.chegada-endereco{grid-area:endereco}
.chegada-online{grid-area:online;border-top:1px solid #bcb39e;padding-top:22px}
.chegada-layout h3{margin:5px 0 10px}
.chegada-layout address,.chegada-online>p:not(.eyebrow){font-style:normal;color:var(--body);font-size:15px;line-height:1.6}
.chegada-fotos{grid-area:fotos;align-self:start;display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;min-width:0}
.chegada-foto{margin:0;min-width:0}
.chegada-foto img{aspect-ratio:5 / 4;object-fit:cover;object-position:60% center}
.chegada-principal{grid-column:1/-1}
.chegada-principal img{aspect-ratio:2.4;object-position:50% 47%}
.chegada-foto figcaption{margin-top:5px;color:#5c5346;font:550 12px/1.4 var(--sans);letter-spacing:.015em}
.text-link{display:inline-block;margin-top:11px;font-size:13px;font-weight:750;border-bottom:1px solid #a99065}
.answers details{border-top:1px solid var(--line)}
.answers details:last-child{border-bottom:1px solid var(--line)}
.answers summary{font-weight:650;font-size:17px;line-height:1.4;padding:17px 0}
footer{background:var(--navy-deep);color:var(--paper)}
.foot-in{padding-block:43px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.end-name>p{color:var(--gold-light)}
.end-name>p span{padding:0 6px}
.end-name h2{font-size:clamp(38px,4.15vw,65px);margin-top:11px}
.end-contact{display:flex;flex-direction:column;align-items:center;gap:9px}
.end-contact small{letter-spacing:.04em;font-size:12px;font-weight:530;color:var(--on-navy)}
.button-light{background:var(--paper);border-color:var(--paper);color:var(--navy)}
.button-light:hover{background:#e3d6bf}
.foot-rule{min-height:51px;padding-block:13px;border-top:1px solid #465765;display:flex;align-items:center;justify-content:space-between;gap:20px;letter-spacing:.025em;font-size:11px;font-weight:540;text-transform:none;color:#d2d7d7}
@media (max-width:980px){
  .frame{width:calc(100% - 9%)}
  .wide-nav{gap:19px;font-size:12px}
  .city{font-size:10px}
  .brand{width:155px}
  .hero{column-gap:32px}
  .intro h1{font-size:clamp(60px,7.1vw,78px)}
  .split{grid-template-columns:.86fr 1.14fr;gap:40px}
}
@media (max-width:750px){
  :root{--mast-height:57px}
  .frame{width:calc(100% - 40px)}
  .mast-inner{position:relative}
  .brand{width:146px}
  .wide-nav,.city{display:none}
  .small-nav{display:block}
  .small-nav>summary{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:700;padding:9px 0 9px 12px}
  .menu-icon{display:block;width:15px;height:8px;border-block:1.4px solid currentColor}
  .small-nav nav{position:absolute;z-index:5;top:100%;left:-20px;right:-20px;display:flex;flex-direction:column;background:var(--paper);padding:8px 20px 14px;border-block:1px solid var(--line);box-shadow:0 8px 12px #15233213;max-height:calc(100dvh - var(--mast-height) - 1px);overflow-y:auto}
  .small-nav nav a{padding:8px 0}
  .hero{display:flex;flex-direction:column;align-items:stretch;padding-block:26px 34px}
  .intro,.portrait,.welcome{align-self:stretch}
  .intro h1{font-size:clamp(48px,9.8vw,70px);line-height:1.02;margin:10px 0 5px}
  .intro h1 br{display:none}
  .intro h1 em:before{content:" "}
  .eyebrow{font-size:10px}
  .hair{gap:9px}
  .hair:before{width:22px}
  .credential{font-size:13px}
  .portrait{margin:17px auto 0;width:min(70vw,320px)}
  .portrait figcaption{gap:5px;letter-spacing:.06em;margin-top:5px;font-size:8px}
  .portrait figcaption span:last-child{font-size:9px}
  .welcome{padding-top:14px}
  .welcome>p{font-size:16px;line-height:1.5;max-width:49ch}
  .welcome .button{margin-top:15px}
  .button{padding:12px 16px;font-size:13px}
  .shortcuts{margin-top:10px;gap:20px}
  h2{font-size:clamp(44px,7.8vw,62px)}
  h2 br{display:none}
  h2 em:before{content:" "}
  .split{grid-template-columns:1fr;gap:24px}
  .visit,.topics,.practical,.location{padding-block:40px}
  .chapter-intro h2{margin-top:12px}
  .chapter-text{margin-top:13px;max-width:48ch;font-size:16px}
  .steps li{grid-template-columns:28px 1fr;gap:9px;padding:14px 0}
  .steps .number{font-size:19px}
  .steps h3{font-size:24px}
  .steps p{font-size:15px;margin-top:4px}
  .topic summary{padding:12px 0;gap:14px}
  .topic strong{font-size:26px}
  .topic small{font-size:14px}
  .location h2{margin-top:12px}
  .chegada-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto;grid-template-areas:'endereco' 'fotos' 'online';gap:19px;margin-top:18px}
  .chegada-fotos{grid-template-columns:1fr;gap:12px}
  .chegada-principal img{aspect-ratio:1.78}
  .chegada-foto figcaption{font-size:12px}
  .chegada-online{padding-top:16px}
  .answers summary{font-size:16px;padding:13px 0}
  .answers p{padding-bottom:13px}
  .foot-in{padding-block:27px;display:block}
  .end-name h2{font-size:38px}
  .end-contact{align-items:flex-start;margin-top:18px}
  .foot-rule{gap:4px;flex-direction:column;align-items:flex-start;font-size:10px;padding-block:12px}
}
@media (max-width:360px){
  .frame{width:calc(100% - 32px)}
  .intro h1{font-size:43px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}

/* Atendimento e leitura */
.brand img{height:auto}
.topic-featured{padding:22px 0 25px}
.topic-featured h3{margin:7px 0;font-size:clamp(30px,3.2vw,48px)}
.topic-featured>p:not(.eyebrow){font-size:16px;color:var(--body);max-width:54ch}
.watchline{margin-top:35px}
.watchcard{display:grid;grid-template-columns:minmax(160px,260px) 1fr;align-items:center;gap:clamp(22px,4vw,60px);padding:18px 0 0;border-top:1px solid #51606a}
.watch-image{position:relative;display:block}
.watch-image img{aspect-ratio:16/9;height:auto;object-fit:cover}
.play-disc{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;background:var(--paper);color:var(--navy);border-radius:50%;width:36px;height:36px;font:14px/1 var(--sans)}
.watch-copy{display:grid;gap:6px;max-width:590px}
.watch-copy strong{font:500 clamp(24px,2.5vw,36px)/1.2 var(--serif);letter-spacing:-.035em}
.watch-copy>span:not(.eyebrow){color:#d4dedf;font-size:15px}
.watch-copy b{margin-top:5px;font-size:13px;color:var(--gold-light)}
.watchcard:hover b{text-decoration:underline}
.hours{margin-top:12px}
.maplinks{display:flex;flex-wrap:wrap;column-gap:18px}
.foot-nav{display:grid;grid-template-columns:.8fr .93fr 1.27fr;gap:32px;border-top:1px solid #465765;padding-block:27px;color:var(--on-navy);font-size:13px}
.foot-nav>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.foot-nav strong{color:var(--gold-light);font-size:11px;text-transform:uppercase;letter-spacing:.10em}
footer a:hover{text-decoration:underline;text-underline-offset:4px}
.foot-id span{max-width:40ch}
.signature{display:inline-flex;align-items:center;gap:7px}
.signature img{height:18px;width:auto;filter:brightness(0) invert(1)}
.foot-rule>span>a:first-child{text-decoration:underline;text-underline-offset:3px}
.phone{font-size:13px}
.inner-hero{padding:clamp(50px,6.5vw,94px) 0;border-bottom:1px solid var(--line)}
.inner-hero h1{font-size:clamp(58px,5.8vw,90px);line-height:1.03;max-width:17ch;margin:18px 0 22px;overflow-wrap:break-word}
.inner-hero em,.inner-section h2 em{color:#75562f}
.inner-hero p:not(.eyebrow){max-width:57ch;color:var(--body);font-size:clamp(18px,1.4vw,22px);line-height:1.55}
.inner-grid,.content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(42px,7vw,110px);align-items:center}
.inner-grid figure{justify-self:end;width:min(100%,460px)}
.service-portrait img{max-height:510px;height:auto;width:auto;margin-inline:auto;max-width:100%}
.service-room img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:60% center}
.inner-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin-top:22px}
.inner-links .text-link{margin-top:0}
.inner-section{padding:clamp(48px,5.2vw,78px) 0;border-bottom:1px solid var(--line)}
.inner-section:nth-of-type(even){background:#f2eadc}
.content-grid{align-items:start;grid-template-columns:.86fr 1.14fr}
.inner-section h2{font-size:clamp(37px,4.2vw,62px);max-width:22ch;margin:13px 0 20px}
.prose{max-width:64ch;font-size:17px;color:var(--body);line-height:1.7}
.prose h2,.prose h3{color:var(--ink)}
.prose p+p,.prose ul,.prose p+.text-link{margin-top:14px}
.prose h2:not(:first-child){margin-top:40px}
.prose ul{padding-left:1.2em}
.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,70px);margin-top:30px}
.article-list article{padding:20px 0;border-block:1px solid var(--line)}
.article-list h3{margin:10px 0;font-size:clamp(29px,3.15vw,46px)}
.article-list p:not(.eyebrow){max-width:46ch;color:var(--body)}
.inner-hero .text-link+.eyebrow{margin-top:30px}
.error-page{min-height:48vh}
.pref-status{margin-top:10px}
@media(max-width:750px){
  .topic-featured{padding:17px 0 20px}
  .watchline{margin-top:22px}
  .watchcard{grid-template-columns:1fr;gap:14px}
  .watch-image{max-width:340px}
  .foot-nav{grid-template-columns:1fr 1fr;gap:22px 15px}
  .foot-nav .foot-id{grid-column:1/-1}
  .signature{margin-top:6px}
  .inner-hero,.inner-section{padding:37px 0}
  .inner-hero h1{font-size:clamp(44px,11vw,62px);margin:12px 0 16px}
  .inner-grid,.content-grid,.article-list{grid-template-columns:1fr;gap:21px}
  .inner-grid figure{justify-self:center;width:100%}
  .service-portrait img{max-height:310px}
  .service-room img{aspect-ratio:1.65}
  .inner-section h2{font-size:clamp(33px,7.8vw,45px);margin:8px 0}
  .prose{font-size:16px}
}
.article-list img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin-bottom:18px}
.inner-hero.prose,.article-list article{min-width:0}
button.button{font-family:var(--sans);cursor:pointer}
button.button[hidden]{display:none}

/* Links da bio */
html[data-pagina="/links/"]{scroll-padding-top:0}
.pagina-links{background:var(--stone)}
.pagina-links .mast,.pagina-links .foot-in,.pagina-links .foot-nav>div:not(.foot-id){display:none}
.pagina-links>main,.pagina-links>footer{max-width:480px;margin-inline:auto}
.pagina-links>main{background:var(--paper)}
.bio-perfil{background:var(--navy-deep);color:var(--paper);overflow:hidden}
.bio-consultorio{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.bio-identidade{padding:23px 24px 44px}
.bio-perfil .eyebrow{color:var(--gold-light);font-size:10px}
.bio-perfil h1{font-size:clamp(28px,7.8vw,36px);line-height:1.1;margin:8px 0 10px;letter-spacing:-.045em}
.bio-perfil h1 em{color:var(--gold-light)}
.bio-crm{font-size:11px;font-weight:600;white-space:nowrap}
.bio-atendimento{max-width:35ch;margin-top:14px;font-size:13px;line-height:1.6;color:#e0e4e5}
.bio-links{position:relative;display:flex;flex-direction:column;gap:10px;margin:-22px 20px 0}
.bio-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:16px 18px;background:#fffdf8;border:1px solid var(--line);border-radius:5px;transition:background .15s}
.bio-link>span:first-child{min-width:0}
.bio-link strong{display:block;font-size:15px;line-height:1.35;font-weight:750}
.bio-link small{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:var(--body)}
.bio-seta{flex:none;font:400 23px/1 var(--sans);color:var(--gold)}
.bio-seta-externa{width:23px;height:23px;vertical-align:middle}
.bio-instagram .bio-seta-externa{font:inherit;width:1em;height:1em;color:inherit;vertical-align:-.1em}
.bio-link:hover{background:#eee7d8}
.bio-principal{background:#ead6b2;border-color:#ead6b2}
.bio-principal:hover{background:#dec39a}
.bio-principal .bio-seta{color:var(--ink)}
.bio-site{margin-top:4px;background:var(--navy);border-color:var(--navy);color:var(--paper)}
.bio-site small{color:#d4dedf}
.bio-site .bio-seta{color:var(--gold-light)}
.bio-site:hover{background:#223d55}
.bio-instagram{display:block;width:max-content;padding:18px 12px;margin:0 auto;font-size:13px;font-weight:650}
.pagina-links .foot-nav{display:block;width:auto;border-top:0;margin:0;padding:23px 24px;font-size:11px;line-height:1.6}
.pagina-links .foot-id{gap:5px}
.pagina-links .foot-id span{max-width:none}
.pagina-links .foot-rule{width:auto;margin:0 24px;flex-direction:column;align-items:center;gap:9px;padding-block:15px 20px}
.pagina-links .signature{margin-top:0}
@media(min-width:600px){
  .pagina-links{padding-block:32px}
  .bio-perfil{border-radius:8px 8px 0 0}
  .pagina-links>footer{border-radius:0 0 8px 8px}
}
