﻿/* Estrutura editorial inspirada no Solena; implementação original StarBem. */
:root{--ink:#312c35;--purple:var(--cor-principal);--deep:#483151;--cyan:var(--cor-acao);--paper:var(--cor-fundo);--muted:#6f6873;--line:#ded8df;--pale:#f0ecf2}
html{scroll-padding-top:25px}.skip-link{position:absolute;top:-90px;left:15px;padding:14px;background:var(--paper);z-index:20}.skip-link:focus{top:10px}.header{height:105px;padding:10px 50px;background:var(--paper)}.brand-logo{width:132px;height:73px;object-fit:contain}.header nav{gap:36px}.button{border:1px solid var(--purple);border-radius:0;background:transparent;color:var(--purple);font-weight:500;min-height:52px;padding:14px 23px}.button:hover{background:var(--purple);color:#fffef9;transform:none}.button-small{min-height:47px;padding:11px 18px}.hero.wrap{width:100%;max-width:1800px;grid-template-columns:1fr 1.1fr;gap:0;padding:0;min-height:650px;align-items:stretch}.hero-copy{background:var(--purple);color:#fffef9;padding:56px max(40px,calc((100vw - 1180px)/2)) 36px;padding-right:45px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero .eyebrow{color:#e0d4e8;font-size:9px;letter-spacing:1.8px;margin-bottom:18px}.service-line{color:#eee3f2;font-size:10px;margin-top:0;margin-bottom:25px}.dot{background:#d1e7eb}h1{font-size:clamp(42px,4.1vw,63px)}.hero h1 em{color:#eee3f2}.hero .intro{font-family:Georgia,serif;font-size:23px;line-height:1.35;margin:25px 0 13px}.hero-detail{font-size:14px;line-height:1.8;color:#f0e8f4;margin-bottom:25px}.hero .button{border-color:#e9e1ee;color:#fffef9}.hero .button:hover{background:#fffef9;color:var(--deep)}.micro{color:#e4d9e9;font-size:10px;margin-top:22px}.portrait{padding:0;min-height:650px;background:#e5edf4;overflow:hidden}.portrait img{position:absolute;width:100%;height:100%;border-radius:0;object-fit:cover;object-position:50% 28%;filter:none}.portrait-ring,.portrait-label,.caption-star{display:none}.portrait-caption{left:0;right:0;bottom:0;padding:24px 35px;background:#f9faf4ed;box-shadow:none;border-radius:0;font-family:Georgia,serif;font-size:25px}.portrait-caption:before{content:'';width:2px;height:45px;background:var(--purple);margin-right:8px}.portrait-caption small{font:11px/1.6 Arial,Helvetica,sans-serif;margin-top:5px}.quick-facts{background:var(--paper);border-top:0}.facts-inner{padding:25px 0;display:grid;grid-template-columns:repeat(3,1fr)}.facts-inner p{font-size:13px;border-right:1px solid var(--line);padding:0 32px}.facts-inner p:first-child{padding-left:0}.facts-inner p:last-child{border-right:0}.section{padding-block:90px}.section-top{margin-bottom:38px}h2{font-size:clamp(33px,3.4vw,46px)}.care-grid{gap:0;border:1px solid var(--line)}.care-card{border:0;border-radius:0;background:transparent;padding:32px}.care-card+article{border-left:1px solid var(--line)}.care-card.featured{background:var(--pale);color:var(--ink)}.featured .card-number{color:var(--purple)}.featured p{color:var(--muted)}.care-card h3{font-size:27px}.movement{padding:75px 0}.movement:after{display:none}.movement-layout{gap:85px}.movement h2 em{color:#e4d2eb}.light{color:#dcc8e4}.movement .text-link{color:#e8d8ef}.technique-index{color:#dac3e4}.techniques .technique-note{color:#e3d4eb}.about{grid-template-columns:1fr 1.1fr;gap:95px}.professional-role{font-size:12px;color:var(--muted);margin-top:22px}.about-copy .lead{font-size:29px;line-height:1.3;margin-top:0}.practice-areas{border-top:1px solid var(--line);padding-top:16px;margin-top:25px}.practice-areas h3{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.practice-areas ul{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:18px 0 0;gap:10px 20px;font-size:12px}.practice-areas li:before{content:'·';margin-right:8px;color:var(--purple)}.other-services{background:var(--pale);border-radius:0;padding:45px}.other-services h2{font-size:37px}.other-services>p:not(.eyebrow){font-size:14px}.services-list{margin-top:32px}.services-list details{border-bottom:1px solid #d6ccdc}.services-list details:first-child{border-top:1px solid #d6ccdc}.services-list summary{position:relative;cursor:pointer;list-style:none;padding:22px 38px 22px 0;font-family:Georgia,serif;font-size:25px;line-height:1.3}.services-list summary::-webkit-details-marker{display:none}.services-list summary>span{display:inline-block;width:65px;vertical-align:middle;font:10px Arial,sans-serif;color:var(--muted);letter-spacing:1px}.services-list summary:after{content:'+';position:absolute;right:4px;top:18px;font:25px Arial,sans-serif;color:var(--purple)}.services-list details[open] summary:after{content:'−'}.services-list details>div{padding:0 35px 25px 65px;max-width:850px}.services-list p{font-size:14px;margin:0 0 12px}.services-list a{font-size:12px;color:var(--purple)}.faq-section{background:var(--pale)}.address-card{border-radius:0;background:transparent;padding:34px}.contact{gap:85px}.contact .button{background:var(--purple);color:white}.contact .button:hover{background:var(--deep)}.footer-inner .brand-logo{width:105px;height:58px}
@media(min-width:1800px){.hero-copy{padding-left:90px}}
@media(max-width:1050px){.header{padding-inline:32px}.header nav{gap:22px}.hero-copy{padding:44px 32px 30px}.hero.wrap,.portrait{min-height:620px}.hero h1{font-size:49px}.hero .intro{font-size:21px}.hero-detail{font-size:13px}.about,.movement-layout,.contact{gap:45px}.care-card{padding:25px}}
@media(max-width:760px){.header{height:90px;padding:8px 20px;gap:12px}.brand-logo{width:111px;height:66px}.header nav{display:none}.button-small{font-size:11px;padding:10px 14px;gap:16px}.hero.wrap{display:flex;flex-direction:column;min-height:0;gap:0}.hero-copy{padding:34px 24px 23px}.hero h1{font-size:46px;letter-spacing:-1.2px}.hero .eyebrow{font-size:8px;margin-bottom:16px}.service-line{font-size:9px;margin-bottom:22px}.hero .intro{font-size:22px;margin-top:22px}.hero-detail{font-size:14px;max-width:470px}.hero .button{font-size:13px;gap:25px}.micro{margin:21px 0 0;font-size:9px}.portrait{height:390px;min-height:0;width:100%;margin:0}.portrait img{height:100%;object-position:50% 20%;border-radius:0}.portrait-caption{padding:17px 24px;font-size:23px;left:0;bottom:0}.portrait-caption:before{height:37px}.facts-inner{padding-block:20px;gap:10px}.facts-inner p{font-size:10px;padding-inline:12px;max-width:none}.facts-inner p>span{display:none}.facts-inner strong{display:block;font-size:12px}.section{padding-block:58px}.care-grid{grid-template-columns:1fr;gap:0}.care-card{padding:27px}.care-card+article{border-left:0;border-top:1px solid var(--line)}.care-card p{font-size:14px}.movement{padding:55px 0}.movement-layout{gap:30px}.about{grid-template-columns:1fr;gap:24px}.professional-heading h2 br{display:none}.professional-role{margin-top:17px}.about-copy .lead{font-size:27px}.practice-areas ul{gap:12px;font-size:12px}.other-services{padding:27px}.other-services h2{font-size:31px}.services-list summary{font-size:22px;padding-block:20px}.services-list summary>span{width:35px;font-size:9px}.services-list details>div{padding-left:35px;padding-right:15px}.contact{gap:30px}.address-card{padding:27px}.footer-inner{gap:18px}.footer-inner>p{font-size:10px;max-width:190px}}

/* Ajuste solicitado em 21/10/2026: retrato menor e leitura mais confortável. */
body{font-size:18px}
.hero.wrap{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);min-height:560px;align-items:center;background:var(--purple)}
.hero-copy{padding-top:40px;padding-bottom:40px;padding-right:40px}
.portrait{width:calc(100% - 48px);height:450px;min-height:0;justify-self:center;margin-right:24px}
.portrait img{object-position:50% 25%}
.header nav{font-size:16px}.button,.button-small{font-size:16px}
.hero .eyebrow,.eyebrow{font-size:13px}.service-line{font-size:16px}
.hero .intro{font-size:28px}.hero-detail{font-size:18px;max-width:540px}.micro{font-size:15px}
.portrait-caption{font-size:23px;padding:18px 22px}.portrait-caption small{font-size:15px}
.facts-inner p,.section-top>p,.care-card p,.movement-heading>p:not(.eyebrow),.techniques p,.about-copy>p,.other-services>p:not(.eyebrow),.services-list p,.steps p,.faq-list p,.contact>div>p:not(.eyebrow),.address-card address{font-size:17px}
.care-card a,.text-link,.techniques .technique-note,.professional-role,.practice-areas ul,.services-list a,.address-hours{font-size:16px}
.practice-areas h3,.card-number{font-size:13px}.steps h3,.faq-list summary{font-size:18px}
.address-hours small,.footer-inner>p,.footer-inner>small{font-size:14px}
@media(max-width:1050px){.header nav{gap:16px}.hero-copy{padding-inline:28px}.portrait{width:calc(100% - 32px);height:410px;margin-right:16px}.hero h1{font-size:46px}}
@media(max-width:760px){
.hero.wrap{min-height:0}.hero-copy{padding:34px 24px 28px;width:100%}
.hero h1{font-size:clamp(36px,10vw,46px)}.hero .eyebrow{font-size:12px}.service-line{font-size:15px}
.hero .intro{font-size:26px}.hero-detail{font-size:18px}.hero .button{font-size:16px;gap:16px}.micro{font-size:14px}
.portrait{width:min(320px,calc(100% - 48px));height:300px;min-height:0;margin:0 auto 28px}
.portrait-caption{padding:12px 16px;font-size:21px}.portrait-caption small{font-size:14px}.portrait-caption:before{height:35px}
.button-small{font-size:14px;gap:10px;padding-inline:10px}.facts-inner p{font-size:14px;padding-inline:8px}.facts-inner strong{font-size:15px}
.practice-areas ul{grid-template-columns:1fr}.footer-inner>p{font-size:14px;max-width:none}
}

/* Agendamento: identificação visual consistente com o WhatsApp. */
.button[data-whatsapp],.hero .button[data-whatsapp],.contact .button[data-whatsapp],.floating-wa{background:var(--cor-acao);color:#fff;border-color:var(--cor-acao);font-weight:600}
.button[data-whatsapp]:hover,.hero .button[data-whatsapp]:hover,.contact .button[data-whatsapp]:hover,.floating-wa:hover{background:var(--cor-acao);color:#fff;border-color:var(--cor-acao)}
.button[data-whatsapp]:focus-visible,.floating-wa:focus-visible{outline:3px solid var(--cor-whatsapp);outline-offset:4px}

/* Fotografias reais e informações dos dois locais de atendimento. */
.location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.location-card{border:1px solid var(--line);background:#fff;min-width:0}
.location-card figure{margin:0;background:#edf0f2}
.location-card img{width:100%;height:330px;object-fit:contain}
.location-card figcaption{padding:12px 24px;font-size:14px;color:var(--muted);border-bottom:1px solid var(--line)}
.location-copy{padding:28px}.location-copy .eyebrow{margin-bottom:12px}
.location-copy h3{font-family:Georgia,serif;font-weight:400;font-size:30px;line-height:1.2;margin:0 0 20px}
.location-copy address{font-style:normal;font-size:18px}.location-copy>p:not(.eyebrow){font-size:17px;color:var(--muted)}
.location-copy .text-link{font-size:16px;margin-top:8px}.address-card>p:not(.eyebrow){font-size:17px}
@media(max-width:760px){.location-grid{grid-template-columns:1fr;gap:24px}.location-card img{height:290px}.location-copy{padding:24px}.location-copy h3{font-size:27px}.location-card figcaption{padding-inline:24px}}

/* Retrato sem corte no computador: preservar a foto inteira. */
@media(min-width:761px){.portrait img{object-fit:contain;object-position:center center}}

/* Azul inspirado na marca StarBem, com contraste para texto branco. */
.button[data-whatsapp],.hero .button[data-whatsapp],.contact .button[data-whatsapp],.floating-wa{background:var(--cor-acao);color:#fff;border-color:var(--cor-acao)}
.button[data-whatsapp]:hover,.hero .button[data-whatsapp]:hover,.contact .button[data-whatsapp]:hover,.floating-wa:hover{background:var(--cor-acao);color:#fff;border-color:var(--cor-acao)}
.button[data-whatsapp]:focus-visible,.floating-wa:focus-visible{outline:3px solid var(--cor-acao);outline-offset:4px}
.facts-inner{align-items:center}.facts-inner .price-button{font-size:15px;padding:12px 16px;gap:8px;min-height:48px;white-space:normal;text-align:center}
.faq-list .button{margin-top:14px}.facts-inner p{min-width:0}
@media(max-width:760px){.facts-inner{grid-template-columns:1fr 1fr}.facts-inner p:nth-child(2){border-right:0}.facts-inner p:last-child{grid-column:1/-1;padding:12px 0 0}.facts-inner .price-button{width:100%;font-size:16px}}

/* Ciano vivo da identidade StarBem, com texto escuro para leitura. */
.button[data-whatsapp],.hero .button[data-whatsapp],.contact .button[data-whatsapp],.floating-wa{background:var(--cor-acao);color:var(--cor-texto-botao);border-color:var(--cor-acao)}
.button[data-whatsapp]:hover,.hero .button[data-whatsapp]:hover,.contact .button[data-whatsapp]:hover,.floating-wa:hover{background:var(--cor-acao);color:var(--cor-texto-botao);border-color:var(--cor-acao)}
.button[data-whatsapp]:focus-visible,.floating-wa:focus-visible{outline:3px solid var(--cor-principal);outline-offset:4px}
.floating-wa{box-shadow:0 4px 18px #25203830}.floating-wa svg{width:29px;height:29px}

/* Nome completo e serviços principais com maior destaque. */
.header nav{font-size:18px;gap:28px}.header nav a{line-height:1.4}
.portrait-caption{font-size:26px}.portrait-caption small{font-size:18px;line-height:1.5;color:var(--ink)}
.professional-role{font-size:20px;color:var(--purple)}
@media(min-width:761px) and (max-width:1100px){.header{height:auto;flex-wrap:wrap;justify-content:space-between}.header nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;font-size:18px;gap:16px 28px;padding:8px 0}}
@media(max-width:760px){.header{height:auto;flex-wrap:wrap}.header nav{display:flex;order:3;width:100%;justify-content:center;flex-wrap:wrap;font-size:16px;gap:10px 18px;padding:10px 0 6px}.portrait-caption{font-size:23px}.portrait-caption small{font-size:17px}.professional-role{font-size:19px}}

/* Revisão responsiva: largura fluida, fotos sem barras e leitura. */
:root{--muted:#57515d}
html{overflow-x:clip}body{overflow-x:hidden;padding-bottom:88px}
.wrap{width:min(1180px,calc(100% - 48px))}
main,section,.hero-copy,.about>div,.movement-layout>div,.contact>div{min-width:0}
.hero.wrap{width:100%;max-width:none;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px;min-height:0;padding:44px max(24px,calc((100% - 1180px)/2));background:var(--purple)}
.hero-copy{width:100%;min-width:0;padding:0;background:transparent;overflow-wrap:break-word}
.hero h1{font-size:clamp(36px,4vw,60px)}
.portrait{width:min(100%,380px);height:auto;min-height:0;margin:0;justify-self:center;background:var(--paper);overflow:hidden}
.portrait img{position:static;width:100%;height:auto;aspect-ratio:1024/941;object-fit:cover;object-position:center top}
.portrait-caption{position:static;padding:18px 20px;font-size:24px;background:var(--paper)}
.portrait-caption small{font-size:17px}.portrait-caption:before{flex-shrink:0}
.other-services.wrap{width:100%;max-width:none;padding:60px max(24px,calc((100% - 1180px)/2));background:var(--pale)}
.location-card img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.location-card:first-child img{object-position:50% 40%}.location-card{display:flex;flex-direction:column}.location-copy{flex:1}
.floating-wa[data-whatsapp]{background:var(--cor-whatsapp);color:#fff;border:1px solid #14763b;width:54px;height:54px;right:20px;bottom:20px}
.floating-wa[data-whatsapp]:hover{background:var(--cor-acao);color:#fff;border-color:var(--cor-acao)}
.floating-wa.is-obscuring{visibility:hidden;pointer-events:none}
.header nav,.button,.text-link{overflow-wrap:anywhere}
@media(max-width:900px){.hero.wrap{grid-template-columns:1fr;padding:34px 24px;gap:30px}.hero-copy{padding:0}.hero h1{font-size:clamp(36px,7vw,54px)}.portrait{width:min(100%,340px);margin:0;justify-self:center}.hero .button{max-width:100%}}
@media(max-width:760px){.hero.wrap{display:grid}.wrap{width:calc(100% - 40px)}.other-services.wrap{width:100%;padding:44px 20px}.location-card img{height:auto;aspect-ratio:4/3}.floating-wa[data-whatsapp]{width:46px;height:46px;right:14px;bottom:14px}.floating-wa svg{width:26px;height:26px}.portrait-caption{font-size:23px}.header{padding-inline:16px}.header nav{gap:12px 18px}.button{max-width:100%}.address-hours strong{float:none;display:block}.facts-inner{gap:8px}.location-copy{padding:22px}}

/* Foco restrito ao título e separado do conteúdo expandido. */
.services-list summary{margin:4px 0;overflow-wrap:break-word}
.services-list summary:focus:not(:focus-visible){outline:none}
.services-list summary:focus-visible{outline:3px solid var(--cyan);outline-offset:-3px;border-radius:2px}
.services-list details>div{padding-top:8px}
.other-services .therapy-intro{max-width:850px;margin-top:14px}
@media(max-width:400px){.services-list summary{font-size:21px;padding-right:28px}.services-list details>div{padding-left:0;padding-right:0}.services-list a{display:inline-block;overflow-wrap:anywhere}}


/* Règles finales communes : bleu pour les actions, vert pour le seul raccourci flottant. */
.button,.button[data-whatsapp],.hero .button,.hero .button[data-whatsapp],.contact .button,.contact .button[data-whatsapp]{background:var(--cor-acao);border-color:var(--cor-acao);color:var(--cor-texto-botao)}
.button:hover,.button[data-whatsapp]:hover,.hero .button:hover,.hero .button[data-whatsapp]:hover,.contact .button:hover,.contact .button[data-whatsapp]:hover{background:var(--cor-acao);border-color:var(--cor-acao);color:var(--cor-texto-botao);box-shadow:inset 0 0 0 2px var(--cor-principal)}
.floating-wa[data-whatsapp],.floating-wa[data-whatsapp]:hover{background:var(--cor-whatsapp);border-color:var(--cor-whatsapp);color:var(--cor-texto-botao)}
