:root{--paper:#f7f3ef;--paper-deep:#f0e8e2;--rose:#e7d5ce;--rose-dark:#b88f83;--sage:#aeb9a2;--sage-dark:#74816b;--ink:#514943;--muted:#81766e;--line:#ddd1c9;--white:#fffdfa;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.section{position:relative;overflow:hidden}
.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px}
.skip-link:focus{top:10px}
.site-header{height:88px;position:sticky;top:0;z-index:20;background:rgba(247,243,239,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,209,201,.7)}
.header-inner,.brand,.site-nav,.footer-top,.footer-bottom{display:flex;align-items:center}
.header-inner{height:100%;justify-content:space-between}
.brand{gap:12px}
.brand-mark{width:43px;height:43px;display:grid;place-items:center;border:1px solid #cdb6ac;border-radius:50%;font:500 25px var(--serif);color:#866f65}
.brand-mark span{color:#ad8a7d}
.brand-name{font:500 14px var(--serif);letter-spacing:.02em;line-height:1.3}
.brand-name small{display:block;font:600 8px var(--sans);letter-spacing:.22em;color:var(--muted);margin-top:5px}
.site-nav{gap:38px;font-size:12px;color:#71665f}
.site-nav a{transition:color .2s}
.site-nav a:hover{color:var(--rose-dark)}
.site-nav .nav-cta{border:1px solid #bda69c;border-radius:30px;padding:10px 22px;color:#66564f}
.menu-toggle{display:none}
.hero{min-height:690px;padding:82px 0 48px;background:linear-gradient(115deg,#f7f3ef 0%,#f7f3ef 53%,#f1e9e3 100%)}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:65px}
.eyebrow{font-size:9px;font-weight:600;letter-spacing:.23em;color:#8e7c71;display:flex;align-items:center;gap:12px;margin:0 0 23px}
.eyebrow-line{width:28px;height:1px;background:#b99a8d;display:inline-block}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.13}
h1{font-size:clamp(48px,5.4vw,73px);margin-bottom:25px;color:#514741}
h1 em,h2 em{font-weight:400;color:#a77f73}
.hero-lead{max-width:490px;color:#756a63;font-size:16px;line-height:1.9;margin-bottom:30px}
.button{display:inline-flex;align-items:center;gap:34px;padding:15px 23px;border-radius:2px;font-size:11px;font-weight:600;letter-spacing:.04em;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:#8b9780;color:white}
.button-primary:hover{background:#718067}
.hero-note{font:italic 12px var(--serif);color:#96877e;margin:21px 0 0}
.hero-art{position:relative;max-width:470px;width:100%;justify-self:end;padding:22px 24px 30px}
.art-frame{height:475px;position:relative;overflow:hidden;border-radius:48% 48% 3px 3px;background:#e9dcd4}
.art-frame:before{content:"";position:absolute;width:290px;height:290px;border:1px solid rgba(255,253,250,.55);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}
.art-frame:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,253,250,.35);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}
.art-sun{position:absolute;width:125px;height:125px;right:52px;top:63px;border-radius:50%;background:#f4e9dd;opacity:.9}
.botanical{position:absolute;height:94%;width:90%;bottom:1%;left:5%;z-index:2}
.art-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:10px;color:#6d625a;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.caption-dot{height:3px;width:3px;border-radius:50%;background:#af8f82}
.art-side-note{position:absolute;right:0;top:60px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em;color:#95867d}
.hero-bottom{display:flex;align-items:center;gap:15px;margin-top:65px;color:#9a8c82;font-size:8px;letter-spacing:.17em}
.hero-bottom-line{height:1px;width:48px;background:#cbbab0}
.intro{padding:110px 0;background:var(--white)}
.intro-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:95px}
.intro-grid .eyebrow{margin-top:12px}
.intro h2{font-size:clamp(34px,4vw,49px);max-width:630px;margin-bottom:22px}
.body-large{font-size:16px;color:#756b63;line-height:1.95;max-width:670px}
.about{padding:120px 0 130px}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:center}
.about-art{position:relative;max-width:440px}
.about-card{height:480px;background:#e9ddd5;position:relative;padding:45px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.about-card:before{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(255,253,250,.6);border-radius:50%;right:-94px;top:60px}
.about-card:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,253,250,.55);border-radius:50%;right:-58px;top:95px}
.about-monogram{font:400 65px var(--serif);color:#987e72;z-index:1}
.about-monogram span{color:#b28f82}
.about-card-line{width:38px;height:1px;background:#a88b80;margin-top:-110px;z-index:1}
.about-card p{font:italic 20px/1.5 var(--serif);color:#71635b;z-index:1;margin:0}
.about-card svg{position:absolute;width:245px;bottom:13px;right:12px;opacity:.8}
.about-decoration{position:absolute;border-radius:50%;z-index:-1}
.decoration-a{width:92px;height:92px;background:#c5cdbb;right:-33px;top:55px}
.decoration-b{width:45px;height:45px;background:#d7b8ad;left:-20px;bottom:45px}
.about-copy h2{font-size:clamp(44px,5vw,65px);margin-bottom:25px}
.about-copy>p:not(.eyebrow){color:#786e66;line-height:1.9}
.credentials{margin-top:36px;border-top:1px solid var(--line)}
.credential{display:flex;gap:18px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}
.credential-number{font:italic 15px var(--serif);color:#b08b7f;padding-top:1px}
.credential strong,.credential small{display:block}
.credential strong{font-size:12px;font-weight:600;color:#5e544d}
.credential small{font-size:11px;color:#91857d;margin-top:3px}
.approach{padding:112px 0 120px;background:#eee8e2}
.section-heading{max-width:680px;margin-bottom:54px}
.section-heading h2,.process-heading h2{font-size:clamp(38px,4.5vw,56px);margin-bottom:20px}
.section-heading>p:last-child,.process-heading>p:last-child{max-width:590px;color:#7c7169;line-height:1.9}
.approach-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.approach-card{min-height:280px;background:rgba(255,253,250,.72);padding:27px 28px 30px;position:relative;border:1px solid rgba(221,209,201,.6)}
.card-index{font-size:9px;letter-spacing:.16em;color:#a38b80}
.card-icon{display:grid;place-items:center;width:49px;height:49px;border:1px solid #d8c5bc;border-radius:50%;margin:32px 0 20px;color:#8a9a80;font:26px var(--serif)}
.icon-feeling{color:#b18e83}.icon-action{color:#89957f}
.approach-card h3,.process-step h3{font:500 21px var(--serif);margin-bottom:10px}
.approach-card p,.process-step p{font-size:12px;line-height:1.85;color:#80756d;margin-bottom:0}
.approach-footnote{font-size:10px;color:#92877f;margin:22px 0 0}
.process{padding:125px 0;background:var(--white)}
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px}
.process-heading h2{margin-bottom:22px}
.process-heading>p:last-child{max-width:430px}
.process-steps{border-top:1px solid var(--line)}
.process-step{display:grid;grid-template-columns:48px 1fr;gap:17px;padding:27px 0;border-bottom:1px solid var(--line)}
.process-step>span{font:italic 16px var(--serif);color:#ac887c}
.process-step h3{font-size:20px;margin-bottom:7px}
.closing{padding:115px 0 120px;background:#e8d9d1;text-align:center}
.closing-content{max-width:690px;position:relative;z-index:1}
.closing .eyebrow{justify-content:center;color:#8a756a}
.closing h2{font-size:clamp(48px,6vw,70px);margin-bottom:22px}
.closing-content>p:not(.eyebrow){max-width:500px;margin:0 auto;color:#786c64;line-height:1.9}
.closing-decoration{position:absolute;width:440px;height:440px;border:1px solid rgba(255,253,250,.48);border-radius:50%;left:-190px;top:20px}
.closing-decoration:after{content:"";position:absolute;inset:45px;border:1px solid rgba(255,253,250,.38);border-radius:50%}
.contact-pending{display:inline-flex;align-items:center;gap:16px;text-align:left;margin-top:34px;padding:17px 24px;background:rgba(255,253,250,.48);border:1px solid rgba(255,253,250,.7)}
.contact-pending-icon{font-size:23px;color:#8c9a81}
.contact-pending strong,.contact-pending small{display:block}
.contact-pending strong{font:500 18px var(--serif)}
.contact-pending small{font-size:10px;color:#82736a;margin-top:2px}
.site-footer{background:#f7f3ef;padding:34px 0 21px}
.footer-top{justify-content:space-between;padding-bottom:28px;border-bottom:1px solid var(--line)}
.back-top{font-size:10px;color:#82766e}
.footer-bottom{justify-content:space-between;padding-top:18px;color:#958980;font-size:9px;letter-spacing:.02em}
@media(max-width:900px){.hero-grid{gap:25px}.hero-art{max-width:390px}.art-frame{height:410px}.about-grid{gap:55px}.process-grid{gap:55px}.intro-grid{gap:50px}}
@media(max-width:700px){.container{width:min(100% - 40px,560px)}.site-header{height:75px}.menu-toggle{display:flex;width:42px;height:42px;border:1px solid var(--line);background:transparent;border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:15px;height:1px;background:#665b55}.site-nav{display:none;position:absolute;left:0;right:0;top:74px;padding:22px 25px 26px;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;gap:18px;flex-direction:column}.site-nav.is-open{display:flex}.site-nav .nav-cta{text-align:center}.hero{padding:65px 0 35px;min-height:0}.hero-grid{grid-template-columns:1fr;gap:38px}.hero-copy{max-width:530px}.hero-art{justify-self:center;max-width:420px;width:92%;padding:0 10px 25px}.art-frame{height:390px}.art-side-note{right:-2px}.hero-bottom{margin-top:35px}.intro{padding:75px 0}.intro-grid{grid-template-columns:1fr;gap:15px}.intro-grid .eyebrow{margin-top:0;margin-bottom:8px}.intro h2{font-size:39px}.body-large{font-size:15px}.about{padding:78px 0 85px}.about-grid{grid-template-columns:1fr;gap:45px}.about-art{width:85%;margin:auto}.about-card{height:390px;padding:30px}.about-card-line{margin-top:-75px}.about-copy h2{font-size:54px}.approach{padding:80px 0}.section-heading{margin-bottom:35px}.approach-cards{grid-template-columns:1fr;gap:12px}.approach-card{min-height:0;padding:23px}.card-icon{margin:20px 0 14px}.process{padding:82px 0}.process-grid{grid-template-columns:1fr;gap:35px}.process-heading h2{font-size:47px}.closing{padding:82px 0}.closing h2{font-size:54px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:6px}.footer-top{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Retrato profissional */
.hero-art{padding:0 24px 18px;max-width:470px}
.hero-photo{display:block;width:100%;height:475px;object-fit:cover;object-position:center 38%;border-radius:48% 48% 3px 3px;box-shadow:0 18px 45px rgba(81,65,55,.12)}
.about-photo{display:block;width:100%;height:480px;object-fit:cover;object-position:center 38%;box-shadow:0 18px 45px rgba(81,65,55,.10)}
@media(max-width:900px){.hero-photo{height:410px}}
@media(max-width:700px){.hero-art{padding:0 10px 25px}.hero-photo{height:390px}.about-photo{height:390px;width:85%;margin:auto}}


/* Retrato profissional */
.hero-art{padding:0 24px 18px;max-width:470px}
.hero-photo{display:block;width:100%;height:475px;object-fit:cover;object-position:center 38%;border-radius:48% 48% 3px 3px;box-shadow:0 18px 45px rgba(81,65,55,.12)}
.hero-art .art-frame,.hero-art .art-side-note{display:none}
.about-photo{display:block;width:100%;height:480px;object-fit:cover;object-position:center 38%;box-shadow:0 18px 45px rgba(81,65,55,.10)}
@media(max-width:900px){.hero-photo{height:410px}}
@media(max-width:700px){.hero-art{padding:0 10px 25px}.hero-photo{height:390px}.about-photo{height:390px;width:85%;margin:auto}}


/* Foto do ambiente de psicoterapia na seção Sobre mim */
.about-art{max-width:440px}
.about-card{height:480px;padding:0;background:transparent;overflow:hidden;border-radius:2px;box-shadow:0 18px 45px rgba(81,65,55,.10)}
.therapy-room-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-decoration{display:none}
@media(max-width:700px){.about-card{height:390px;width:100%}}


/* Ajuste de alinhamento da seção Sobre mim */
.about-grid{align-items:start}
.about-copy{padding-top:8px}
.about-copy .eyebrow{margin-bottom:20px}
.about-copy h2{margin-top:0}
.about-copy .credentials{margin-top:30px}
@media(max-width:700px){.about-grid{align-items:stretch;gap:34px}.about-copy{padding-top:0}}


/* Contatos profissionais */
.contact-links{display:flex;flex-direction:column;gap:12px;max-width:430px;margin:36px auto 0;text-align:left}
.contact-link{display:flex;align-items:center;gap:16px;padding:17px 20px;background:rgba(255,253,250,.58);border:1px solid rgba(255,253,250,.82);transition:transform .2s,background .2s}
.contact-link:hover{transform:translateY(-2px);background:rgba(255,253,250,.85)}
.contact-link-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #c9b2a7;border-radius:50%;font-size:23px;color:#829078}
.contact-link strong,.contact-link small{display:block}
.contact-link strong{font:500 18px var(--serif);color:var(--ink)}
.contact-link small{font-size:10px;color:#82736a;margin-top:2px}
.contact-arrow{margin-left:auto;color:#987c70;font-size:18px}
.contact-crp{text-align:center;font-size:10px;letter-spacing:.08em;color:#82736a;margin:10px 0 0}
@media(max-width:700px){.contact-links{margin-top:28px}.contact-link{padding:15px}}


/* Informações sobre o atendimento */
.service-info{padding:112px 0;background:#f7f3ef}
.service-info-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:start}
.service-info-heading h2{font:400 clamp(38px,4.5vw,56px)/1.13 var(--serif);letter-spacing:-.035em;margin:0 0 20px;color:var(--ink)}
.service-info-heading h2 em{color:#a77f73}
.service-info-heading>p:last-child{max-width:390px;color:#7c7169;line-height:1.9}
.service-details{border-top:1px solid var(--line)}
.service-detail{display:grid;grid-template-columns:38px 1fr;gap:15px;padding:21px 0;border-bottom:1px solid var(--line)}
.service-detail-number{font:italic 15px var(--serif);color:#ac887c;padding-top:2px}
.service-detail h3{font:500 20px var(--serif);margin:0 0 5px;color:var(--ink)}
.service-detail p{font-size:12px;line-height:1.85;color:#80756d;margin:0}
.service-cta{margin-top:25px}
@media(max-width:700px){.service-info{padding:80px 0}.service-info-grid{grid-template-columns:1fr;gap:32px}.service-info-heading h2{font-size:47px}.service-detail{padding:18px 0}}


/* Dúvidas frequentes */
.faq{padding:112px 0;background:#fffdfa}
.faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}
.faq-heading h2{font:400 clamp(42px,4.8vw,60px)/1.12 var(--serif);letter-spacing:-.035em;margin:0 0 22px;color:var(--ink)}
.faq-heading h2 em{color:#a77f73}
.faq-heading>p:not(.eyebrow){max-width:370px;color:#7c7169;line-height:1.9}
.faq-contact-link{display:inline-block;margin-top:18px;font-size:11px;color:#7c8a72;border-bottom:1px solid #b7c0ad;padding-bottom:4px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{padding:22px 0;border-bottom:1px solid var(--line)}
.faq-item h3{font:500 20px var(--serif);color:var(--ink);margin:0 0 8px}
.faq-item p{font-size:12px;line-height:1.9;color:#80756d;margin:0}
@media(max-width:700px){.faq{padding:80px 0}.faq-grid{grid-template-columns:1fr;gap:32px}.faq-heading h2{font-size:50px}.faq-item{padding:19px 0}}
