/* LO Latest Stories. Brand colors come from Astra's global palette, with the site's own values as fallback. */
.lsn{
	--lsn-coral:var(--ast-global-color-0,#da5d4a);
	--lsn-coral-soft:var(--ast-global-color-1,#e18172);
	--lsn-ink:var(--ast-global-color-2,#2B161B);
	--lsn-mut:var(--ast-global-color-3,#554B4E);
	--lsn-card:var(--ast-global-color-4,#F6F3F5);
	--lsn-line:color-mix(in srgb,var(--lsn-ink) 12%,#fff);
	--lsn-g:24px;
	container-type:inline-size;
	color:var(--lsn-ink);
	min-width:0;
}
.lsn *,.lsn *::before,.lsn *::after{box-sizing:border-box}
.lsn button{font:inherit;color:inherit;cursor:pointer;margin:0}
.lsn a{color:inherit;text-decoration:none}
.lsn a:focus-visible,.lsn button:focus-visible{outline:3px solid var(--lsn-coral);outline-offset:2px}
.lsn [hidden]{display:none!important}

/* Elementor containers are flex boxes: without this the grid's content width stretches the whole widget. */
.elementor-widget-lo_latest_stories{min-width:0;max-width:100%;width:100%}
.lsn{width:100%;max-width:100%}
.lsn-grid,.lsn-stories,.lsn-cats{min-width:0;max-width:100%}

/* ---- story circles ---- */
.lsn-stories{display:flex;gap:clamp(14px,2.4vw,26px);overflow-x:auto;scrollbar-width:none;padding:6px var(--lsn-g) 8px}
.lsn-stories::-webkit-scrollbar{display:none}
.lsn-story{flex:none;display:grid;justify-items:center;gap:9px;width:84px;border:0;background:none;padding:0}
.lsn-ring{position:relative;width:80px;height:80px;border-radius:50%;padding:3px;transition:transform .25s,box-shadow .25s}
.lsn-ring::before{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(135deg,var(--lsn-coral-soft) 0%,var(--lsn-coral) 50%,var(--lsn-ink) 100%);opacity:.32;transition:opacity .35s}
.lsn-story.is-lit .lsn-ring::before,.lsn-story[aria-pressed="true"] .lsn-ring::before{opacity:1}
.lsn-story.is-lit .lsn-ring{animation:lsn-glow 2.2s ease-out 1}
@keyframes lsn-glow{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--lsn-coral) 50%,transparent)}100%{box-shadow:0 0 0 14px color-mix(in srgb,var(--lsn-coral) 0%,transparent)}}
.lsn-in{position:relative;z-index:1;display:block;width:100%;height:100%;border-radius:50%;border:3px solid #fff;overflow:hidden;background:var(--lsn-card)}
.lsn-in img{display:block;width:100%;height:100%;object-fit:cover}
.lsn-in .lsn-sw{border-radius:50%}
.lsn-mini{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.lsn-story:hover .lsn-ring{transform:scale(1.05)}
.lsn-lb{font-size:13.5px;font-weight:500;line-height:1.2;text-align:center;max-width:92px}
.lsn-story.is-lit .lsn-lb{font-weight:600}
.lsn-story[aria-pressed="true"] .lsn-ring{animation:none;box-shadow:0 6px 16px color-mix(in srgb,var(--lsn-coral) 35%,transparent);transform:scale(1.06)}
.lsn-story[aria-pressed="true"] .lsn-lb{font-weight:700;color:var(--lsn-coral)}

/* ---- categories: one quiet line, only for the chosen type ---- */
.lsn-cats{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:12px var(--lsn-g) 2px;align-items:center;animation:lsn-in .3s ease}
.lsn-cats::-webkit-scrollbar{display:none}
.lsn-cat{flex:none;height:34px;padding:0 15px;border-radius:99px;border:1px solid var(--lsn-line);background:#fff;font-size:14px;transition:.18s}
.lsn-cat:hover{border-color:var(--lsn-coral)}
.lsn-cat[aria-pressed="true"]{background:var(--lsn-coral);border-color:var(--lsn-coral);color:#fff;font-weight:500}
.lsn-cat{display:inline-flex;align-items:center;gap:7px}
.lsn-cat i{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 1px rgb(0 0 0/.18)}
.lsn-cat[aria-pressed="true"] i{box-shadow:0 0 0 2px rgb(255 255 255/.95)}
@keyframes lsn-in{from{opacity:0;transform:translateY(8px)}}

/* ---- two rows of cards ---- */
.lsn-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-auto-columns:clamp(270px,calc((100cqw - 2 * var(--lsn-g) - 6 * 16px) / 7),420px);gap:14px 16px;overflow-x:auto;padding:20px var(--lsn-g) 4px;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-padding-inline:var(--lsn-g);align-content:start;overscroll-behavior-x:contain}
.lsn-grid::-webkit-scrollbar{display:none}
@container (max-width:620px){.lsn-grid{grid-auto-columns:84%}.lsn{--lsn-g:16px}}
.lsn-card{scroll-snap-align:start;display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;background:#fff;border:1px solid var(--lsn-line);border-radius:14px;padding:10px;transition:box-shadow .25s,transform .25s}
.lsn-card.is-in{animation:lsn-in .35s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:calc(var(--i,0)*25ms)}
.lsn-card:hover{box-shadow:0 8px 22px color-mix(in srgb,var(--lsn-ink) 12%,transparent);transform:translateY(-2px)}
.lsn-media{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--lsn-coral) 14%,#fff);isolation:isolate}
.lsn-bg{position:absolute;inset:-12%;width:124%;height:124%;object-fit:cover;filter:blur(16px) saturate(1.15);opacity:.75;z-index:-1}
.lsn-fg{position:relative;display:block;width:100%;height:100%;object-fit:contain}
.lsn-crown{position:absolute;top:6px;left:6px;z-index:2;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.lsn-crown svg{width:16px;height:16px;fill:#EC4899}
.lsn-sw{position:absolute;inset:0;display:flex}
.lsn-sw i{flex:1}
.lsn-info{display:grid;gap:6px;min-width:0}
.lsn-type{display:inline-flex;align-items:center;gap:6px;color:var(--lsn-coral);font-size:12.5px;font-weight:700}
.lsn-ico{width:1.1em;height:1.1em;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lsn-new{display:none;background:var(--lsn-coral);color:#fff;font-size:11px;font-weight:700;padding:1px 8px;border-radius:99px;margin-inline-start:4px}
.lsn-card.is-fresh .lsn-new{display:inline}
.lsn-title{font-size:15.5px;line-height:1.35;font-weight:600;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* ---- "see all" card: always the last slot, spans both rows ---- */
.lsn-more{grid-row:1/3;scroll-snap-align:start;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:22px 20px;border-radius:14px;background:var(--lsn-ink);color:#fff!important;transition:transform .25s,box-shadow .25s}
.lsn-more:hover{transform:translateY(-2px);box-shadow:0 10px 24px color-mix(in srgb,var(--lsn-ink) 25%,transparent)}
.lsn.has-type .lsn-more{background:var(--lsn-coral)}
.lsn-more-ic{display:flex;gap:6px}
.lsn-more-ic i{width:34px;height:34px;border-radius:50%;background:rgb(255 255 255/.18);display:grid;place-items:center}
.lsn-more-ic svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lsn-more strong{display:block;font-size:clamp(19px,2.2vw,24px);line-height:1.25;font-weight:800;text-wrap:balance}
.lsn-more small{display:block;margin-top:6px;font-size:13.5px;opacity:.85}
.lsn-more-go{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--lsn-ink);font-weight:600;font-size:15px;height:44px;padding:0 20px;border-radius:99px}
.lsn-more-go svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.lsn-more:hover .lsn-more-go svg{transform:translateX(4px)}
.lsn:dir(rtl) .lsn-more-go svg{transform:scaleX(-1)}
.lsn:dir(rtl) .lsn-more:hover .lsn-more-go svg{transform:scaleX(-1) translateX(4px)}

/* ---- arrows ---- */
.lsn-nav{display:flex;gap:10px;padding:18px var(--lsn-g) 0}
.lsn-btn{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--lsn-ink);background:transparent;display:grid;place-items:center;padding:0;transition:.2s}
.lsn-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lsn-btn[data-dir="-1"] svg{transform:scaleX(-1)}
.lsn:dir(rtl) .lsn-btn[data-dir="-1"] svg{transform:none}
.lsn:dir(rtl) .lsn-btn[data-dir="1"] svg{transform:scaleX(-1)}
.lsn-btn:hover:not(:disabled){background:var(--lsn-ink);color:#fff}
.lsn-btn:disabled{opacity:.25;cursor:default}

/* Neutralize theme/Elementor button hover/focus/active paint inside the widget */
.lsn .lsn-story,.lsn .lsn-story:hover,.lsn .lsn-story:focus,.lsn .lsn-story:focus-visible,.lsn .lsn-story:active,.lsn .lsn-story[aria-pressed="true"]{background:none!important;border:0!important;box-shadow:none!important;color:var(--lsn-ink)!important;outline:0}
.lsn .lsn-story[aria-pressed="true"] .lsn-lb{color:var(--lsn-coral)!important}
.lsn .lsn-story:focus-visible .lsn-ring{outline:2px solid var(--lsn-coral);outline-offset:3px}
.lsn .lsn-cat{background:#fff;color:var(--lsn-ink);box-shadow:none}
.lsn .lsn-cat:hover,.lsn .lsn-cat:focus{background:#fff;color:var(--lsn-ink);border-color:var(--lsn-coral)}
.lsn .lsn-cat[aria-pressed="true"],.lsn .lsn-cat[aria-pressed="true"]:hover,.lsn .lsn-cat[aria-pressed="true"]:focus{background:var(--lsn-coral);border-color:var(--lsn-coral);color:#fff}
.lsn .lsn-btn,.lsn .lsn-btn:focus{background:transparent;color:var(--lsn-ink);border-color:var(--lsn-ink);box-shadow:none}
.lsn .lsn-btn:hover:not(:disabled){background:var(--lsn-ink);color:#fff}

@media (prefers-reduced-motion:reduce){.lsn *{animation:none!important;transition:none!important}}
