:root{--ink:#2d382f;--muted:#657066;--paper:#f8f4ef;--warm:#efe4d8;--sage:#c9d4c4;--line:rgba(45,56,47,.18);--serif:"Fraunces",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #be7166;outline-offset:4px}.skip-link{position:fixed;z-index:20;left:1rem;top:-5rem;background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:.3rem}.skip-link:focus{top:1rem}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;position:absolute;white-space:nowrap}.site-header{position:sticky;top:0;z-index:10;background:rgba(248,244,239,.88);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}.site-header.is-scrolled{border-color:var(--line)}.header-inner,.footer-inner{width:min(1160px,calc(100% - 3rem));margin:auto;display:flex;align-items:center;justify-content:space-between}.header-inner{min-height:82px}.brand{display:flex;align-items:center;gap:.65rem;font-size:1.02rem;letter-spacing:-.02em}.brand strong{font-weight:600}.brand-mark{width:31px;height:31px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:500 1.25rem/1 var(--serif);padding-bottom:.12rem}.main-nav{display:flex;gap:2rem;align-items:center;font-size:.9rem}.main-nav>a:not(.nav-contact){color:#4e594f}.main-nav>a:not(.nav-contact):hover{color:var(--ink)}.nav-contact{border:1px solid var(--ink);border-radius:999px;padding:.52rem .9rem}.nav-contact:hover{background:var(--ink);color:#fff}.menu-toggle{display:none}.hero{min-height:650px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;width:min(1160px,calc(100% - 3rem));margin:auto;gap:4rem;padding:6.5rem 0 5rem}.hero-copy{max-width:620px}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.13em;font-size:.71rem;font-weight:600;color:#667965;margin:0 0 1.25rem}.hero h1,h2,h3,p{margin-top:0}.hero h1{font:400 clamp(3rem,5.6vw,5.3rem)/1.05 var(--serif);letter-spacing:-.055em;margin-bottom:1.55rem}.hero-lead{max-width:550px;color:#526056;font-size:1.15rem;line-height:1.7;margin-bottom:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:.78rem 1.15rem;border-radius:999px;font-size:.93rem;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#425447}.hero-art{height:470px;background:#e8ddd1;border-radius:50% 50% 1rem 1rem;position:relative;overflow:hidden;isolation:isolate}.sun{position:absolute;width:195px;height:195px;top:64px;right:56px;border-radius:50%;background:#d79786;opacity:.85}.arch{position:absolute;border-radius:500px 500px 0 0;bottom:-1px}.arch-back{width:330px;height:410px;border:1px solid #7d9984;left:62px}.arch-front{width:245px;height:320px;background:#f8f4ef;left:104px}.stem{position:absolute;z-index:2;width:2px;height:235px;background:#4c7151;transform-origin:bottom;bottom:-6px}.stem-one{left:77%;transform:rotate(23deg)}.stem-two{left:70%;height:190px;transform:rotate(-24deg)}.leaf{position:absolute;z-index:3;width:52px;height:25px;background:#729178;border-radius:100% 0 100% 0}.leaf-one{bottom:196px;left:67%;transform:rotate(16deg)}.leaf-two{bottom:132px;left:77%;transform:rotate(123deg)}.leaf-three{bottom:95px;left:62%;transform:rotate(-31deg)}.art-caption{position:absolute;z-index:4;bottom:20px;left:25px;margin:0;color:#637a67;letter-spacing:.12em;text-transform:uppercase;font-size:.62rem}.section{width:min(1160px,calc(100% - 3rem));margin:auto}.intro{border-top:1px solid var(--line);padding:7.5rem 0;display:grid;grid-template-columns:1fr 2fr;gap:4rem}.section-label{margin-top:.55rem}.intro-content{max-width:720px}.intro h2,.section-heading h2,.approach h2,.about h2,.faq h2,.contact h2{font:400 clamp(2.15rem,3.8vw,3.7rem)/1.14 var(--serif);letter-spacing:-.045em}.intro p{max-width:640px;font-size:1.1rem;color:#526056}.themes{padding:6rem 0 7rem}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:5rem;align-items:end;margin-bottom:2.8rem}.section-heading h2{margin:0}.section-heading>p{margin:0 0 .35rem;color:#556056}.theme-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.theme-list li{position:relative;padding:1.6rem 2.5rem 1.75rem 2.9rem;border-bottom:1px solid var(--line);min-height:158px}.theme-list li:nth-child(odd){border-right:1px solid var(--line)}.theme-list span{position:absolute;left:0;top:1.8rem;font-size:.68rem;color:#879187}.theme-list strong{font:400 1.3rem/1.25 var(--serif)}.theme-list p{font-size:.88rem;line-height:1.55;color:#59635a;margin:.55rem 0 0;max-width:390px}.approach{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center;padding:6.5rem 0}.approach-visual{height:430px;position:relative;background:#dfe6dd;border-radius:50% 50% 0 0;overflow:hidden;display:flex;align-items:end;justify-content:space-around;padding:0 2rem 2.5rem}.approach-visual::before{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(58,95,65,.45);border-radius:50%;top:55px;left:50%;transform:translateX(-50%)}.approach-visual::after{content:"";position:absolute;width:185px;height:185px;border:1px solid rgba(58,95,65,.45);border-radius:50%;top:112px;left:50%;transform:translateX(-50%)}.approach-visual span{position:relative;z-index:1;font:400 .92rem var(--serif);color:#4e6e53;transform:rotate(-6deg)}.approach-visual span:nth-child(2){transform:translateY(-285px) rotate(3deg)}.approach-visual span:nth-child(3){transform:rotate(6deg)}.approach-copy p:not(.eyebrow){color:#556057;font-size:1.04rem}.about{background:#efe4d8;width:100%;padding:7rem max(1.5rem,calc((100% - 1160px)/2));display:grid;grid-template-columns:.82fr 1.18fr;gap:7rem;align-items:center}.portrait-placeholder{height:440px;background:#ca998a;border-radius:50% 50% 1rem 1rem;display:grid;place-items:center;position:relative;overflow:hidden}.portrait-placeholder::before{content:"";width:235px;height:310px;border:1px solid rgba(248,244,239,.7);border-radius:120px 120px 0 0;position:absolute;bottom:0}.portrait-placeholder span{position:relative;z-index:1;text-align:center;font:400 1.55rem/1.12 var(--serif);color:#fff7ed}.about-copy{max-width:600px}.about-copy>p:not(.eyebrow){font-size:1.05rem;color:#4f594f}.profile-note{border-left:2px solid #bb8c80;padding-left:1rem;font-size:.9rem!important;margin-top:1.4rem}.process{padding:7rem 0}.process-heading{margin-bottom:3.4rem}.process-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.process-list li{border-top:1px solid var(--line);padding-top:1.4rem}.step-number{color:#7c927e;font-size:.8rem}.process-list h3{font:400 1.45rem var(--serif);margin:.8rem 0 .45rem}.process-list p{color:#596359;font-size:.91rem;margin:0}.service-note{margin:3rem 0 0;padding:1rem 1.2rem;border-radius:.3rem;background:#f1eee8;color:#60675f;font-size:.85rem}.faq{padding:6.5rem 0 7rem;max-width:850px}.faq h2{margin-bottom:2.5rem}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq summary{cursor:pointer;list-style:none;padding-right:3rem;font:500 1.1rem/1.35 var(--serif);position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";position:absolute;right:.25rem;top:-.15rem;font:300 1.5rem var(--sans);color:#68816d}.faq details[open] summary::after{content:"−"}.faq details p{margin:.8rem 3rem .1rem 0;color:#566056;font-size:.93rem}.contact{background:var(--ink);color:#fffaf4;text-align:center;padding:7rem 1.5rem}.contact-inner{max-width:730px;margin:auto}.contact .eyebrow{color:#bdcdb9}.contact h2{margin:.5rem 0 1.4rem}.contact p:not(.eyebrow){color:#dbe3d9;max-width:550px;margin:0 auto 2rem}.button-light{background:#fffaf4;color:var(--ink)}.button-light:hover{background:#e7ede5}.site-footer{background:#e8ddd1;padding:2.3rem 0}.footer-inner{gap:1.5rem;font-size:.83rem}.professional-id{text-align:center;color:#586158}.professional-id p{margin:0}.footer-note{font-size:.72rem;margin-top:.25rem!important}.footer-inner>a:last-child{text-decoration:underline;text-underline-offset:3px}.privacy-page{max-width:800px;padding:6rem 0 7rem}.privacy-page h1{font:400 clamp(2.8rem,5vw,4.5rem)/1.08 var(--serif);letter-spacing:-.05em;margin:0 0 1.6rem}.privacy-page h2{font:400 1.5rem var(--serif);margin:2.4rem 0 .65rem}.privacy-page p{color:#505b51}.privacy-page .privacy-intro{color:#657066;font-size:1.05rem;border-left:2px solid #bb8c80;padding-left:1rem}@media(max-width:760px){.header-inner,.footer-inner,.hero,.section{width:min(100% - 2rem,600px)}.header-inner{min-height:72px}.menu-toggle{width:42px;height:42px;display:grid;place-content:center;gap:6px;border:0;background:none;cursor:pointer}.menu-toggle span:not(.sr-only){width:20px;height:1px;background:var(--ink);transition:transform .2s}.main-nav{display:none;position:absolute;background:var(--paper);border-bottom:1px solid var(--line);left:0;right:0;top:72px;padding:1.25rem 1rem 1.5rem;flex-direction:column;align-items:flex-start;gap:1rem}.main-nav.is-open{display:flex}.menu-toggle[aria-expanded="true"] span:nth-child(2){transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-3.5px) rotate(-45deg)}.hero{grid-template-columns:1fr;gap:2.5rem;padding:4rem 0 3rem;min-height:0}.hero h1{font-size:clamp(2.8rem,14vw,4rem)}.hero-art{height:350px}.sun{width:145px;height:145px;top:48px;right:28px}.arch-back{left:32px;height:310px;width:250px}.arch-front{left:64px;height:235px;width:180px}.intro,.section-heading,.approach,.about{grid-template-columns:1fr;gap:1.8rem}.intro{padding:4.5rem 0}.themes{padding:4.5rem 0}.section-heading{margin-bottom:2rem}.theme-list{grid-template-columns:1fr}.theme-list li:nth-child(odd){border-right:0}.approach{padding:4.5rem 0}.approach-visual{height:330px;order:2}.approach-visual span:nth-child(2){transform:translateY(-210px) rotate(3deg)}.about{padding:4.5rem 1rem}.portrait-placeholder{height:370px}.process{padding:4.5rem 0}.process-list{grid-template-columns:1fr;gap:1.5rem}.faq{padding:4.5rem 0}.contact{padding:5rem 1rem}.footer-inner{flex-direction:column;text-align:center}.footer-brand{order:0}.professional-id{order:1}.footer-inner>a:last-child{order:2}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
 .service-summary{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:0}.service-summary>div{padding:1.2rem 1.5rem}.service-summary>div+div{border-left:1px solid var(--line)}.service-summary span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#6a7b6c;font-weight:600}.service-summary p{margin:.32rem 0 0;font:400 1.08rem/1.3 var(--serif)}.portrait{height:440px;margin:0;border-radius:50% 50% 1rem 1rem;overflow:hidden;background:#ca998a}.portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 35%}.professional-signature{margin-top:1.5rem!important;color:#68766b!important;font-size:.86rem!important;font-weight:600}.contact-links{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.4rem}.contact-links a{color:#dbe3d9;font-size:.86rem;text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.service-summary{grid-template-columns:1fr}.service-summary>div+div{border-left:0;border-top:1px solid var(--line)}.portrait{height:370px}}
 .brand-photo{overflow:hidden;padding:0;background:#dfe6dd}.brand-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 23%;display:block}.hero-photo{height:470px;margin:0;border-radius:50% 50% 1rem 1rem;overflow:hidden;background:#e8ddd1}.hero-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 48%}.service-summary small{display:inline-block;margin-top:.35rem;font:400 .78rem/1.4 var(--sans);color:#657066;max-width:330px}@media(max-width:760px){.hero-photo{height:350px}.hero-photo img{object-position:50% 50%}}
/* Refinamento visual */
:root{--ink:#27332c;--paper:#fbf8f4;--warm:#f2e9df;--line:rgba(39,51,44,.13)}
body{letter-spacing:.003em;background:linear-gradient(115deg,#fbf8f4 0%,#f7f2ec 52%,#faf7f2 100%)}
.site-header{background:rgba(251,248,244,.8)}
.header-inner{min-height:88px}.brand{font-size:.96rem;gap:.72rem}.brand-mark{width:35px;height:35px;border-color:rgba(39,51,44,.55)}
.main-nav{gap:2.15rem;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.nav-contact{padding:.62rem 1.05rem;border-color:rgba(39,51,44,.75);letter-spacing:.04em}
.hero{min-height:680px;grid-template-columns:1fr .92fr;gap:6.5rem;padding:7.6rem 0 6.5rem}.hero-copy{max-width:595px}.eyebrow,.section-label{font-size:.65rem;letter-spacing:.19em;color:#728171}.hero h1{font-size:clamp(3.3rem,5.7vw,5.9rem);line-height:1.01;letter-spacing:-.065em;margin-bottom:1.8rem}.hero-lead{font-size:1.06rem;line-height:1.8;color:#5c685e;max-width:490px}.button{padding:.86rem 1.3rem;font-size:.76rem;letter-spacing:.07em;text-transform:uppercase}.button-primary{box-shadow:0 12px 22px rgba(39,51,44,.13)}
.hero-photo{height:500px;border-radius:48% 48% 1.25rem 1.25rem;position:relative;box-shadow:0 22px 45px rgba(67,50,38,.12)}.hero-photo::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.43);border-radius:calc(48% - 8px) calc(48% - 8px) .85rem .85rem;pointer-events:none}.hero-photo img{filter:saturate(.88) contrast(.98)}
.intro{padding:9rem 0 8.5rem}.intro h2{font-size:clamp(2.35rem,3.7vw,3.95rem);line-height:1.1;max-width:710px}.intro p{font-size:1.03rem;line-height:1.85;max-width:590px}
.service-summary{margin-top:1rem;background:rgba(255,255,255,.3);border-radius:.55rem;border:1px solid var(--line);overflow:hidden}.service-summary>div{padding:1.4rem 1.65rem}.service-summary>div+div{border-left:1px solid var(--line)}.service-summary span{font-size:.62rem;letter-spacing:.16em}.service-summary p{font-size:1rem}
.themes{padding:8rem 0}.section-heading{margin-bottom:3.5rem}.section-heading h2{font-size:clamp(2.35rem,3.8vw,4rem)}.theme-list{gap:1rem;border:0}.theme-list li{background:rgba(255,255,255,.32);border:1px solid var(--line)!important;border-radius:.45rem;padding:1.8rem 1.7rem 1.7rem 3rem;min-height:174px;transition:transform .22s,box-shadow .22s}.theme-list li:hover{transform:translateY(-4px);box-shadow:0 14px 24px rgba(46,43,34,.06)}.theme-list span{left:1.3rem;top:1.9rem;color:#9b8579}.theme-list strong{font-size:1.35rem}.theme-list p{font-size:.86rem;line-height:1.65}
.approach{padding:8rem 0;gap:8.5rem}.approach-visual{height:470px;border-radius:48% 48% 1rem 1rem;background:#e3e9e0}.approach-copy h2{font-size:clamp(2.35rem,3.6vw,3.8rem);line-height:1.1}.approach-copy p:not(.eyebrow){line-height:1.8}
.about{padding-top:8rem;padding-bottom:8rem;gap:8.5rem;background:linear-gradient(120deg,#f1e5d9,#eee1d4)}.portrait{height:485px;border-radius:48% 48% 1rem 1rem;box-shadow:0 20px 38px rgba(80,54,38,.12)}.portrait img{filter:saturate(.9)}.about-copy h2{font-size:clamp(2.35rem,3.6vw,3.8rem)}.about-copy>p:not(.eyebrow){line-height:1.82}.professional-signature{letter-spacing:.04em}
.process{padding:8rem 0}.process-list{gap:2rem}.process-list li{padding:1.7rem;background:rgba(255,255,255,.3);border:1px solid var(--line);border-radius:.45rem}.process-list h3{font-size:1.5rem}.service-note{background:transparent;border:1px solid var(--line);border-radius:.35rem;padding:1.1rem 1.3rem}
.faq{padding:8rem 0}.faq details{padding:1.45rem 0}.faq summary{font-size:1.18rem}.contact{padding:8rem 1.5rem;background:radial-gradient(circle at 50% 0%,#405547 0%,#27332c 58%)}.contact h2{font-size:clamp(2.5rem,4.2vw,4.25rem);line-height:1.08}.button-light{box-shadow:0 12px 22px rgba(0,0,0,.15)}.site-footer{padding:2.8rem 0;background:#eee2d6}.footer-inner{font-size:.78rem}.brand-photo{box-shadow:0 2px 5px rgba(39,51,44,.18)}
@media(max-width:760px){.header-inner{min-height:76px}.main-nav{top:76px;letter-spacing:.04em}.hero{gap:3rem;padding:4.75rem 0 4.25rem}.hero h1{font-size:clamp(3rem,14vw,4.25rem)}.hero-photo{height:380px}.intro,.themes,.approach,.process,.faq{padding-top:5.75rem;padding-bottom:5.75rem}.service-summary{margin-top:0}.service-summary>div{padding:1.2rem 1.35rem}.theme-list{gap:.75rem}.theme-list li{min-height:0}.about{padding-top:5.75rem;padding-bottom:5.75rem}.portrait{height:420px}.contact{padding:6rem 1rem}}


/* Acessibilidade: respeita a preferência do sistema por menos movimento. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
