/* Jocelia Festas V9 — movimento com propósito, vitrine acessível e identidade original */
:root{--jf-pink:#f7258a;--jf-teal:#00ded0;--jf-yellow:#fff100;--jf-dark:#201622;--jf-soft:#fff7fb;--jf-shadow:0 18px 40px rgba(64,12,52,.11)}
html{scroll-behavior:smooth;scroll-padding-top:155px}body{overflow-x:hidden;background:var(--jf-soft)}
button,a,input,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--jf-teal)!important;outline-offset:3px}
.announcement-bar{background:linear-gradient(90deg,#211422,#75214f,#211422)!important;background-size:200% 100%;animation:jf-marquee 16s ease-in-out infinite}.announcement-spark{animation:jf-spark-spin 6s linear infinite}
.logo-icon{transition:transform .6s cubic-bezier(.2,1.7,.35,1)!important}.logo-container:hover .logo-icon{transform:rotate(-7deg) scale(1.1)}
#openCart{position:relative!important;overflow:visible!important;transition:transform .2s ease,box-shadow .3s ease!important}#openCart:hover{transform:translateY(-3px)!important;box-shadow:0 10px 20px #f7258a33}
.search-shell{box-shadow:0 8px 24px #461d3b0a;transition:box-shadow .3s ease,transform .3s ease}.search-shell:focus-within{box-shadow:0 10px 24px rgba(247,37,138,.12),0 0 0 2px #00ded088;transform:translateY(-1px)}
.hero{isolation:isolate;box-shadow:0 22px 60px rgba(60,15,41,.14)!important;background:radial-gradient(circle at 75% 22%,rgba(255,241,0,.26),transparent 42%),radial-gradient(circle at 60% 92%,rgba(0,222,208,.28),transparent 41%),linear-gradient(125deg,#271829,#4b2145)!important;overflow:hidden}
.hero:before{content:'';position:absolute;inset:-90% auto auto -70%;width:130%;height:250%;background:linear-gradient(95deg,transparent 45%,rgba(255,255,255,.085),transparent 55%);transform:rotate(22deg);animation:jf-light-beam 10s ease-in-out infinite;pointer-events:none;z-index:0}
.hero h2 em{position:relative;color:var(--jf-yellow)!important;text-shadow:0 0 22px #fff10022}.hero h2 em:after{content:'';position:absolute;bottom:-5px;left:5%;width:88%;height:7px;background:var(--jf-teal);border-radius:90% 40% 90% 40%;transform:rotate(-2deg)}
.hero-photo-one{animation:jf-float-one 6.7s ease-in-out infinite!important}.hero-photo-two{animation:jf-float-two 7.2s ease-in-out infinite!important}.hero-orbit{animation:jf-orbit 35s linear infinite!important}.hero-orbit-two{animation-duration:29s!important;animation-direction:reverse!important}.hero-sticker{animation:jf-bounce-soft 3.8s ease-in-out infinite!important}.hero-twinkle{animation:jf-twinkle 3s ease-in-out infinite!important}
.hero-primary{position:relative;overflow:hidden;box-shadow:0 8px 18px rgba(255,241,0,.14)!important;transition:transform .2s cubic-bezier(.2,1.7,.35,1),box-shadow .25s ease!important}.hero-primary:after{content:'';position:absolute;left:-80%;top:-100%;width:45%;height:300%;background:linear-gradient(90deg,transparent,#ffffff75,transparent);transform:rotate(28deg);animation:jf-sheen 5.5s ease-in-out infinite;pointer-events:none}.hero-primary:hover{transform:translateY(-4px) scale(1.035)!important;box-shadow:0 15px 28px #fff10033!important}
.hero-secondary:hover{transform:translateY(-3px)!important}
.benefits-bar>div{transition:transform .3s ease}.benefits-bar>div:hover{transform:translateY(-4px)}
.section-intro h2 em{color:var(--jf-pink)!important}.eyebrow{color:#b41669!important;letter-spacing:.14em!important}
.collections-section,.featured-section,.personalized-section{margin-bottom:58px}.personalized-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.jf-personal-note{background:#e7fffc;color:#087d76;border:1px solid #b5ede9;font-size:11px;font-weight:800;padding:8px 13px;border-radius:999px;white-space:nowrap}
.collection-card{position:relative;isolation:isolate;transition:transform .3s cubic-bezier(.2,1.4,.4,1),box-shadow .3s ease!important;will-change:auto}.collection-card:hover{transform:translateY(-8px) rotate(-1deg)!important;box-shadow:0 20px 29px #6a0f4630!important}.collection-card img{transition:transform .8s cubic-bezier(.2,.7,.1,1)!important}.collection-card:hover img{transform:scale(1.11)!important}.collection-arrow{background:var(--jf-yellow)!important;color:var(--jf-dark)!important;transition:transform .3s ease}.collection-card:hover .collection-arrow{transform:rotate(45deg)}
.produto.ml-card,.recommend-card{transition:transform .32s cubic-bezier(.2,1.4,.3,1),box-shadow .35s ease,border-color .25s ease!important;contain:layout style}.produto.ml-card:hover,.recommend-card:hover{transform:translateY(-6px)!important;box-shadow:0 20px 42px #5a0a4730!important;border-color:#ffc3e0!important}.product-media{overflow:hidden!important}.product-media img{transition:transform .55s cubic-bezier(.18,.8,.3,1)!important}.produto.ml-card:hover .product-media img{transform:scale(1.07)!important}.ml-card .btn-add,.recommend-card .mini-add{position:relative;overflow:hidden;transition:transform .2s cubic-bezier(.2,1.4,.3,1),background .2s ease!important}.ml-card .btn-add:active,.recommend-card .mini-add:active{transform:scale(.95)!important}.ml-card .btn-add:hover{background:var(--jf-teal)!important;color:var(--jf-dark)!important}
.product-info h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-info p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-detail-premium .detail-main-img{transition:transform .4s ease,filter .4s ease}.product-detail-premium .detail-main-img:hover{filter:saturate(1.1);transform:scale(1.015)}
.product-detail-premium .detail-right{align-self:start}.detail-cta-group{gap:10px!important}.detail-cta-group #detailAddCart{background:var(--jf-pink)!important;color:white!important;box-shadow:0 8px 18px #f7258a24}.detail-cta-group #detailShare{background:#fff!important;color:var(--jf-dark)!important;border:1px solid #eacbda!important}
.related-products .related-grid{gap:12px}.recommend-card img{object-fit:cover}.recommend-card .mini-add:hover{background:var(--jf-teal)!important;color:var(--jf-dark)!important}
.jf-reveal{opacity:0;transform:translateY(26px) scale(.98);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)!important}.jf-reveal.jf-in{opacity:1;transform:translateY(0) scale(1)}.jf-reveal:nth-child(3n+2){transition-delay:.065s!important}.jf-reveal:nth-child(3n+3){transition-delay:.11s!important}
/* Carrinho como folha limpa e legível, inclusive telas pequenas */
#cartModal,#preModal{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}#cartModal .modal-content,#preModal .modal-content{animation:jf-modal-enter .42s cubic-bezier(.18,.9,.25,1) both!important;box-shadow:0 25px 75px #140c1b60!important}
#cartModal .modal-content{max-width:760px!important}#cartModal .modal-close,#preModal .modal-close{background:#fff0f8!important;color:#4e2442!important;border:0!important}
.jf-cart-heading h2{margin:2px 0 0!important;font-size:32px!important;letter-spacing:-.05em!important}.jf-cart-heading .cart-subtitle{color:#82717d;margin-bottom:12px!important;font-size:13px}
.cart-items{display:grid;gap:10px!important;margin:10px 0 18px!important}.cart-items li{display:grid!important;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:13px!important;border:1px solid #f1e0eb!important;padding:10px!important;border-radius:16px!important;background:#fff!important}.jf-cart-image{width:70px;height:70px;object-fit:cover;border-radius:12px;background:#fff0f8}.jf-cart-info{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;line-height:1.2}.jf-cart-info strong{font-size:13px;max-width:100%;white-space:normal}.jf-cart-info small{font-size:11px;color:#7e6876}.jf-remove{padding:3px 0!important;background:none!important;color:#ad306e!important;border:0!important;text-decoration:underline;font-size:11px;font-weight:700}.jf-qty{display:flex;align-items:center;gap:0;border:1px solid #ecd8e4;border-radius:12px;overflow:hidden}.jf-qty button{width:31px;min-height:38px;border:0;background:#fff1f9;color:#6c1950;font-size:18px;font-weight:800;cursor:pointer}.jf-qty input{appearance:textfield;-moz-appearance:textfield;border:0!important;width:33px!important;min-width:33px;text-align:center;padding:2px!important;background:#fff!important;color:#19121e!important;font-weight:800!important}.jf-qty input::-webkit-inner-spin-button,.jf-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.jf-cart-empty{text-align:center;padding:22px 14px}.jf-cart-empty[hidden]{display:none!important}.jf-cart-empty>span{display:block;margin:auto;font-size:48px;line-height:1;color:var(--jf-pink)}.jf-cart-empty strong{display:block;font-size:19px}.jf-cart-empty p{font-size:13px;color:#7f6877;margin:5px 0 14px}.jf-cart-empty .btn{background:var(--jf-pink)!important}
.cart-recommend-title{align-items:start}.cart-recommend-title strong{font-size:16px}.cart-recommend-title small{font-size:11px}.cart-total{font-size:19px!important;box-shadow:inset 0 0 0 1px #ffffff1f}
.jf-coupon-label{display:block;font-size:11px;color:#84637a;font-weight:700;margin:14px 0 7px}.jf-coupon-row{display:grid;grid-template-columns:1fr auto;gap:8px}.jf-coupon-row input{width:100%!important;min-width:0}.jf-cart-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:14px}.jf-cart-actions #finalizarCompra{padding:15px 20px!important;background:var(--jf-pink)!important;color:white!important;font-size:14px!important;border-radius:13px}.jf-cart-actions #finalizarCompra:disabled{opacity:.4;pointer-events:none}.jf-cart-actions #limparCarrinho{padding:12px!important;background:#fcecf5!important;color:#6b3a58!important}.jf-no-obligation{color:#527f74;font-size:11px;margin:12px 0 0;line-height:1.4}
/* Formulário rápido: só dados para retorno pelo WhatsApp */
#preModal .modal-content{max-width:620px!important}#preModal #preText{font-size:15px!important;line-height:1.45!important;margin-bottom:12px}#preModal #preProgress{background:#e7fffc;color:#07645e;padding:6px 10px;border-radius:99px;font-weight:800;font-size:11px}#preModal #preBody{max-height:min(53dvh,530px);overflow:auto;padding-right:3px}
.jf-quick-form{display:grid;gap:12px}.jf-quick-form label{display:grid;gap:5px;color:#3e2435;font-weight:800;font-size:12px}.jf-quick-form label small{font-weight:500;color:#8d7284}.jf-quick-form input:not([type=checkbox]),.jf-quick-form textarea{background:#fff!important;border:1px solid #e8d8e4!important;border-radius:12px!important;padding:12px 14px!important;font-size:14px!important;min-height:45px;width:100%!important;box-sizing:border-box;color:#271828}.jf-quick-form input:focus,.jf-quick-form textarea:focus{border-color:var(--jf-teal)!important;box-shadow:0 0 0 3px #00ded037!important;outline:none}.jf-quick-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.jf-quick-form .jf-confirm-pickup{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:500;padding:12px;background:#e8fffc;border:1px solid #bde9e6;border-radius:12px}.jf-confirm-pickup input{accent-color:#06857e;min-width:18px;min-height:18px;margin-top:1px}.jf-confirm-pickup strong{display:inline;font-weight:800}#preNext{background:var(--jf-pink)!important}#preBack{background:#fff0f7!important;color:#6f1b4b!important}
/* microinterações / fixo no mobile */
.jf-cart-pop{animation:jf-cart-pop .45s cubic-bezier(.18,1.7,.5,1) both}.jf-sparkle{position:fixed;z-index:10000;pointer-events:none;display:block;width:9px;height:9px;border-radius:30% 70% 60% 40%;animation:jf-particle .75s ease-out both}.jf-mobile-cart{display:none}.jf-mobile-cart[hidden]{display:none!important}
#backToTop{bottom:18px!important}#musicToggle,#bgMusic{display:none!important}
/* Sem setas/compartilhamento repetidos em cada card */.sidebar-share-btn{display:none!important}
@keyframes jf-marquee{0%,100%{background-position:0 0}50%{background-position:100% 0}}@keyframes jf-spark-spin{to{transform:rotate(360deg)}}
@keyframes jf-light-beam{0%,25%{transform:translateX(-45%) rotate(22deg)}70%,100%{transform:translateX(180%) rotate(22deg)}}
@keyframes jf-float-one{0%,100%{translate:0 0}50%{translate:0 -10px}}@keyframes jf-float-two{0%,100%{translate:0 0}50%{translate:0 12px}}@keyframes jf-orbit{to{transform:rotate(360deg)}}@keyframes jf-bounce-soft{0%,100%{translate:0 0;rotate:-5deg}50%{translate:0 -9px;rotate:3deg}}@keyframes jf-twinkle{0%,100%{opacity:.55;scale:.9;rotate:0deg}50%{opacity:1;scale:1.23;rotate:18deg}}@keyframes jf-sheen{0%,60%{left:-80%}85%,100%{left:160%}}
@keyframes jf-modal-enter{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes jf-cart-pop{0%{scale:1}40%{scale:1.16}100%{scale:1}}@keyframes jf-particle{0%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(200deg) scale(.2)}}
@media(max-width:980px){.personalized-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.section-intro-row{align-items:flex-start}.jf-personal-note{font-size:9px;padding:5px 9px}.personalized-section{margin-bottom:35px}.jf-cart-actions{grid-template-columns:1fr}.jf-cart-actions #limparCarrinho{font-size:11px!important;background:transparent!important;border:0!important;text-decoration:underline;padding:4px!important}.jf-mobile-cart{position:fixed;display:flex;align-items:center;gap:10px;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 9px);padding:10px 15px;border:1px solid #ffffff50;border-radius:17px;background:linear-gradient(110deg,#f7258a,#b71969);color:white;z-index:950;box-shadow:0 12px 34px #88114d60;animation:jf-modal-enter .4s ease both;text-align:left;cursor:pointer}.jf-mobile-cart-icon{width:38px;height:38px;border-radius:12px;background:#ffffff25;display:grid;place-items:center;font-size:23px}.jf-mobile-cart span:nth-child(2){display:grid;gap:2px}.jf-mobile-cart small{font-size:10px;color:#ffe9f3}.jf-mobile-cart b{font-size:14px}.jf-mobile-cart-arrow{margin-left:auto;color:var(--jf-yellow);font-size:24px}.back-to-top{bottom:calc(env(safe-area-inset-bottom,0px) + 83px)!important}.cart-items li{grid-template-columns:58px minmax(0,1fr) auto;gap:7px!important;padding:8px!important}.jf-cart-image{width:58px;height:64px}.jf-cart-info strong{font-size:11px}.jf-cart-info small{font-size:9px}.jf-cart-info .jf-remove{font-size:10px}.jf-qty button{width:25px;min-height:34px}.jf-qty input{width:29px!important;min-width:29px}.jf-quick-split{grid-template-columns:1fr}.hero:before{animation-duration:15s}.hero-sticker{animation-duration:5s!important}.hero-photo-one{animation-duration:7.5s!important}}
@media(max-width:420px){.jf-personal-note{display:none}.jf-cart-heading h2{font-size:26px!important}.cart-recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cart-recommend-grid .recommend-card:nth-child(3){display:none}.jf-quick-form{gap:9px}#preModal #preBody{max-height:54dvh}.jf-cart-actions #finalizarCompra{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;translate:none!important;scroll-behavior:auto!important}.jf-reveal{opacity:1!important;transform:none!important}}

/* Ajustes finais de ergonomia no mobile */
.jf-quick-note{border:1px dashed #eac9dd;border-radius:12px;padding:9px 12px;background:#fff9fc}.jf-quick-note>summary{cursor:pointer;color:#943765;font-weight:800;font-size:12px;list-style:none}.jf-quick-note>summary::-webkit-details-marker{display:none}.jf-quick-note textarea{margin-top:9px}.jf-quick-note small{font-weight:500;color:#92778a}
@media(max-width:700px){.hero-copy{padding-bottom:232px!important}.hero-art{height:205px!important;min-height:205px!important}#preModal #preBody{max-height:none!important;overflow:visible!important}#preModal .modal-content{max-height:calc(100dvh - 28px)!important;overflow-y:auto!important}#preModal #preBody .jf-quick-form{gap:10px}.jf-quick-form input:not([type=checkbox]){min-height:43px!important}}

#preModal #preProgress{margin-right:42px!important}#preModal .jf-confirm-pickup span{display:block;line-height:1.45}#preModal .jf-confirm-pickup span strong{font-weight:900}
