
/* FARMALUNUS — enhancements layered on approved design, no dark catalog backgrounds */
#produtos .card,#embalagens .card,#products .card,#packs .card,
#produtos .card .body,#embalagens .card .body,#products .card .body,#packs .card .body{
background:#eaf7ff!important;color:#164f7c!important}
#products .card h3,#packs .card h3{color:#164f7c!important}
#products .card p,#packs .card p{color:#527f9f!important}
#products .card .btn,#packs .card .btn{background:#cdeaff!important;color:#0d578c!important;border:1px solid #a5d8f8!important}
#products .product-visual,#packs .catalog-photo{background:#f4fbff!important}
.flx-section{margin:32px 0;padding:clamp(20px,4vw,36px);background:linear-gradient(125deg,#fff,#e6f5ff);border:1px solid #cde5f7;border-radius:24px;color:#165581}
.flx-kicker{color:#448dbd;font-size:11px;font-weight:700;letter-spacing:.19em}
.flx-section h2{font:400 clamp(27px,4vw,42px) Georgia,serif;color:#134e7d;margin:10px 0}
.flx-section p{color:#5b809b;font-size:14px;line-height:1.6}
.flx-intro{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:24px}
.flx-orbit{position:relative;width:min(100%,230px);aspect-ratio:1;display:grid;place-items:center;margin:auto;background:radial-gradient(circle,#c5e9ff 0%,#ecf9ff 58%,transparent 72%);border-radius:50%}
.flx-orbit img{max-width:45%;max-height:45%;object-fit:contain;animation:flx-appear 1.8s ease both;filter:drop-shadow(0 5px 10px #2a86b733)}
.flx-orbit:before,.flx-orbit:after{content:"";position:absolute;inset:13%;border:1px dashed #77bde8;border-radius:50%;animation:flx-spin 22s linear infinite}
.flx-orbit:after{inset:25%;animation-direction:reverse}
.flx-orbit i{position:absolute;top:10%;left:48%;width:10px;height:10px;background:#71b8e8;border-radius:50%;box-shadow:0 0 16px #60b5f1}
.flx-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}
.flx-stage{background:#fff;border:1px solid #d1e8f7;border-radius:14px;padding:14px 10px;min-height:100px;text-align:left;color:#1a6495;cursor:pointer;transition:background .2s,transform .2s}
.flx-stage[aria-pressed=true]{background:#cfeaff;border-color:#75b8e5}
.flx-stage:hover{transform:translateY(-3px)}
.flx-stage span{font-size:22px;display:block;margin-bottom:10px}
.flx-stage b{font-size:12px}
.flx-description{padding:16px;background:#fff;border-radius:14px;min-height:70px;color:#326b94!important}
.flx-spotlight{position:relative;overflow:hidden}
.flx-spotlight:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;background:radial-gradient(260px circle at var(--flx-x,50%) var(--flx-y,40%),#d4f0ff88,transparent)}
#products .card,#packs .card,.fl8-item{transition:transform .24s ease,box-shadow .24s ease}
#products .card:hover,#packs .card:hover,.fl8-item:hover{transform:translateY(-5px);box-shadow:0 16px 35px #1a6ba41e!important}
.flx-suggestions{position:absolute;top:100%;left:0;right:0;z-index:20;background:#fff;border:1px solid #b7d8ef;border-radius:0 0 12px 12px;box-shadow:0 12px 30px #123f6725;max-height:250px;overflow:auto}
.flx-suggestions button{display:block;width:100%;border:0;background:white;padding:11px 13px;text-align:left;color:#175b8d;cursor:pointer}
.flx-suggestions button:hover,.flx-suggestions button:focus{background:#e8f6ff}
.flx-search-wrap{position:relative;flex:1;min-width:0}
.flx-cart-spark{position:fixed;z-index:9999;pointer-events:none;background:#d7f1ff;border:1px solid #65b8eb;color:#07558d;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;box-shadow:0 6px 20px #246c9d33;transition:transform .65s cubic-bezier(.2,.7,.2,1),opacity .65s}
.flx-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);z-index:9998;background:#135d91;color:white;padding:12px 18px;border-radius:16px;box-shadow:0 8px 25px #125a8a33;font-size:13px;max-width:90vw}
.flx-intro button{background:#d5edff;border:1px solid #9bd0f1;border-radius:12px;padding:10px 16px;color:#155d8c;cursor:pointer}
@keyframes flx-appear{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
@keyframes flx-spin{to{transform:rotate(360deg)}}
@media(max-width:680px){.flx-intro{grid-template-columns:1fr}.flx-orbit{width:160px}.flx-stages{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.flx-orbit:before,.flx-orbit:after,.flx-orbit img{animation:none!important}#products .card,#packs .card,.fl8-item,.flx-cart-spark{transition:none!important}}
