:root{--rose:#a96168;--wine:#69373d;--cream:#f7f1ed;--paper:#fffaf7;--ink:#2a2020;--muted:#776867;--line:#decfca;--brown:#49302c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button{font:inherit}.header{height:88px;padding:0 5.5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:30;width:100%;color:#fff}.brand{display:flex;align-items:center;gap:12px;font-family:"Playfair Display",serif;font-size:21px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover}.nav{display:flex;align-items:center;gap:30px;font-size:14px}.nav>a:not(.nav-cta){opacity:.86;transition:.2s}.nav>a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.45);padding:13px 20px;border-radius:99px}.menu-toggle{display:none}.hero{min-height:760px;background:var(--wine);color:#fff;padding:150px 7vw 85px;display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-250px;top:100px}.hero-copy{max-width:620px;position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:700;margin:0 0 24px}.hero h1,.section h2,.location h2{font-family:"Playfair Display",serif;font-size:clamp(60px,7vw,104px);line-height:.91;font-weight:600;letter-spacing:-.045em;margin:0}.hero h1 em,.section h2 em,.location h2 em{font-weight:500}.lead{font-size:17px;line-height:1.7;max-width:510px;color:#eadcda;margin:35px 0}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 23px;border-radius:3px;font-size:13px;font-weight:700}.button.primary{background:#fff;color:var(--wine)}.button.light{background:var(--cream);color:var(--wine)}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-meta{display:flex;gap:45px;border-top:1px solid rgba(255,255,255,.22);margin-top:55px;padding-top:25px;font-size:12px;color:#d3bdba}.hero-meta b{display:block;color:#fff;font-size:14px;margin-bottom:4px}.hero-visual{height:560px;position:relative}.photo-main{width:62%;height:88%;position:absolute;right:8%;top:0;overflow:hidden;border-radius:48% 48% 4px 4px}.photo-main img{height:100%;object-fit:cover}.photo-small{position:absolute;left:4%;bottom:0;width:38%;height:42%;border:8px solid var(--wine);overflow:hidden}.photo-small img{height:100%;object-fit:cover}.seal{position:absolute;right:1%;bottom:3%;background:#d6a49d;color:var(--wine);width:118px;height:118px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(8deg);font-family:"Playfair Display",serif;font-size:13px}.seal strong{font-size:22px}.marquee{overflow:hidden;background:#d7a19d;color:var(--wine);padding:15px 0;font-size:12px;font-weight:700;letter-spacing:.15em;white-space:nowrap}.marquee div{animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:120px 7vw}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px}.section h2,.location h2{font-size:clamp(45px,5.6vw,78px);line-height:1}.section-head>p{max-width:420px;color:var(--muted);line-height:1.7}.filters{display:flex;gap:8px;margin-bottom:32px;overflow:auto;padding-bottom:5px}.filters button{background:transparent;border:1px solid var(--line);padding:10px 20px;border-radius:99px;color:var(--muted);cursor:pointer;white-space:nowrap}.filters button.active{background:var(--wine);border-color:var(--wine);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:38px 20px}.product{transition:.3s}.product.hidden{display:none}.product-image{height:390px;overflow:hidden;background:var(--cream);position:relative}.product-image img{height:100%;object-fit:cover;transition:.6s}.product:hover img{transform:scale(1.045)}.product-image span{position:absolute;top:12px;left:12px;background:#fff;padding:7px 9px;font-size:9px;font-weight:700;letter-spacing:.12em}.product>div:last-child{padding:17px 3px}.product p{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--rose);margin:0 0 7px;font-weight:700}.product h3{font-family:"Playfair Display",serif;font-size:20px;margin:0 0 14px;font-weight:600}.product a{font-size:12px;font-weight:600;color:var(--muted)}.about{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.about-collage{height:640px;position:relative}.about-collage img{object-fit:cover}.a1{width:70%;height:82%;position:absolute;top:0;left:0}.a2{width:46%;height:52%;position:absolute;bottom:0;right:0;border:10px solid var(--cream)}.about-collage span{position:absolute;right:5%;top:5%;background:var(--wine);color:#fff;width:145px;height:145px;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:"Playfair Display",serif;transform:rotate(7deg)}.about-copy>p:not(.eyebrow){color:var(--muted);line-height:1.8;font-size:15px}.about-copy h2{margin-bottom:32px}.values{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;padding-top:30px;border-top:1px solid var(--line)}.values div{display:flex;gap:10px}.values b{font-size:11px;color:var(--rose)}.values span{font-size:12px;line-height:1.5;font-weight:600}.steps{text-align:center;background:var(--paper)}.steps h2{font-size:clamp(42px,5vw,68px)}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1000px;margin:65px auto 0}.step-grid>div{padding:20px 50px;border-right:1px solid var(--line)}.step-grid>div:last-child{border:0}.step-grid b{font-family:"Playfair Display",serif;color:var(--rose);font-size:28px}.step-grid h3{font-family:"Playfair Display",serif;font-size:25px}.step-grid p{font-size:13px;color:var(--muted);line-height:1.7}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;background:var(--cream)}.faq-intro>p:not(.eyebrow){color:var(--muted);line-height:1.7;max-width:400px;margin:30px 0}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item button{width:100%;padding:24px 0;background:none;border:0;display:flex;justify-content:space-between;text-align:left;cursor:pointer;font-weight:600}.faq-item button span{font-size:22px;color:var(--rose)}.faq-item>div{display:grid;grid-template-rows:0fr;transition:.35s}.faq-item>div p{overflow:hidden;margin:0;color:var(--muted);font-size:14px;line-height:1.7}.faq-item.open>div{grid-template-rows:1fr}.faq-item.open>div p{padding:0 35px 24px 0}.location{display:grid;grid-template-columns:.8fr 1.2fr;background:var(--wine);color:#fff}.location-copy{padding:100px 7vw}.location address{font-style:normal;line-height:1.7;margin:35px 0 10px}.location-copy>p:not(.eyebrow){color:#d6c4c1;font-size:13px;line-height:1.7;margin-bottom:30px}.location iframe{width:100%;height:100%;min-height:560px;border:0;filter:saturate(.55) sepia(.15)}.footer{background:#281c1c;color:#eadfdd;padding:75px 7vw 25px}.footer-top{display:grid;grid-template-columns:1.6fr .8fr 1fr 1.2fr;gap:60px}.footer-top>div:first-child img{width:78px;height:78px;border-radius:50%;object-fit:cover;margin-bottom:20px}.footer p,.footer a{font-size:12px;color:#bfaeab;line-height:1.8;display:block;margin:4px 0}.footer h3{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#fff;margin:0 0 20px}.footer-cta{border-left:1px solid #4b3937;padding-left:35px}.footer-cta>a{color:#fff;font-family:"Playfair Display",serif;font-size:22px;border-bottom:1px solid #604d4a;padding-bottom:16px;display:flex;justify-content:space-between}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #4b3937;margin-top:60px;padding-top:20px;font-size:10px;color:#8f7c79}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:50;background:#235d43;color:#fff;padding:14px 18px;border-radius:99px;box-shadow:0 10px 35px #0002;display:flex;align-items:center;gap:9px;font-size:13px}.reveal{opacity:0;transform:translateY(24px);transition:.8s ease}.reveal.visible{opacity:1;transform:none}.cursor-dot,.cursor-ring{position:fixed;pointer-events:none;z-index:9999;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot{width:5px;height:5px;background:var(--rose)}.cursor-ring{width:30px;height:30px;border:1px solid var(--rose);transition:width .2s,height .2s}.cursor-ring.hover{width:44px;height:44px}
@media(max-width:900px){.header{height:74px;padding:0 20px;position:absolute}.brand span{display:none}.nav{position:fixed;inset:0;background:var(--wine);display:flex;flex-direction:column;justify-content:center;gap:28px;font-size:20px;transform:translateX(100%);transition:.4s}.nav.open{transform:none}.nav-cta{font-size:14px}.menu-toggle{display:block;position:relative;z-index:35;background:none;border:0;width:42px;height:42px}.menu-toggle span{display:block;width:25px;height:1px;background:#fff;margin:7px auto}.hero{padding:115px 22px 55px;grid-template-columns:1fr;min-height:auto}.hero h1{font-size:58px}.lead{font-size:15px;margin:25px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-meta{margin-top:35px}.hero-visual{height:430px;margin-top:50px}.photo-main{width:73%;right:0}.photo-small{left:0}.seal{width:90px;height:90px}.section{padding:78px 22px}.section-head{display:block}.section-head>p{margin-top:25px}.section h2,.location h2{font-size:48px}.product-grid{grid-template-columns:repeat(2,1fr);gap:30px 12px}.product-image{height:265px}.product h3{font-size:17px}.about{grid-template-columns:1fr;gap:60px}.about-collage{height:480px}.values{gap:10px}.values div{display:block}.values b{display:block;margin-bottom:7px}.step-grid{grid-template-columns:1fr;margin-top:35px}.step-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:25px}.faq{grid-template-columns:1fr;gap:55px}.location{grid-template-columns:1fr}.location-copy{padding:75px 22px}.location iframe{min-height:380px}.footer-top{grid-template-columns:1fr 1fr;gap:45px 30px}.footer-top>div:first-child{grid-column:1/-1}.footer-cta{border-left:0;padding-left:0}.footer-bottom{display:block}.footer-bottom span{display:block;margin:7px 0}.cursor-dot,.cursor-ring{display:none}}
@media(max-width:430px){.hero h1{font-size:51px}.hero-visual{height:380px}.product-image{height:230px}.product-grid{gap:26px 10px}.about-collage{height:420px}.about-collage span{width:110px;height:110px;font-size:12px}.whatsapp-float span{display:none}.whatsapp-float{width:52px;height:52px;justify-content:center;padding:0;font-size:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Faixa contínua: dois grupos idênticos garantem uma repetição sem emenda. */
.marquee .marquee-track{display:flex;width:max-content;animation:marquee-infinito 25s linear infinite;will-change:transform}
.marquee .marquee-group{display:flex;align-items:center;flex-shrink:0;gap:26px;padding-right:26px;animation:none}
.marquee .marquee-group i{font-style:normal;font-size:9px}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marquee-infinito{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Refinamento delicado e arredondado */
html,body,a,button,input,select,textarea{cursor:none!important}
.hero h1,.section h2,.location h2,.catalog-hero h1{font-family:"DM Sans",sans-serif;font-weight:500;letter-spacing:-.055em}
.hero h1 em,.section h2 em,.location h2 em,.catalog-hero h1 em{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:-.025em}
.button,.nav-cta,.filters button{border-radius:999px}
.button{padding:16px 25px}
.button.outline{border:1px solid var(--rose);color:var(--wine);background:transparent}
.hero,.about,.faq,.contact-section,.location{border-radius:28px;margin:8px;overflow:hidden}
.photo-main{border-radius:180px 180px 28px 28px}.photo-small{border-radius:26px}.product-image{border-radius:25px}.product-image span{border-radius:999px}.a1,.a2{border-radius:30px}.faq-item button{border-radius:16px}.contact-card{border-radius:34px}.footer{border-radius:28px 28px 0 0;margin:8px 8px 0}
.home-filters{display:none}.home-featured .product-grid .product:nth-child(n+5){display:none}.home-featured .catalog-more{display:flex;justify-content:flex-end;margin:-5px 0 28px}
.whatsapp-button{background:#2f6651;color:#fff;gap:11px;border:0}.whatsapp-button img,.footer-whatsapp img,.whatsapp-float img{width:20px;height:20px;object-fit:contain}.footer-whatsapp{display:flex!important;align-items:center;gap:8px}.whatsapp-float{border-radius:999px}.whatsapp-float img{width:22px;height:22px}
.contact-section{background:#efd9d5;padding-top:80px;padding-bottom:80px}.contact-card{background:var(--paper);padding:55px 60px;display:flex;justify-content:space-between;align-items:center;gap:50px;box-shadow:0 22px 60px rgba(105,55,61,.07)}.contact-card h2{font-size:clamp(40px,4.5vw,65px)}.contact-card>div>p:last-child{max-width:620px;color:var(--muted);line-height:1.7}.contact-card .button{flex-shrink:0}
.location{display:grid;grid-template-columns:1fr 490px;background:var(--cream);color:var(--ink);align-items:center;padding-top:80px;padding-bottom:80px;gap:7vw}.location-copy{padding:0}.location-copy h2{font-size:clamp(40px,4.5vw,64px)}.location address{margin:28px 0 10px}.location-copy>p:not(.eyebrow){color:var(--muted)}.map-link{display:inline-block;color:var(--wine);font-size:13px;font-weight:700;border-bottom:1px solid var(--rose);padding-bottom:5px}.map-frame{height:390px;border:10px solid var(--paper);padding:0;border-radius:30px;overflow:hidden;box-shadow:0 20px 55px rgba(76,48,44,.12)}.map-frame iframe{width:100%;height:100%;min-height:0;border:0;filter:saturate(.65) sepia(.1)}

/* Página própria do catálogo */
.catalog-header{position:absolute;color:#fff}.catalog-header .current{opacity:1!important;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:4px}.catalog-hero{min-height:570px;padding:145px 8vw 75px;background:var(--wine);color:#fff;display:grid;grid-template-columns:1fr 480px;gap:8vw;align-items:center;border-radius:28px;margin:8px;overflow:hidden}.catalog-hero h1{font-size:clamp(64px,8vw,110px);line-height:.85;margin:0}.catalog-hero>div>p:last-child{max-width:500px;color:#e2cfcc;line-height:1.7}.catalog-hero-image{height:360px;border-radius:190px 190px 28px 28px;overflow:hidden;position:relative}.catalog-hero-image img{height:100%;object-fit:cover}.catalog-hero-image span{position:absolute;right:15px;bottom:15px;width:125px;height:125px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#e0aaa4;color:var(--wine);font-family:"Playfair Display",serif;transform:rotate(5deg)}.catalog-full{padding-top:90px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px}.catalog-toolbar h2{font-size:clamp(42px,4.5vw,62px)}.catalog-toolbar .filters{margin:0}.catalog-help{margin:80px auto 0;padding:40px 50px;background:var(--cream);border-radius:30px;display:flex;align-items:center;justify-content:space-between;max-width:900px}.catalog-help p{font-family:"Playfair Display",serif;font-size:22px}

@media(max-width:900px){html,body,a,button,input,select,textarea{cursor:auto!important}.hero,.about,.faq,.contact-section,.location,.catalog-hero{border-radius:20px;margin:5px}.product-image{border-radius:18px}.contact-card{padding:38px 25px;display:block;border-radius:24px}.contact-card .button{margin-top:22px}.location{grid-template-columns:1fr;padding:65px 22px;gap:38px}.map-frame{height:300px;border-radius:22px;border-width:7px}.catalog-hero{grid-template-columns:1fr;padding:120px 24px 55px}.catalog-hero-image{height:320px}.catalog-toolbar{display:block}.catalog-toolbar .filters{margin-top:28px}.catalog-help{display:block;padding:30px 25px}.catalog-help .button{margin-top:12px}.home-featured .product-grid .product:nth-child(n+5){display:none}.footer{margin:5px 5px 0}.cursor-dot,.cursor-ring{display:none}}

/* Localização mais compacta e mapa horizontal */
.location{grid-template-columns:minmax(0,1fr) 560px;padding-top:48px;padding-bottom:48px;gap:6vw;min-height:0}
.location-copy h2{font-size:clamp(38px,4vw,58px)}
.location address{margin:22px 0 7px}
.location-copy>p:not(.eyebrow){margin-bottom:22px}
.map-frame{width:100%;height:305px;border-radius:25px;border-width:8px}
@media(max-width:1100px) and (min-width:901px){.location{grid-template-columns:minmax(0,1fr) 470px;gap:4vw}.map-frame{height:285px}}
@media(max-width:900px){.location{grid-template-columns:1fr;padding:48px 22px;gap:28px}.map-frame{height:245px;border-radius:20px;border-width:6px}}

/* Carrossel realmente infinito, sem pausa ao passar o mouse */
.marquee .marquee-track{animation:marquee-continuo 32s linear infinite!important}
.marquee:hover .marquee-track{animation-play-state:running}
@keyframes marquee-continuo{from{transform:translate3d(0,0,0)}to{transform:translate3d(-25%,0,0)}}
