:root{--pink:#ae1867;--dark:#271a29;--soft:#faf5f7;--line:#eadfe6}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--dark);background:#fff}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.top{display:flex;justify-content:space-between;align-items:center;padding:14px max(5%,calc((100% - 1250px)/2));border-bottom:1px solid var(--line);background:#fff;gap:20px}.brand{display:flex;align-items:center;gap:12px;color:var(--pink);font-size:20px;letter-spacing:1px}.brand img{width:54px;height:54px;object-fit:contain}.brand small{display:block;font-size:10px;letter-spacing:3px;color:#806c78}.top nav{display:flex;gap:22px;align-items:center}.top button,.filters button{border:1px solid var(--line);background:white;border-radius:30px;padding:12px 18px}.top button{background:var(--pink);color:white}.hero{background:linear-gradient(110deg,#fff1f7,#fff9f1);padding:85px 8%;}.hero>div{max-width:710px}.hero h1{font-size:clamp(36px,5vw,65px);line-height:1.08;margin:16px 0}.hero p{font-size:18px;line-height:1.65;color:#685a62}.eyebrow{color:var(--pink);font-size:12px;letter-spacing:2.5px;font-weight:700}.primary{display:inline-block;background:var(--pink);color:#fff;border:0;border-radius:12px;padding:15px 20px;font-weight:700;text-align:center}.primary:disabled{opacity:.4;cursor:not-allowed}main{max-width:1260px;margin:auto;padding:65px 25px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.heading h2{font-size:30px}.heading input,.cart input,.admin input,.admin select,.admin textarea{border:1px solid #e2d6df;border-radius:10px;padding:13px;min-width:0}.heading input{width:350px;max-width:100%}.filters{display:flex;gap:9px;overflow:auto;padding:12px 0 28px}.filters button{white-space:nowrap}.filters .selected{background:var(--pink);color:white}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}.product{border:1px solid #eee3ea;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 5px 18px #39202d0a;display:flex;flex-direction:column}.photo{height:245px;background:var(--soft);position:relative;display:grid;place-items:center;color:#b6a6af;font-size:14px}.photo img{width:100%;height:100%;object-fit:contain;padding:12px}.tag{position:absolute;top:12px;left:12px;background:#b01965;color:white;padding:7px 10px;border-radius:8px;font-size:11px;font-style:normal}.highlight{background:#70469c}.productbody{padding:18px;display:flex;flex-direction:column;flex:1}.productbody small{color:var(--pink)}.productbody h3{margin:10px 0 5px;font-size:19px}.productbody p{color:#867b81;font-size:13px;line-height:1.4;min-height:36px;max-height:38px;overflow:hidden}.productbody label{font-size:12px;margin:12px 0 7px}.productbody select{padding:12px;border:1px solid var(--line);border-radius:9px;width:100%;background:#fff}.price{display:flex;align-items:center;gap:12px;margin:18px 0 4px}.price b{font-size:24px;color:var(--pink)}.price del{color:#aaa}.stock{font-size:12px;color:#6b8170;margin-bottom:14px}.productbody .add{width:100%;margin-top:auto}footer{background:#251a23;color:#fff;padding:32px;text-align:center;font-size:13px}.overlay{position:fixed;inset:0;background:#0008;z-index:9}.cart{position:fixed;right:0;top:0;bottom:0;width:min(460px,100%);background:white;z-index:10;transform:translateX(105%);transition:.25s;display:flex;flex-direction:column;padding:25px;box-shadow:0 0 30px #0002}.cart.open{transform:none}.carthead{display:flex;justify-content:space-between;align-items:center}.carthead button{background:none;border:0;font-size:22px}#cartItems{overflow:auto;flex:1}.cartrow{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;gap:12px}.cartrow small{display:block;color:#777;margin-top:7px}.qty{display:flex;align-items:center;gap:7px}.qty button{border:1px solid var(--line);background:#fff;border-radius:5px;padding:5px}.cartbottom{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:18px}.cartbottom small{font-size:11px;color:#777}@media(max-width:700px){.top{padding:10px}.brand{font-size:14px}.brand img{width:42px;height:42px}.top nav{gap:7px;font-size:12px}.top nav a{display:none}.top button{padding:10px}.hero{padding:60px 25px}.heading{display:block}.heading input{width:100%}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo{height:160px}.productbody{padding:12px}.productbody h3{font-size:15px}.productbody p{font-size:11px}.price b{font-size:18px}.productbody .add{font-size:12px;padding:12px 6px}}

/* Vitrine responsiva e atendentes */
.product .photo{overflow:hidden;position:relative;isolation:isolate}.product .photo img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;display:block}.product{min-width:0;overflow:hidden}.productbody{min-width:0}.attendants{max-width:1260px;margin:0 auto 76px;padding:54px 25px 0;border-top:1px solid var(--line)}.attendants-intro{text-align:center;margin:0 auto 35px;max-width:660px}.attendants-intro h2{font-size:clamp(28px,4vw,43px);margin:12px 0}.attendants-intro p{color:#776571;line-height:1.65}.attendants-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.attendant-card{background:#fff;border:1px solid #f0e1e8;border-radius:26px;overflow:hidden;box-shadow:0 18px 50px rgba(90,30,65,.07);display:grid;grid-template-columns:42% 58%;min-width:0;transition:transform .2s,box-shadow .2s}.attendant-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(90,30,65,.12)}.attendant-image{min-width:0;min-height:300px;background:linear-gradient(140deg,#f4e2eb,#e9d5e3);overflow:hidden;position:relative}.attendant-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center top}.attendant-placeholder{height:100%;min-height:300px;display:grid;place-items:center;color:#876d7d;font-size:14px}.attendant-placeholder[hidden]{display:none}.attendant-info{padding:clamp(22px,3vw,34px);min-width:0;display:flex;flex-direction:column;justify-content:center}.attendant-kicker{font-size:10px;letter-spacing:1.8px;font-weight:800;color:var(--pink)}.attendant-info h3{font-size:clamp(23px,2.7vw,32px);line-height:1.15;margin:13px 0}.attendant-info p{color:#6e5e68;line-height:1.65;font-size:14px;margin:0 0 24px}.attendant-actions{display:flex;gap:9px;flex-wrap:wrap}.attendant-actions a{border-radius:11px;padding:12px 13px;font-size:12px;font-weight:750;text-align:center;flex:1;min-width:125px}.attendant-site{background:#f9edf3;color:#971a60}.attendant-whatsapp{background:#1d885a;color:white}@media(max-width:850px){.attendants-grid{grid-template-columns:1fr}.attendant-card{grid-template-columns:38% 62%}}@media(max-width:480px){.attendant-card{grid-template-columns:1fr}.attendant-image{height:250px;min-height:250px}.attendant-info{padding:24px}.attendants{padding-top:35px}}

/* Fotos dos atendentes: enquadramento responsivo sem deformação */
.attendant-image { overflow:hidden; position:relative; }
.attendant-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 30%; }

