/* Essência — sistema visual exclusivo do modelo 01. */
:root{
 --header-size:56px;
 --e-space-1:.5rem;--e-space-2:.75rem;--e-space-3:1rem;--e-space-4:1.5rem;
 --e-space-5:2rem;--e-space-6:3rem;--e-space-7:4rem;--e-section:5rem;
 --e-radius:.5rem;--e-line:color-mix(in srgb,var(--ink) 20%,transparent);
 --e-body:1rem;--e-small:.8125rem;--e-control:.875rem;
}
html{scroll-padding-top:80px}body{font-size:var(--e-body);line-height:1.7}
.wrap{width:min(1240px,calc(100% - 96px))}
p{line-height:1.7}h1,h2,h3{line-height:1.15}
.concept-essencia .button,.concept-essencia .text-link{font-size:var(--e-control)}
.header-01{height:56px;border:0;background:#fffefa;color:#102b40;box-shadow:0 1px 0 #102b4018}
.header-01 .header-inner{height:56px;min-height:56px;display:grid;grid-template-columns:1fr auto 1fr;position:relative;gap:24px}
.header-01 .essence-wordmark{display:block;text-align:center;font:400 31px/.9 'DM Serif Display',Georgia,serif;letter-spacing:-1.3px}
.essence-wordmark>span{display:block;font:500 8px/1.2 Manrope,Arial,sans-serif;letter-spacing:.17em;margin-top:5px}
.header-01 .menu-toggle{justify-self:start;display:flex!important;align-items:center;gap:10px;min-height:44px;border:0;padding:0;background:none;font-size:var(--e-control);border-radius:0}
.header-01 .menu-toggle span{margin:0}
.header-01 .menu-toggle i{display:block;width:18px;height:8px;border-block:1px solid currentColor;transition:height .2s}
.header-01 .menu-toggle[aria-expanded=true] i{height:2px}
.header-appointment{justify-self:end;min-height:44px;display:flex;align-items:center;font-size:var(--e-control);border-bottom:1px solid transparent}
.header-appointment:hover{border-color:currentColor}
.header-01 #site-nav:not([hidden]){display:grid;grid-template-columns:1fr 220px;align-items:stretch;gap:var(--e-space-6);position:absolute;top:56px;left:0;right:0;padding:var(--e-space-5);background:#fffefa;box-shadow:0 22px 35px #102b4020;max-height:calc(100dvh - 70px);overflow:auto;animation:essence-menu .26s ease both}
.essence-nav-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-space-5)}
.essence-nav-groups h2{font:500 var(--e-small)/1.5 Manrope,Arial,sans-serif;letter-spacing:0;color:#5f6c70;margin:0 0 var(--e-space-2)}
.header-01 .essence-nav-groups a{display:flex;align-items:center;min-height:48px;padding:8px 0;line-height:1.4;font-size:var(--e-control)}
.header-01 .essence-nav-groups a[aria-current]{font-weight:750}
.header-01 #site-nav figure img{width:100%;height:185px;object-position:center 35%;border-radius:var(--e-radius)}
.header-01 #site-nav figcaption{font:400 1rem/1.5 'DM Serif Display',Georgia,serif;margin-top:var(--e-space-2);max-width:20ch}
.header-01 #site-nav a::after{display:none}.header-01 #site-nav a:hover{text-decoration:underline;text-underline-offset:5px}
.concept-essencia .hero-panorama,.concept-essencia .panorama-inner{min-height:clamp(570px,calc(100svh - 100px),780px)}
.concept-essencia .hero-panorama .hero-copy{max-width:58%;padding-bottom:1rem}
.concept-essencia .hero-panorama h1{font-size:clamp(3.375rem,5.4vw,5rem);max-width:13ch;line-height:1.04}
.concept-essencia .hero-panorama .shade{background:linear-gradient(90deg,#102b40da,#102b405c 60%,#102b4010)}
.concept-essencia .hero-panorama>.hero-photo{object-position:60% center}
.concept-essencia .hero-foot{font-size:var(--e-small);line-height:1.7;right:0;bottom:var(--e-space-5)}
.concept-essencia .hero-copy p{max-width:34ch;font-size:1rem;color:inherit}
.concept-essencia .hero-panorama .actions .text-link{color:inherit}
.direction-section{padding-block:var(--e-section)}
.direction-heading{display:flex;justify-content:space-between;gap:var(--e-space-6);align-items:end;margin-bottom:var(--e-space-5)}
.direction-heading h2{max-width:22ch;font-size:clamp(2.25rem,3.6vw,3.25rem);margin-bottom:0}
.direction-heading p{max-width:43ch;font-size:1rem;margin:0}
.care-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-space-5);align-items:stretch}
.care-photo-card{min-width:0;display:flex;flex-direction:column;margin:0}
.care-photo-card .care-image{display:block;overflow:hidden;aspect-ratio:3/2;border-radius:var(--e-radius);flex-shrink:0}
.care-photo-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s}
.care-photo-card .care-image:hover img{transform:scale(1.025)}
.care-photo-card>div{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding-top:var(--e-space-4)}
.care-photo-card h3{font-size:1.875rem;line-height:1.2;margin:0 0 var(--e-space-2)}
.care-photo-card p{font-size:1rem;line-height:1.7;max-width:36ch;margin:0 0 var(--e-space-3)}
.care-destination{display:inline-flex;align-items:center;gap:var(--e-space-2);font-size:var(--e-control);font-weight:650;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.care-photo-card .care-destination{margin-top:auto;padding-top:var(--e-space-1)}
.care-destination span{font-size:1.125rem;transition:transform .18s}.care-destination:hover span{transform:translate(2px,-2px)}
.composition-tail{margin-top:var(--e-space-5);padding-top:var(--e-space-4);border-top:1px solid var(--e-line);display:flex;justify-content:end}
.story-v2{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}
.story-v2>img{width:100%;height:480px;border-radius:var(--e-radius)}
.story-v2 .direction-heading{margin:0 0 var(--e-space-4)}.story-v2 p{max-width:45ch;font-size:1rem}
.story-v2 .button{margin-top:var(--e-space-2)}
.faq-preview-v2{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;border-top:1px solid var(--e-line)}
.faq-preview-v2 .direction-heading{display:block;margin-bottom:var(--e-space-4)}.faq-preview-v2 h2{font-size:2.625rem}
.faq-preview-v2>div>p{font-size:1rem}.faq-preview-v2 .faq-item summary,.faq-item summary{font-size:1rem}
.faq-item>div{font-size:1rem;line-height:1.7}.faq-item summary{padding-block:var(--e-space-4)}
.closing-v2{padding-block:var(--e-space-7);background:#d8dfd8}
.closing-v2>.wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--e-space-6)}
.closing-v2 h2{font-size:clamp(2.125rem,4vw,3.25rem);max-width:20ch;margin:0}.closing-v2 .button{flex-shrink:0}
.footer-mast{display:flex;align-items:end;justify-content:space-between;gap:var(--e-space-5);padding-bottom:var(--e-space-5);border-bottom:1px solid var(--e-line)}
.footer-wordmark{font:400 3.25rem/1 'DM Serif Display',Georgia,serif;letter-spacing:-2px}
.footer-wordmark small{font:500 .75rem/1.5 Manrope,Arial,sans-serif;display:block;letter-spacing:.08em;margin-top:var(--e-space-2)}
.footer-mast p{font-size:var(--e-control);margin:0}
.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:var(--e-space-6);padding-top:var(--e-space-5)}
.footer-columns nav{display:flex;flex-direction:column;align-items:start;font-size:var(--e-control);gap:4px}
.footer-columns nav h2{font:650 var(--e-small)/1.5 Manrope,Arial,sans-serif;margin-bottom:var(--e-space-2);letter-spacing:0}
.footer-columns nav a{min-height:44px;display:flex;align-items:center}.footer-columns a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-disclaimer p{font-size:var(--e-small);line-height:1.7;max-width:42ch}
.footer-disclaimer>a{font-size:var(--e-small);display:block;min-height:36px}
.footer-end{display:flex;justify-content:space-between;gap:var(--e-space-5);border-top:1px solid var(--e-line);margin-top:var(--e-space-5);padding:var(--e-space-4) 0 0;font-size:var(--e-small)}
.page-breadcrumb{display:flex;gap:var(--e-space-2);flex-wrap:wrap;padding-top:var(--e-space-5);padding-bottom:var(--e-space-4);font-size:var(--e-small)}
.page-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.direction-page-heading{padding:var(--e-space-4) 0 var(--e-space-5)}
.direction-page-heading .direction-heading{display:block}.direction-page-heading h1{font-size:clamp(2.75rem,5.5vw,4.875rem);max-width:18ch}
.direction-page-heading p{max-width:62ch;font-size:1.125rem;line-height:1.6}
.detail-profile{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;padding-block:var(--e-space-4) var(--e-space-7)}
.detail-title h1{font-size:clamp(3rem,5.7vw,5.25rem);max-width:14ch}
.detail-title>p{font:400 1.625rem/1.5 'DM Serif Display',Georgia,serif;max-width:28ch}
.detail-profile>figure img{height:420px;width:100%;border-radius:var(--e-radius)}
.detail-profile figcaption,.clinic-intro-01 figcaption{font-size:var(--e-small);margin-top:var(--e-space-2)}
.detail-reading{display:grid;grid-template-columns:.8fr 1.5fr;gap:12%;padding-block:var(--e-space-5) var(--e-space-6);border-top:1px solid var(--e-line)}
.detail-index{align-self:start;position:sticky;top:88px}
.detail-index h2{font:650 var(--e-control)/1.5 Manrope,Arial,sans-serif;letter-spacing:0;margin-bottom:var(--e-space-3)}
.detail-index a{display:block;font-size:var(--e-control);padding-block:var(--e-space-2);border-bottom:1px solid var(--e-line)}
.lead-paragraph{font-size:1.25rem;line-height:1.7;max-width:50ch}
.care-chapter{padding-block:var(--e-space-5);border-top:1px solid var(--e-line);margin-top:var(--e-space-5);scroll-margin-top:88px}
.care-chapter h2{font-size:2.125rem;max-width:24ch}.care-chapter p{font-size:1rem;max-width:59ch}
.related-care{border-top:1px solid var(--e-line)}.related-care>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-space-5)}
.related-care>div:last-child>a{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:var(--e-space-4);font:400 1.75rem/1.2 'DM Serif Display',Georgia,serif}
.related-care img{width:120px;height:120px;border-radius:var(--e-radius)}.related-care span{max-width:20ch}
.visit-composition{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:8%;padding-top:var(--e-space-5)}
.visit-composition figure{position:sticky;top:88px}.visit-composition figure img{width:100%;height:560px;border-radius:var(--e-radius)}
.visit-composition figcaption{font-size:var(--e-small);margin-top:var(--e-space-2)}
.visit-flow{list-style:none;padding:0;margin:0}.visit-flow li{padding:var(--e-space-4) 0 var(--e-space-5);border-top:1px solid var(--e-line)}
.visit-flow li>span{font-size:var(--e-small)}.visit-flow h2{font-size:2.125rem;margin-top:var(--e-space-3);max-width:19ch}
.visit-flow p{font-size:1rem;max-width:46ch}
.visit-prepare{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;border-top:1px solid var(--e-line)}
.visit-prepare h2{font-size:2.25rem}.visit-prepare p{font-size:1rem;max-width:49ch}
.people-intro{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;align-items:center}.people-intro .direction-heading{display:block}
.people-intro h2{font-size:2.625rem;max-width:17ch}.people-intro p{font-size:1rem;max-width:48ch}
.people-portraits{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-space-4);align-items:start}
.people-portraits img{aspect-ratio:3/4;height:auto;width:100%;object-position:center;border-radius:var(--e-radius)}
.people-portraits figcaption{font-size:var(--e-small);margin-top:var(--e-space-2)}
.clinic-essay{display:grid;grid-template-columns:1.15fr 1fr;gap:8%;align-items:center}
.clinic-essay article h2{font-size:2.875rem}.clinic-essay article p{max-width:43ch;font-size:1rem}
.clinic-essay .gallery-slides figure>img{height:480px;border-radius:var(--e-radius)}
.clinic-essay .gallery-slides figcaption{display:block;font-size:var(--e-small)}.clinic-essay .gallery-slides small{display:block;margin-top:8px;font-size:.75rem}
.inner .heading-profile{padding-block:var(--e-space-5) var(--e-space-3)}.contact-profile{padding-top:var(--e-space-5)}
.contact-profile .contact-preview{background:#d8dfd8;border-radius:var(--e-radius);padding:var(--e-space-5)}
.contact-profile .contact-information{padding-top:0}.contact-grid p,.contact-grid dd,.contact-preview label{font-size:1rem}
.contact-grid h2{font-size:2rem}.faq-profile{border-top:1px solid var(--e-line)}.inner .closing{display:none}
.clinic-intro-01{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center;padding-block:var(--e-space-3) var(--e-space-6)}
.clinic-intro-01 h1{font-size:clamp(3rem,5.2vw,4.5rem);max-width:15ch}.clinic-intro-01>div>p{font-size:1rem;max-width:39ch}
.clinic-intro-01 img{height:420px;width:100%;object-position:45% center;border-radius:var(--e-radius)}
.care-directory-01{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-space-6) var(--e-space-5);padding-top:var(--e-space-3)}
.care-directory-01>.care-photo-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;background:#d8dfd8;border-radius:var(--e-radius);overflow:hidden}
.care-directory-01>.care-photo-card:first-child>div{padding:var(--e-space-5) var(--e-space-5) var(--e-space-5) 0}
.care-directory-01>.care-photo-card:first-child h3{font-size:2.625rem}.care-directory-01>.care-photo-card:first-child .care-image{aspect-ratio:3/2;border-radius:0}
.care-directory-01>.care-photo-card p{max-width:40ch}.care-index-help{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;padding-top:var(--e-space-5)}
.care-index-help h2{font-size:2.625rem;max-width:18ch}.care-index-help p{font-size:1rem;max-width:50ch}
@keyframes essence-menu{from{opacity:.65;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){
 .header-01 #site-nav:not([hidden]){grid-template-columns:1fr 150px;gap:var(--e-space-4);padding:var(--e-space-4)}
 .essence-nav-groups{gap:var(--e-space-3)}.header-01 .essence-nav-groups a{font-size:var(--e-small)}
 .header-01 #site-nav figure img{height:160px}.care-photo-card h3{font-size:1.75rem;min-height:2.4em}
}
@media(max-width:800px){
 :root{--e-section:3rem}
 .wrap{width:calc(100% - 40px)}
 .header-01 .header-inner{width:calc(100% - 40px);gap:8px;flex-wrap:nowrap}
 .header-01 .menu-toggle{padding:0;font-size:.75rem;gap:6px}.header-01 .essence-wordmark{font-size:27px}
 .essence-wordmark>span{font-size:7px;letter-spacing:.08em}.header-appointment{font-size:.625rem;white-space:nowrap}
 .header-01 #site-nav:not([hidden]){left:-20px;right:-20px;grid-template-columns:1fr;padding:var(--e-space-4) 20px;gap:0;max-height:calc(100dvh - 56px)}
 .header-01 #site-nav figure{display:none}.essence-nav-groups{grid-template-columns:1fr 1fr;gap:var(--e-space-4)}
 .essence-nav-groups>section:last-child{grid-column:1/-1;display:flex;flex-wrap:wrap;column-gap:var(--e-space-4)}
 .essence-nav-groups>section:last-child h2{flex-basis:100%;margin-bottom:4px}.header-01 .essence-nav-groups a{font-size:.8125rem;min-height:48px}
 .essence-nav-groups h2{font-size:.75rem;margin-bottom:8px}
 .concept-essencia .hero-panorama,.concept-essencia .panorama-inner{min-height:660px}
 .concept-essencia .hero-panorama .hero-copy{max-width:100%;padding-bottom:6rem}
 .concept-essencia .hero-panorama h1{font-size:clamp(2.5rem,10.6vw,3.75rem);max-width:12ch}
 .concept-essencia .hero-panorama>.hero-photo{object-position:54% center}
 .concept-essencia .hero-panorama .shade{background:linear-gradient(0deg,#102b40e8,#102b4050 80%)}
 .concept-essencia .hero-foot{bottom:20px;right:auto;left:0;font-size:.75rem}
 .concept-essencia .hero-copy p{font-size:1rem;max-width:31ch}
 .direction-heading{display:block;margin-bottom:var(--e-space-4)}.direction-heading h2{font-size:2.125rem;max-width:22ch;margin-bottom:var(--e-space-3)}
 .care-photo-grid{grid-template-columns:1fr;gap:var(--e-space-6)}
 .care-photo-card h3{font-size:1.75rem;min-height:0}.care-photo-card>div{padding-top:var(--e-space-4)}
 .care-photo-card p{max-width:40ch}.care-photo-card .care-destination{margin-top:0;padding-top:0}
 .composition-tail{margin-top:var(--e-space-4);padding-top:var(--e-space-4)}
 .story-v2,.faq-preview-v2,.detail-profile,.detail-reading,.visit-composition,.visit-prepare,.people-intro,.clinic-essay,.clinic-intro-01,.care-index-help{grid-template-columns:1fr;gap:var(--e-space-5)}
 .story-v2>img{height:auto;aspect-ratio:3/2}.story-v2 h2,.faq-preview-v2 h2,.people-intro h2{font-size:2.125rem}
 .closing-v2{padding-block:var(--e-space-6)}.closing-v2>.wrap{display:block}.closing-v2 h2{font-size:2.125rem;margin-bottom:var(--e-space-4)}
 .footer-mast{display:block;padding-bottom:var(--e-space-5)}.footer-mast p{margin-top:var(--e-space-4)}.footer-wordmark{font-size:2.875rem}
 .footer-columns{grid-template-columns:1fr 1fr;gap:var(--e-space-5);padding-top:var(--e-space-5)}.footer-disclaimer{grid-column:1/-1}
 .footer-disclaimer p{max-width:none}.footer-columns nav a{font-size:var(--e-small)}.footer-end{font-size:.75rem;gap:var(--e-space-3)}
 .page-breadcrumb{padding-top:var(--e-space-4);gap:8px;font-size:.75rem}
 .direction-page-heading h1,.detail-title h1,.clinic-intro-01 h1{font-size:2.75rem;max-width:18ch}
 .direction-page-heading p{font-size:1rem}.detail-profile{padding-block:var(--e-space-3) var(--e-space-5)}
 .detail-profile>figure img{height:auto;aspect-ratio:3/2}.detail-title>p{font-size:1.5rem}
 .detail-reading{padding-top:var(--e-space-4)}.detail-index{position:static}.detail-index h2{margin-bottom:var(--e-space-2)}
 .detail-index a{padding-block:var(--e-space-2)}.lead-paragraph{font-size:1.125rem}
 .care-chapter h2{font-size:1.875rem}.related-care>div:last-child{grid-template-columns:1fr;gap:var(--e-space-4)}
 .related-care>div:last-child>a{grid-template-columns:90px 1fr;gap:var(--e-space-4);font-size:1.625rem}
 .related-care img{width:90px;height:90px}.visit-composition figure{position:static}.visit-composition figure img{height:auto;aspect-ratio:3/2}
 .visit-flow h2{font-size:1.875rem}.people-portraits{gap:var(--e-space-3)}.people-portraits figcaption{font-size:.75rem}
 .clinic-essay article h2{font-size:2.125rem}.clinic-essay .gallery-slides figure>img{height:auto;aspect-ratio:3/2}
 .inner .heading-profile{padding-top:var(--e-space-4)}.contact-profile .contact-preview{padding:var(--e-space-4)}
 .clinic-intro-01{padding-top:var(--e-space-3);padding-bottom:var(--e-space-4)}.clinic-intro-01 img{height:auto;aspect-ratio:3/2}
 .care-directory-01{grid-template-columns:1fr;gap:var(--e-space-6)}
 .care-directory-01>.care-photo-card:first-child{grid-template-columns:1fr;gap:0}
 .care-directory-01>.care-photo-card:first-child>div{padding:var(--e-space-4)}
 .care-directory-01>.care-photo-card:first-child h3{font-size:1.75rem}.care-index-help{gap:var(--e-space-3)}.care-index-help h2{font-size:2.125rem}
}
@media(max-width:359px){
 .header-01 .header-inner{gap:6px;width:calc(100% - 32px)}.header-01 .menu-toggle i{width:13px}.header-appointment{font-size:.5625rem}
 .header-01 .essence-wordmark{font-size:24px}.header-01 #site-nav:not([hidden]){left:-16px;right:-16px;padding-inline:16px}
 .essence-nav-groups{column-gap:16px}.concept-essencia .hero-panorama h1{font-size:2.5rem}
 .direction-page-heading h1,.detail-title h1,.clinic-intro-01 h1{font-size:2.5rem}
}
.header-01:has(.menu-toggle[hidden]){height:auto;position:static}
.header-01:has(.menu-toggle[hidden]) .header-inner{height:auto;padding-block:12px}
.header-01:has(.menu-toggle[hidden]) #site-nav:not([hidden]){position:static;grid-column:1/-1;box-shadow:none;padding:25px 0;max-height:none;overflow:visible}
.header-01 .menu-toggle[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.header-01 #site-nav:not([hidden]){animation:none}.care-photo-card .care-image:hover img,.care-destination:hover span{transform:none}.detail-index,.visit-composition figure{position:static}.menu-toggle i{transition:none}}
