@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500&display=swap');
:root{--bg:#fcfaf7;--purple:#63347b;--ink:#302337;--muted:#766b7b;--lilac:#f0e7f7;--line:#e9e2ea}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b68ccc;outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.22;letter-spacing:-.035em}h1{font-size:clamp(36px,4.15vw,59px);margin:20px 0 24px}h2{font-size:clamp(28px,2.8vw,38px);margin:14px 0 28px}h3{font-size:20px;line-height:1.4;margin:14px 0 10px}p{color:var(--muted);margin:0 0 18px}.container{width:min(1240px,calc(100% - 64px));margin-inline:auto}.header{position:sticky;top:0;z-index:10;background:rgba(252,250,247,.97);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;height:100px}.logo{height:75px;width:78px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:30px;font-size:14px}.button{display:inline-flex;gap:15px;align-items:center;justify-content:center;background:var(--purple);color:white;border:1px solid var(--purple);padding:14px 22px;border-radius:11px;font-size:14px;font-weight:600;line-height:1.4;min-height:48px;transition:background .18s,transform .18s}.button:hover{background:#4b245f;transform:translateY(-1px)}.button.secondary{color:var(--purple);background:white;border-color:var(--line)}.button.secondary:hover{background:var(--lilac)}.button.small{padding:12px 18px}.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--purple)}.pill{display:inline-block;border-radius:40px;background:white;font-size:11px;letter-spacing:.09em;padding:8px 16px;color:var(--purple)}.hero{margin-top:32px;background:var(--lilac);border-radius:26px;display:grid;grid-template-columns:1fr 1fr;padding:22px;gap:24px}.hero-copy{padding:30px 18px 22px}.hero-copy>p{max-width:390px;font-size:17px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.price-note{margin-top:34px!important;font-size:14px!important;color:var(--purple)}.price-note span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.hero-photo{position:relative;min-height:485px}.hero-photo>img{height:100%;width:100%;border-radius:18px;object-position:50% 43%}.photo-caption{position:absolute;bottom:18px;left:18px;right:18px;border-radius:10px;padding:10px 14px;background:#fffdf5de;color:var(--purple);font-size:12px}.section{padding-top:72px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{background:white;border:1px solid var(--line);padding:25px;border-radius:16px;transition:border-color .2s}.service:hover{border-color:#b68ccc}.service>span{font-size:12px;color:var(--purple)}.service p{font-size:14px}.service strong{font-size:13px;color:var(--purple)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.theme-card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-width:0}.card-photo{display:block;padding:7px}.card-photo img{width:100%;aspect-ratio:1/1.05;border-radius:11px;transition:filter .2s}.card-photo:hover img{filter:brightness(1.04)}.card-content{padding:13px 17px 20px}.card-content .eyebrow{font-size:9px;color:var(--muted)}.card-content h3{font-size:18px;margin:8px 0 16px;min-height:50px}.card-actions{display:grid;gap:12px}.card-actions .button{padding:11px 10px;font-size:13px;gap:8px}.detail-link{display:inline-flex;gap:10px;align-items:center;color:var(--purple);font-size:14px;font-weight:600;border:none;background:none;padding:3px 0}.detail-link:hover{text-decoration:underline}.card-actions .detail-link{justify-content:center}.center{text-align:center;margin-top:30px}.other-theme{margin-top:70px;background:var(--lilac);border-radius:20px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:32px}.other-theme h2{font-size:30px;margin-bottom:14px}.other-theme p{max-width:620px;margin-bottom:0}.other-theme .button{flex-shrink:0}.process{background:var(--lilac);border-radius:20px;padding:34px;margin-top:70px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.steps>div{display:grid;grid-template-columns:30px 1fr;gap:8px 12px}.steps span{grid-row:span 2;color:var(--purple);font-size:25px;font-family:Georgia,serif}.steps h3{margin:3px 0;font-size:18px}.steps p{font-size:14px;margin:0}.faq{display:grid;gap:12px;margin-bottom:75px}.faq details{border:1px solid var(--line);border-radius:12px;background:white;padding:17px 22px}.faq summary{cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary::after{content:'+';color:var(--purple);font-size:23px;line-height:1}.faq details[open] summary::after{content:'−'}.faq details p{padding-top:15px;margin:0;font-size:14px;max-width:800px}footer{margin-top:75px;background:var(--purple);color:white;padding:40px 0 25px}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner>div:last-child{display:grid;gap:8px}.footer-inner p{color:#e4d7ed;margin:0 0 10px;font-size:14px}.footer-inner .footer-brand{font-family:Georgia,serif;font-size:26px;color:white}.footer-inner a{font-size:14px}.footer-bottom{margin-top:30px;border-top:1px solid #ffffff24;padding-top:20px;font-size:11px;color:#e4d7ed}.floating-wa{position:fixed;bottom:22px;right:22px;z-index:20;display:flex;align-items:center;gap:9px;padding:13px 17px;border-radius:30px;background:var(--purple);color:white;box-shadow:0 5px 22px #3023372b;font-size:13px;border:2px solid white}.catalog-intro{padding-top:35px}.back{display:block;color:var(--purple);font-size:13px;margin-bottom:32px}.catalog-intro h1{font-size:46px}.catalog-intro>p{max-width:660px}.search-wrap{display:flex;align-items:center;gap:13px;padding:0 18px;border:1px solid var(--line);border-radius:12px;background:white;max-width:680px;margin-top:30px;color:var(--muted)}.search-wrap input{width:100%;border:0;padding:17px 0;background:transparent;outline-offset:1px;color:var(--ink);min-width:0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.filter{border:1px solid var(--line);background:white;border-radius:30px;padding:10px 22px;color:var(--muted);font-size:14px;min-height:44px}.filter.active{background:var(--purple);color:white;border-color:var(--purple)}.result-count{font-size:13px;margin-top:27px}.empty{text-align:center;padding:45px 20px;background:var(--lilac);border-radius:18px}.empty p{max-width:550px;margin:0 auto 24px}.empty .detail-link{display:block;margin:18px auto 0}.detail{padding-top:32px}.detail-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:65px}.gallery>img{width:100%;aspect-ratio:4/5;border-radius:20px;object-fit:cover}.thumbnails{display:flex;gap:10px;margin-top:15px}.thumbnails button{padding:3px;background:white;border:2px solid transparent;border-radius:9px;width:75px;height:84px}.thumbnails button.selected{border-color:var(--purple)}.thumbnails img{width:100%;height:100%;border-radius:5px}.caption{font-size:11px;margin-top:15px}.detail-info h1{font-size:48px;margin:15px 0 20px}.detail-info>p{font-size:16px}.detail-info h2{font-size:28px;margin-top:30px}.option{border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:17px;background:white}.option:first-of-type{background:var(--lilac);border-color:#d4bfe0}.option h3{margin-top:0}.option p{font-size:14px}.option .button{width:100%}.detail-info .small-note{font-size:12px}.detail-bottom{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;margin-top:45px}.detail-bottom h2{font-size:30px}.detail-bottom ul{padding-left:20px;color:var(--muted);font-size:14px}.detail-bottom li{margin:8px 0}.help-card{padding:30px;border-radius:18px;background:var(--lilac);align-self:start}.help-card h3{margin-top:0}.help-card .detail-link{display:block;margin-top:16px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.about-layout img{aspect-ratio:1;border-radius:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;top:-100px;left:20px;padding:10px;background:white;z-index:30}.skip:focus{top:10px}
@media(min-width:1500px){.container{max-width:1300px}}
@media(max-width:1000px){.container{width:calc(100% - 40px)}.nav nav{gap:18px}.hero{gap:8px}.hero-copy{padding:20px 10px}.hero h1{font-size:42px}.hero-photo{min-height:420px}.hero-actions .button{padding:13px 15px}.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.featured{grid-template-columns:repeat(2,minmax(0,1fr))}.other-theme{align-items:flex-start;flex-direction:column}.detail-layout,.detail-bottom{gap:30px}.detail-info h1{font-size:40px}.option{padding:17px}}
@media(max-width:640px){.container{width:calc(100% - 32px)}.header .nav{height:80px}.logo{width:57px;height:59px}.nav nav{gap:13px;font-size:13px}.nav .small{font-size:11px;padding:10px 12px;gap:7px;min-height:42px}.desktop{display:none!important}.hero{margin-top:18px;grid-template-columns:1fr;gap:12px;padding:14px;border-radius:22px}.hero-copy{padding:16px 6px 0}.hero h1{font-size:clamp(30px,8.2vw,40px);line-height:1.26;margin:22px 0 17px}.hero-copy>p{font-size:15px;line-height:1.65}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:23px}.hero-actions .button{width:100%}.hero-photo{min-height:0;height:310px}.photo-caption{font-size:11px;bottom:12px;left:12px;right:12px}.price-note{margin-top:22px!important;margin-bottom:6px}.pill{font-size:9px;padding:7px 12px}.section{padding-top:48px}h2{font-size:29px;line-height:1.3}.services{grid-template-columns:1fr;gap:12px}.service{padding:20px;position:relative}.service h3{margin:5px 0;font-size:18px}.service p{margin-bottom:8px}.service>span{position:absolute;right:20px;top:22px}.theme-grid,.featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-content{padding:10px 11px 15px}.card-content h3{font-size:15px;min-height:43px;margin:8px 0 11px}.card-actions .button{font-size:11px;padding:10px 5px;gap:4px;min-height:44px}.card-actions .detail-link{font-size:12px}.card-photo{padding:5px}.card-photo img{aspect-ratio:1/1.15}.other-theme{margin-top:48px;padding:25px 20px;gap:20px}.other-theme h2{font-size:27px}.other-theme p{font-size:14px}.other-theme .button{width:100%;font-size:13px}.process{margin-top:48px;padding:25px 20px}.steps{grid-template-columns:1fr;gap:24px}.process h2{font-size:28px}.faq details{padding:17px 16px}.faq summary{font-size:14px}.faq{margin-bottom:0}.footer-inner{flex-direction:column}.footer-inner>div:last-child{gap:6px}.floating-wa{right:14px;bottom:15px;padding:12px;border-radius:50%;width:50px;height:50px;justify-content:center}.floating-wa span{display:none}.catalog-intro{padding-top:23px}.catalog-intro h1{font-size:36px}.catalog-intro>p{font-size:15px}.search-wrap{margin-top:23px;padding:0 13px}.search-wrap input{font-size:14px;padding:15px 0}.filters{gap:8px}.filter{font-size:12px;padding:9px 17px}.back{margin-bottom:28px}.detail{padding-top:24px}.detail-layout,.detail-bottom{grid-template-columns:1fr;gap:28px}.detail-info h1{font-size:36px}.detail-info h2{font-size:27px}.gallery>img{max-height:510px}.detail-bottom{margin-top:28px}.about-layout{grid-template-columns:1fr;gap:25px}.about h1{font-size:36px}.about-layout h2{font-size:28px}.help-card{padding:25px}footer{padding-bottom:75px;margin-top:48px}}
.theme-grid,.featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.card-photo{padding:10px}.card-photo img{aspect-ratio:4/5;object-fit:contain;background:#f5f0eb}.card-content{padding:16px 22px 24px}.card-content h3{font-size:22px;min-height:0;margin:10px 0 20px}.card-actions .button{font-size:14px;padding:13px}.modality-note{font-size:14px;margin:22px 0 0;max-width:870px;padding:18px 22px;border-left:3px solid #c6acd8;background:var(--lilac);border-radius:0 12px 12px 0}.modality-note strong{color:var(--purple)}.service{display:flex;flex-direction:column}.service p{flex:1}
.brand-footer{background:#35213f;padding:0 0 28px;overflow:hidden;position:relative}.footer-invitation{position:relative;display:flex;align-items:center;justify-content:space-between;gap:50px;padding-top:58px;padding-bottom:50px;border-bottom:1px solid #ffffff26}.footer-invitation>div{position:relative;z-index:1}.footer-invitation .eyebrow{color:#d3b8e5}.footer-invitation h2{font-size:46px;color:#fff9f2;margin:17px 0 20px}.footer-invitation p{max-width:500px;color:#d0bfd7;font-size:15px}.footer-cta{background:#eee1f6;color:#35213f;border-color:#eee1f6;position:relative;z-index:1;flex-shrink:0}.footer-cta:hover{background:white}.footer-sparkle{position:absolute;width:180px;height:180px;right:110px;top:30px;color:#ffffff06;transform:rotate(15deg)}.footer-columns{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px;padding:38px 0}.footer-columns>div{display:flex;align-items:flex-start;flex-direction:column;gap:11px}.footer-identity img{width:130px;height:130px;object-fit:contain;margin-top:-8px}.footer-identity p{font-family:'Playfair Display',Georgia,serif;color:#f1e6f6;font-size:20px;margin:0}.footer-identity>span{color:#baa6c4;font-size:12px}.footer-columns h3{color:#e8d1c0;font-size:13px;font-weight:600;letter-spacing:.03em;margin:10px 0 13px}.footer-columns a{font-size:14px;color:#f0e5f5}.footer-columns a:hover{color:white;text-decoration:underline}.footer-columns a span{display:block;color:#bda8c6;font-size:12px;margin-top:3px}.brand-footer .footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:0;border-color:#ffffff20;color:#bda8c6}
@media(max-width:1000px){.theme-grid,.featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.footer-invitation h2{font-size:39px}.footer-columns{gap:30px}}
@media(max-width:640px){.theme-grid,.featured{grid-template-columns:1fr;gap:24px}.card-photo img{aspect-ratio:4/5;max-height:460px}.card-content h3{font-size:23px}.card-content .eyebrow{font-size:10px}.card-actions{grid-template-columns:1fr 1fr;gap:12px;align-items:center}.card-actions .button{font-size:13px}.card-actions .detail-link{font-size:13px}.modality-note{padding:16px;font-size:13px}.footer-invitation{padding-top:36px;padding-bottom:32px;flex-direction:column;align-items:flex-start;gap:12px}.footer-invitation h2{font-size:35px}.footer-invitation .eyebrow{font-size:9px}.footer-cta{width:100%}.footer-sparkle{right:-20px;width:140px;height:140px}.footer-columns{grid-template-columns:1fr 1fr;gap:26px 20px;padding:30px 0}.footer-identity{grid-column:1/-1}.footer-columns .footer-identity{display:grid;grid-template-columns:100px 1fr;align-items:center;column-gap:20px}.footer-identity>a{grid-row:span 2}.footer-identity img{width:100px;height:100px;margin:0}.footer-identity p{font-size:20px}.footer-identity>span{align-self:start}.footer-columns h3{font-size:12px}.footer-columns a{font-size:13px}.brand-footer{padding-bottom:78px}.brand-footer .footer-bottom{font-size:10px}.service>span{position:static}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Cartões compactos: fotos quadradas em todos os dispositivos. */
.card-photo img{aspect-ratio:1/1;object-fit:cover;object-position:50% 45%;max-height:none}.card-content h3{margin:0 0 16px;font-size:20px}.card-content{padding:14px 20px 20px}.card-actions{display:flex;align-items:center;gap:14px}.card-actions .button{flex:1;white-space:nowrap;font-size:13px;padding:12px 10px}.card-actions .detail-link{flex-shrink:0;font-size:13px}.gallery>img{object-fit:contain;background:#f5f0eb}
@media(max-width:640px){.card-photo img{aspect-ratio:1/1;max-height:none}.card-content{padding:14px 17px 19px}.card-content h3{font-size:20px}.card-actions{display:flex;gap:12px}.card-actions .button{font-size:12px}.card-actions .detail-link{font-size:12px}}

/* O contêiner determina o quadrado; dimensões originais não alteram a altura. */
.card-photo{padding:0;margin:10px;aspect-ratio:1/1;overflow:hidden;border-radius:11px}.card-photo img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 45%}

.format-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.format-filters+.filters{margin-top:14px}.card-content h3{min-height:56px}
@media(max-width:640px){.format-filters{gap:8px}.card-content h3{min-height:0}}

.nav-short{display:none}@media(max-width:640px){.nav-full{display:none}.nav-short{display:inline}.nav nav{gap:10px}.nav .small{padding:10px;gap:5px}}

/* Keep navigation usable on compact phones. */
@media(max-width:640px){.nav nav>a:not(.button){display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.nav> a,.nav .button{flex-shrink:0}}
@media(max-width:380px){.header .nav{height:auto;min-height:80px;flex-wrap:wrap;gap:4px;padding-block:8px}.nav nav{width:100%;justify-content:space-between;gap:8px}}
