@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--wine:#5b0b23;--wine-deep:#350817;--wine-dark:#270611;--rose:#d94c78;--rose-soft:#f2c5ce;--rose-pale:#fff3f2;--cream:#fffaf5;--gold:#c99a5d;--gold-light:#ead0a3;--ink:#32151f;--muted:#806871;--line:rgba(91,11,35,.16);--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--shadow:0 22px 60px rgba(52,7,22,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:0;background:var(--wine);color:white;padding:12px;z-index:100}.skip-link:focus{left:12px;top:12px}.site-header{position:sticky;z-index:40;top:0;background:rgba(255,250,245,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(91,11,35,.09)}.nav-wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand,.footer-brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img{width:58px;height:58px;object-fit:cover;border-radius:50%;border:1px solid rgba(91,11,35,.08)}.brand span,.footer-brand span{display:grid;line-height:1.25}.brand strong,.footer-brand strong{font-family:var(--serif);font-size:1.35rem;font-weight:500;color:var(--wine)}.brand small,.footer-brand small{font-size:.65rem;letter-spacing:.045em;color:var(--muted);margin-top:5px}.navigation{display:flex;align-items:center;gap:30px;font-size:.82rem;font-weight:600;color:#6b4351}.navigation a{transition:color .2s}.navigation a:hover{color:var(--rose)}.navigation .nav-cta{border:1px solid var(--wine);padding:10px 20px;border-radius:3px;color:var(--wine)}.navigation .nav-cta:hover{background:var(--wine);color:white}.menu-toggle{display:none;border:0;background:none;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--wine);margin:5px 0}
.hero{position:relative;overflow:hidden;background:linear-gradient(112deg,var(--wine-deep),var(--wine) 58%,#74132f);color:var(--rose-pale);padding:78px 0 96px;isolation:isolate}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center;position:relative;z-index:2}.hero-copy{padding:24px 0 14px;max-width:590px}.eyebrow{text-transform:uppercase;letter-spacing:.21em;font-size:.68rem;font-weight:700;color:var(--rose);margin:0 0 20px}.hero .eyebrow{color:var(--gold-light);display:flex;align-items:center;gap:13px}.eyebrow-line{height:1px;width:36px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.13;letter-spacing:-.025em}h1{font-size:clamp(3.1rem,5.5vw,5.2rem);max-width:640px;margin-bottom:24px}h1 em,h2 em{font-weight:400;color:var(--rose);font-style:italic}.hero h1 em{color:#e7a0b5}.hero-text{font-size:1rem;line-height:1.9;color:rgba(255,243,242,.82);max-width:510px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:52px;padding:14px 21px;font-size:.8rem;font-weight:700;letter-spacing:.01em;border:1px solid transparent;transition:transform .2s,background .2s,border .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold-light);color:var(--wine-deep)}.button-gold:hover{background:#f1dcba}.text-link{color:var(--rose-pale);font-size:.78rem;border-bottom:1px solid rgba(255,255,255,.35);padding:0 0 5px}.text-link span{margin-left:9px;color:var(--gold-light)}.hero-note{display:flex;align-items:center;gap:12px;margin-top:58px;font-size:.76rem;color:#edcbd2}.note-star{color:var(--gold);font-size:1.35rem}.hero-visual{position:relative;padding:0 30px 34px 0;max-width:500px;justify-self:end;width:100%}.hero-photo-frame{position:relative;overflow:hidden;width:100%;height:575px;max-height:68vw;border-radius:47% 47% 3px 3px / 32% 32% 3px 3px;border:1px solid rgba(234,208,163,.65);box-shadow:0 28px 70px rgba(0,0,0,.28)}.hero-photo-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(44,4,15,.30),transparent 40%);pointer-events:none}.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.photo-caption{position:absolute;right:0;bottom:0;width:76%;display:flex;align-items:center;gap:13px;background:var(--cream);color:var(--wine);padding:18px 21px;font-family:var(--serif);font-style:italic;font-size:.96rem;line-height:1.45;box-shadow:var(--shadow)}.caption-mark{color:var(--rose);font-size:1.4rem}.hero-seal{position:absolute;top:26px;left:-38px;display:flex;align-items:center;gap:11px;background:rgba(255,250,245,.96);color:var(--wine);border:1px solid var(--gold);padding:9px 14px 9px 9px;box-shadow:var(--shadow);font-family:var(--serif);font-size:.83rem;line-height:1.25}.hero-seal img{width:58px;height:58px;object-fit:cover;border-radius:50%}.hero-orb{position:absolute;border:1px solid rgba(234,208,163,.13);border-radius:50%;z-index:-1}.hero-orb-one{width:570px;height:570px;right:-210px;top:-190px}.hero-orb-two{width:370px;height:370px;left:-220px;bottom:-250px}.hero-bottom-line{position:absolute;bottom:0;left:0;height:7px;width:100%;background:linear-gradient(90deg,var(--rose),var(--gold),var(--rose-soft))}
.section-pad{padding:105px 0}.intro-section{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:.7fr 1.25fr .85fr;gap:45px;align-items:start}.section-kicker{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.15em;font-size:.65rem;font-weight:700;color:var(--muted);white-space:nowrap}.section-kicker>span:first-child{font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--rose)}.kicker-line{display:inline-block;width:30px;height:1px;background:var(--gold)}.intro-content{max-width:520px}.intro-content h2,.section-heading h2,.space-copy h2,.gallery-heading h2,.reviews-copy h2,.contact-top h2{font-size:clamp(2.4rem,4vw,3.55rem);margin-bottom:24px}.intro-content p:not(.eyebrow){color:#71515d;font-size:.93rem;line-height:1.95}.signature{display:flex;align-items:center;gap:15px;margin-top:31px;color:var(--wine);font-family:var(--serif);font-size:1.5rem;font-style:italic}.signature-line{width:52px;height:1px;background:var(--gold)}.intro-aside{padding-top:28px}.intro-aside img{width:100%;height:365px;object-fit:cover;object-position:center 35%;box-shadow:var(--shadow)}.aside-caption{display:flex;justify-content:space-between;gap:15px;padding-top:13px;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.services-section{background:#f7e6e7;position:relative;overflow:hidden}.services-section:before{content:'';position:absolute;width:470px;height:470px;border:1px solid rgba(91,11,35,.08);border-radius:50%;left:-250px;top:30px}.section-heading{text-align:center;position:relative}.centered-kicker{justify-content:center}.section-heading .eyebrow{margin-top:25px;margin-bottom:13px}.section-heading h2{margin-bottom:18px}.section-lede{max-width:610px;margin:0 auto;color:var(--muted);font-size:.88rem}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:48px;position:relative}.service-card{background:rgba(255,250,245,.91);border:1px solid rgba(91,11,35,.1);padding:29px 27px 25px;min-height:405px;display:flex;flex-direction:column;box-shadow:0 12px 35px rgba(91,11,35,.04);transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card-featured{background:var(--wine);color:var(--rose-pale);border-color:var(--gold);transform:translateY(-10px)}.service-card-featured:hover{transform:translateY(-15px)}.service-index{display:flex;justify-content:space-between;color:#9f7b80;font-size:.68rem;letter-spacing:.1em}.service-card-featured .service-index{color:#e7b6c1}.service-index span{color:var(--gold);font-size:1rem}.service-symbol{margin:24px 0 17px;width:54px;height:54px;display:grid;place-items:center;background:#f8e1e3;border-radius:50%}.service-symbol svg{width:34px;height:34px;fill:none;stroke:var(--wine);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.service-card-featured .service-symbol{background:rgba(242,197,206,.15)}.service-card-featured .service-symbol svg{stroke:var(--rose-soft)}.service-card h3{font-family:var(--serif);font-size:1.55rem;font-weight:400;line-height:1.25;margin-bottom:12px;color:var(--wine)}.service-card-featured h3{color:var(--rose-pale)}.service-card>p{font-size:.81rem;line-height:1.8;color:var(--muted);min-height:74px;margin-bottom:22px}.service-card-featured>p{color:#e0c7ce}.service-price{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:auto}.service-card-featured .service-price{border-color:rgba(255,255,255,.18)}.service-price strong{font-family:var(--serif);font-size:1.52rem;font-weight:500;color:var(--wine)}.service-card-featured .service-price strong{color:var(--gold-light)}.service-price span{font-size:.72rem;color:var(--muted);white-space:nowrap}.service-card-featured .service-price span{color:#e0c7ce}.service-link{display:flex;justify-content:space-between;align-items:center;margin-top:17px;padding-top:15px;border-top:1px solid var(--line);font-size:.72rem;font-weight:700;color:var(--wine)}.service-card-featured .service-link{border-color:rgba(255,255,255,.18);color:var(--rose-pale)}.service-link span{color:var(--rose);font-size:1rem}.pricing-note{text-align:center;margin:29px auto 0;font-size:.7rem;color:var(--muted)}
.space-section{background:var(--cream)}.space-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}.space-copy .eyebrow{margin-top:25px}.space-copy h2{max-width:465px}.space-copy>p:not(.eyebrow){font-size:.9rem;color:var(--muted);line-height:1.9;max-width:440px}.location-line{display:flex;gap:15px;align-items:center;margin:29px 0 27px}.location-icon{width:48px;height:48px;display:grid;place-items:center;background:#f8e1e3;color:var(--wine);font-size:1.7rem;border-radius:50%}.location-line div{display:grid;line-height:1.45}.location-line strong{font-size:.9rem;color:var(--wine)}.location-line div span{font-size:.75rem;color:var(--muted);margin-top:5px}.button-dark{background:var(--wine);color:var(--cream)}.button-dark:hover{background:var(--wine-deep)}.space-gallery{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:370px 110px;gap:13px;position:relative}.space-gallery figure{margin:0;overflow:hidden;position:relative}.space-gallery img{width:100%;height:100%;object-fit:cover}.space-main-photo{grid-row:1/3;border-radius:46% 46% 2px 2px / 25% 25% 2px 2px}.space-main-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(53,8,23,.52),transparent 45%)}.space-main-photo figcaption{position:absolute;z-index:2;bottom:22px;left:20px;right:20px;color:white;font-family:var(--serif);font-size:1.25rem;font-style:italic;line-height:1.3}.space-small-photo{align-self:end;height:300px;border-radius:3px}.gallery-decoration{grid-column:2;display:flex;align-items:center;gap:10px;border-top:1px solid var(--gold);color:var(--muted);font-size:.68rem;letter-spacing:.05em}.gallery-decoration span:first-child{color:var(--rose);font-size:1.25rem}
.gallery-section{background:#f5dfe2;padding-top:90px;padding-bottom:105px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:33px}.gallery-heading h2{margin:23px 0 0}.gallery-heading>p{font-size:.8rem;color:var(--muted);margin-bottom:8px}.photo-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px}.photo-item{display:block;position:relative;overflow:hidden;height:330px;background:var(--wine);box-shadow:0 10px 30px rgba(91,11,35,.1)}.photo-item img{height:100%;width:100%;object-fit:cover;transition:transform .5s;object-position:center 28%}.photo-item:hover img{transform:scale(1.04)}.photo-item:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(42,5,18,.55),transparent 36%)}.photo-item span{position:absolute;z-index:2;bottom:17px;left:18px;color:white;font-size:.76rem;letter-spacing:.03em}.photo-tall{height:380px}.reviews-section{background:var(--wine-deep);color:var(--rose-pale);position:relative;overflow:hidden}.reviews-grid{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:95px}.reviews-copy .section-kicker{color:#d4b9c1}.reviews-copy .eyebrow{margin-top:30px;color:var(--gold-light)}.reviews-copy h2{color:var(--rose-pale)}.reviews-copy h2 em{color:#e89ab0}.reviews-copy>p:not(.eyebrow){color:#d9c1c9;max-width:510px;font-size:.9rem;line-height:1.9;margin-bottom:28px}.review-art{min-height:340px;position:relative;border:1px solid rgba(201,154,93,.65);padding:50px 40px 35px;text-align:center;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(233,152,175,.08));overflow:hidden}.review-quote-mark{font-family:var(--serif);font-size:5rem;color:var(--gold);line-height:.8}.review-stars{color:var(--gold-light);font-size:1rem;letter-spacing:.25em;margin:14px 0}.review-art p{font-family:var(--serif);font-size:1.7rem;color:var(--rose-pale);margin:0 0 8px}.review-art>span{font-size:.78rem;color:#d9c1c9}.review-flower{display:flex;justify-content:center;align-items:center;margin-top:15px;height:65px;opacity:.9}.review-flower img{width:90px;height:68px;object-fit:cover;mix-blend-mode:screen;border-radius:50%}.review-art>a{display:inline-block;border-bottom:1px solid var(--gold);color:var(--gold-light);font-size:.76rem;margin-top:13px;padding-bottom:4px}.contact-section{background:#f4dce0;padding:90px 0}.contact-wrap{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center}.contact-top{max-width:720px}.contact-top .eyebrow{margin-bottom:15px}.contact-top h2{margin-bottom:18px}.contact-top>p:last-child{font-size:.86rem;color:var(--muted);margin-bottom:0}.contact-actions{display:grid;gap:15px;justify-items:start}.button-light{background:var(--wine);color:var(--cream);white-space:nowrap}.button-light:hover{background:var(--wine-deep)}.button-light svg,.floating-whatsapp svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-phone{font-size:.85rem;color:var(--wine);letter-spacing:.05em}.contact-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(91,11,35,.16);padding-top:20px;margin-top:5px;font-size:.7rem;letter-spacing:.04em;color:var(--muted)}.site-footer{background:#260510;color:#d8bbc4;padding:24px 0}.footer-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand img{width:44px;height:44px;object-fit:cover;border-radius:50%}.footer-brand strong{color:#f7e5e7;font-size:1.1rem}.footer-brand small{color:#b68e9c;font-size:.58rem}.site-footer p,.back-top{font-size:.67rem;color:#b68e9c;margin:0}.back-top:hover{color:var(--gold-light)}.floating-whatsapp{position:fixed;z-index:30;right:22px;bottom:22px}.floating-whatsapp a{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#1f8657;color:white;box-shadow:0 10px 26px rgba(0,0,0,.2);transition:transform .2s}.floating-whatsapp a:hover{transform:translateY(-3px)}.floating-whatsapp svg{width:27px;height:27px}
@media(max-width:1000px){.hero-grid{gap:40px}.hero-photo-frame{height:510px}.intro-grid{grid-template-columns:.45fr 1fr .75fr;gap:26px}.space-grid{gap:42px}.service-card{padding:25px 21px}.reviews-grid{gap:45px}.contact-wrap{grid-template-columns:1fr auto}}
@media(min-width:781px) and (max-width:1050px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-featured{transform:none}.service-card-featured:hover{transform:translateY(-5px)}}
@media(max-width:780px){.container{width:min(100% - 36px,560px)}.nav-wrap{min-height:76px}.brand img{width:50px;height:50px}.brand strong{font-size:1.2rem}.brand small{font-size:.58rem}.menu-toggle{display:block}.navigation{display:none;position:absolute;top:76px;left:0;right:0;padding:18px 24px 25px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 20px rgba(50,10,23,.08)}.navigation.open{display:flex}.navigation a{padding:13px 3px;border-bottom:1px solid rgba(91,11,35,.08)}.navigation .nav-cta{text-align:center;margin-top:12px;padding:12px;border:1px solid var(--wine)}.hero{padding:50px 0 72px}.hero-grid{grid-template-columns:1fr;gap:45px}.hero-copy{padding:0}.hero h1{font-size:clamp(3rem,12vw,4.35rem)}.hero-text{font-size:.92rem}.hero-note{margin-top:33px}.hero-visual{width:min(100%,410px);justify-self:center;padding-right:18px}.hero-photo-frame{height:490px;max-height:none;width:100%}.hero-seal{left:-8px;top:18px}.photo-caption{width:83%;padding:16px;font-size:.85rem}.section-pad{padding:72px 0}.intro-grid{grid-template-columns:1fr;gap:25px}.intro-grid>.section-kicker{margin-bottom:3px}.intro-content{max-width:100%}.intro-content h2,.section-heading h2,.space-copy h2,.gallery-heading h2,.reviews-copy h2,.contact-top h2{font-size:2.65rem}.intro-aside{padding:0;margin-top:4px}.intro-aside img{height:390px;object-position:center 28%}.aside-caption{font-size:.58rem}.services-section{padding-top:75px}.section-heading .eyebrow{margin-top:21px}.section-lede{font-size:.83rem}.service-grid{grid-template-columns:1fr;gap:15px;margin-top:32px}.service-card,.service-card-featured{min-height:0;padding:24px}.service-card-featured{transform:none}.service-card-featured:hover{transform:translateY(-4px)}.service-card>p{min-height:0;margin-bottom:20px}.service-symbol{margin:18px 0 14px}.space-grid{grid-template-columns:1fr;gap:38px}.space-gallery{grid-template-rows:290px 95px;gap:10px}.space-small-photo{height:235px}.space-main-photo figcaption{font-size:1.05rem;left:15px;right:15px;bottom:16px}.gallery-heading{display:block}.gallery-heading>p{margin-top:15px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo-item,.photo-tall{height:270px}.photo-tall{grid-row:span 2;height:550px}.photo-item img{object-position:center 25%}.reviews-grid{grid-template-columns:1fr;gap:35px}.review-art{min-height:300px;padding:35px 20px 30px}.review-art p{font-size:1.5rem}.contact-wrap{grid-template-columns:1fr;gap:30px}.contact-actions{grid-template-columns:1fr;justify-items:start}.contact-bottom{grid-column:1;flex-direction:column;gap:6px}.footer-wrap{flex-wrap:wrap;justify-content:space-between}.footer-wrap>p{order:3;width:100%;border-top:1px solid rgba(255,255,255,.1);padding-top:15px}.floating-whatsapp{right:15px;bottom:15px}.floating-whatsapp a{width:51px;height:51px}}
@media(max-width:420px){.container{width:calc(100% - 30px)}.brand small{max-width:180px}.hero-photo-frame{height:420px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.photo-caption{width:89%;right:-1px}.hero-seal{font-size:.73rem}.hero-seal img{width:48px;height:48px}.intro-content h2,.section-heading h2,.space-copy h2,.gallery-heading h2,.reviews-copy h2,.contact-top h2{font-size:2.25rem}.space-gallery{grid-template-columns:1fr .75fr;grid-template-rows:250px 85px}.space-small-photo{height:200px}.gallery-decoration{font-size:.58rem}.photo-grid{grid-template-columns:1fr 1fr}.photo-tall{height:460px}.photo-item{height:220px}.photo-tall{height:450px}.footer-brand small{max-width:150px}.back-top{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Avaliações e depoimentos: acrescentados sem alterar as seções anteriores. */
.testimonial-heading{margin:72px 0 25px;text-align:center}
.testimonial-heading .eyebrow{margin-bottom:10px;color:var(--gold-light)}
.testimonial-heading h3{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;color:var(--rose-pale);margin-bottom:8px}
.testimonial-heading>p:last-child{font-size:.8rem;color:#d9c1c9;margin-bottom:0}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.testimonial-card{min-width:0;padding:14px;background:rgba(255,250,245,.97);border:1px solid rgba(201,154,93,.42);box-shadow:0 12px 28px rgba(0,0,0,.14);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:10px}
.testimonial-image{width:100%;min-height:280px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;border-radius:3px;cursor:zoom-in;outline-offset:3px}
.testimonial-image img{display:block;width:auto;height:auto;max-width:100%;max-height:390px;object-fit:contain;transition:transform .2s}
.testimonial-image:hover img{transform:scale(1.015)}
.testimonial-card>p{margin:0;color:var(--wine);font-size:.72rem;text-align:center;letter-spacing:.025em}
.js-lightbox-trigger:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}
.lightbox{position:fixed;inset:0;margin:auto;border:0;padding:54px 16px 48px;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;background:rgba(25,4,12,.96);color:#fff;overflow:hidden;align-items:center;justify-content:center;flex-direction:column}
.lightbox[open]{display:flex}
.lightbox::backdrop{background:rgba(25,4,12,.96)}
.lightbox-image{display:block;width:auto;height:auto;max-width:min(94vw,1400px);max-height:calc(100dvh - 112px);object-fit:contain;margin:auto;box-shadow:0 12px 50px rgba(0,0,0,.25)}
.lightbox-close{position:fixed;z-index:2;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:46px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(53,8,23,.9);color:#fff;font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.25)}
.lightbox-close:hover{background:var(--rose)}
.lightbox-hint{position:fixed;bottom:max(8px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;font-size:.72rem;color:rgba(255,255,255,.75);margin:0;padding:8px 12px;pointer-events:none}
@media(max-width:900px){.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-image{min-height:260px}}
@media(max-width:520px){.testimonial-grid{grid-template-columns:1fr;gap:13px}.testimonial-card{padding:12px}.testimonial-image{min-height:0;padding:4px}.testimonial-image img{max-height:360px}.testimonial-heading{margin-top:52px}.lightbox{padding:58px 8px 48px}.lightbox-image{max-width:96vw;max-height:calc(100dvh - 118px)}.lightbox-close{width:44px;height:44px}}

/* Ajustes mobile: capa mais equilibrada, sem cartões sobre o rosto e CTAs fáceis de tocar. */
@media (max-width: 780px) {
  html { scroll-padding-top: 78px; }
  .hero { padding: 34px 0 48px; }
  .hero-grid { gap: 30px; }
  .hero-copy { max-width: none; }
  .hero .eyebrow { font-size: .62rem; letter-spacing: .13em; gap: 9px; margin-bottom: 14px; }
  .eyebrow-line { width: 25px; flex: 0 0 25px; }
  .hero h1 { font-size: clamp(2.55rem, 10.4vw, 3.5rem); line-height: 1.08; margin-bottom: 17px; max-width: 12ch; }
  .hero-text { font-size: .9rem; line-height: 1.75; }
  .hero-actions { align-items: stretch; flex-direction: column; gap: 13px; margin-top: 24px; }
  .hero-actions .button { width: 100%; min-height: 50px; padding: 13px 16px; font-size: .78rem; }
  .hero-actions .text-link { align-self: flex-start; margin-top: 3px; }
  .hero-note { align-items: flex-start; gap: 9px; margin-top: 25px; font-size: .75rem; line-height: 1.6; }
  .hero-visual { width: 100%; max-width: 430px; padding: 0; margin: 0 auto; display: flex; flex-direction: column; }
  .hero-photo-frame { width: 100%; height: auto; aspect-ratio: 5 / 6; max-height: none; border-radius: 43% 43% 4px 4px / 22% 22% 4px 4px; }
  .hero-photo-frame img { object-position: center 28%; }
  .hero-photo-frame:after { background: linear-gradient(0deg, rgba(44,4,15,.18), transparent 36%); }
  .hero-seal { position: relative; order: -1; top: auto; left: auto; align-self: flex-start; width: fit-content; max-width: 100%; gap: 9px; padding: 7px 12px 7px 7px; margin: 0 0 12px 0; font-size: .83rem; }
  .hero-seal img { width: 43px; height: 43px; flex: 0 0 43px; }
  .photo-caption { position: relative; right: auto; bottom: auto; z-index: 2; width: auto; max-width: 94%; align-self: flex-end; padding: 12px 14px; margin: -15px 0 0 auto; gap: 9px; font-size: .84rem; line-height: 1.4; }
  .caption-mark { flex: 0 0 auto; }
  .hero-orb-one { right: -330px; top: -150px; }
  .hero-orb-two { left: -285px; bottom: -300px; }
  .section-pad { padding: 62px 0; }
  .intro-grid { gap: 21px; }
  .intro-content h2, .section-heading h2, .space-copy h2, .gallery-heading h2, .reviews-copy h2, .contact-top h2 { font-size: clamp(2.05rem, 8.5vw, 2.6rem); line-height: 1.13; }
  .intro-aside img { height: auto; aspect-ratio: 4 / 5; object-position: center 30%; }
  .services-section { padding-top: 62px; }
  .service-card, .service-card-featured { padding: 22px 20px; }
  .space-grid { gap: 28px; }
  .space-gallery { grid-template-rows: minmax(220px, 68vw) 80px; }
  .space-small-photo { height: 58vw; max-height: 230px; }
  .photo-grid { gap: 9px; }
  .photo-item, .photo-tall { height: auto; aspect-ratio: 4 / 5; }
  .photo-tall { grid-row: auto; }
  .photo-item img, .photo-tall img { width: 100%; height: 100%; object-fit: cover; }
  .reviews-grid { gap: 25px; }
  .review-art { min-height: 260px; padding: 28px 18px; }
  .testimonial-heading { margin-top: 40px; }
  .testimonial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .testimonial-card { padding: 8px; gap: 7px; }
  .testimonial-image { min-height: 0; padding: 2px; }
  .testimonial-image img { width: 100%; height: auto; max-height: 260px; object-fit: contain; }
  .testimonial-card > p { font-size: .66rem; line-height: 1.45; }
  .testimonial-heading h3 { font-size: 1.75rem; }
  .contact-wrap { gap: 24px; }
  .contact-actions { gap: 12px; }
  .contact-actions .button { width: 100%; justify-content: center; }
  .floating-whatsapp { right: 13px; bottom: max(13px, env(safe-area-inset-bottom)); }
  .floating-whatsapp a { width: 48px; height: 48px; }
}
@media (max-width: 420px) {
  .container { width: calc(100% - 30px); }
  .nav-wrap { min-height: 70px; gap: 10px; }
  .navigation { top: 70px; }
  .brand { gap: 9px; }
  .brand img { width: 44px; height: 44px; }
  .brand strong { font-size: 1.16rem; }
  .brand small { max-width: 170px; font-size: .56rem; letter-spacing: .02em; }
  .menu-toggle { padding: 8px 5px; }
  .hero { padding-top: 29px; padding-bottom: 42px; }
  .hero-grid { gap: 27px; }
  .hero h1 { font-size: clamp(2.4rem, 10vw, 2.75rem); max-width: 12ch; }
  .hero-text { font-size: .87rem; }
  .hero-note { font-size: .72rem; }
  .hero-visual { max-width: 100%; }
  .hero-photo-frame { aspect-ratio: 5 / 6; }
  .hero-seal { font-size: .79rem; }
  .hero-seal img { width: 39px; height: 39px; flex-basis: 39px; }
  .photo-caption { max-width: 96%; padding: 10px 12px; font-size: .78rem; }
  .section-pad { padding: 54px 0; }
  .intro-content h2, .section-heading h2, .space-copy h2, .gallery-heading h2, .reviews-copy h2, .contact-top h2 { font-size: 2.05rem; }
  .space-gallery { grid-template-columns: 1fr .78fr; grid-template-rows: 58vw 74px; }
  .space-small-photo { height: 52vw; }
  .photo-item, .photo-tall { aspect-ratio: 3 / 4; }
  .testimonial-grid { gap: 9px; }
  .testimonial-card { padding: 6px; }
  .testimonial-card > p { font-size: .61rem; }
  .testimonial-image img { max-height: 230px; }
  .lightbox { padding: max(55px, env(safe-area-inset-top)) 8px max(48px, env(safe-area-inset-bottom)); }
  .lightbox-image { max-width: 96vw; max-height: calc(100dvh - 120px); }
  .lightbox-close { top: max(8px, env(safe-area-inset-top)); right: max(8px, env(safe-area-inset-right)); }
}
@media (max-width: 350px) {
  .container { width: calc(100% - 24px); }
  .brand small { max-width: 145px; white-space: normal; }
  .hero h1 { font-size: 2.25rem; }
  .hero-seal { font-size: .72rem; }
  .testimonial-grid { grid-template-columns: 1fr; }
  .testimonial-image img { max-height: 300px; }
}

.presentation-text p{margin:0 0 17px}.presentation-text p:last-child{margin-bottom:0}


/* Crédito discreto de desenvolvimento no rodapé */
.developer-credit{font-size:.67rem;color:#b68e9c;text-decoration:none;letter-spacing:.015em;transition:color .2s}
.developer-credit strong{color:#f7e5e7;font-weight:600}
.developer-credit:hover,.developer-credit:focus-visible{color:var(--gold-light);text-decoration:underline;text-underline-offset:3px}
@media(max-width:780px){.developer-credit{order:4;width:100%;padding-top:2px;font-size:.7rem}.footer-wrap{row-gap:12px}}


/* SEO/conteúdo: FAQ acessível e legível em todas as telas */
.faq-list { max-width: 860px; margin: 2.25rem auto 0; border-top: 1px solid rgba(91,11,35,.18); }
.faq-list details { padding: 1.15rem 0; border-bottom: 1px solid rgba(91,11,35,.18); }
.faq-list summary { cursor: pointer; color: var(--color-ink, #2b2022); font-weight: 600; line-height: 1.5; }
.faq-list details p { margin: .8rem 0 0; line-height: 1.75; max-width: 72ch; }
.developer-credit { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.developer-credit:hover, .developer-credit:focus-visible { opacity: .78; }
@media (max-width: 640px) {
  .faq-list { margin-top: 1.5rem; }
  .faq-list details { padding: 1rem 0; }
}


/* Ajustes finais de acabamento: botões arredondados e WhatsApp em formato pill */
.button,
.navigation .nav-cta,
.review-art > a,
.service-link,
.button-light,
.button-dark,
.button-gold {
  border-radius: 999px;
}
.navigation .nav-cta { padding: 11px 22px; }
.button { padding-inline: 25px; }
.review-art > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 44px;
  padding: 10px 24px;
  border: 1px solid var(--gold);
  text-decoration: none;
}
.review-flower {
  height: 72px;
  margin-top: 16px;
  opacity: 1;
}
.review-flower img {
  width: 66px;
  height: 66px;
  object-fit: contain;
  mix-blend-mode: normal;
  border-radius: 50%;
  background: #f5dce2;
  padding: 4px;
}
.floating-whatsapp a {
  width: auto;
  min-width: 56px;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 21px;
  border-radius: 999px;
  background: #168b58;
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
  white-space: nowrap;
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
}
.floating-whatsapp svg { width: 23px; height: 23px; flex: 0 0 auto; }
.floating-whatsapp a:hover { background: #117448; transform: translateY(-3px); }
@media (max-width: 640px) {
  .floating-whatsapp { right: 14px; bottom: 14px; }
  .floating-whatsapp a { min-height: 52px; padding: 0 17px; font-size: .76rem; }
  .button { min-height: 50px; }
}


/* Navegação harmoniosa, microinterações e parallax discreto */
.navigation { gap: clamp(18px, 2.1vw, 30px); }
.navigation a:not(.nav-cta) {
  position: relative;
  padding-block: 8px;
}
.navigation a:not(.nav-cta)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 1px;
  height: 1px;
  background: var(--gold);
  transition: right .28s ease;
}
.navigation a:not(.nav-cta):hover::after,
.navigation a:not(.nav-cta):focus-visible::after { right: 0; }
.navigation .nav-cta {
  border-radius: 999px;
  padding: 11px 23px;
  transition: color .25s ease, background .25s ease, transform .25s ease;
}
.navigation .nav-cta:hover { transform: translateY(-2px); }

.hero-orb-one, .hero-orb-two { transform: translate3d(0, var(--parallax-orbs, 0px), 0); }
.hero-photo-frame { transform: translate3d(0, var(--parallax-photo, 0px), 0); }
.hero-seal, .photo-caption { transition: transform .35s ease; }
.hero-seal:hover, .photo-caption:hover { transform: translateY(-3px); }

.button, .service-link, .review-art > a, .floating-whatsapp a {
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}
.button { border-radius: 999px; }
.button:hover, .review-art > a:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(53, 8, 23, .16);
}
.service-link { border-radius: 999px; padding-inline: 15px; }
.service-link:hover { background: rgba(91, 11, 35, .055); padding-inline: 18px; }
.floating-whatsapp a {
  border-radius: 999px;
  min-width: 58px;
  min-height: 58px;
  box-shadow: 0 12px 30px rgba(15, 91, 57, .28);
}
.floating-whatsapp a:hover {
  transform: translateY(-4px) scale(1.025);
  box-shadow: 0 16px 34px rgba(15, 91, 57, .34);
}
.review-art { border-radius: 28px; }
.review-art > a { border-radius: 999px; }

.intro-aside img, .space-gallery figure img, .photo-item img {
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.intro-aside:hover img, .space-gallery figure:hover img, .photo-item:hover img {
  transform: scale(1.035);
}
@media (max-width: 780px) {
  .navigation { gap: 0; }
  .navigation a:not(.nav-cta)::after { display: none; }
  .hero-photo-frame, .hero-orb-one, .hero-orb-two { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .hero-orb-one, .hero-orb-two, .hero-photo-frame { transform: none !important; }
}
