/* Projeto Gerado pelo Prompt Mestre do Desenvolvedor e Vibe Coder Dante Testa — www.dantetesta.com.br */
.sv-reading-launch{position:fixed;left:20px;bottom:20px;z-index:9990;display:flex;align-items:center;gap:10px;background:#19333f!important;color:#fff!important;border:1px solid #bac3bc!important;border-radius:30px!important;padding:12px 19px!important;font:500 14px/1.4 Raleway,sans-serif!important;box-shadow:0 4px 20px #19333f26;min-height:48px;cursor:pointer}
.sv-reading-launch[hidden]{display:none}.sv-reading-launch span{font:24px/1 Georgia,serif}
#sv-reading-dialog{--panel-bg:#faf9f5;--panel-ink:#19333f;--panel-card:#fff;--panel-line:#c5cbc5;--panel-active:#19333f;--panel-on:#fff;background:var(--panel-bg);color:var(--panel-ink);border:1px solid var(--panel-line);border-radius:22px;padding:26px;width:min(460px,calc(100% - 32px));max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;box-shadow:0 24px 90px #19333f40;font:calc(15px * var(--sv-reading-scale,1))/1.6 Raleway,sans-serif;margin:auto}
#sv-reading-dialog::backdrop{background:#10283180;backdrop-filter:blur(4px)}
.sv-reading-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sv-reading-header>div{min-width:0}
#sv-reading-dialog h2{font:500 2em/1.1 'Cormorant Garamond',Georgia,serif;color:inherit;overflow-wrap:anywhere;margin:7px 0 0}.sv-reading-eyebrow{font-size:.68em;letter-spacing:.12em;font-weight:600}
#sv-reading-dialog button{font:inherit;color:var(--panel-ink);background:var(--panel-card);border:1px solid var(--panel-line);border-radius:12px;min-height:46px;min-width:46px;padding:10px 12px;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
#sv-reading-dialog button:hover{border-color:var(--panel-ink)}#sv-reading-dialog button[aria-pressed=true]{background:var(--panel-active);color:var(--panel-on);border-color:var(--panel-active)}
#sv-reading-dialog button:disabled{opacity:.5;cursor:default}#sv-reading-dialog button:focus-visible,.sv-reading-launch:focus-visible{outline:3px solid #927037!important;outline-offset:3px}
#sv-reading-dialog fieldset{border:0;padding:0;margin:22px 0}#sv-reading-dialog legend{font-size:.88em;font-weight:600;margin-bottom:9px;padding:0;color:inherit}
.sv-reading-intro{font-size:.88em;margin:16px 0}.sv-reading-size{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:10px;align-items:center;text-align:center}.sv-reading-options{display:flex;gap:8px;flex-wrap:wrap}.sv-reading-options button{flex:1}.sv-reading-toggles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sv-reading-toggles button{font-size:.86em!important;text-align:left}.sv-reading-reset{width:100%}.sv-reading-note{font-size:.75em;margin:16px 0 0}
html.sv-reading-enlarged #sv-reading-dialog .sv-reading-toggles{grid-template-columns:1fr}
/* Reflow according to available reading width, not a blanket single-column switch. */
html.sv-reading-enlarged .elementor-element{min-width:0;overflow-wrap:break-word}
:is(html.sv-reading-enlarged,html.sv-reading-spacing) .sv-row:not(.sv-actions):not(.sv-footer-bottom){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(25rem * var(--sv-reading-scale))),1fr));align-items:start}
:is(html.sv-reading-enlarged,html.sv-reading-spacing) .sv-row:not(.sv-actions):not(.sv-footer-bottom)>.e-con{width:100%!important;--width:100%;max-width:100%;min-width:0}
html.sv-reading-enlarged :is(h1,h2,h3,h4,.elementor-heading-title){max-width:100%;hyphens:manual;overflow-wrap:anywhere}
html.sv-reading-enlarged .sv-hero h1{max-width:none}
html.sv-reading-enlarged :is(.sv-hero .sv-intro,.sv-hero .sv-caption){max-width:65ch}
html.sv-reading-enlarged :is(.sv-about-photo,.elementor-location-header){position:relative!important;top:auto!important}
html.sv-reading-enlarged :is(.sv-hero-photo,.sv-about-photo,.sv-treatment-photo){max-width:660px!important;justify-self:center}
html.sv-reading-enlarged .elementor-posts-container{grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(18rem * var(--sv-reading-scale))),1fr))!important}
html.sv-reading-enlarged :is(.sv-header>.e-con-inner,.sv-actions,.sv-footer-bottom){flex-wrap:wrap!important}
html.sv-reading-enlarged .sv-header .sv-nav{min-width:0;max-width:100%}
html.sv-reading-enlarged .sv-header .elementor-nav-menu--main .elementor-nav-menu{flex-wrap:wrap}
:is(html.sv-reading-enlarged,html.sv-reading-spacing) :is(.elementor-button,.elementor-button-content-wrapper,.elementor-button-text){white-space:normal;min-width:0;max-width:100%;overflow-wrap:anywhere}
html.sv-reading-enlarged .elementor-button{height:auto!important}
html.sv-reading-enlarged :is(p,li,label,a){overflow-wrap:anywhere}
html.sv-reading-enlarged .elementor-field-group{min-width:0;max-width:100%}
html.sv-reading-enlarged .elementor-field:not([type=checkbox]){height:auto;min-height:54px;line-height:1.5!important}
html.sv-reading-enlarged .sv-hours{padding:clamp(20px,4vw,40px)}
@media(max-width:767px){html.sv-reading-enlarged .sv-about .sv-row{display:flex;flex-direction:column-reverse}html.sv-reading-enlarged .sv-header>.e-con-inner{flex-wrap:nowrap!important}html.sv-reading-enlarged .sv-header .sv-logo{flex-shrink:1}}
html.sv-reading-spacing :is(p,li,h1,h2,h3,h4,h5,h6,label,a,button,input,textarea,.elementor-tab-content){line-height:1.5!important;letter-spacing:.12em!important;word-spacing:.16em!important}html.sv-reading-spacing p{margin-bottom:2em!important}
html.sv-reading-links a{text-decoration:underline!important;text-underline-offset:.2em!important;text-decoration-thickness:2px!important}
html.sv-reading-motion{scroll-behavior:auto!important}html.sv-reading-motion *,html.sv-reading-motion *::before,html.sv-reading-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.sv-reading-gray :is(main,header,footer,.elementor-location-header,.elementor-location-footer) img{filter:grayscale(1)!important}
html[data-sv-contrast=light]{--sv-hc-bg:#fff;--sv-hc-fg:#111;--sv-hc-link:#003b80}
html[data-sv-contrast=dark]{--sv-hc-bg:#111b22;--sv-hc-fg:#fff;--sv-hc-link:#ffdc9b}
html[data-sv-contrast]:not([data-sv-contrast=original]) :is(body,.elementor,.elementor-element,.elementor-widget-container,.elementor-post,.elementor-tab-title,.elementor-tab-content,header,footer,main,nav){background-color:var(--sv-hc-bg)!important;background-image:none!important;color:var(--sv-hc-fg)!important;border-color:var(--sv-hc-fg)!important}
html[data-sv-contrast]:not([data-sv-contrast=original]) :is(h1,h2,h3,h4,h5,h6,p,span,label,li,figcaption,output,strong,em,.elementor-heading-title){color:var(--sv-hc-fg)!important}
html[data-sv-contrast]:not([data-sv-contrast=original]) :is(a,button,input,textarea,select){color:var(--sv-hc-link)!important;background-color:var(--sv-hc-bg)!important;border-color:var(--sv-hc-fg)!important}
html[data-sv-contrast]:not([data-sv-contrast=original]) :focus-visible{outline:3px solid var(--sv-hc-link)!important;outline-offset:4px!important}
html[data-sv-contrast=dark] #sv-reading-dialog{--panel-bg:#111b22;--panel-ink:#fff;--panel-card:#111b22;--panel-line:#fff;--panel-active:#fff;--panel-on:#111b22}
html[data-sv-contrast=light] #sv-reading-dialog{--panel-bg:#fff;--panel-ink:#111;--panel-card:#fff;--panel-line:#111;--panel-active:#111;--panel-on:#fff}
html[data-sv-contrast]:not([data-sv-contrast=original]) #sv-reading-dialog button[aria-pressed=true]{background:var(--panel-active)!important;color:var(--panel-on)!important}
html[data-sv-contrast=dark] .sv-logo img{filter:brightness(0) invert(1)!important}html[data-sv-contrast=light] .sv-logo img{filter:brightness(0)!important}
body{padding-bottom:80px}:is(a,button,input,textarea,select,[tabindex]):focus-visible{scroll-margin-bottom:100px}
@media(max-width:480px){.sv-reading-launch{left:12px;bottom:12px}#sv-reading-dialog{padding:20px}.sv-reading-toggles{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Contrast changes are immediate; interpolated backgrounds can momentarily hide text. */
html[data-sv-contrast]:not([data-sv-contrast=original]) *{transition:none!important}

@media(max-width:767px){html.sv-reading-enlarged :is(h1,h2,h3,h4,.elementor-heading-title){hyphens:auto}}
