/* Escala editorial por função; carregada depois das camadas de apresentação. */
:root{--type-body:16px;--type-body-leading:1.8;--type-support:14px;--type-label:12px;--type-note:12px;--type-section:clamp(32px,3.8vw,50px);--type-article:28px;--type-card:24px;--type-weight-body:400;--type-weight-label:500}
body{font-family:var(--fb);font-weight:var(--type-weight-body);letter-spacing:0}
/* Textos de leitura e listas compartilham cor, peso e entrelinha. */
.t-reading p,.t-reading li,.project-concerns p,.project-concerns li,.t-planning p,.t-planning li,.t-region p,.quality-care p,.personalized-care p,.personalized-care li,.brand-perspective p:not(.slabel),.prevention-care p:not(.slabel),.t-method-heading p:not(.slabel),.sobre-text p,.t-faq details>p,.legal-reading article p{font-family:var(--fb);font-size:var(--type-body);font-weight:400;line-height:var(--type-body-leading);color:var(--show-copy);letter-spacing:0;opacity:1}
.t-reading li::marker,.personalized-care li::marker{color:var(--show-copy)}.t-reading ul{padding-left:22px;margin:16px 0 0}.t-reading li{padding-left:4px;margin:0 0 8px}.t-reading li:last-child{margin-bottom:0}.t-reading article p+p{margin-top:16px}
/* Títulos de seção e subtítulos de leitura têm papéis distintos e constantes. */
.stitle,.inner-page .stitle,.t-method>.si>h2,.t-planning h2,.t-region h2,.t-faq h2,.t-related h2,.project-concerns>.si>h2,.quality-care h2,.personalized-care h2,.brand-perspective h2,.prevention-care h2{font-family:var(--ff);font-size:var(--type-section);font-weight:400;line-height:1.17;color:var(--show-ink);letter-spacing:0!important}
.t-reading article>h2,.legal-reading article>h2{font-family:var(--ff);font-size:var(--type-article);font-weight:400;line-height:1.2;color:var(--show-ink);margin:0 0 20px;letter-spacing:0!important}.t-reading article{margin-bottom:40px}
.tc-name,.dc-title,.project-concerns h3,.quality-care h3,.personalized-care h3{font-family:var(--ff);font-size:var(--type-card);font-weight:400;line-height:1.25;color:var(--show-ink);letter-spacing:0!important}
/* Etiquetas não recebem o tamanho de parágrafo das páginas internas. */
.slabel,.inner-page .slabel,.h-eyebrow,.tc-badge,.skin-panel .skin-location{font-family:var(--fb);font-size:var(--type-label);font-weight:var(--type-weight-label);line-height:1.5;letter-spacing:0;text-transform:none;color:#5e5145}
/* Apoio, notas e controles preservam hierarquia sem parecer outro tema. */
.tc-desc,.dc-text,.skin-panel p,.inner-page .skin-panel p,.t-aside p,.inner-page .t-aside p,.care-steps p,.inner-page .care-steps p,.external-placeholder p,.inner-page .external-placeholder p{font-family:var(--fb);font-size:var(--type-support);font-weight:400;line-height:1.8;color:var(--show-copy);letter-spacing:0}
.source-note,.inner-page .source-note,figcaption,.skin-scale,.inner-page .skin-scale,.skin-sources,.skin-sources p,.inner-page .skin-sources p{font-family:var(--fb);font-size:var(--type-note)!important;font-weight:400;line-height:1.7;color:#5e5145;letter-spacing:0}
.skin-step,.page-index a,.breadcrumbs{font-family:var(--fb);font-size:12px;font-weight:400;line-height:1.5;letter-spacing:0}.skin-step[aria-current]{color:#fff}.care-details summary,.t-faq summary{font-family:var(--fb);font-weight:500;line-height:1.7;letter-spacing:0}
.t-aside h2{font:400 28px/1.2 var(--ff);color:var(--show-ink)}.care-steps strong,.personalized-care strong{font-weight:500}
@media(max-width:800px){:root{--type-article:26px;--type-card:24px}.t-reading article{margin-bottom:32px}.t-reading article>h2,.legal-reading article>h2{margin-bottom:18px}}
body .slabel,body.inner-page .slabel,body .h-eyebrow,body .tc-badge,.skin-panel .skin-location,.inner-page .skin-panel .skin-location{font-family:var(--fb);font-size:var(--type-label);font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;color:#5e5145}.tc-badge{padding:6px 12px}.skin-panel .skin-location{margin-bottom:14px}
#diferenciais .slabel,#faq .slabel,#cta .slabel,#agendamento .slabel,#localizacao .slabel{color:#5e5145}body .t-hero figcaption,.inner-page .t-hero figcaption{font:400 var(--type-note)/1.7 var(--fb);color:#5e5145;letter-spacing:0}
.maintenance-care h2{font-family:var(--ff);font-size:var(--type-section);font-weight:400;line-height:1.17;color:var(--show-ink);letter-spacing:0!important}.maintenance-care h3{font:400 var(--type-card)/1.25 var(--ff);color:var(--show-ink);margin:28px 0 18px}.maintenance-care p:not(.slabel),.contact-band p{font:400 var(--type-body)/var(--type-body-leading) var(--fb);color:var(--show-copy);letter-spacing:0}

.concern-gallery h2{font:400 var(--type-section)/1.17 var(--ff);color:var(--show-ink);letter-spacing:0}.concern-card h3{font:400 var(--type-card)/1.25 var(--ff);color:var(--show-ink);letter-spacing:0}.concern-gallery p,.inner-page .concern-gallery .concern-card p{font:400 var(--type-body)/var(--type-body-leading) var(--fb);color:var(--show-copy);letter-spacing:0}.concern-gallery .concern-note{font:400 var(--type-note)/1.7 var(--fb);color:#5e5145}.concern-card figcaption{text-align:left}

.concern-story h3,.filler-quantity h3{font:400 var(--type-card)/1.25 var(--ff);color:var(--show-ink);letter-spacing:0}.concern-editorial .concern-story-copy p,.concern-editorial .filler-quantity p{font:400 var(--type-body)/var(--type-body-leading) var(--fb);color:var(--show-copy);letter-spacing:0}.concern-editorial .concern-story figcaption{font:400 var(--type-note)/1.7 var(--fb);color:#5e5145}

/* Restore the published contact composition with readable light text. */
#cta{position:relative;overflow:hidden;background:#2a2420;padding:96px 5%;text-align:center}
#cta .cta-bg{display:block;position:absolute;inset:0;z-index:0}
#cta .cta-bg img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
#cta .cta-bg::after{background:linear-gradient(135deg,rgba(42,36,32,.9),rgba(116,103,88,.85),rgba(42,36,32,.92))}
#cta .cta-content{background:transparent;border-radius:0;padding:0;max-width:1200px}
#cta .slabel{color:#eee4dc}
#cta .stitle,#cta .cta-title,#cta h2{color:#f9f3ef}
#cta .stitle em{color:#e1d3c7}
#cta p,#cta .cta-content p{color:#f0e7df}
#cta .btn-p{background:#f9f3ef;color:#51473d;border-radius:0;box-shadow:0 4px 32px rgba(249,243,239,.25);transition:background .25s,transform .2s,box-shadow .25s}
#cta .btn-p:hover{background:#fff;color:#51473d;transform:translateY(-2px);box-shadow:0 8px 40px rgba(249,243,239,.4)}
.dep-controls .dep-pause{width:auto;min-width:80px;padding:0 14px;font:500 12px var(--fb)}
@media(max-width:500px){#cta{padding:64px 24px}#cta .cta-bg img{object-position:35% 25%}#cta .btn-p{max-width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){#cta .btn-p{transition:none}#cta .btn-p:hover{transform:none}.dep-pause{display:none}}

/* Continuous movement must not be snapped back to the previous card. */
.dep-track{scroll-snap-type:none;scroll-behavior:auto}
#cta .slabel{background:transparent;border:0;padding:0;color:#eee4dc}

/* Final editorial finish: preserve the brand, clarify the reading rhythm. */
:root{--finish-rule:#d9d2c9;--finish-ease:cubic-bezier(.22,.61,.36,1)}
.h-title,.stitle,.inner-page h1,.t-headline,.skin-panel h3{text-wrap:balance}
.t-reading article p,.t-planning p,.maintenance-care p,.legal-reading p{max-width:68ch}
.t-hero .slabel{background:transparent;border:0;border-radius:0;padding:0;display:block;margin-bottom:24px}
.t-hero-grid{column-gap:clamp(40px,5.5vw,88px)}
.t-hero-grid>div{min-width:0}
.t-hero-grid figure{min-width:0;margin:0}
.t-hero figure img{border-radius:6px}
.t-hero figcaption{padding-top:4px}
.t-reading article+article{border-top:1px solid var(--finish-rule);padding-top:32px}
.t-aside{border-radius:6px;border:1px solid var(--finish-rule);box-shadow:none}
.page-index a,.related-links a,.tc-link,.context-contact{text-decoration-thickness:1px;text-underline-offset:5px;transition:color .2s ease,text-decoration-color .2s ease}
.page-index a:hover,.related-links a:hover,.tc-link:hover,.context-contact:hover{text-decoration:underline;text-decoration-thickness:1px}
.t-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;padding:6px 0}
.t-faq summary::-webkit-details-marker{display:none}
.t-faq summary::after{content:'+';flex:0 0 24px;font:400 25px/1 var(--ff);text-align:center;color:#62594f}
.t-faq details[open]>summary::after{content:'−'}
.t-faq details[open]>summary{color:var(--show-ink)}
.t-faq details>p{padding-right:40px}
.btn-p,#nav-cta{transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s var(--finish-ease)}
@media(min-width:1000px){.t-hero{padding-top:140px;padding-bottom:64px}.t-hero-grid{align-items:center}.t-hero figure img{aspect-ratio:4/5;max-height:620px;object-fit:cover}.t-hero-grid .t-headline{max-width:32ch}.t-reading .t-columns{column-gap:clamp(48px,6vw,96px)}}
@media(max-width:800px){.t-hero .slabel{margin-bottom:20px}.t-reading article+article{padding-top:28px}.t-faq summary{gap:16px}.t-faq details>p{padding-right:0}}
@media(prefers-reduced-motion:reduce){.btn-p,#nav-cta,.page-index a,.related-links a,.tc-link,.context-contact{transition:none}}

/* Discreet photographic border, following the existing image corners. */
.showroom-hero-media img,.sobre-frame img,.t-hero figure img,.t-method-heading img,.concern-story img{box-sizing:border-box;border:1px solid rgba(116,103,88,.24)}

/* Treatment overview: concise cards, with full explanations a click away. */
.treatment-overview .t-columns{grid-template-columns:minmax(0,1fr);gap:32px}
.treatment-overview .t-columns>div:first-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.treatment-overview article,.treatment-overview article+article{margin:0;padding:28px;border:1px solid #d9d2c9;background:#fff;border-radius:12px;min-width:0}
.treatment-overview article>h2{font-size:26px;margin-bottom:16px;max-width:28ch}
.treatment-overview article>p,.treatment-overview article li{font-size:15px;line-height:1.8}
.treatment-overview .overview-care{grid-column:1/-1}
.overview-detail{margin-top:16px;border-top:1px solid #e2dbd2;padding-top:12px}
.overview-detail summary{cursor:pointer;font:500 13px/1.6 var(--fb);color:#5e5145;text-underline-offset:4px}
.overview-detail summary:hover{text-decoration:underline}
.treatment-overview .overview-detail p{font-size:15px;line-height:1.8;margin-top:14px}
.treatment-overview .t-aside{position:static;max-width:none;padding:28px;border-radius:12px}
.treatment-overview .t-aside p{max-width:65ch}
@media(max-width:650px){.treatment-overview .t-columns>div:first-child{grid-template-columns:1fr;gap:16px}.treatment-overview article,.treatment-overview article+article{padding:24px}.treatment-overview article>h2{font-size:25px}}
.treatment-overview .t-columns>div:first-child{align-items:stretch}
.treatment-overview .t-columns>div:first-child>.contact-band{grid-column:1/-1;margin:4px 0}

/* Shared line-icon vocabulary and comfortable card gutters. */
.editorial-icon{display:inline-block;width:24px;height:24px;flex:0 0 24px;color:#746758;vertical-align:middle}
.icon-heading{display:flex;align-items:flex-start;gap:14px}
.icon-heading .editorial-icon{margin-top:3px}
.icon-heading>span{min-width:0}
.t-hero .slabel .editorial-icon{margin-right:10px;width:22px;height:22px}
.pf-editorial .pf-treatment-signature{gap:0}
.icon-address{display:flex;align-items:flex-start;gap:12px}
.icon-address .editorial-icon{width:20px;height:20px;flex-basis:20px;margin-top:3px}
.treatment-overview .reading-contact{margin:0;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f2eee8;border:1px solid #d9d2c9;border-radius:12px}
.treatment-overview .reading-contact p{margin:0;max-width:52ch;font-size:16px;line-height:1.7}
.treatment-overview .reading-contact a{flex-shrink:0;max-width:100%;white-space:normal;text-align:center}
.treatment-overview article,.treatment-overview article+article{padding:32px}
@media(max-width:800px){main>section:not(#hero){padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.treatment-overview .reading-contact{flex-direction:column;align-items:flex-start;padding:24px;gap:16px}.treatment-overview article,.treatment-overview article+article{padding:24px}.icon-heading{gap:12px}}

/* Withdrawn portrait: keep layouts clean until replacement photos arrive. */
.sobre-frame:not(:has(img)){display:none}
.sobre-grid:not(:has(.sobre-frame img)){grid-template-columns:1fr}
.t-hero-grid:not(:has(figure img)){grid-template-columns:1fr}
.t-method-heading:not(:has(img)){grid-template-columns:1fr}

/* Client-approved portraits: keep faces visible in responsive crops. */
.t-hero img[data-photo="retrato"]{object-position:50% 30%}
.t-hero img[data-photo="perfil"],.t-hero img[data-photo="sorriso"]{object-position:50% 30%}
.t-hero img[data-photo="avaliacao"]{object-position:50% 35%}
.t-method-heading img[data-photo="retrato"],.t-method-heading img[data-photo="avaliacao"]{object-position:50% 25%}
@media(max-width:800px){.t-hero img[data-photo="retrato"],.t-hero img[data-photo="perfil"],.t-hero img[data-photo="sorriso"]{aspect-ratio:4/5;object-position:50% 30%}.t-hero img[data-photo="avaliacao"]{aspect-ratio:4/5;object-position:50% 35%}}
.showroom-hero-media img[data-photo="retrato"]{height:100%;object-fit:cover;object-position:50% 30%;border-radius:24px}
/* Preserve the complete client-supplied Ultraformer photograph. */
.t-hero img[data-photo="ultraformer"]{aspect-ratio:1;object-fit:contain;object-position:center;max-height:none}
