.lkws{--lkws-accent:#b3121b;--lkws-ink:#1d1d1f;--lkws-muted:#666;--lkws-line:#e4e4e4;color:var(--lkws-ink);margin:0 auto 2.5rem;max-width:1100px;box-sizing:border-box}
.lkws *,.lkws *::before,.lkws *::after{box-sizing:border-box}
.lkws section{margin:0 0 2rem}

/* Overlay foundations: isolate plugin layers from aggressive theme styles. */
.lkws-speech-wrap,.lkws-banner-wrap{position:fixed!important;top:50%;margin:0!important;padding:0!important;isolation:isolate;box-sizing:border-box;transform:translate3d(0,-50%,0);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .24s ease;filter:drop-shadow(0 14px 32px rgba(0,0,0,.3));text-align:left;pointer-events:none;will-change:transform}
.lkws-speech-wrap{z-index:2147483000;width:min(var(--lkws-speech-width),calc(100vw - 56px));max-height:min(88vh,var(--lkws-speech-height));color:var(--lkws-speech-text)}
.lkws-banner-wrap{z-index:2147482000;width:min(var(--lkws-banner-width),calc(100vw - 56px));max-height:min(82vh,var(--lkws-banner-height));color:var(--lkws-banner-text)}
.lkws-speech-wrap.is-left,.lkws-banner-wrap.is-left{left:0!important;right:auto!important}
.lkws-speech-wrap.is-right,.lkws-banner-wrap.is-right{right:0!important;left:auto!important}
.lkws-speech-wrap.is-right.is-collapsed,.lkws-banner-wrap.is-right.is-collapsed{transform:translate3d(100%,-50%,0)}
.lkws-speech-wrap.is-left.is-collapsed,.lkws-banner-wrap.is-left.is-collapsed{transform:translate3d(-100%,-50%,0)}

/* The tabs remain beyond the panel edge and above every overlay surface. */
.lkws-speech-toggle,.lkws-banner-toggle{position:absolute!important;top:50%!important;z-index:2147483647!important;display:grid!important;place-items:center;width:48px!important;margin:0!important;padding:10px 7px!important;border:0!important;outline-offset:3px;background:var(--lkws-accent)!important;color:#fff!important;font:700 12px/1 Arial,Helvetica,sans-serif!important;text-transform:uppercase;letter-spacing:1px!important;cursor:pointer;transform:translateY(-50%);writing-mode:vertical-rl;box-shadow:0 4px 14px rgba(0,0,0,.28);pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.lkws-speech-toggle{min-height:116px}.lkws-banner-toggle{min-height:86px}
.lkws-speech-wrap.is-left .lkws-speech-toggle,.lkws-banner-wrap.is-left .lkws-banner-toggle{right:-48px!important;left:auto!important;border-radius:0 6px 6px 0!important}
.lkws-speech-wrap.is-right .lkws-speech-toggle,.lkws-banner-wrap.is-right .lkws-banner-toggle{left:-48px!important;right:auto!important;border-radius:6px 0 0 6px!important}
.lkws-toggle-show{display:none}.is-collapsed .lkws-toggle-show{display:inline}.is-collapsed .lkws-toggle-hide{display:none}

/* Welcome speech. */
.lkws-speech-panel{position:relative;height:min(88vh,var(--lkws-speech-height));max-height:min(88vh,var(--lkws-speech-height));overflow:auto;overscroll-behavior:contain;background:var(--lkws-speech-bg);background:color-mix(in srgb,var(--lkws-speech-bg) var(--lkws-speech-opacity),transparent);color:var(--lkws-speech-text);padding:0 24px 24px;border:1px solid color-mix(in srgb,var(--lkws-speech-text) 14%,transparent);border-radius:0 6px 6px 0;pointer-events:auto;touch-action:pan-y}
.lkws-speech-wrap.is-right .lkws-speech-panel{border-radius:6px 0 0 6px}
.lkws-speech-bar{position:sticky!important;top:0!important;z-index:4;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:44px;margin:0 -24px 20px!important;padding:10px 16px!important;background:var(--lkws-speech-text)!important;color:var(--lkws-speech-bg)!important;font:700 12px/1 Arial,Helvetica,sans-serif!important;text-transform:uppercase;letter-spacing:1px!important}
.lkws-heading{display:block!important;max-width:900px;margin:0 auto 24px!important;padding:0!important;color:inherit!important;font-family:var(--lkws-speech-font)!important;font-size:clamp(22px,3vw,34px)!important;font-style:normal!important;font-weight:700!important;line-height:1.2!important;letter-spacing:0!important;text-align:center!important;text-transform:none!important;overflow-wrap:break-word}
.lkws-speech{display:grid!important;grid-template-columns:minmax(0,var(--lkws-speech-image-width)) minmax(0,1fr)!important;gap:28px!important;align-items:start!important;width:100%!important;margin:0!important;padding:0!important}
.lkws-figure{min-width:0;margin:0!important;text-align:center!important}.lkws-frame{padding:8px;border:1px solid color-mix(in srgb,var(--lkws-speech-text) 25%,transparent);background:color-mix(in srgb,var(--lkws-speech-bg) 82%,transparent)}
.lkws-portrait{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0!important}.lkws-figure figcaption{margin:12px 0 0!important;color:inherit!important;font:var(--lkws-speech-weight) 15px/1.45 var(--lkws-speech-font)!important;letter-spacing:0!important}
.lkws-text{min-width:0;color:inherit!important;font-family:var(--lkws-speech-font)!important;font-size:var(--lkws-speech-font-size)!important;font-style:normal!important;font-weight:var(--lkws-speech-weight)!important;line-height:var(--lkws-speech-leading)!important;letter-spacing:0!important;text-align:var(--lkws-speech-align)!important;overflow-wrap:break-word;word-break:normal}
.lkws-text>*:first-child{margin-top:0!important}.lkws-text>*:last-child{margin-bottom:0!important}.lkws-text p{margin:0 0 1em!important;color:inherit!important;font:inherit!important;letter-spacing:0!important}.lkws-text img{width:var(--lkws-speech-content-image-width)!important;max-width:100%!important;height:auto!important}.lkws-text iframe,.lkws-text video{max-width:100%!important}
.lkws-pdf{height:min(62vh,650px);margin-top:16px;border:1px solid var(--lkws-line);background:#f5f5f5}.lkws-pdf object,.lkws-pdf iframe{display:block;width:100%;height:100%;border:0}.lkws-pdf-action{text-align:center;margin:16px 0 0}

/* Publicity banner. */
.lkws-banner{position:relative!important;height:min(82vh,var(--lkws-banner-height));min-height:220px;max-height:min(82vh,var(--lkws-banner-height));overflow:hidden;background:var(--lkws-banner-bg);background:color-mix(in srgb,var(--lkws-banner-bg) var(--lkws-banner-opacity),transparent);border:1px solid color-mix(in srgb,var(--lkws-banner-text) 14%,transparent);border-radius:6px 0 0 6px;pointer-events:auto;touch-action:pan-y}
.lkws-banner-wrap.is-left .lkws-banner{border-radius:0 6px 6px 0}
.lkws-banner-bar{position:relative;z-index:5;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:44px;padding:10px 16px!important;background:color-mix(in srgb,var(--lkws-banner-bg) 96%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--lkws-banner-text) 18%,transparent)}
.lkws-banner-label{color:var(--lkws-accent)!important;font:700 12px/1 Arial,Helvetica,sans-serif!important;letter-spacing:1px!important;text-transform:uppercase}
.lkws-banner .lkws-slide{position:absolute!important;inset:44px 0 0!important;display:flex!important;align-items:flex-end!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility 0s linear .55s}
.lkws-banner .lkws-slide.is-active{opacity:1;visibility:visible;transition-delay:0s}
.lkws-slide-img{position:absolute!important;top:50%!important;left:50%!important;display:block!important;width:var(--lkws-banner-image-zoom)!important;height:var(--lkws-banner-image-zoom)!important;max-width:none!important;margin:0!important;object-fit:var(--lkws-banner-image-fit)!important;transform:translate(-50%,-50%)}
.lkws-slide-body{position:relative!important;z-index:2;width:100%!important;max-height:100%;overflow:auto;padding:28px!important;color:var(--lkws-banner-text)!important;background:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--lkws-banner-bg) var(--lkws-banner-opacity),transparent) 38%,color-mix(in srgb,var(--lkws-banner-bg) var(--lkws-banner-opacity),transparent) 100%)!important;font-family:var(--lkws-banner-font)!important;font-size:var(--lkws-banner-font-size)!important;font-style:normal!important;font-weight:var(--lkws-banner-weight)!important;line-height:var(--lkws-banner-leading)!important;letter-spacing:0!important;text-align:var(--lkws-banner-align)!important;overflow-wrap:break-word}
.lkws-slide-body h3{margin:0 0 .55em!important;color:inherit!important;font-family:inherit!important;font-size:1.5em!important;font-style:normal!important;font-weight:700!important;line-height:1.2!important;letter-spacing:0!important}.lkws-slide-body p{margin:0 0 .8em!important;color:inherit!important;font:inherit!important;letter-spacing:0!important}.lkws-slide-body ul,.lkws-slide-body ol{display:inline-block;margin:.25em 0 1em!important;text-align:left}.lkws-slide-body>*:last-child{margin-bottom:0!important}
.lkws-progress{position:absolute;z-index:6;right:0;bottom:0;left:0;height:4px;background:color-mix(in srgb,var(--lkws-banner-text) 20%,transparent)}.lkws-progress span{display:block;height:100%;width:0;background:var(--lkws-accent)}