/* Correção definitiva: mídia confinada aos cards */
.grid .product .photo{height:auto;aspect-ratio:1/1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none;padding:10px;background:#faf5f7;}
.grid .product .photo img{position:static!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;padding:0!important;flex:none;}
.grid .product .photo .tag{position:absolute;z-index:2;top:10px;left:10px;}
.grid .product .productbody{position:relative;z-index:1;background:#fff;}
.attendants{display:block!important;max-width:1260px;margin:0 auto 72px;padding:50px 25px 0;clear:both;}
.attendants-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.attendant-card{display:grid!important;grid-template-columns:42% minmax(0,1fr);overflow:hidden;border-radius:24px;background:#fff;border:1px solid #eadfe6;box-shadow:0 12px 36px #39202d12;}
.attendant-image{display:block;position:relative;min-height:330px;overflow:hidden;background:#f7eef3;}
.attendant-image img{display:block!important;position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 35%!important;}
.attendant-info{min-width:0;padding:25px;display:flex;flex-direction:column;justify-content:center;}
.attendant-actions{display:flex;flex-wrap:wrap;gap:8px;}
.attendant-actions a{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-width:120px;}
@media(max-width:850px){.attendants-grid{grid-template-columns:1fr;}}
@media(max-width:520px){.attendant-card{grid-template-columns:1fr;}.attendant-image{height:300px;min-height:300px;}.attendant-info{padding:22px;}.grid .product .photo{padding:6px;}}

/* Vitrine 2026 */
.hero{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.94fr);gap:clamp(28px,5vw,80px);align-items:center;padding:75px max(5%,calc((100% - 1250px)/2));background:radial-gradient(circle at 83% 25%,#fce3ef 0,transparent 42%),linear-gradient(110deg,#fff2f7,#fffaf5)}.hero .hero-copy{max-width:620px}.hero-showcase{min-width:0;border:1px solid #f2dce7;border-radius:28px;background:#fff;box-shadow:0 24px 65px #a7266920;padding:20px}.showcase-head{display:flex;justify-content:space-between;align-items:center;color:#9e2c68;font-size:11px;letter-spacing:2px;font-weight:800}.showcase-head button{background:#fff4f8;border:0;border-radius:50%;width:34px;height:34px;margin-left:6px;color:#a51b63;font-size:23px}.hero-slides{display:grid;grid-template-columns:55% 45%;min-height:300px;align-items:center}.slide-photo{height:295px;min-width:0;display:grid;place-items:center;background:#fcf7f9;border-radius:19px;overflow:hidden}.slide-photo img{display:block;width:100%;height:100%;object-fit:contain;padding:14px}.slide-placeholder,.ritual-no-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a95d84;font-size:46px;gap:8px}.slide-placeholder small,.ritual-no-photo small{font-size:12px}.slide-description{padding:18px;min-width:0}.slide-description span{font-size:10px;letter-spacing:1.5px;color:#ae1867;font-weight:800}.slide-description h3{font-size:clamp(20px,2.3vw,30px);margin:15px 0 7px}.slide-description p{font-size:13px;color:#8b7580}.slide-description strong{display:block;color:#ae1867;font-size:25px;margin:15px 0}.slide-description a{display:inline-block;border-radius:9px;padding:10px 13px;background:#ae1867;color:white;font-size:12px;font-weight:700}.hero-dots{display:flex;justify-content:center;gap:6px;padding-top:12px}.hero-dots button{border:0;border-radius:20px;width:7px;height:7px;background:#e6cad8;padding:0}.hero-dots button.on{width:26px;background:#ae1867}.ritual-section{padding:80px max(5%,calc((100% - 1250px)/2));background:linear-gradient(160deg,#fff5f9,#fffaf5)}.ritual-intro{text-align:center;max-width:680px;margin:0 auto 35px}.ritual-intro h2{font-size:clamp(30px,4vw,46px);margin:12px 0}.ritual-intro p{color:#756772;line-height:1.6}.ritual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ritual-card{background:#fff;border:1px solid #efdae4;border-radius:24px;overflow:hidden;box-shadow:0 16px 35px #9d396114;min-width:0}.ritual-media{height:250px;background:#f9eaf0;overflow:hidden}.ritual-media img{width:100%;height:100%;object-fit:contain;display:block}.ritual-no-photo{height:100%}.ritual-content{padding:26px}.ritual-category{color:#aa1f68;font-size:10px;font-weight:800;letter-spacing:2px}.ritual-content h3{font-size:28px;margin:12px 0}.ritual-content strong{font-size:24px;color:#aa1f68}.ritual-content p{font-size:14px;line-height:1.7;color:#776772;min-height:115px}.ritual-tags{font-size:12px;color:#8f4970;margin:15px 0 25px}.ritual-cta{display:block;text-align:center;background:#ae1867;color:white;padding:14px;border-radius:11px;font-weight:750}.ritual-empty{text-align:center;color:#856b78}@media(max-width:960px){.hero{grid-template-columns:1fr;padding:55px 5%}.hero .hero-copy{max-width:100%}.ritual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.hero-slides{grid-template-columns:1fr 1fr;min-height:220px}.slide-photo{height:220px}.hero-showcase{padding:13px}.slide-description{padding:10px}.slide-description strong{font-size:20px}.ritual-grid{grid-template-columns:1fr}.ritual-content p{min-height:0}.ritual-section{padding:55px 20px}}

/* Vitrine principal ampliada: produto em primeiro plano */
@media (min-width:961px){
.hero{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(24px,3vw,48px);padding-top:64px;padding-bottom:64px}
.hero .hero-copy{max-width:510px}
.hero-showcase{padding:26px;border-radius:30px}
.hero-slides{grid-template-columns:minmax(0,66%) minmax(0,34%);min-height:430px;gap:4px}
.slide-photo{height:430px;border-radius:23px}
.slide-photo img{padding:10px;max-width:100%;max-height:100%;object-fit:contain}
.slide-description{padding:15px}
.slide-description h3{font-size:clamp(21px,2vw,32px);overflow-wrap:anywhere}
}
@media (min-width:961px) and (max-width:1200px){.hero-slides{grid-template-columns:62% 38%}.slide-photo{height:380px}.hero-slides{min-height:380px}}
@media (min-width:621px) and (max-width:960px){.hero-slides{grid-template-columns:64% 36%;min-height:390px}.slide-photo{height:390px}.slide-photo img{padding:10px}}
@media (max-width:620px){.hero-slides{grid-template-columns:1fr;gap:12px}.slide-photo{height:300px}.slide-photo img{padding:10px}.slide-description{padding:12px 6px}.slide-description h3{margin:8px 0 4px}.slide-description strong{margin:8px 0}.hero-showcase{padding:16px}}

/* Atendentes em formato editorial de destaque */
.attendants{max-width:1500px!important;padding:85px clamp(20px,4vw,65px) 20px!important;margin-bottom:85px!important}
.attendants-intro{max-width:860px!important;margin-bottom:48px!important}
.attendants-intro h2{font-size:clamp(36px,4.5vw,60px)!important}
.attendants-intro p{font-size:clamp(16px,1.4vw,19px)!important}
.attendants-grid{gap:30px!important}
.attendant-card{grid-template-columns:1fr!important;display:flex!important;flex-direction:column;min-width:0;border-radius:30px!important}
.attendant-image{height:clamp(330px,34vw,490px)!important;min-height:0!important;width:100%;flex:none}
.attendant-image img{object-fit:cover!important;object-position:center 25%!important}
.attendant-info{padding:clamp(28px,3vw,45px)!important;flex:1;align-items:flex-start}
.attendant-info h3{font-size:clamp(30px,3vw,43px)!important}
.attendant-info p{font-size:16px!important;line-height:1.8!important;max-width:55ch}
.attendant-actions{width:100%;margin-top:auto;gap:14px!important}
.attendant-actions a{min-height:50px;font-size:14px!important;padding:14px 18px!important}
@media(max-width:820px){.attendants-grid{grid-template-columns:1fr!important}.attendant-image{height:clamp(320px,65vw,500px)!important}}
@media(max-width:480px){.attendants{padding-top:55px!important}.attendant-image{height:330px!important}.attendant-info{padding:25px!important}}
/* Encerramento inspirado na seção final do site de consultas */
.final-contact{padding:55px clamp(18px,5vw,70px) 100px;background:#fff}
.final-contact-card{max-width:1250px;margin:auto;padding:clamp(55px,7vw,100px) 24px;position:relative;isolation:isolate;overflow:hidden;border-radius:32px;text-align:center;color:#fff;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.10),transparent 28%),linear-gradient(135deg,#74103e,#c3175e);box-shadow:0 24px 60px rgba(112,16,61,.2)}
.final-contact-card:before{content:'✦';position:absolute;left:6%;top:25px;font-size:48px;opacity:.18;z-index:-1}
.final-contact-card:after{content:'☾';position:absolute;right:5%;bottom:8px;font-size:90px;opacity:.13;z-index:-1}
.final-contact-kicker{display:block;font-size:12px;font-weight:800;letter-spacing:3px;color:#ffe0ec;margin-bottom:23px}
.final-contact-card h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,5vw,64px);line-height:1.09;font-weight:500;margin:0 auto 24px;max-width:850px;color:white}
.final-contact-card h2 em{font-style:normal;color:#ffd4e4}
.final-contact-card p{max-width:670px;margin:0 auto 32px;color:rgba(255,255,255,.86);font-size:clamp(15px,1.4vw,18px);line-height:1.75}
.final-contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:16px 30px;border-radius:15px;background:white;color:#981149;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 25px rgba(50,0,20,.12)}
.final-contact-button:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(50,0,20,.22)}
@media(max-width:540px){.final-contact{padding:25px 16px 65px}.final-contact-card{border-radius:24px}.final-contact-button{width:100%;max-width:310px}}

/* Ajuste fino: atendentes em tamanho equilibrado */
.attendants{max-width:1260px!important;padding:58px 25px 0!important;margin-bottom:65px!important}
.attendants-intro{max-width:760px!important;margin-bottom:30px!important}
.attendants-intro h2{font-size:clamp(31px,3.5vw,46px)!important}
.attendants-intro p{font-size:16px!important}
.attendants-grid{gap:22px!important}
.attendant-card{display:grid!important;grid-template-columns:42% minmax(0,1fr)!important;flex-direction:initial!important;border-radius:24px!important}
.attendant-image{height:auto!important;min-height:310px!important;width:100%}
.attendant-image img{object-position:center 30%!important}
.attendant-info{padding:24px!important;align-items:stretch!important}
.attendant-info h3{font-size:clamp(24px,2.4vw,32px)!important}
.attendant-info p{font-size:14px!important;line-height:1.65!important}
.attendant-actions{gap:8px!important}
.attendant-actions a{min-height:43px!important;font-size:12px!important;padding:11px 12px!important}
@media(max-width:1080px){.attendants-grid{grid-template-columns:1fr!important}.attendant-image{min-height:290px!important}}
@media(max-width:560px){.attendant-card{display:flex!important;flex-direction:column!important}.attendant-image{height:285px!important;min-height:285px!important}.attendant-info{padding:22px!important}}
/* Acesso reservado discreto, replicado do rodape do site anexo */
footer .footer-secret{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;margin-left:12px;border-radius:50%;font-size:11px;color:#bbaab3!important;opacity:.30;text-decoration:none;transition:opacity .2s,color .2s,background .2s,transform .2s}
footer .footer-secret:hover,footer .footer-secret:focus-visible{opacity:1;color:#cf1762!important;background:#fff0f6;transform:rotate(45deg)}

/* Refinamento: especialistas mais evidentes, sem cards excessivos */
.attendants{max-width:1320px!important;margin-bottom:58px!important}
.attendants-grid{gap:26px!important}
.attendant-card{grid-template-columns:45% minmax(0,1fr)!important;min-height:375px!important}
.attendant-image{min-height:375px!important}
.attendant-info{padding:clamp(25px,2.6vw,36px)!important}
.attendant-info h3{font-size:clamp(27px,2.6vw,36px)!important}
.attendant-info p{font-size:15px!important;line-height:1.7!important}
.attendant-actions a{min-height:46px!important;font-size:13px!important}
@media(max-width:1080px){.attendant-card{min-height:345px!important}.attendant-image{min-height:345px!important}}
@media(max-width:560px){.attendant-card{display:flex!important;flex-direction:column!important;min-height:0!important}.attendant-image{height:315px!important;min-height:315px!important}}

/* Encerramento compacto, nas cores da identidade visual da loja */
.final-contact{padding:30px 24px 55px!important;background:#fff}
.final-contact-card{max-width:1050px!important;padding:45px 28px!important;border-radius:25px!important;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.09),transparent 30%),linear-gradient(135deg,#771347,var(--pink))!important}
.final-contact-kicker{margin-bottom:13px!important;font-size:10px!important}
.final-contact-card h2{font-size:clamp(30px,3.8vw,46px)!important;max-width:720px!important;margin-bottom:15px!important}
.final-contact-card p{font-size:15px!important;max-width:610px!important;margin-bottom:22px!important;line-height:1.55!important}
.final-contact-button{min-height:48px!important;padding:12px 23px!important;border-radius:12px!important;color:var(--pink)!important}
footer{background:#781347!important;color:#fff!important;border-top:3px solid var(--pink)!important;padding:25px 20px!important}
footer a{color:#fff!important}
footer .footer-secret{color:#f5d8e8!important}
footer .footer-secret:hover,footer .footer-secret:focus-visible{color:var(--pink)!important}
@media(max-width:560px){.final-contact{padding:22px 16px 42px!important}.final-contact-card{padding:38px 20px!important}}

/* Slideshow: transição suave e movimento discreto */
.hero-slides{transition:opacity .26s ease,transform .26s ease;will-change:opacity,transform}
.hero-slides.slide-leaving{opacity:0;transform:translateX(-12px) scale(.985)}
.hero-slides:not(.slide-leaving) .slide-photo{animation:rodaSlidePhoto .6s cubic-bezier(.2,.8,.2,1) both}
.hero-slides:not(.slide-leaving) .slide-description{animation:rodaSlideText .6s .08s ease both}
@keyframes rodaSlidePhoto{from{opacity:.35;transform:translateX(20px) scale(.97)}to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes rodaSlideText{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.hero-dots button{transition:width .28s ease,background-color .28s ease}
.showcase-head button{transition:transform .2s ease,background-color .2s ease}
.showcase-head button:hover{transform:scale(1.1);background:#fce3ee}
@media(prefers-reduced-motion:reduce){.hero-slides,.hero-slides .slide-photo,.hero-slides .slide-description,.hero-dots button,.showcase-head button{animation:none!important;transition:none!important;transform:none!important}}


/* 2026: vitrine horizontal ampliada e animações gerais */
@media(min-width:1100px){
 .hero{grid-template-columns:minmax(255px,.56fr) minmax(0,1.44fr)!important;gap:clamp(20px,2.5vw,42px)!important;padding-left:max(3%,calc((100% - 1530px)/2))!important;padding-right:max(3%,calc((100% - 1530px)/2))!important}
 .hero .hero-copy{max-width:440px!important}
 .hero-showcase{width:100%;max-width:none!important}
 .hero-slides{grid-template-columns:minmax(0,67%) minmax(0,33%)!important;min-height:445px!important}
 .slide-photo{height:445px!important}
}
@media(min-width:1450px){.hero{grid-template-columns:minmax(280px,.48fr) minmax(0,1.52fr)!important}.hero-slides{min-height:480px!important}.slide-photo{height:480px!important}}
@media(min-width:961px) and (max-width:1099px){.hero{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)!important;gap:20px!important;padding-left:3%!important;padding-right:3%!important}.hero-slides{grid-template-columns:62% 38%!important}.slide-photo{height:380px!important}}
@media(max-width:960px){.hero{grid-template-columns:1fr!important}.hero-showcase{width:100%}}
.roda-reveal{opacity:0;transform:translateY(25px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.roda-reveal.roda-visible{opacity:1;transform:translateY(0)}
.product.roda-animated{animation:rodaCardIn .5s both}
@keyframes rodaCardIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
.product,.ritual-card,.attendant-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.product:hover,.ritual-card:hover{transform:translateY(-5px);box-shadow:0 22px 46px rgba(112,16,61,.12)}
.product .photo img,.ritual-media img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.product:hover .photo img,.ritual-card:hover .ritual-media img{transform:scale(1.045)}
.primary,.ritual-cta,.attendant-actions a,.final-contact-button{transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.primary:hover,.ritual-cta:hover,.attendant-actions a:hover,.final-contact-button:hover{transform:translateY(-2px);filter:brightness(1.04)}
.filters button{transition:background-color .2s ease,color .2s ease,transform .2s ease}
.filters button:hover{transform:translateY(-2px)}
@media(prefers-reduced-motion:reduce){.roda-reveal{opacity:1!important;transform:none!important;transition:none!important}.product.roda-animated{animation:none!important}.product,.ritual-card,.attendant-card,.product .photo img,.ritual-media img,.primary,.ritual-cta,.attendant-actions a,.final-contact-button,.filters button{animation:none!important;transition:none!important}.product:hover,.ritual-card:hover,.product:hover .photo img,.ritual-card:hover .ritual-media img,.filters button:hover{transform:none!important}}


/* Vitrine proporcional: texto legível e slideshow em equilíbrio */
@media (min-width:1100px){
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)!important;gap:clamp(28px,3.5vw,58px)!important;padding:62px max(5%,calc((100% - 1320px)/2))!important}
 .hero .hero-copy{max-width:590px!important}
 .hero-showcase{max-width:730px!important;justify-self:end;padding:18px!important}
 .hero-slides{grid-template-columns:minmax(0,56%) minmax(0,44%)!important;min-height:335px!important}
 .slide-photo{height:335px!important}
}
@media (min-width:1450px){
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)!important}
 .hero-slides{min-height:350px!important}
 .slide-photo{height:350px!important}
}
@media (min-width:961px) and (max-width:1099px){
 .hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;gap:25px!important;padding:50px 4%!important}
 .hero-slides{grid-template-columns:55% 45%!important;min-height:295px!important}
 .slide-photo{height:295px!important}
}
@media (max-width:960px){.hero{gap:30px!important;padding:48px 5%!important}.hero-showcase{max-width:740px;width:100%;margin:0 auto}.hero-slides{min-height:285px!important}.slide-photo{height:285px!important}}
@media (max-width:600px){.hero{padding:38px 20px!important}.hero-slides{min-height:0!important}.slide-photo{height:250px!important}}
/* Entrada elegante da seção de produtos, com fallback acessível */
#catalogo.roda-reveal{transition-duration:.7s}
#catalogo .heading h2{transition:color .3s ease}
@media(prefers-reduced-motion:reduce){#catalogo.roda-reveal{opacity:1!important;transform:none!important}}

/* Ajuste visual final: proporções harmoniosas para a vitrine */
@media (min-width:1100px) {
  .hero {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: clamp(28px, 3.2vw, 54px) !important;
    padding: 56px max(5%, calc((100% - 1260px)/2)) !important;
  }
  .hero .hero-copy {max-width: 560px !important;}
  .hero h1 {font-size: clamp(39px, 3.4vw, 54px) !important; line-height:1.1;}
  .hero p {font-size:16px; line-height:1.65;}
  .hero-showcase {width:100%;max-width:660px !important;padding:18px !important;}
  .hero-slides {grid-template-columns:minmax(0,57%) minmax(0,43%) !important;min-height:315px !important;}
  .slide-photo {height:315px !important;}
  .slide-description {padding:16px !important;}
  .slide-description h3 {font-size:clamp(19px,1.7vw,26px) !important;}
}
@media (min-width:1450px) {
  .hero-slides {min-height:330px !important;}
  .slide-photo {height:330px !important;}
}
@media (min-width:961px) and (max-width:1099px) {
  .hero h1 {font-size:clamp(35px,4vw,47px) !important;}
  .hero-slides {min-height:270px !important;}
  .slide-photo {height:270px !important;}
}
@media (max-width:960px) {
  .hero h1 {font-size:clamp(36px,6vw,52px);}
}
@media (max-width:600px) {
  .hero h1 {font-size:clamp(34px,9vw,46px);}
}

/* Atualização: especialistas maiores, respiro e contato em rosa claro */
@media (min-width:1081px) {
 .attendants{max-width:1440px!important;padding:78px 34px 0!important;margin-bottom:110px!important}
 .attendants-grid{gap:32px!important}
 .attendant-card{grid-template-columns:46% minmax(0,1fr)!important;min-height:425px!important;border-radius:27px!important}
 .attendant-image{min-height:425px!important}
 .attendant-info{padding:clamp(30px,3vw,43px)!important}
 .attendant-info h3{font-size:clamp(30px,2.6vw,39px)!important}
 .attendant-info p{font-size:16px!important;line-height:1.75!important}
 .attendant-actions a{font-size:14px!important;min-height:49px!important}
}
@media (min-width:561px) and (max-width:1080px){
 .attendants{margin-bottom:85px!important}
 .attendant-card{min-height:380px!important}
 .attendant-image{min-height:380px!important}
 .attendant-info{padding:32px!important}
}
@media (max-width:560px){.attendants{margin-bottom:65px!important}.attendant-image{height:345px!important;min-height:345px!important}}
/* Espaçamento entre especialistas, rituais e última seção */
.ritual-section{margin-top:45px!important;margin-bottom:65px!important}
.final-contact{padding:95px 24px 105px!important;background:linear-gradient(180deg,#fff 0%,#fff5f9 100%)!important}
.final-contact-card{max-width:1040px!important;padding:55px 30px!important;background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.9),transparent 35%),linear-gradient(135deg,#fff0f6,#fce0eb)!important;border:1px solid #f2c9db!important;box-shadow:0 16px 40px rgba(152,17,73,.09)!important;color:#4d1d36!important}
.final-contact-kicker{color:#ae175b!important}
.final-contact-card h2{color:#551d39!important}
.final-contact-card h2 em{color:#b0155b!important}
.final-contact-card p{color:#6e4e5d!important}
.final-contact-button{background:#b0155b!important;color:#fff!important;box-shadow:0 9px 22px rgba(176,21,91,.18)!important}
.final-contact-card:before,.final-contact-card:after{color:#b0155b!important;opacity:.13!important}
@media(max-width:560px){.final-contact{padding:65px 16px 78px!important}.final-contact-card{padding:45px 22px!important}.ritual-section{margin-bottom:35px!important}}

/* Cores invertidas entre o contato e a barra final — identidade A Roda Cigana */
.final-contact-card {
 background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.10),transparent 34%),linear-gradient(135deg,#781347,#ae1867)!important;
 border:1px solid rgba(255,255,255,.13)!important;
 box-shadow:0 18px 46px rgba(120,19,71,.18)!important;
 color:#fff!important;
}
.final-contact-kicker {color:#ffdae9!important;}
.final-contact-card h2,.final-contact-card h2 em {color:#fff!important;}
.final-contact-card h2 em {color:#ffd3e5!important;}
.final-contact-card p {color:#f9e5ee!important;}
.final-contact-button {background:#fff!important;color:#8f1451!important;box-shadow:0 8px 22px rgba(70,9,39,.15)!important;}
.final-contact-card:before,.final-contact-card:after {color:#fff!important;opacity:.15!important;}
footer {background:linear-gradient(135deg,#fff0f6,#fce0eb)!important;color:#781347!important;border-top:1px solid #efc5d7!important;}
footer a {color:#781347!important;}
footer .footer-secret {color:#a65a7c!important;}
footer .footer-secret:hover,footer .footer-secret:focus-visible {color:#ae1867!important;background:#fff!important;}

/* Centraliza automaticamente um ou dois rituais sem alterar o layout de tres ou mais. */
.ritual-grid:has(> .ritual-card:only-child),
.ritual-grid:has(> .ritual-card:first-child:nth-last-child(2)){display:flex;justify-content:center;flex-wrap:wrap;align-items:stretch}
.ritual-grid:has(> .ritual-card:only-child) > .ritual-card,
.ritual-grid:has(> .ritual-card:first-child:nth-last-child(2)) > .ritual-card{flex:0 1 390px;width:100%;max-width:390px}
@media(max-width:620px){.ritual-grid:has(> .ritual-card:only-child) > .ritual-card,.ritual-grid:has(> .ritual-card:first-child:nth-last-child(2)) > .ritual-card{flex-basis:100%}}
