/* Ajustes compartilhados: escala editorial e respiro no celular. */
@media (max-width:760px) {
  body { font-size:16px; line-height:1.7; }
  .wrap { padding-left:clamp(26px,8vw,36px); padding-right:clamp(26px,8vw,36px); }
  header, header.process-header { padding:20px clamp(26px,8vw,36px); align-items:center; gap:16px; }
  header:not(.process-header) { display:grid; grid-template-columns:minmax(0,1fr) auto; }
  header:not(.process-header) nav { grid-column:1/-1; grid-row:2; margin-top:0; max-width:none; justify-content:flex-start; gap:8px 18px; font-size:12px; line-height:1.5; }
  header .brand { min-width:0; gap:9px; }
  header .brand .brand-name { font-size:23px; line-height:1.1; max-width:none; }
  header .brand img.brand-symbol, header.process-header .brand img.brand-symbol { width:42px!important; height:42px!important; }
  header .brand .brand-name>span { font-size:7px; letter-spacing:.65px; margin-top:4px; line-height:1.45; }
  .language-switch, .process-languages { margin:0; gap:0; border:1px solid #aa8250; border-radius:24px; overflow:hidden; font-size:11px; font-weight:600; width:max-content; }
  .language-switch a,.process-languages a { padding:11px 10px; line-height:1.2; }
  .language-switch a[aria-current="page"] { background:#263e35; color:#fff; }
  h1,.process-hero h1,.work-hero h1,.online-hero h1 { font-size:clamp(29px,8vw,35px); line-height:1.2; letter-spacing:-.6px; margin-bottom:20px; }
  h2,.book h2,.assessment h2,.process-section h2 { font-size:clamp(26px,7.1vw,31px); line-height:1.24; letter-spacing:-.4px; margin-bottom:20px; }
  h3,.care-list h3,.path-copy h3,.process-card h3,.work-doors h3 { font-size:22px; line-height:1.3; margin-bottom:14px; }
  p { margin-bottom:20px; }
  .intro,.process-intro { font-size:16px; line-height:1.7; }
  .eyebrow { font-size:10px; line-height:1.7; letter-spacing:1.5px; margin-bottom:17px; }
  .button { font-size:13px; line-height:1.5; padding:13px 19px; border-radius:15px; box-shadow:0 3px 9px #263e351b; min-height:44px; }
  .textlink { font-size:13px; line-height:1.6; }
  .hero,.process-hero { padding-top:36px; padding-bottom:48px; gap:30px; }
  .hero-copy p,.hero-copy { max-width:100%; }
  .hero .actions,.process-hero .actions { margin-top:24px; gap:16px; }
  .portrait { width:100%; max-width:360px; padding-bottom:24px; }
  .portrait img { border-radius:82px 82px 0 0; box-shadow:0 7px 22px #263e351a; }
  .portrait figcaption { font-size:14px; }
  .section,.process-section,.online-section,.work-section { padding-top:56px; padding-bottom:56px; }
  #caminhos { padding-top:56px; }
  .book,.about { padding-top:52px; padding-bottom:52px; }
  .book-grid { row-gap:28px; }
  .cover { max-width:185px; box-shadow:8px 12px 22px #263e351c; }
  .subtitle { font-size:20px; line-height:1.5; }
  .availability { font-size:12px; padding:9px 13px; }
  .section-head,.work-head { margin-bottom:30px; }
  .care-grid,.about-grid { gap:32px; }
  .care-mosaic { gap:10px; }
  .care-mosaic img { aspect-ratio:1; object-fit:cover; border-radius:0; }
  .care-mosaic figcaption { font-size:10px; padding:7px 8px; }
  .care-list article { gap:13px; padding:22px 0; }
  .care-list p,.path-copy p:not(.eyebrow),.about p:not(.eyebrow),.work-card p { font-size:15px; line-height:1.7; }
  .number { font-size:18px; }
  .care-button { padding:12px 16px; }
  .assessment { padding:44px 0; }
  .assessment>.wrap { gap:24px; }
  .assessment p { font-size:15px; }
  .paths { gap:40px; }
  .paths article { max-width:360px; }
  .paths article>img,.paths article:nth-child(2)>img { aspect-ratio:4/5; border-radius:82px 82px 0 0; }
  .path-copy { padding:22px 0 0; }
  .path-footer { min-height:0; padding-top:4px; }
  .path-footer .button { padding:12px 16px; }
  .social-small { font-size:12px; margin-top:14px; }
  .contact { padding-top:54px; padding-bottom:54px; }
  .locations { font-size:14px; }
  .process-strip { font-size:12px; line-height:1.7; padding:20px 0; }
  .process-grid,.process-split { gap:25px; }
  .process-card,.work-card { padding:24px 22px; border-radius:12px; box-shadow:0 4px 16px #263e3509; }
  .process-card h3 { font-size:22px; }
  .process-quote { font-size:23px; line-height:1.5; }
  .process-benefits span { font-size:14px; padding:11px 15px; }
  .faq { margin-top:25px; margin-bottom:0; }
  .faq details { padding:19px 0; }
  .faq summary { font-size:15px; line-height:1.6; font-weight:600; }
  .faq details p { font-size:15px; line-height:1.75; margin-top:14px; }
  .process-small { font-size:12px; }
  .work-hero { gap:28px; }
  .work-tools details { padding:20px; margin-bottom:12px; border-radius:10px; }
  .work-tools summary { font-size:20px; line-height:1.35; }
  .work-tools details p,.work-tools dd { font-size:15px; line-height:1.75; }
  .work-doors { gap:30px; }
  .work-doors p { font-size:15px; }
  .online-four { grid-template-columns:1fr; gap:25px; }
  .online-four h3 { font-size:21px; }
  .online-four p { font-size:15px; }
  .online-icon { font-size:25px; margin-bottom:10px; }
  .online-story { padding:24px 22px; }
  .online-story blockquote { font-size:19px; line-height:1.65; }
  footer.wrap { grid-template-columns:1fr; row-gap:22px; padding-top:34px; padding-bottom:35px; text-align:center; background:#e8ede4; }
  footer .footer-tagline { font-size:11px; letter-spacing:.7px; line-height:1.9; margin:0 auto; max-width:290px; white-space:normal!important; text-wrap:balance; }
  footer .brand { justify-content:center; margin:0; }
  footer .brand .brand-name { display:none; }
  footer .brand img.brand-symbol { width:78px; height:78px; border-radius:50%; box-shadow:0 4px 14px #263e350b; }
  footer .footer-phone { font:16px/1.6 Georgia,serif; margin:0 0 8px; }
  footer .footer-instagram { font-size:13px; line-height:1.7; }
  footer .footer-instagram svg { width:17px; height:17px; }
  footer .footer-contact,footer .footer-legal { justify-self:center; }
  footer .footer-legal { font-size:11px; line-height:1.8; max-width:290px; }
  footer small { font-size:11px; line-height:1.8; margin-top:9px; }
}
@media (max-width:360px) {
  header .brand .brand-name { font-size:21px; }
  header .brand img.brand-symbol,header.process-header .brand img.brand-symbol { width:36px!important; height:36px!important; }
  header,header.process-header { gap:10px; }
  h1,.process-hero h1,.work-hero h1,.online-hero h1 { font-size:29px; }
  .process-languages a,.language-switch a { padding:11px 8px; }
}