.lkws-btn{display:inline-block!important;margin:0!important;padding:10px 18px!important;border:2px solid var(--lkws-accent)!important;border-radius:4px!important;background:var(--lkws-accent)!important;color:#fff!important;font:600 15px/1.2 Arial,Helvetica,sans-serif!important;letter-spacing:0!important;text-decoration:none!important;cursor:pointer}.lkws-btn:hover{filter:brightness(.9)}
.lkws-lightbox-close{display:grid!important;place-items:center;width:34px!important;height:34px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:inherit!important;font:400 28px/1 Arial,sans-serif!important;cursor:pointer}
.lkws-backdrop{display:none}

/* Lightbox uses a full-screen layer so the backdrop and controls cannot sit behind the panel. */
.lkws-speech-wrap.is-lightbox,.lkws-banner-wrap.is-lightbox{inset:0!important;z-index:2147483000;width:auto!important;max-height:none!important;transform:none!important;filter:none;pointer-events:none;transition:opacity .24s ease,visibility 0s linear 0s}
.lkws-speech-wrap.is-lightbox .lkws-backdrop,.lkws-banner-wrap.is-lightbox .lkws-backdrop{position:absolute!important;z-index:0;inset:0!important;display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;background:rgba(0,0,0,.68)!important;cursor:pointer;pointer-events:auto}
.lkws-speech-wrap.is-lightbox .lkws-speech-panel,.lkws-banner-wrap.is-lightbox .lkws-banner{position:absolute!important;z-index:2;top:50%!important;left:50%!important;width:min(var(--lkws-speech-width),calc(100vw - 40px));transform:translate(-50%,-50%);border-radius:7px!important;pointer-events:auto;transition:opacity .2s ease,transform .25s ease}
.lkws-banner-wrap.is-lightbox .lkws-banner{width:min(var(--lkws-banner-width),calc(100vw - 40px))}
.lkws-speech-wrap.is-lightbox .lkws-speech-toggle,.lkws-banner-wrap.is-lightbox .lkws-banner-toggle{position:fixed!important;z-index:4!important;top:50%!important;display:grid!important;pointer-events:auto}
.lkws-speech-wrap.is-lightbox.is-left .lkws-speech-toggle,.lkws-banner-wrap.is-lightbox.is-left .lkws-banner-toggle{left:0!important;right:auto!important}.lkws-speech-wrap.is-lightbox.is-right .lkws-speech-toggle,.lkws-banner-wrap.is-lightbox.is-right .lkws-banner-toggle{right:0!important;left:auto!important}
.lkws-speech-wrap.is-lightbox.is-collapsed,.lkws-banner-wrap.is-lightbox.is-collapsed{visibility:hidden;opacity:0;transition:opacity .24s ease,visibility 0s linear .24s}.lkws-speech-wrap.is-lightbox.is-collapsed .lkws-backdrop,.lkws-banner-wrap.is-lightbox.is-collapsed .lkws-backdrop{opacity:0;visibility:hidden;pointer-events:none}.lkws-speech-wrap.is-lightbox.is-collapsed .lkws-speech-panel,.lkws-banner-wrap.is-lightbox.is-collapsed .lkws-banner{visibility:hidden;pointer-events:none;transform:translate(-50%,-47%)}

.lkws-announce{border-left:5px solid var(--lkws-accent);background:#fff8f0;padding:1.25rem 1.5rem;border-radius:4px}.lkws-announce h2,.lkws-posts h2{margin:0 0 .75rem;font-size:1.4rem}.lkws-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.lkws-card{border:1px solid var(--lkws-line);border-radius:6px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s}.lkws-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08)}.lkws-card a{color:inherit;text-decoration:none}.lkws-card-img{width:100%;height:160px;object-fit:cover;display:block}.lkws-card-body{padding:1rem}.lkws-card-body time{font-size:.8rem;color:var(--lkws-muted)}.lkws-card-body h3{font-size:1.1rem;margin:.3rem 0 .5rem}.lkws-card-body p{font-size:.92rem;color:var(--lkws-muted);margin:0}

@media (max-width:760px){.lkws-speech-wrap,.lkws-banner-wrap{top:auto!important;bottom:0!important;width:calc(100vw - 48px);max-height:82vh;transform:translate3d(0,0,0)}.lkws-speech-wrap.is-right.is-collapsed,.lkws-banner-wrap.is-right.is-collapsed{transform:translate3d(100%,0,0)}.lkws-speech-wrap.is-left.is-collapsed,.lkws-banner-wrap.is-left.is-collapsed{transform:translate3d(-100%,0,0)}.lkws-speech-panel{height:auto;max-height:82vh;padding:0 16px 18px}.lkws-speech-bar{margin:0 -16px 18px!important}.lkws-speech{grid-template-columns:1fr!important;gap:18px!important}.lkws-figure{width:min(100%,var(--lkws-speech-image-width));max-width:100%;margin:0 auto!important}.lkws-heading{font-size:22px!important}.lkws-text{text-align:var(--lkws-speech-align)!important}.lkws-pdf{height:56vh}.lkws-banner{height:min(72vh,var(--lkws-banner-height));max-height:72vh}.lkws-slide-body{padding:20px!important}.lkws-speech-wrap.is-lightbox,.lkws-banner-wrap.is-lightbox{inset:0!important;width:auto!important;max-height:none!important}.lkws-speech-wrap.is-lightbox .lkws-speech-panel,.lkws-banner-wrap.is-lightbox .lkws-banner{width:calc(100vw - 28px)!important;max-height:86vh}.lkws-speech-wrap.is-lightbox .lkws-speech-toggle,.lkws-banner-wrap.is-lightbox .lkws-banner-toggle{top:50%!important}}
@media (prefers-reduced-motion:reduce){.lkws-speech-wrap,.lkws-banner-wrap,.lkws-banner .lkws-slide,.lkws-backdrop{transition:none!important}}
