
:root{--paper:#faf8f1;--paper-dark:#f0ede1;--text:#263c32;--primary:#285d47;--deep:#183b30;--deep-foreground:#f7f6ea;--green:#42ae75;--green-light:#9edfc4;--muted:#6b746f;--border:#d8ddd4;--red:#b83031}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--text);font:400 16px/1.65 Montserrat,sans-serif}h1,h2,h3,h4{font-family:'Playfair Display',Georgia,serif;font-weight:800;line-height:1.09;letter-spacing:-.01em;margin:0}h1{text-transform:uppercase}h2{text-transform:uppercase;font-size:clamp(2rem,3.9vw,3.1rem);color:var(--primary)}h3{font-size:1.28rem;color:var(--primary)}p{margin:0}a{text-decoration:none;color:inherit}button{font:inherit}img{max-width:100%}.wrap{width:min(100% - 40px,1152px);margin-inline:auto}.section-pad{padding-block:clamp(75px,8vw,118px)}.section-alt{background:var(--paper-dark)}.heading-wide{max-width:725px}.green{color:var(--green)}.tri{background:linear-gradient(90deg,#3ca977 0 33.3%,#fff 33.3% 66.6%,#c63d39 66.6%);box-shadow:0 0 0 1px rgba(24,59,48,.15);height:6px}.top-tri{height:6px}.mini{width:48px;height:4px;flex:none}.eyebrow{display:flex;align-items:center;gap:13px;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-bottom:18px}.muted{color:var(--muted)}.lede{font-size:18px;color:var(--muted);margin-top:24px;line-height:1.75}.section-cta{margin-top:35px}.cta{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:14px 24px;font-size:13px;font-weight:700;letter-spacing:.035em;border-radius:99px;text-transform:uppercase;transition:background .2s,transform .2s;white-space:normal;text-align:center}.cta:hover{transform:translateY(-2px)}.cta-primary{background:var(--primary);color:#fff}.cta-primary:hover{background:var(--deep)}.cta-light{background:var(--green);color:var(--deep)}.cta-light:hover{background:var(--green-light)}.cta-outline{border:1px solid rgba(255,255,255,.45);color:#fff}.cta-outline:hover{background:rgba(255,255,255,.12)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;z-index:100;background:white;padding:12px}.site-header{position:sticky;top:0;z-index:50;background:rgba(250,248,241,.96);backdrop-filter:blur(13px);border-bottom:1px solid var(--border)}.header-inner{height:91px;display:flex;align-items:center;justify-content:space-between;gap:16px}.logo-link{display:flex;align-items:center;flex:none}.logo-link img{height:69px;width:auto;object-fit:contain;mix-blend-mode:multiply}.desktop-nav{display:flex;gap:22px;align-items:center}.desktop-nav a{color:var(--muted);font-size:13px;transition:color .2s}.desktop-nav a:hover{color:var(--primary)}.menu-toggle,.mobile-nav{display:none}.hero{position:relative;background-color:#172f29;isolation:isolate;min-height:535px}.hero::before{content:"";position:absolute;inset:0;background-image:url('https://thumb.wikimedia.org/wikipedia/commons/thumb/7/78/Cypress_tree_alley_at_sunset_in_Asciano%2C_Tuscany.jpg/1280px-Cypress_tree_alley_at_sunset_in_Asciano%2C_Tuscany.jpg');background-size:cover;background-position:center 46%;z-index:-2}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,54,41,.97) 0%,rgba(16,54,41,.88) 48%,rgba(16,54,41,.33) 100%);z-index:-1}.hero-inner{padding-top:130px;padding-bottom:130px}.hero-text{max-width:650px;color:#fff}.eyebrow-light{color:rgba(255,255,255,.82);font-size:12px;font-weight:700;letter-spacing:.25em;margin-bottom:20px}.hero h1{font-size:clamp(2.15rem,5vw,4rem);color:var(--deep-foreground)}.hero h1 span{color:var(--green-light)}.hero-tri{margin-top:31px;width:160px}.hero-text>p:not(.eyebrow-light){font-size:clamp(15px,1.45vw,18px);max-width:560px;color:rgba(255,255,255,.89);margin-top:24px}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:35px}.about{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:50px}.about blockquote{margin:0;padding:40px;background:var(--deep);color:var(--deep-foreground);font:800 clamp(25px,3vw,36px)/1.2 'Playfair Display',Georgia,serif;text-transform:uppercase;border-radius:13px}.about blockquote span{color:var(--green-light)}.quote-tri{width:95px;margin-top:24px;height:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:55px}.service-card{background:#fffefa;border:1px solid var(--border);border-radius:12px;padding:27px;transition:box-shadow .25s}.service-card:hover{box-shadow:0 14px 30px rgba(16,54,41,.10)}.service-number{font:800 30px 'Playfair Display',Georgia,serif;color:var(--green)}.service-card h3{margin-top:14px}.service-card p{color:var(--muted);margin-top:14px}.tag{display:inline-block;margin-top:18px;font-size:11px;font-weight:700;padding:4px 11px;background:#e3efd9;border-radius:99px;color:var(--deep)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;list-style:none;margin:55px 0 0;padding:0}.steps li{border-top:2px solid var(--primary);padding-top:22px}.steps small{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--green)}.steps h3{font-size:23px;margin-top:14px}.steps p{color:var(--muted);margin-top:12px}.placeholder{border:2px dashed var(--border);border-radius:12px;padding:24px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:14px;background:transparent}.note{margin-top:33px;text-align:left;display:block;border-radius:9px;padding:15px}.strengths{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:47px}.strengths article{background:var(--deep);color:var(--deep-foreground);padding:27px;border-radius:12px}.strengths h3{color:var(--green-light);font-size:20px}.strengths p{margin-top:12px;color:rgba(255,255,255,.8)}.carla-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:48px}.portrait{min-height:450px;align-self:start;aspect-ratio:4/5}.real-portrait{margin:0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 20px 50px rgba(24,59,48,.12);border:1px solid rgba(24,59,48,.07)}.real-portrait img{display:block;width:100%;height:100%;object-fit:cover}.carla-role{margin-top:14px;font-size:17px;color:var(--primary);font-weight:600}.carla-bio{margin-top:24px;display:grid;gap:16px}.carla-bio p{color:var(--muted)}.carla-bio em{font-style:italic}.carla-credentials{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}.carla-credentials article{background:#fffefa;border:1px solid var(--border);border-radius:12px;padding:18px 18px 16px}.carla-credentials strong{display:block;font:800 1.35rem/1.1 'Playfair Display',Georgia,serif;color:var(--primary)}.carla-credentials span{display:block;margin-top:8px;font-size:13px;line-height:1.5;color:var(--muted)}.carla-note{margin-top:30px;background:var(--deep);color:var(--deep-foreground);border-radius:14px;padding:28px}.carla-note h3{font-size:24px;color:var(--green-light)}.carla-note p{margin-top:12px;color:rgba(255,255,255,.84)}.section-subtitle{margin-top:55px;font-size:25px}.result-details{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin-top:18px}.result-details article{padding:25px;background:white;border:1px solid var(--border);border-radius:12px}.result-details small,.content-grid small{color:var(--green);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.result-details small.red{color:var(--red)}.result-details p{font-size:14px;color:var(--muted);margin-top:10px}.result-main{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:24px}.result-case{background:var(--deep);border-radius:12px;padding:31px;color:#f8f6ef;overflow:hidden}.result-case .upper{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.75);font-weight:700}.result-case h3{font-size:31px;color:var(--green-light);margin-top:15px}.result-case>p:not(.upper){margin-top:15px;color:rgba(255,255,255,.81)}.result-case img{display:block;margin:25px auto 0;width:min(100%,330px);border-radius:5px}.result-main>.placeholder{min-height:245px}.note-small{font-size:12px;margin-top:14px}.placeholder-grid{display:grid;gap:24px;margin-top:17px}.placeholder-grid.three{grid-template-columns:repeat(3,1fr)}.placeholder-grid.two{grid-template-columns:repeat(2,1fr)}.placeholder-grid .placeholder{min-height:160px}.content-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:56px}.content-grid article{border:1px solid var(--border);background:#fffefa;border-radius:12px;padding:24px;display:flex;flex-direction:column}.content-grid h3{margin-top:12px}.content-grid p{margin-top:12px;color:var(--muted);font-size:14px;flex:1}.coming{font-size:12px;color:var(--muted);margin-top:25px}.content-grid+.note-small{margin-top:30px}.faq-section{display:grid;grid-template-columns:1fr 1.4fr;gap:48px}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:18px;align-items:center;font:700 18px/1.4 'Playfair Display',Georgia,serif;color:var(--primary);padding:22px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list .plus{font:400 27px Montserrat,sans-serif;color:var(--primary)}.faq-list details[open] .plus{transform:rotate(45deg)}.faq-list p{padding-bottom:20px;color:var(--muted)}.contact{background:var(--deep);color:var(--deep-foreground)}.contact-inner{text-align:center;max-width:880px}.contact h2{color:var(--deep-foreground)}.contact h2 span{color:var(--green-light)}.contact-tri{width:132px;margin:25px auto 0}.contact-inner>p{margin:23px auto 0;max-width:550px;color:rgba(255,255,255,.84)}.contact-links{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:38px;flex-wrap:wrap;font-size:14px;color:rgba(255,255,255,.84)}.contact-links a:hover{text-decoration:underline}.site-footer{border-top:1px solid var(--border)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 0;font-size:13px;color:var(--muted)}.footer-inner img{width:140px;mix-blend-mode:multiply}.photo-credit{font-size:10px;color:var(--muted);text-align:center;padding:5px 20px 18px}.photo-credit a{text-decoration:underline}.wa-float{position:fixed;bottom:23px;right:23px;z-index:55;width:58px;height:58px;background:var(--green);color:var(--deep);border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 28px rgba(0,0,0,.23);transition:transform .2s}.wa-float:hover{transform:scale(1.09)}
@media(max-width:1050px){.desktop-nav{gap:13px}.desktop-nav a{font-size:12px}.content-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex;width:43px;height:43px;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:0;background:none;color:var(--primary);cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:currentColor}.mobile-nav.expanded{display:block;padding:0 24px 15px;border-top:1px solid var(--border)}.mobile-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--border)}.mobile-nav a:last-child{border-bottom:0}.service-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr);gap:30px}.carla-grid{gap:32px}.faq-section{grid-template-columns:1fr;gap:30px}}@media(max-width:650px){.wrap{width:min(100% - 34px,1152px)}.section-pad{padding-block:74px}.header-inner{height:73px}.logo-link img{height:56px}.hero-inner{padding-top:95px;padding-bottom:99px}.hero{min-height:500px}.hero::after{background:linear-gradient(90deg,rgba(16,54,41,.94),rgba(16,54,41,.64))}.hero h1{font-size:clamp(29px,7.9vw,44px)}.hero-text>p:not(.eyebrow-light){font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start}.cta{max-width:100%;font-size:12px}.about{grid-template-columns:1fr;gap:36px}.about blockquote{padding:31px;font-size:27px}.service-grid{grid-template-columns:1fr;gap:17px}.service-card{padding:23px}.steps{grid-template-columns:1fr;gap:30px}.strengths{grid-template-columns:1fr;gap:15px}.carla-grid{grid-template-columns:1fr}.portrait{min-height:360px;width:min(100%,375px);margin:auto}.carla-credentials{grid-template-columns:1fr}.carla-note{padding:24px}.carla-note h3{font-size:21px}.result-details{grid-template-columns:1fr}.result-main{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr;gap:16px}.placeholder-grid.three,.placeholder-grid.two{grid-template-columns:1fr}.placeholder-grid .placeholder{min-height:120px}.contact-links{flex-direction:column;gap:10px}.footer-inner{flex-direction:column;text-align:center}.faq-list summary{font-size:17px}.wa-float{width:53px;height:53px;bottom:15px;right:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Avaliações do Google — resumo verificado, sem depoimentos não conferidos */
.google-reviews-header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:62px}.google-reviews-header .eyebrow{margin-bottom:0}.google-reviews-title{margin-top:10px!important}.google-reviews-header .muted{max-width:590px}.google-reviews-rating{border:1px solid var(--border);background:var(--card);border-radius:16px;padding:20px 26px;display:flex;align-items:center;gap:16px;white-space:nowrap;box-shadow:0 8px 20px rgba(18,55,42,.055)}.g-rating-number{font:800 49px/1 'Playfair Display',Georgia,serif;color:var(--primary)}.g-rating-stars{display:block;color:#b99339;letter-spacing:2px;font-size:22px}.g-rating-source{display:block;font-size:11px;letter-spacing:.03em;color:var(--muted);margin-top:5px}.google-reviews-body{display:grid;grid-template-columns:1.25fr .8fr;gap:22px;margin:26px 0 20px}.review-honesty{background:var(--secondary);border-radius:14px;padding:36px 34px;display:flex;flex-direction:column;justify-content:center}.review-honesty h4,.review-action h4{font:700 25px/1.24 'Playfair Display',Georgia,serif;color:var(--primary);margin:0 0 13px}.review-honesty p{max-width:580px}.review-honesty .note-small{margin-top:17px}.review-action{padding:33px;background:var(--deep);border-radius:14px;color:var(--deep-foreground);display:flex;flex-direction:column;align-items:start}.review-action h4{color:var(--deep-foreground);margin-top:15px}.review-action p{color:rgba(255,255,255,.83);margin-bottom:25px;flex:1}.review-action .cta{background:var(--green-light);color:var(--deep);max-width:100%;text-align:center}.review-action .cta:hover{filter:brightness(1.1)}.g-logo{font:bold 26px/1 system-ui;background:#fff;border-radius:50%;color:#4285F4;width:48px;height:48px;display:grid;place-items:center}.review-action .cta span{padding-left:8px}@media(max-width:760px){.google-reviews-header{align-items:flex-start;flex-direction:column}.google-reviews-body{grid-template-columns:1fr}.google-reviews-rating{width:100%}.review-honesty,.review-action{padding:27px}}

/* Trechos reais selecionados nas avaliações públicas */
.review-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:27px}.review-quote{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:29px 27px;display:flex;flex-direction:column;min-height:248px;box-shadow:0 7px 20px rgba(18,55,42,.05)}.review-quote-stars{color:#a7872e;font-size:18px;letter-spacing:3px;line-height:1.2}.review-quote h4{font-family:'Playfair Display',Georgia,serif;color:var(--primary);font-size:19px;line-height:1.25;margin:18px 0 13px}.review-quote blockquote{font-size:16px;line-height:1.55;font-weight:500;margin:0 0 18px;color:var(--foreground);flex:1}.review-quote>p{color:var(--muted);font-size:11px;line-height:1.5}.google-reviews-foot{margin-top:23px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-radius:14px;padding:27px;background:var(--secondary)}.google-reviews-foot p{max-width:570px;font-size:12px;color:var(--muted)}.google-reviews-foot .cta{white-space:nowrap;flex-shrink:0}.google-reviews-foot .cta span{margin-left:9px}@media(max-width:900px){.review-quote-grid{grid-template-columns:1fr 1fr}.google-reviews-foot{flex-direction:column;align-items:start}}@media(max-width:640px){.review-quote-grid{grid-template-columns:1fr}.review-quote{min-height:auto}.google-reviews-foot .cta{white-space:normal}}


/* Revisão editorial — Resultados, avaliações, orientações e rodapé | 17/10/2026 */
#avaliacoes,#orientacoes,#resultados {scroll-margin-top:108px}
.guidance-intro{max-width:800px;margin-top:18px}
.result-feature{display:block;margin-top:32px}
.result-feature .result-case{display:grid;grid-template-columns:minmax(245px,.73fr) minmax(0,1.27fr);align-items:stretch;gap:0;padding:0;border:1px solid var(--border);background:#fdfcf8;color:var(--text);box-shadow:0 22px 52px rgba(20,55,42,.10);border-radius:18px;overflow:hidden}
.result-feature .result-case-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(28px,4.4vw,56px);background:var(--deep);color:var(--deep-foreground)}
.result-feature .result-eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.16em;font-size:10px;text-transform:uppercase;font-weight:700;color:var(--green-light);margin-bottom:clamp(36px,6vw,82px)}
.result-feature .result-eyebrow .mini{height:3px}
.result-feature .result-case .upper{color:#f4f3e8;font-size:12px;letter-spacing:.19em}
.result-feature .result-case h3{font-size:clamp(31px,3.5vw,48px);line-height:1.15;color:var(--green-light);margin-top:17px}
.result-feature .result-case-copy>p:not(.upper){color:rgba(255,255,255,.80);line-height:1.8;font-size:15px;margin-top:28px}
.result-feature .result-case-copy .case-decoration{display:block;width:87px;height:3px;margin-top:auto;background:linear-gradient(90deg,#44ab78 0 33%,#fff 33% 66%,#c83d3b 66%);transform:translateY(24px)}
.result-feature .result-case-copy .case-image-hint{font-size:12px!important;color:rgba(255,255,255,.63)!important;margin-top:37px!important}
.result-feature .case-document{display:flex;align-items:center;justify-content:center;margin:0;padding:25px 25px 26px;background:#eae9e1;min-width:0}
.result-feature .result-case .case-document img{display:block;max-width:100%;height:auto;max-height:none;width:100%;margin:0;border:1px solid #dadbd3;border-radius:7px;box-shadow:0 13px 30px rgba(17,42,30,.13);object-fit:contain}
.google-reviews-foot{justify-content:flex-start}
.google-reviews-foot .cta{min-width:min(100%,290px)}
/* Rodapé institucional, sem imagem da logo comprimida */
.site-footer{background:#112b23;color:#f3f1e8;border-top:1px solid rgba(255,255,255,.08)}
.footer-top{display:grid;grid-template-columns:1.17fr .75fr 1fr;gap:clamp(30px,5vw,85px);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(53px,7vw,78px)}
.footer-brand .footer-mark{display:block;font-family:'Playfair Display',Georgia,serif;font-size:clamp(68px,7vw,100px);font-weight:800;line-height:1;letter-spacing:-.05em;color:#f9f5e8}
.footer-mark-accent{color:#6cc49a}
.footer-name{font-family:'Playfair Display',Georgia,serif;font-size:21px;font-weight:700;color:#fff;margin-top:17px}
.footer-tagline{font-size:14px;line-height:1.6;color:rgba(255,255,255,.68);margin-top:12px;max-width:280px}
.footer-tricolor{width:95px;height:4px;display:block;margin-top:30px}
.footer-top h3{font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;letter-spacing:.18em;color:#a9d4ba;text-transform:uppercase;margin:13px 0 25px}
.footer-nav-col nav{display:grid;gap:12px}
.footer-nav-col a,.footer-instagram{font-size:13px;color:rgba(255,255,255,.76);transition:color .2s}
.footer-nav-col a:hover,.footer-instagram:hover,.footer-back-top:hover{color:#fff}
.footer-contact-col p{color:rgba(255,255,255,.76);font-size:14px;max-width:270px;line-height:1.7;margin-bottom:27px}
.footer-contact-button{display:inline-flex;align-items:center;gap:14px;justify-content:space-between;border-radius:30px;background:#81cca7;color:#0e3325;padding:13px 20px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;transition:background .2s}
.footer-contact-button:hover{background:#ace8c6}
.footer-contact-button span{font-size:20px;line-height:1}
.footer-instagram{display:block;margin-top:23px}
.footer-bottom{padding-top:24px;padding-bottom:24px;border-top:1px solid rgba(255,255,255,.15);display:flex;align-items:center;gap:18px;justify-content:space-between;color:rgba(255,255,255,.56);font-size:11px;line-height:1.65}
.footer-credit{max-width:390px}
.footer-credit summary{cursor:pointer;list-style:revert;color:rgba(255,255,255,.5)}
.footer-credit[open] summary{margin-bottom:8px}
.footer-credit a{text-decoration:underline}
.footer-back-top{white-space:nowrap;color:#b6d3c1}
.footer-bottom-tri{height:4px}
@media(max-width:1030px){.desktop-nav{gap:13px}.desktop-nav a{font-size:11px}.logo-link img{height:62px}.footer-top{gap:25px}}
@media(max-width:850px){.footer-top{grid-template-columns:1.2fr 1fr;row-gap:40px}.footer-contact-col{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;justify-content:space-between}.result-feature .result-case{grid-template-columns:1fr}.result-feature .result-case-copy{padding:33px}.result-feature .result-eyebrow{margin-bottom:28px}.result-feature .result-case-copy .case-decoration{margin-top:20px;transform:none}.result-feature .result-case-copy .case-image-hint{margin-top:17px!important}.result-feature .case-document{padding:25px 12%;}}
@media(max-width:650px){.footer-top{grid-template-columns:1fr;gap:34px;padding-top:56px;padding-bottom:48px}.footer-brand .footer-mark{font-size:76px}.footer-top h3{margin:0 0 15px}.footer-nav-col nav{grid-template-columns:1fr 1fr;column-gap:13px}.footer-contact-col{grid-column:auto}.footer-bottom{flex-direction:column;gap:12px;align-items:flex-start}.result-feature .case-document{padding:15px}.result-feature .result-case h3{font-size:31px}}


/* Logo oficial VSI — arquivo PNG sem modificações; somente a área transparente da imagem é ocultada pela moldura CSS. */
.brand-logo-header {
  display:block;
  flex:0 0 auto;
  width:clamp(205px,21.5vw,256px);
  max-width:100%;
  text-decoration:none;
}
.brand-logo-canvas {
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:1734 / 876;
  overflow:hidden;
  isolation:isolate;
}
.brand-logo-canvas img {
  position:absolute;
  display:block;
  width:104%;
  max-width:none;
  height:auto;
  left:-2%;
  top:-22.8%;
  object-fit:initial;
  mix-blend-mode:normal;
  filter:none;
  border:0;
}
.site-header .header-inner { height:auto; min-height:112px; padding-top:11px; padding-bottom:11px; gap:18px; }
.site-header .logo-link img { width:104%; max-width:none; height:auto; }
.site-header .desktop-nav {flex-wrap:wrap; gap:9px 17px; justify-content:flex-end; }
.site-header .desktop-nav a {white-space:nowrap;}
.footer-logo-card {
  display:block;
  width:min(100%,330px);
  border-radius:14px;
  padding:14px 20px;
  background:#fffefb;
  border:1px solid rgba(244,241,224,.6);
  box-shadow:0 16px 40px rgba(0,0,0,.18);
  transition:box-shadow .2s ease,transform .2s ease;
}
.footer-logo-card:hover {transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,0,0,.25)}
.footer-logo-card img{max-width:none;}
.footer-tagline{margin-top:17px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.90);font-weight:500;max-width:330px}
.footer-top .footer-tricolor{margin-top:20px}
@media (max-width:1050px){.brand-logo-header{width:222px}.site-header .header-inner{min-height:108px}.site-header .desktop-nav{gap:9px 11px}}
@media (max-width:900px){.brand-logo-header{width:210px}.site-header .header-inner{min-height:108px}}
@media (max-width:650px){.brand-logo-header{width:187px}.site-header .header-inner{min-height:100px;padding-top:7px;padding-bottom:7px}.footer-logo-card{width:min(100%,310px);padding:11px 14px}}
@media (prefers-reduced-motion:reduce){.footer-logo-card{transition:none}}

/* ============================================================
   REVISÃO TIPOGRÁFICA INSTITUCIONAL | VSI — 17 outubro 2026
   Respeita a identidade visual e o conteúdo existente da marca.
   Alinhamento justificado só em texto corrido largo; nunca em
   cards, títulos, depoimentos, FAQ ou colunas estreitas.
   ============================================================ */
:root {
  --card: #fffefa;
  --secondary: #f0ede1;
  --foreground: #263c32;
  --muted: #526158;
  --body-text: #35463e;
}
html { scroll-padding-top: 124px; }
body {
  color: var(--body-text);
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { background: #a8d9bd; color: #173c2f; }
:where(p, li, blockquote) { overflow-wrap: break-word; }
p { line-height: inherit; }
h1, h2, h3, h4 {
  font-family: 'Playfair Display', Georgia, serif;
  font-weight: 700;
  letter-spacing: -0.018em;
  text-wrap: balance;
  overflow-wrap: normal;
}
h1 { line-height: 1.12; }
h2 {
  font-size: clamp(2.05rem, 3.2vw, 3rem);
  line-height: 1.18;
  font-weight: 700;
  letter-spacing: -0.022em;
  text-transform: none;
}
h3 { font-size: clamp(1.25rem, 1.55vw, 1.42rem); line-height: 1.3; }
h4 { line-height: 1.34; }
.heading-wide { max-width: 790px; }
.wrap { width: min(100% - 48px, 1152px); }
.section-pad { padding-block: clamp(78px, 7vw, 108px); }
.eyebrow {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 11.5px;
  letter-spacing: .18em;
  font-weight: 700;
  line-height: 1.65;
  margin-bottom: 22px;
}
.lede {
  font-size: clamp(1.02rem, 1.35vw, 1.125rem);
  line-height: 1.85;
  max-width: 65ch;
  margin-top: 27px;
  color: var(--muted);
}
.muted { color: var(--muted); }
.cta, .footer-contact-button {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 12.9px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.35;
  min-height: 48px;
}
.desktop-nav { gap: clamp(12px, 1.2vw, 19px); }
.desktop-nav a {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
  letter-spacing: -.012em;
}
.mobile-nav a { font-size: 15px; font-weight: 600; line-height: 1.5; }
.hero-inner { padding-top: clamp(110px, 8.7vw, 140px); padding-bottom: clamp(112px, 8.7vw, 140px); }
.hero-text { max-width: 685px; }
.hero h1 {
  font-size: clamp(2.35rem, 4.5vw, 4.05rem);
  font-weight: 700;
  line-height: 1.13;
  letter-spacing: -.019em;
  text-transform: uppercase;
  max-width: 17ch;
}
.hero-text>p:not(.eyebrow-light) {
  max-width: 56ch;
  font-size: clamp(1rem, 1.35vw, 1.12rem);
  line-height: 1.8;
  margin-top: 27px;
}
.eyebrow-light { font-size: 11.5px; letter-spacing: .2em; }
.hero-actions { margin-top: 36px; }
.about { column-gap: clamp(38px, 5vw, 70px); }
.about h2 { max-width: 16ch; }
.about .lede { max-width: 60ch; }
.about blockquote {
  font-family: 'Playfair Display', Georgia, serif;
  font-weight: 700;
  font-size: clamp(1.65rem, 2.45vw, 2.15rem);
  line-height: 1.36;
  letter-spacing: -.018em;
  text-transform: none;
  padding: clamp(30px, 3.7vw, 49px);
}
/* Prosa longa em largura suficiente: acabamento editorial sem rios de espaços. */
@media (min-width: 850px) {
  .about .lede,
  .carla-bio p {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
}
.service-grid { gap: 21px; margin-top: 45px; align-items: stretch; }
.service-card {
  padding: clamp(25px, 2.2vw, 32px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.service-number { font-size: 30px; line-height: 1; font-weight: 700; }
.service-card h3 { margin-top: 19px; line-height: 1.31; }
.service-card p {
  font-size: 15px;
  line-height: 1.78;
  margin-top: 14px;
  color: var(--muted);
  text-align: left;
}
.service-card .tag { margin-top: auto; position: relative; top: 16px; margin-bottom: 16px; font-size: 11.5px; line-height: 1.5; }
.steps { margin-top: 47px; gap: 30px; }
.steps li { padding-top: 23px; }
.steps small { font-size: 11.5px; letter-spacing: .13em; }
.steps h3 { font-size: clamp(1.35rem, 1.8vw, 1.54rem); line-height: 1.32; margin-top: 13px; }
.steps p { font-size: 15px; line-height: 1.77; margin-top: 12px; }
.strengths { margin-top: 45px; gap: 22px; }
.strengths article { padding: 29px; }
.strengths h3 { font-size: 21px; line-height: 1.3; }
.strengths p { font-size: 15px; line-height: 1.74; }
.carla-grid { gap: clamp(38px, 4.6vw, 66px); grid-template-columns: minmax(0, .95fr) minmax(0, 1.27fr); }
.carla-grid h2 { font-size: clamp(2rem, 3.15vw, 2.95rem); max-width: 17ch; }
.carla-role { font-size: 15.5px; line-height: 1.65; letter-spacing: .005em; }
.carla-bio { margin-top: 27px; gap: 18px; }
.carla-bio p {
  font-size: 15.3px;
  line-height: 1.88;
  color: #48584f;
}
.carla-credentials { gap: 17px; margin-top: 30px; }
.carla-credentials article { padding: 21px 20px; }
.carla-credentials strong { font-weight: 700; font-size: 1.32rem; line-height: 1.25; }
.carla-credentials span { font-size: 12.8px; line-height: 1.65; }
.carla-note { padding: 30px; margin-top: 30px; }
.carla-note h3 { font-size: 24px; }
.carla-note p { font-size: 15.1px; line-height: 1.8; }
.section-subtitle { margin-top: 52px; font-size: clamp(1.53rem, 2vw, 1.78rem); line-height: 1.32; }
.result-details article { padding: 26px; }
.result-details p { font-size: 14.8px; line-height: 1.75; }
.result-feature .result-case h3 {
  font-size: clamp(2.05rem, 3.05vw, 2.8rem);
  font-weight: 700;
  line-height: 1.19;
  text-wrap: balance;
}
.result-feature .result-case-copy>p:not(.upper) { font-size: 15.3px; line-height: 1.8; }
.google-reviews-header .muted { font-size: 15.2px; line-height: 1.7; }
.google-reviews-rating .g-rating-number { font-weight: 700; }
.review-quote { padding: 30px; }
.review-quote h4 { font-weight: 700; font-size: 20px; line-height: 1.35; }
.review-quote blockquote { font-size: 15.7px; line-height: 1.78; font-weight: 500; text-align: left; }
.review-quote>p { font-size: 12px; line-height: 1.6; }
.content-grid { gap: 21px; margin-top: 44px; }
.content-grid article { padding: 27px 24px; }
.content-grid small { font-size: 11.5px; line-height: 1.55; letter-spacing: .11em; }
.content-grid h3 { font-size: clamp(1.2rem, 1.45vw, 1.36rem); line-height: 1.36; margin-top: 17px; }
.content-grid p { font-size: 14.9px; line-height: 1.77; margin-top: 14px; }
.coming { font-size: 12.2px; letter-spacing: .01em; }
.guidance-intro { max-width: 63ch; }
.faq-section { gap: clamp(42px, 5vw, 76px); }
.faq-list summary {
  font-size: 19px;
  font-weight: 700;
  line-height: 1.48;
  padding-block: 24px;
  text-wrap: pretty;
}
.faq-list p { font-size: 15.5px; line-height: 1.82; padding-bottom: 22px; max-width: 64ch; }
.contact h2 { font-size: clamp(2.15rem, 3.5vw, 3.15rem); max-width: 22ch; margin-inline: auto; }
.contact-inner>p { font-size: 16px; line-height: 1.82; }
.contact-links { font-size: 14px; line-height: 1.7; }
.footer-tagline { font-size: 15px; line-height: 1.7; }
.footer-top h3 { font-size: 12px; letter-spacing: .13em; }
.footer-nav-col a,.footer-instagram { font-size: 13.5px; line-height: 1.7; }
.footer-contact-col p { font-size: 14px; line-height: 1.8; }
.footer-bottom { font-size: 12px; line-height: 1.7; }

@media (max-width: 1050px) {
  .desktop-nav { gap: 10px 13px; }
  .desktop-nav a { font-size: 12px; }
  .carla-grid { gap: 35px; }
  .service-grid { gap: 16px; }
}
@media (max-width: 900px) {
  .carla-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); }
  .service-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .content-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .steps { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 700px) {
  html { scroll-padding-top: 108px; }
  body { font-size: 15.7px; line-height: 1.76; }
  .wrap { width: min(100% - 34px, 1152px); }
  .section-pad { padding-block: 68px; }
  h2 { font-size: clamp(1.88rem, 7.2vw, 2.5rem); line-height: 1.22; }
  h3 { font-size: 1.27rem; line-height: 1.34; }
  .eyebrow { font-size: 10.8px; letter-spacing: .14em; margin-bottom: 18px; }
  .lede { font-size: 15.7px; line-height: 1.81; margin-top: 22px; }
  .hero-inner { padding-top: 86px; padding-bottom: 91px; }
  .hero h1 { font-size: clamp(2.05rem, 7.8vw, 2.85rem); line-height: 1.17; max-width: 16ch; }
  .hero-text>p:not(.eyebrow-light) { font-size: 15.7px; line-height: 1.8; }
  .hero-actions { gap: 13px; margin-top: 28px; }
  .cta { font-size: 12.4px; min-height: 46px; padding: 12px 22px; }
  .about { grid-template-columns: 1fr; gap: 30px; }
  .about h2 { max-width: 22ch; }
  .about blockquote { font-size: 1.6rem; line-height: 1.39; padding: 28px; }
  .service-grid, .steps, .strengths, .content-grid { grid-template-columns: 1fr; }
  .service-grid { margin-top: 37px; gap: 17px; }
  .service-card { padding: 26px; }
  .service-card p { font-size: 15px; }
  .service-card h3 { font-size: 1.31rem; }
  .steps { gap: 26px; margin-top: 37px; }
  .steps p, .strengths p { font-size: 15.3px; }
  .strengths { gap: 15px; }
  .carla-grid { grid-template-columns: 1fr; }
  .carla-grid h2 { max-width: 22ch; }
  .carla-bio p { text-align: left; font-size: 15.5px; line-height: 1.84; }
  .carla-credentials { grid-template-columns: 1fr; gap: 12px; }
  .carla-note { padding: 26px; }
  .section-subtitle { font-size: 1.53rem; margin-top: 42px; }
  .result-details { grid-template-columns: 1fr; }
  .result-feature .result-case h3 { font-size: 2rem; }
  .result-feature .result-case-copy>p:not(.upper) { font-size: 15px; }
  .google-reviews-header { gap: 22px; }
  .review-quote-grid { grid-template-columns: 1fr; }
  .review-quote { min-height: unset; padding: 26px; }
  .review-quote blockquote { font-size: 15.5px; }
  .content-grid { margin-top: 34px; gap: 16px; }
  .content-grid h3 { font-size: 1.27rem; }
  .content-grid p { font-size: 15px; }
  .faq-section { grid-template-columns: 1fr; gap: 29px; }
  .faq-list summary { font-size: 17.5px; line-height: 1.42; }
  .faq-list p { font-size: 15.2px; }
  .contact h2 { font-size: clamp(1.95rem, 7.2vw, 2.55rem); }
  .footer-bottom { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .cta { transition: none; }
}
/* Contraste de cores em superfícies claras — mantém verde vibrante para CTAs e fundo escuro. */
.about .green, #orientacoes .green, .service-number, .steps small,
.result-details small:not(.red), .content-grid small,
.review-quote h4 + blockquote, .section-alt .green { color: #297f59; }
.review-quote h4 + blockquote { color: var(--body-text); }
