/* Leitura ampliada e distribuição responsiva do conteúdo. */
body{font-size:18px;line-height:1.75}
.wrap{width:100%;max-width:1320px;padding-inline:clamp(20px,3.5vw,48px)}
.wrap>* ,.hero-grid>*,.two-col>*,.pillar-layout>*,.service-grid>*,.about-grid>*,.contact-grid>*,.content-inner>*{min-width:0}
h1,h2,h3,p,a,label,summary,button,li{overflow-wrap:break-word}
h2,.about-copy h2,.journey h2,.content-inner h2{font-size:clamp(34px,3.4vw,50px);line-height:1.2}
.hero h1{font-size:clamp(42px,4.4vw,65px);line-height:1.14}
.contact h2{font-size:clamp(36px,3.8vw,54px);line-height:1.2}
.eyebrow,.hero .eyebrow,.about-statement>.eyebrow{font-size:13px;letter-spacing:1.7px}
.hero-intro,.section-intro,.section-heading>p,.issue,.service-card p,.steps p,.about-copy>p:not(.eyebrow),.questions details p,.contact-grid>div>p:not(.eyebrow),.content-inner p:not(.eyebrow),.diagnosis p:not(.eyebrow){font-size:18px;line-height:1.8}
.hero-intro{max-width:530px}
.button,.hero .button,.diagnosis .button,.text-link,.hero .text-link,.service-card a{font-size:16px;line-height:1.6;min-height:48px}
.button{padding:16px 21px;max-width:100%;text-align:left}
.button span,.service-card a span{flex-shrink:0}
.text-link{gap:16px;align-items:center}
.hero-note,.art-bottom{font-size:15px}
.art-top{font-size:12px;letter-spacing:1.2px;gap:16px}
.art-top>span:last-child{white-space:nowrap}
.audience>.wrap{flex-wrap:wrap;justify-content:center;padding-block:25px;gap:18px 24px}
.audience p{font-size:16px}
.audience .wrap>span:first-child{font-size:12px}
.section-heading>p{max-width:390px}
.section-heading{align-items:start;gap:40px}
.issue span,.pillar>span,.steps span{font-size:14px}
.challenge-end{font-size:16px;line-height:1.8}
.pillar{font-size:21px;line-height:1.5;padding:20px 16px;gap:16px}
.pillar-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:32px}
.pillar-panel{min-height:0;padding:34px}
.panel-top{font-size:12px;line-height:1.7;gap:20px;letter-spacing:1px}
.panel-top>span:last-child{white-space:nowrap}
.pillar-panel h3{font-size:36px;line-height:1.2}
.pillar-panel>p,.pillar-panel ul{font-size:17px;line-height:1.8}
.deliverables-label{font-size:12px;line-height:1.8;letter-spacing:1px}
.method-footnote{font-size:14px;line-height:1.8}
.service-number{font-size:12px;letter-spacing:1.2px}
.service-card h3{font-size:32px;line-height:1.2}
.service-card a{gap:20px}
.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 50px}
.steps h3{font-size:23px;line-height:1.4}
.about-grid,.two-col,.contact-grid{gap:clamp(30px,5vw,70px)}
.about-statement>p{font-size:clamp(32px,3.2vw,43px)}
.credentials span,.signature span{font-size:12px;line-height:1.6;letter-spacing:1px}
.credentials p{font-size:16px;line-height:1.8}
.questions summary{font-size:18px;line-height:1.6;min-height:44px;align-items:start}
.questions summary span{flex-shrink:0}
.contact-direct{font-size:14px;letter-spacing:.8px}
.contact-direct strong{font-size:22px;overflow-wrap:anywhere}
.email{font-size:17px}
form{padding:32px;min-width:0}
form h3{font-size:30px;line-height:1.3}
form>p{font-size:17px;line-height:1.7}
label{font-size:16px;line-height:1.6;margin-top:20px}
input,select,textarea{font-size:16px;line-height:1.5;padding:13px 12px;max-width:100%;min-height:48px}
.privacy-note{font-size:14px;line-height:1.8}
.message-preview{font-size:16px;line-height:1.8}
.footer-top{flex-wrap:wrap;align-items:start}
.footer-top p,.footer-top>div,.footer-bottom{font-size:14px;line-height:1.8}
.footer-top>div{gap:16px 24px;max-width:510px}
.footer-top>div>a{min-height:44px;display:flex;align-items:center}
.footer-bottom{flex-wrap:wrap;gap:15px;padding-top:24px}
.brand small{font-size:9px;letter-spacing:1px;line-height:1.4}
nav{font-size:16px;gap:25px}
.nav-cta{padding:12px 16px}
.nav-cta span{margin-left:10px}
.content-inner{gap:45px}
.content-links a{font-size:23px;gap:24px}
.content-links small{font-size:16px;line-height:1.6}
.diagnosis-inner{flex-wrap:wrap;gap:30px}
.diagnosis-inner>div{flex:1 1 500px}
.diagnosis .button{flex:0 1 auto}
.diagnosis h2{font-size:36px;line-height:1.3}
@media(max-width:1100px){
  .nav{height:82px}.menu-toggle{display:flex;align-items:center;gap:13px;background:none;border:1px solid #8b754e;padding:8px 13px;font-size:16px;min-height:46px;color:#f8f7f3}.menu-toggle span{font-size:20px}
  nav{display:none;position:absolute;left:0;right:0;top:81px;background:#091522;padding:20px 25px;border-bottom:1px solid #344050;box-shadow:0 12px 16px #0002;align-items:stretch;flex-direction:column;gap:0;max-height:calc(100dvh - 82px);overflow-y:auto}
  nav.open{display:flex}nav a{padding:14px}.nav-cta{margin-top:10px}
  .hero-grid,.two-col,.about-grid,.contact-grid,.content-inner{grid-template-columns:minmax(0,1fr);gap:38px}
  .hero-copy{max-width:760px}.hero-intro{max-width:680px}.hero h1{font-size:clamp(42px,6vw,66px)}
  .method-art{width:100%;max-width:650px;min-height:0}.pentagon-art{max-height:520px}
  .about-statement{min-height:0}.about-statement>p br{display:none}.about-statement>p{max-width:680px}
  .section-heading{display:block}.section-heading>p{max-width:730px;margin-top:24px}
  .contact-grid>div>p:not(.eyebrow){max-width:700px}.contact h2 br{display:none}
  .contact-grid form{max-width:760px;width:100%}
}
@media(max-width:760px){
  html{scroll-padding-top:96px}.section{padding-block:58px}.journey{padding-top:0}
  .hero h1{font-size:clamp(38px,8.5vw,58px)}.hero h1 br{display:none}
  .hero h1 em{display:block;margin-top:10px}
  .hero .eyebrow{font-size:12px;letter-spacing:1.1px}
  .hero-intro,.section-intro,.section-heading>p,.issue,.service-card p,.steps p,.about-copy>p:not(.eyebrow),.questions details p,.contact-grid>div>p:not(.eyebrow),.content-inner p:not(.eyebrow),.diagnosis p:not(.eyebrow){font-size:18px}
  .hero .actions{align-items:stretch;gap:14px}.hero .button{flex:1 1 290px}.hero .text-link{padding-block:8px}
  .pillar-layout{grid-template-columns:minmax(0,1fr)}.pillar-tabs{grid-template-columns:minmax(0,1fr)}.pillar:last-child{grid-column:auto}
  .pillar{font-size:19px;padding:16px}.pillar-panel{padding:24px}.pillar-panel h3{font-size:32px}
  .service-grid{grid-template-columns:minmax(0,1fr)}.service-card{padding:26px}.service-card h3{font-size:29px}
  .steps{grid-template-columns:minmax(0,1fr);gap:28px}.steps h3{margin-top:14px}
  .credentials{grid-template-columns:minmax(0,1fr);gap:20px}
  .about-statement{padding:28px}.about-statement>p{font-size:32px}
  form{padding:24px}.email{font-size:16px}.footer-top>div{width:100%}
  .diagnosis .button{width:100%}.diagnosis h2{font-size:32px}
  .audience .wrap>span:first-child{font-size:12px}.audience p{font-size:16px}
}
@media(max-width:380px){
  .wrap{padding-inline:18px}.brand{gap:8px}.brand>span{font-size:18px;letter-spacing:2px}.brand svg{width:27px;flex-shrink:0}.brand small{font-size:8px;letter-spacing:.6px}.nav{gap:12px}.menu-toggle{font-size:14px;padding:8px 10px;gap:5px}
  h2,.about-copy h2,.journey h2,.content-inner h2{font-size:32px}.contact h2{font-size:34px}
  .hero h1{font-size:38px}.hero .eyebrow{font-size:11px;letter-spacing:.7px}
  .method-art{padding:18px 14px}.art-top{font-size:10px;letter-spacing:.6px}.art-bottom{font-size:14px}.panel-top{font-size:11px}
  form{padding:20px}.service-card,.pillar-panel{padding:22px}.button{gap:12px;padding:15px}.contact-direct strong{font-size:19px}
}
.speaker-photo{margin:0;background:#091522;border:1px solid #b48b4a;min-width:0;align-self:center}
.speaker-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:58% center}
.speaker-photo figcaption{padding:22px 26px;color:#f8f7f3;line-height:1.6}
.speaker-photo figcaption strong{display:block;font-size:21px;font-weight:600}
.speaker-photo figcaption span{display:block;color:#e2bc74;font-size:15px;margin-top:4px}
.visit-address{border-top:1px solid #344050;padding-top:26px;margin-top:30px}
.visit-address .eyebrow{display:block;margin-bottom:12px;color:#e2bc74}
.visit-address p{font-size:17px;line-height:1.8;color:#d9e1eb}
.visit-address .text-link{margin-top:15px;color:#e2bc74;flex-wrap:wrap}
@media(max-width:1100px){.speaker-photo{max-width:650px;width:100%}.speaker-photo img{aspect-ratio:3/2;object-fit:contain}}
@media(max-width:480px){.speaker-photo img{aspect-ratio:4/5;object-fit:cover}.speaker-photo figcaption{padding:20px}.visit-address p{font-size:16px}}
.whatsapp-contact{margin-top:28px;background:#e2bc74;color:#091522;max-width:100%;gap:24px}
.whatsapp-contact>span:first-child{font-size:16px;line-height:1.6}
.whatsapp-contact small{display:block;font-size:16px;font-weight:400;line-height:1.6;margin-top:3px}
.whatsapp-contact>span:last-child{flex-shrink:0}

/* Serviços com tratamento uniforme, inclusive navegação por teclado. */
.services .service-card{background:#f8f7f3;color:#162333;border-color:#d3d6d8;transform:none;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}.services .service-card:focus-within{background:#091522;color:#f8f7f3;border-color:#b48b4a;box-shadow:0 8px 24px #09152212}.services .service-card:focus-within p,.services .service-card:focus-within .service-number{color:#d6dde5}.services .service-card:focus-within .service-symbol{color:#e2bc74}.services .service-card:focus-within a{border-color:#526072}@media(hover:hover) and (pointer:fine){.services .service-card:hover{background:#091522;color:#f8f7f3;border-color:#b48b4a;box-shadow:0 8px 24px #09152212}.services .service-card:hover p,.services .service-card:hover .service-number{color:#d6dde5}.services .service-card:hover .service-symbol{color:#e2bc74}.services .service-card:hover a{border-color:#526072}}@media(prefers-reduced-motion:reduce){.services .service-card{transition:none}}
