@font-face{font-family:Manrope;src:url('assets/manrope-regular.ttf') format('truetype');font-display:swap}@font-face{font-family:Cormorant;src:url('assets/cormorant.ttf') format('truetype');font-display:swap}
:root{--forest:#102c24;--forest-2:#173b31;--ivory:#f5f1e8;--stone:#e9e4da;--gold:#c9a86a;--gold-light:#ddc28e;--ink:#20231f;--muted:#686d66;--white:#fffdf8;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;--pad:clamp(1.25rem,6vw,7.5rem);--radius:1.4rem}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a,button{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--white);padding:.8rem 1rem;color:var(--forest)}.skip-link:focus{top:1rem}.section-pad{padding:clamp(5.5rem,10vw,10rem) var(--pad)}.eyebrow{margin:0 0 1.45rem;color:var(--gold-light);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.eyebrow.dark{color:#907039}h2{margin:0;font-family:var(--serif);font-size:clamp(3rem,5.5vw,6.4rem);font-weight:400;line-height:.9;letter-spacing:-.04em}h2 em{color:#9a7941;font-style:italic}.section-index{display:flex;align-items:center;gap:.8rem;color:#747970;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.section-index span{color:#9a7941}.rule{width:4.5rem;height:1px;background:var(--gold);margin:2.4rem 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.85rem 1.45rem;border:1px solid transparent;border-radius:999px;text-decoration:none;font-size:.78rem;font-weight:700;letter-spacing:.045em;transition:transform .25s,background .25s,color .25s,border-color .25s}.button:hover,.button:focus-visible{transform:translateY(-3px)}.button-gold{border-color:var(--gold);background:var(--gold);color:var(--forest)}.button-gold:hover,.button-gold:focus-visible{background:var(--gold-light)}.button-outline{border-color:rgba(255,255,255,.35);color:var(--white)}.button-outline:hover{background:var(--white);color:var(--forest)}.button-large{min-height:4rem;padding:1rem 2.1rem}.text-link{position:relative;color:inherit;text-decoration:none;font-size:.82rem;padding:.7rem 0}.text-link:after,.service a:after{content:"";position:absolute;left:0;bottom:.35rem;width:100%;height:1px;background:currentColor;transform:scaleX(.3);transform-origin:left;transition:transform .3s}.text-link:hover:after,.text-link:focus-visible:after,.service a:hover:after,.service a:focus-visible:after{transform:scaleX(1)}a:focus-visible,button:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:6.6rem;padding:0 var(--pad);display:flex;align-items:center;gap:2rem;color:var(--white);transition:height .35s,background .35s,box-shadow .35s}.site-header.scrolled{height:5.1rem;background:rgba(16,44,36,.93);backdrop-filter:blur(18px);box-shadow:0 14px 34px rgba(0,0,0,.1)}.brand{flex:0 0 auto;color:inherit;text-decoration:none;line-height:.85}.brand span{display:block;font-family:var(--serif);font-size:1.6rem;letter-spacing:.22em}.brand small{display:block;margin-top:.55rem;font-size:.55rem;letter-spacing:.43em;text-transform:uppercase}.desktop-nav{display:flex;gap:clamp(1rem,2vw,2.1rem);margin-left:auto}.desktop-nav a{position:relative;color:inherit;text-decoration:none;font-size:.78rem}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-.5rem;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .3s}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.header-cta{min-height:3rem;padding:.7rem 1.3rem;border:1px solid rgba(255,255,255,.4);border-radius:999px;color:inherit;text-decoration:none;font-size:.74rem;font-weight:700;transition:.25s}.header-cta:hover{background:var(--white);color:var(--forest)}.menu-toggle{display:none}.mobile-menu{display:none}
.hero{position:relative;min-height:100svh;overflow:hidden;background:var(--forest);color:var(--white);display:flex;align-items:center;padding:10rem var(--pad) 6.5rem}.hero-photo{position:absolute;inset:0 0 0 36%;overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--forest) 0%,rgba(16,44,36,.83) 18%,rgba(16,44,36,.1) 62%,rgba(16,44,36,.15) 100%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);animation:heroZoom 2.4s cubic-bezier(.2,.7,.2,1) forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,19,15,.25),transparent 30%,rgba(6,19,15,.42));pointer-events:none}.hero-orbit{position:absolute;width:min(48vw,48rem);aspect-ratio:1;border:1px solid rgba(221,194,142,.22);border-radius:50%;right:-13vw;bottom:-24vw}.hero-orbit:after{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.08);border-radius:inherit}.hero-copy{position:relative;z-index:2;width:min(58rem,67%)}.hero h1{margin:0;font-family:var(--serif);font-size:clamp(4rem,6.4vw,8rem);font-weight:400;line-height:.82;letter-spacing:-.047em}.hero h1 span,.hero h1 em{display:block;clip-path:inset(0 0 100% 0);animation:lineReveal .9s .25s cubic-bezier(.16,1,.3,1) forwards}.hero h1 em{margin-left:clamp(1rem,4vw,5rem);margin-top:.14em;color:var(--gold-light);font-style:italic;animation-delay:.43s}.hero-kicker,.hero-lead,.hero-actions,.trust-list{opacity:0;transform:translateY(18px);animation:fadeUp .7s .7s ease forwards}.hero-kicker{animation-delay:.1s}.hero-lead{max-width:39rem;margin:2rem 0;color:rgba(255,253,248,.77);font-size:clamp(1rem,1.15vw,1.15rem);line-height:1.75;animation-delay:.72s}.hero-actions{display:flex;align-items:center;gap:1.5rem;animation-delay:.86s}.hero-actions .text-link{color:var(--white)}.trust-list{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.8rem);padding:2rem 0 0;margin:2.5rem 0 0;border-top:1px solid rgba(255,255,255,.15);list-style:none;color:rgba(255,253,248,.62);font-size:.72rem;animation-delay:1s}.trust-list strong{display:block;color:var(--white);font-family:var(--serif);font-size:1.45rem;font-weight:500;line-height:1.1}.trust-mark{display:inline-block;width:.45rem;height:.45rem;margin-right:.5rem;border-radius:50%;background:var(--gold)}.hero-note{position:absolute;z-index:2;right:var(--pad);bottom:6.3rem;margin:0;padding:.95rem 1.3rem;background:rgba(245,241,232,.94);color:var(--forest);font-family:var(--serif);font-size:1.15rem;box-shadow:0 18px 45px rgba(0,0,0,.16)}.hero-note span{margin-right:1rem;color:#906f38;font-family:var(--sans);font-size:.64rem}.scroll-cue{position:absolute;z-index:2;left:var(--pad);bottom:1.8rem;display:flex;align-items:center;gap:.75rem;color:rgba(255,253,248,.58);font-size:.65rem;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}.scroll-cue span{width:2.8rem;height:1px;background:var(--gold)}
.manifesto{overflow:hidden}.manifesto>.section-index{margin-bottom:clamp(3rem,6vw,6rem)}.manifesto-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(280px,.62fr);gap:clamp(2rem,7vw,8rem);align-items:start}.manifesto-copy{padding-top:clamp(0rem,4vw,4rem)}.manifesto-copy h2{font-size:clamp(3.3rem,5.4vw,6.8rem)}.manifesto-copy>p:last-child{max-width:38rem;margin:0;color:var(--muted);font-size:1rem;line-height:1.9}.manifesto-photo{position:relative;margin:0}.manifesto-photo:before{content:"";position:absolute;z-index:-1;inset:-2.3rem 2.2rem 2.2rem -2.3rem;border:1px solid rgba(154,121,65,.34)}.manifesto-photo img{width:100%;aspect-ratio:4/5.2;object-fit:cover;border-radius:14rem 14rem 1rem 1rem}.manifesto-photo figcaption{padding-top:1rem;color:var(--muted);font-size:.74rem}.manifesto-quote{grid-column:1/-1;width:min(52rem,75%);margin:1rem 0 0 auto;padding:2rem 0 0;border-top:1px solid #cfc8ba;color:var(--forest);font-family:var(--serif);font-size:clamp(2rem,3.4vw,4rem);font-style:italic;line-height:1.08}
.ritual{background:var(--forest);color:var(--white);overflow:hidden}.ritual-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:clamp(3rem,6vw,6.5rem)}.ritual-head h2 em{color:var(--gold-light)}.ritual-head>p{max-width:27rem;margin:0;color:rgba(255,253,248,.64);line-height:1.8}.ritual-layout{display:grid;grid-template-columns:minmax(340px,1.03fr) minmax(330px,.8fr);gap:clamp(3rem,8vw,10rem);align-items:start}.ritual-visual{position:sticky;top:8rem}.ritual-visual:after{content:"";position:absolute;inset:auto -2rem -2rem 2rem;height:45%;border:1px solid rgba(201,168,106,.24);z-index:-1}.ritual-visual img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:1rem}.ritual-stamp{position:absolute;right:-2.2rem;bottom:-2.2rem;width:8rem;height:8rem;display:grid;place-content:center;border-radius:50%;background:var(--ivory);color:var(--forest);text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.18)}.ritual-stamp span{font-family:var(--serif);font-size:2.1rem;line-height:1}.ritual-stamp small{max-width:5rem;margin-top:.3rem;font-size:.55rem;letter-spacing:.12em;text-transform:uppercase}.ritual-steps{position:relative;padding-left:2.3rem}.ritual-track{position:absolute;left:0;top:1rem;bottom:1rem;width:1px;background:rgba(255,255,255,.14)}.ritual-track span{display:block;width:100%;height:20%;background:var(--gold);transition:height .45s ease}.ritual-step{min-height:10rem;display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1rem 0 2.5rem;opacity:.38;transition:opacity .4s,transform .4s}.ritual-step.active{opacity:1;transform:translateX(.5rem)}.ritual-step>span{color:var(--gold-light);font-size:.7rem}.ritual-step h3{margin:-.3rem 0 .6rem;font-family:var(--serif);font-size:clamp(2.2rem,3vw,3.7rem);font-weight:400;line-height:1}.ritual-step p{max-width:26rem;margin:0;color:rgba(255,253,248,.64);font-size:.9rem;line-height:1.75}
.services{background:#efebe2}.services-title{display:grid;grid-template-columns:.5fr 1.35fr .7fr;gap:2rem;align-items:end;margin-bottom:clamp(3rem,6vw,6rem)}.services-title h2{grid-column:2}.services-title>p{max-width:24rem;margin:0;color:var(--muted);line-height:1.8}.service-grid{display:grid;grid-template-columns:1.15fr .85fr 1fr}.service{min-height:23rem;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid #cfc9be;background:rgba(255,255,255,.22);transition:transform .3s,background .3s}.service:nth-child(2),.service:nth-child(5){margin-top:3rem}.service:hover{position:relative;z-index:2;transform:translateY(-6px);background:rgba(255,255,255,.58)}.service-featured{background:var(--gold);min-height:27rem}.service-warm{background:#ded4c1}.service-dark{background:var(--forest);color:var(--white)}.service-no{color:#8a7653;font-size:.68rem}.service-dark .service-no{color:var(--gold-light)}.service h3{margin:0 0 1rem;font-family:var(--serif);font-size:clamp(2rem,3vw,3.4rem);font-weight:400;line-height:1}.service p{max-width:25rem;margin:0 0 1.7rem;color:#60665e;font-size:.9rem}.service-dark p{color:rgba(255,253,248,.66)}.service a{position:relative;display:inline-block;color:inherit;text-decoration:none;font-size:.74rem}.service-tag{color:var(--forest)!important;font-size:.64rem!important;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.difference{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(3rem,9vw,11rem);background:#d8cec0}.difference-intro h2{font-size:clamp(3.2rem,5vw,6rem)}.difference-list>div{display:grid;grid-template-columns:3.5rem 1fr;align-items:center;min-height:5.8rem;border-bottom:1px solid rgba(32,35,31,.18)}.difference-list span{color:#866a3a;font-size:.67rem}.difference-list h3{margin:0;font-family:var(--serif);font-size:clamp(1.45rem,2vw,2.3rem);font-weight:400}
.gallery{overflow:hidden}.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:4rem}.gallery-head>p{max-width:25rem;color:var(--muted)}.gallery-grid{height:clamp(48rem,72vw,73rem);display:grid;grid-template-columns:1.05fr .82fr .72fr;grid-template-rows:1.08fr .74fr 1.05fr;gap:1rem}.gallery-item{position:relative;overflow:hidden;margin:0;border-radius:.35rem}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1)}.gallery-item:hover img{transform:scale(1.035)}.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(8,25,20,.62))}.gallery-item figcaption{position:absolute;z-index:2;left:1.2rem;bottom:1rem;color:var(--white);font-family:var(--serif);font-size:1.2rem}.gallery-a{grid-column:1;grid-row:1/3}.gallery-b{grid-column:2/4;grid-row:1}.gallery-c{grid-column:2;grid-row:2/4}.gallery-d{grid-column:1;grid-row:3}.gallery-grid:after{content:"Cuidado que se vê";grid-column:3;grid-row:2/4;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--forest);color:var(--gold-light);font-family:var(--serif);font-size:clamp(2rem,3.3vw,4rem);font-style:italic;text-align:center;line-height:1}
.testimonials{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,9vw,10rem);background:var(--forest);color:var(--white)}.testimonial-title{position:sticky;top:8rem;align-self:start}.testimonial-title h2 em{color:var(--gold-light)}.testimonial-title>p:last-child{max-width:25rem;color:rgba(255,253,248,.6)}.testimonial{margin:0;padding:2.8rem 0;border-top:1px solid rgba(255,255,255,.16)}.testimonial:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.stars{color:var(--gold-light);font-size:.62rem;letter-spacing:.35em}.testimonial>p{max-width:42rem;margin:1.4rem 0 2rem;font-family:var(--serif);font-size:clamp(1.8rem,2.7vw,3rem);line-height:1.16}.testimonial footer{display:flex;align-items:center;gap:1rem}.testimonial footer>span{width:2.5rem;height:2.5rem;display:grid;place-content:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:var(--gold-light);font-size:.62rem}.testimonial footer strong,.testimonial footer small{display:block}.testimonial footer strong{font-size:.75rem}.testimonial footer small{color:rgba(255,253,248,.5);font-size:.65rem}
.about{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(320px,1fr);gap:clamp(3rem,10vw,12rem);align-items:center}.about-photo{position:relative;margin:0}.about-photo:before{content:"";position:absolute;z-index:-1;inset:2rem -2rem -2rem 2rem;background:#d7ccba}.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:1rem 11rem 1rem 1rem}.about-photo figcaption{display:flex;justify-content:space-between;padding-top:1rem;color:var(--muted);font-size:.68rem}.about-copy .section-index{margin-bottom:4rem}.about-copy h2{margin-bottom:2rem}.about-lead{font-family:var(--serif);font-size:clamp(1.6rem,2.4vw,2.5rem);line-height:1.2}.about-copy>p:not(.eyebrow):not(.about-lead){max-width:35rem;color:var(--muted);line-height:1.9}.dark-link{display:inline-block;margin-top:1rem;color:var(--forest)}
.final-cta{position:relative;overflow:hidden;background:var(--forest);color:var(--white);text-align:center}.final-cta>*:not(.cta-ring){position:relative;z-index:1}.final-cta h2{max-width:70rem;margin:0 auto}.final-cta h2 em{display:block;color:var(--gold-light)}.final-cta>p:not(.eyebrow){margin:2rem 0;color:rgba(255,253,248,.63)}.cta-ring{position:absolute;width:50rem;aspect-ratio:1;left:50%;top:50%;border:1px solid rgba(201,168,106,.14);border-radius:50%;transform:translate(-50%,-50%)}.cta-ring:after{content:"";position:absolute;inset:15%;border:1px solid rgba(255,255,255,.06);border-radius:50%}
.contact{background:#eeeae1}.contact-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:4rem}.contact-head h2{font-size:clamp(3rem,5vw,6rem)}.contact-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,6vw,7rem)}.contact-map{position:relative;min-height:30rem;overflow:hidden;background:#d8d1c5;border-radius:1rem}.map-streets{position:absolute;inset:-15%;background:linear-gradient(32deg,transparent 47%,rgba(255,255,255,.75) 48% 51%,transparent 52%),linear-gradient(114deg,transparent 37%,rgba(255,255,255,.48) 38% 41%,transparent 42%),linear-gradient(168deg,transparent 59%,rgba(255,255,255,.65) 60% 63%,transparent 64%)}.map-streets:after{content:"";position:absolute;inset:18%;border:1px solid rgba(16,44,36,.14);border-radius:50% 20% 50% 40%}.map-pin{position:absolute;left:54%;top:47%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;background:var(--white);box-shadow:0 14px 35px rgba(16,44,36,.15)}.map-pin>span{width:2.4rem;height:2.4rem;display:grid;place-content:center;border-radius:50%;background:var(--forest);color:var(--gold-light);font-family:var(--serif);font-size:1.2rem}.map-pin p{margin:0;font-size:.72rem;font-weight:700}.map-pin small{display:block;color:var(--muted);font-size:.6rem;font-weight:400}.contact-map>small{position:absolute;left:1rem;bottom:1rem;color:var(--muted);font-size:.62rem}.contact-details>div{display:grid;grid-template-columns:2.8rem 1fr;padding:1.8rem 0;border-top:1px solid #c9c2b7}.contact-details>div:last-child{border-bottom:1px solid #c9c2b7}.contact-details span{grid-row:1/3;color:#8e713e;font-size:.65rem}.contact-details p{margin:0 0 .45rem;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em}.contact-details strong{font-family:var(--serif);font-size:1.4rem;font-weight:400;line-height:1.5}.contact-details strong a{display:block;color:inherit;text-decoration:none}
.footer{padding:5rem var(--pad) 1.6rem;background:#0a211a;color:var(--white)}.footer-top{display:grid;grid-template-columns:.7fr 1fr auto;gap:3rem;align-items:center;padding-bottom:3.5rem;border-bottom:1px solid rgba(255,255,255,.13)}.footer-top>p{max-width:28rem;color:rgba(255,253,248,.56)}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:3.5rem 0}.footer-grid h3{margin:0 0 1.3rem;color:var(--gold-light);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase}.footer-grid a,.footer-grid span{display:block;margin:.55rem 0;color:rgba(255,253,248,.63);font-size:.78rem;text-decoration:none}.footer-grid a:hover{color:var(--white)}.footer-bottom{display:grid;grid-template-columns:1fr auto auto;gap:2rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,253,248,.4);font-size:.6rem}.footer-bottom p{margin:0}
.reveal{opacity:0;transform:translateY(2rem);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.image-reveal{clip-path:inset(0 0 100% 0);transition:clip-path 1s cubic-bezier(.2,.7,.2,1),opacity .6s,transform .6s}.image-reveal.is-visible{clip-path:inset(0 0 0 0)}
@keyframes lineReveal{to{clip-path:inset(0 0 0 0)}}@keyframes fadeUp{to{opacity:1;transform:none}}@keyframes heroZoom{to{transform:scale(1)}}
@media(max-width:1120px){.desktop-nav{display:none}.menu-toggle{display:grid;gap:6px;margin-left:auto;padding:.8rem;border:0;background:transparent;cursor:pointer}.menu-toggle span{display:block;width:26px;height:1px;background:var(--white);transition:transform .25s}.header-cta{margin-left:auto}.services-title{grid-template-columns:.5fr 1.5fr}.services-title>p{grid-column:2}.gallery-grid{height:64rem}.ritual-layout{gap:4rem}.hero-copy{width:72%}}
@media(max-width:820px){:root{--pad:clamp(1.25rem,5vw,2.5rem)}.site-header{height:5.4rem}.header-cta{display:none}.mobile-menu{display:flex;position:fixed;z-index:90;inset:0;padding:8rem var(--pad) 2rem;background:var(--forest);color:var(--white);flex-direction:column;justify-content:space-between;opacity:0;visibility:hidden;transform:translateY(-1rem);transition:.3s}.mobile-menu.open{opacity:1;visibility:visible;transform:none}.mobile-menu nav{display:grid}.mobile-menu nav a{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.12);color:inherit;font-family:var(--serif);font-size:clamp(2rem,8vw,3rem);line-height:1.15;text-decoration:none}.mobile-menu>div p{color:rgba(255,255,255,.52);font-size:.72rem}.mobile-menu .button{width:100%}.menu-toggle.active span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.active span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{min-height:auto;display:block;padding:8.2rem var(--pad) 2rem}.hero-photo{position:relative;inset:auto;height:60vh;min-height:25rem;margin:2.5rem calc(var(--pad)*-1) 0 2rem;border-radius:10rem 0 0 1rem}.hero-photo:after{background:linear-gradient(180deg,transparent 50%,rgba(16,44,36,.55))}.hero-copy{width:100%}.hero h1{font-size:clamp(3.75rem,13vw,6rem)}.hero h1 em{margin-left:1.2rem}.hero-note{right:1rem;bottom:4rem}.scroll-cue{display:none}.trust-list{flex-wrap:wrap}.manifesto-grid,.ritual-layout,.difference,.testimonials,.about,.contact-grid{grid-template-columns:1fr}.manifesto-photo{width:82%;margin-left:auto}.manifesto-quote{width:100%}.ritual-head,.gallery-head{display:block}.ritual-head>p,.gallery-head>p{margin-top:1.5rem}.ritual-visual{position:relative;top:auto;margin-right:1.5rem}.ritual-steps{padding-top:2rem}.services-title{grid-template-columns:1fr}.services-title h2,.services-title>p{grid-column:1}.service-grid{grid-template-columns:1fr 1fr}.service:nth-child(2),.service:nth-child(5){margin-top:0}.service{min-height:22rem}.difference-list{margin-top:1rem}.gallery-grid{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:25rem 18rem 25rem}.gallery-a{grid-column:1;grid-row:1/3}.gallery-b{grid-column:2;grid-row:1}.gallery-c{grid-column:2;grid-row:2/4}.gallery-d{grid-column:1;grid-row:3}.gallery-grid:after{display:none}.testimonial-title{position:relative;top:auto}.about-photo{width:82%}.contact-head{display:block}.footer-top{grid-template-columns:1fr auto}.footer-top>p{grid-column:1/-1;grid-row:2}.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-bottom{grid-template-columns:1fr}.reveal{transform:translateY(1.2rem)}}
@media(max-width:560px){.section-pad{padding-top:5.6rem;padding-bottom:5.6rem}.hero{padding-top:7.5rem}.hero h1{font-size:clamp(3.45rem,16vw,5.3rem);line-height:.86}.hero-lead{margin:1.5rem 0}.hero-actions{align-items:stretch;flex-direction:column;gap:.5rem}.hero-actions .button{width:100%}.hero-actions .text-link{text-align:center}.trust-list{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.5rem;padding-top:1.5rem}.trust-list li:last-child{grid-column:1/-1}.hero-photo{height:53vh;min-height:22rem;margin-left:1.2rem}.hero-note{bottom:3.2rem;font-size:1rem}.manifesto>.section-index{margin-bottom:3rem}.manifesto-grid{gap:3rem}.manifesto-photo{width:90%}.manifesto-photo:before{inset:-1rem 1rem 1rem -1rem}.manifesto-quote{font-size:2.3rem}.ritual-head{margin-bottom:3rem}.ritual-visual{margin-right:.8rem}.ritual-stamp{right:-.8rem;bottom:-1.2rem;width:6.8rem;height:6.8rem}.ritual-step{min-height:9rem;grid-template-columns:2.5rem 1fr}.service-grid{display:block}.service{min-height:18rem;margin:0!important;padding:1.6rem;border-left:1px solid #d5cec1}.service-featured{min-height:21rem}.service:hover{transform:none}.difference{gap:3rem}.difference-list h3{font-size:1.5rem}.gallery-head{margin-bottom:2.5rem}.gallery-grid{grid-template-columns:1.12fr .88fr;grid-template-rows:19rem 14rem 19rem;gap:.6rem}.gallery-item figcaption{left:.8rem;bottom:.7rem;font-size:.9rem}.testimonials{gap:2rem}.testimonial{padding:2.2rem 0}.testimonial>p{font-size:1.75rem}.about{gap:4rem}.about-photo{width:90%}.about-photo:before{inset:1rem -1rem -1rem 1rem}.about-copy .section-index{margin-bottom:2.5rem}.final-cta h2{font-size:clamp(2.85rem,13vw,4.3rem)}.contact-map{min-height:23rem}.map-pin{left:50%;white-space:nowrap}.footer{padding-top:4rem}.footer-top{display:block}.footer-top>p{margin:1.5rem 0}.footer-top .button{width:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{gap:.7rem}.brand span{font-size:1.45rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}.hero-photo img{transform:none}.reveal{opacity:1;transform:none}.image-reveal{clip-path:none}}

/* Refinamentos de ritmo: preservam o espaço editorial sem criar telas vazias. */
.manifesto,.services,.difference,.gallery,.testimonials,.about{padding-top:clamp(4.8rem,7vw,7.5rem);padding-bottom:clamp(4.8rem,7vw,7.5rem)}
.manifesto>.section-index{margin-bottom:clamp(2.5rem,4vw,4.5rem)}
.manifesto-grid{grid-template-columns:minmax(0,1.05fr) minmax(300px,.7fr);grid-template-rows:auto 1fr;gap:clamp(2rem,5vw,6rem)}
.manifesto-photo{grid-column:2;grid-row:1 / span 2;align-self:stretch}
.manifesto-photo img{height:100%;min-height:31rem;aspect-ratio:auto}
.manifesto-quote{grid-column:1;grid-row:2;width:min(37rem,100%);align-self:end;margin:clamp(2rem,4vw,4rem) 0 0;padding-top:1.6rem;font-size:clamp(2rem,3vw,3.35rem)}
.services-title{margin-bottom:clamp(2.8rem,4vw,4.5rem)}
.service{min-height:clamp(20rem,21vw,23rem);padding:clamp(1.65rem,2.25vw,2.35rem)}
.service-featured{min-height:clamp(23rem,24vw,26rem)}
.service h3{line-height:1.04}.service p{line-height:1.72}
.service a{padding-right:1.35rem;font-weight:700;letter-spacing:.01em}
.service a:before{content:"→";position:absolute;right:0;top:50%;color:currentColor;transform:translateY(-50%);transition:transform .25s ease}
.service a:hover:before,.service a:focus-visible:before{transform:translate(.22rem,-50%)}
.difference{gap:clamp(3rem,6vw,7.5rem)}
.difference-list>div{min-height:5.25rem}
.gallery-head{margin-bottom:clamp(2.6rem,4vw,4rem)}
.gallery-grid{height:clamp(40rem,56vw,60rem)}
.gallery .reveal{opacity:1;transform:none;transition:none}
.gallery .image-reveal{clip-path:inset(0);transition:clip-path .6s ease}
.gallery-item{box-shadow:0 1px 0 rgba(16,44,36,.08)}
.testimonials{gap:clamp(3rem,6vw,7.5rem)}
.testimonials .reveal{opacity:1;transform:none;transition:none}
.testimonial{content-visibility:visible}
.about{grid-template-columns:minmax(340px,.95fr) minmax(330px,1fr);gap:clamp(3rem,7vw,8rem)}
.about-copy .section-index{margin-bottom:clamp(2.25rem,3.5vw,3.5rem)}
.about-copy h2{margin-bottom:1.5rem}.about-copy>p:not(.eyebrow):not(.about-lead){line-height:1.78}

@media(max-width:820px){
  .manifesto-grid{display:flex;flex-direction:column;gap:2rem}
  .manifesto-photo{grid-column:auto;grid-row:auto;align-self:flex-end}
  .manifesto-photo img{height:auto;min-height:0;aspect-ratio:4/5.2}
  .manifesto-quote{grid-column:auto;grid-row:auto;width:100%;margin:.5rem 0 0;align-self:auto}
  .gallery-grid{height:auto}
  .about{grid-template-columns:1fr;gap:3.5rem}
}

@media(prefers-reduced-motion:reduce){
  .gallery .image-reveal{clip-path:none}
}

/* Segunda rodada: mosaicos estáveis e contato com presença editorial. */
a,button{cursor:pointer}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(20rem,20vw,22.5rem);align-items:stretch;gap:0}
.service{--service-offset:0rem;height:100%;min-height:0;margin:0!important;padding:clamp(1.6rem,2vw,2.15rem);transform:translateY(var(--service-offset));border:1px solid rgba(16,44,36,.1);border-left:0;transition:transform .24s ease,background-color .24s ease,color .24s ease,box-shadow .24s ease}
.service:nth-child(2),.service:nth-child(5){--service-offset:clamp(1rem,1.8vw,1.75rem)}
.service:nth-child(2),.service:nth-child(4),.service:nth-child(6){background:rgba(255,253,248,.48)}
.service-featured{min-height:0}.service h3{max-width:12ch;font-size:clamp(1.9rem,2.45vw,2.85rem)}.service p{max-width:28ch;margin-bottom:1.35rem}
.service a{display:inline-flex;align-items:center;min-height:2.75rem;width:max-content}.service:hover{z-index:2;transform:translateY(calc(var(--service-offset) - 3px));box-shadow:0 14px 28px rgba(16,44,36,.09)}
.service-dark:hover{background:var(--forest-2)}.service-featured:hover{background:var(--gold-light)}
.gallery-grid:after{content:none;display:none}.gallery-editorial{position:relative;grid-column:3;grid-row:2/4;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:clamp(1.25rem,2.4vw,2.25rem);background:var(--forest);color:var(--gold-light)}
.gallery-editorial:before{content:"";position:absolute;top:1.35rem;left:1.35rem;right:1.35rem;height:1px;background:rgba(221,194,142,.35)}.gallery-editorial:after{content:"";position:absolute;width:15rem;aspect-ratio:1;right:-7.5rem;top:-7.5rem;border:1px solid rgba(221,194,142,.2);border-radius:50%}
.gallery-editorial p{position:absolute;top:2rem;left:1.35rem;margin:0;font-size:.61rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.gallery-editorial>span{position:absolute;right:1.35rem;top:1.7rem;font-size:.68rem;letter-spacing:.12em}.gallery-editorial h3{position:relative;z-index:1;margin:0;font-family:var(--serif);font-size:clamp(2.05rem,3.2vw,3.85rem);font-weight:400;line-height:.93;letter-spacing:-.035em}.gallery-editorial em{color:var(--gold-light);font-style:italic}
.gallery-a img{object-position:50% 40%}.gallery-b img{object-position:50% 48%}.gallery-c img{object-position:52% 50%}.gallery-d img{object-position:50% 35%}.gallery-item:hover img{transform:scale(1.015)}
.contact{display:grid;grid-template-columns:minmax(280px,.77fr) minmax(380px,1.23fr);gap:clamp(3rem,8vw,10rem);align-items:center;padding-top:clamp(4.8rem,7vw,7.5rem);padding-bottom:clamp(4.8rem,7vw,7.5rem);border-top:1px solid rgba(16,44,36,.11)}
.contact-copy h2{font-size:clamp(3.6rem,5.6vw,6.6rem)}.contact-lead{max-width:27rem;margin:1.7rem 0 0;color:var(--muted);line-height:1.8}.contact-cta{margin-top:2.15rem}.contact-cta span{display:inline-block;margin-left:.55rem;transition:transform .25s ease}.contact-cta:hover span,.contact-cta:focus-visible span{transform:translateX(.25rem)}
.contact-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:3.5rem}.contact-meta>div{padding-top:1rem;border-top:1px solid #c9c2b7}.contact-meta span,.contact-meta strong{display:block}.contact-meta span{margin-bottom:.48rem;color:#8e713e;font-size:.61rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-meta strong{font-family:var(--serif);font-size:1.08rem;font-weight:400;line-height:1.35}.contact-meta strong a{display:block;width:max-content;color:inherit;text-decoration:none}.contact-meta strong a:hover{text-decoration:underline;text-underline-offset:.18rem}
.contact-visual{position:relative;min-height:32rem;margin:0;overflow:hidden;border-radius:1rem}.contact-visual img{width:100%;height:100%;object-fit:cover;object-position:52% 44%}.contact-visual figcaption{position:absolute;right:1.25rem;bottom:1.25rem;left:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 1.15rem;background:rgba(245,241,232,.94);color:var(--forest);box-shadow:0 12px 30px rgba(16,44,36,.13)}.contact-visual figcaption span,.contact-visual figcaption strong{display:block}.contact-visual figcaption span{font-size:.6rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.contact-visual figcaption strong{font-family:var(--serif);font-size:1.35rem;font-weight:400}.contact-visual figcaption a{display:inline-flex;align-items:center;gap:.45rem;color:inherit;font-size:.7rem;font-weight:700;text-decoration:none}.contact-visual figcaption a span{font-size:1rem;transition:transform .25s ease}.contact-visual figcaption a:hover span{transform:translateX(.22rem)}
.footer{padding-top:4.4rem}.footer-top{padding-bottom:2.8rem}.footer-grid{padding:2.8rem 0}.footer-bottom{align-items:start}

@media(max-width:820px){
  .service-grid{grid-auto-rows:auto;gap:.75rem}.service{height:auto;min-height:18rem;transform:none!important;border-left:1px solid rgba(16,44,36,.1)}.service:hover{transform:none;box-shadow:none}
  .gallery-grid{grid-template-columns:1.12fr .88fr;grid-template-rows:20rem 15rem 20rem 11rem}.gallery-editorial{grid-column:1/-1;grid-row:4;min-height:11rem}.gallery-editorial h3{font-size:clamp(2rem,5vw,3.3rem)}
  .contact{grid-template-columns:1fr;gap:2.7rem}.contact-visual{min-height:28rem}.contact-meta{max-width:42rem}
}

@media(max-width:560px){
  .service-grid{display:grid;grid-template-columns:1fr;gap:.7rem}.service{min-height:17.5rem;padding:1.55rem}.service-featured{min-height:18.5rem}
  .gallery-grid{grid-template-rows:19rem 14rem 18rem 10.5rem;gap:.6rem}.gallery-editorial{min-height:10.5rem;padding:1.1rem}.gallery-editorial:before{top:1.1rem;left:1.1rem;right:1.1rem}.gallery-editorial p{top:1.55rem;left:1.1rem}.gallery-editorial>span{top:1.36rem;right:1.1rem}.gallery-editorial h3{font-size:2.15rem}
  .contact{gap:2.25rem}.contact-copy h2{font-size:clamp(3.25rem,15vw,4.4rem)}.contact-cta{width:100%}.contact-meta{grid-template-columns:1fr;gap:.85rem;margin-top:2.7rem}.contact-visual{min-height:22rem}.contact-visual figcaption{right:.8rem;bottom:.8rem;left:.8rem;gap:.75rem;padding:.8rem}.contact-visual figcaption strong{font-size:1.12rem}
}
