/* Version 1.18.6: slogan copy and image travel as one unit. */
.sgl-slogan-rotator{position:relative;min-height:128px;padding:22px 30px;overflow:hidden;}
.sgl-slogan-inner{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,24px);width:100%;overflow:visible;transform-origin:center;}
.sgl-slogan-phrase{font-family:Georgia, 'Times New Roman', serif;font-style:italic;font-weight:750;line-height:1.2;min-width:0;letter-spacing:0;}
.sgl-slogan-accent{width:clamp(64px,8vw,110px);height:clamp(64px,8vw,110px);flex:none;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 6px 22px rgba(10,43,25,.18)}
.sgl-slogan-accent[hidden]{display:none!important;}
.sgl-slogan-inner.sgl-enter[data-effect=slide][data-direction=left]{animation:sgl1186FromLeft 1.25s cubic-bezier(.17,.7,.25,1) both!important}
.sgl-slogan-inner.sgl-enter[data-effect=slide][data-direction=right]{animation:sgl1186FromRight 1.25s cubic-bezier(.17,.7,.25,1) both!important}
.sgl-slogan-inner.sgl-enter[data-effect=fade],.sgl-slogan-inner.sgl-enter[data-effect=dissolve]{animation:sgl1186Fade .85s both!important}
.sgl-slogan-inner.sgl-enter[data-effect=bounce]{animation:sgl1186Bounce 1.05s both!important}
.sgl-slogan-inner.sgl-enter[data-effect=zoom]{animation:sgl1186Zoom .75s both!important}
.sgl-slogan-inner.sgl-enter[data-effect=spin]{animation:sgl1186Spin 1s both!important}
.sgl-slogan-inner.sgl-enter[data-effect=flip]{animation:sgl1186Flip .9s both!important}
.sgl-slogan-inner.sgl-exit[data-exit=fade]{animation:sgl1186Exit .55s both!important}
.sgl-slogan-inner.sgl-exit[data-exit=slide]{animation:sgl1186Out .55s both!important}
.sgl-slogan-inner.sgl-exit[data-exit=zoom]{animation:sgl1186ExitZoom .55s both!important}
.sgl-slogan-inner.sgl-exit[data-exit=none]{opacity:0;animation:none!important}
@keyframes sgl1186FromLeft{from{opacity:0;transform:translateX(calc(-100vw - 100%))}to{opacity:1;transform:translateX(0)}}
@keyframes sgl1186FromRight{from{opacity:0;transform:translateX(calc(100vw + 100%))}to{opacity:1;transform:translateX(0)}}
@keyframes sgl1186Fade{from{opacity:0}to{opacity:1}}
@keyframes sgl1186Bounce{0%{opacity:0;transform:translateY(65px) scale(.9)}60%{opacity:1;transform:translateY(-11px) scale(1.02)}80%{transform:translateY(4px)}100%{transform:none}}
@keyframes sgl1186Zoom{from{opacity:0;transform:scale(.78)}to{opacity:1;transform:scale(1)}}
@keyframes sgl1186Spin{from{opacity:0;transform:rotate(-24deg) scale(.82)}to{opacity:1;transform:none}}
@keyframes sgl1186Flip{from{opacity:0;transform:perspective(800px) rotateY(85deg)}to{opacity:1;transform:perspective(800px) rotateY(0)}}
@keyframes sgl1186Exit{to{opacity:0}}
@keyframes sgl1186Out{to{opacity:0;transform:translateX(45px)}}
@keyframes sgl1186ExitZoom{to{opacity:0;transform:scale(.82)}}
@media(max-width:600px){.sgl-slogan-rotator{padding:16px 10px;min-height:110px}.sgl-slogan-phrase{font-size:clamp(1.1rem,5vw,1.5rem)}.sgl-slogan-accent{width:60px;height:60px}}
@media(prefers-reduced-motion:reduce){.sgl-slogan-inner.sgl-enter,.sgl-slogan-inner.sgl-exit,.sgl-premium-pulse,.sgl-premium-glow,.sgl-premium-shimmer,.sgl-premium-float{animation:none!important;transform:none!important;opacity:1!important}}
/* Subtle paid-card emphasis, only for the explicitly approved active premium style. */
#featuredGrid .sgl-premium-pulse{animation:sglPremiumPulse 4s ease-in-out infinite}
#featuredGrid .sgl-premium-glow{animation:sglPremiumGlow 4s ease-in-out infinite}
#featuredGrid .sgl-premium-float{animation:sglPremiumFloat 5s ease-in-out infinite}
#featuredGrid .sgl-premium-shimmer .local-card-photo{position:relative;overflow:hidden}
#featuredGrid .sgl-premium-shimmer .local-card-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.3) 50%,transparent 62%);transform:translateX(-140%);animation:sglPremiumShimmer 6s ease-in-out infinite}
#featuredGrid .local-card[class*=sgl-premium-]:hover{animation-play-state:paused}
@keyframes sglPremiumPulse{50%{box-shadow:0 0 0 3px rgba(18,143,75,.25)}}
@keyframes sglPremiumGlow{50%{box-shadow:0 0 18px 3px rgba(20,140,80,.32)}}
@keyframes sglPremiumFloat{50%{transform:translateY(-3px)}}
@keyframes sglPremiumShimmer{0%,60%{transform:translateX(-140%)}85%,100%{transform:translateX(140%)}}
@media(prefers-reduced-motion:reduce){#featuredGrid .sgl-premium-shimmer .local-card-photo:after{display:none}}
