.lim-carousel,.lim-ticker{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6;color:#142b42}
.lim-carousel *,.lim-ticker *{box-sizing:border-box}
.lim-carousel{width:min(1240px,calc(100% - 40px));margin:40px auto;background:#f3f6f8;border:1px solid #dce3e8;border-top:4px solid #ffda00;border-radius:8px;padding:clamp(20px,4vw,40px);overflow:hidden}
.lim-carousel .lim-slide{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;align-items:center;padding:12px 0;margin:0;min-width:0;background:transparent}
.lim-carousel .lim-logo-image{display:block;width:160px!important;height:160px!important;object-fit:contain;border-radius:0;box-shadow:none;margin:0!important}
.lim-carousel .lim-slide :is(h2,h3){font-family:inherit!important;font-size:clamp(1.3rem,3vw,2rem)!important;line-height:1.25!important;letter-spacing:-.025em;color:#142b42!important;margin:0 0 14px!important;overflow-wrap:anywhere}
.lim-carousel .lim-slide p{font-family:inherit;font-size:1rem!important;line-height:1.7!important;color:#546474;margin:0!important;overflow-wrap:anywhere}
.lim-carousel.lim-ready .lim-slide-list{display:grid}
.lim-carousel.lim-ready .lim-slide{grid-area:1/1;visibility:hidden;pointer-events:none}
.lim-carousel.lim-ready .lim-slide.lim-active{visibility:visible;pointer-events:auto}
.lim-carousel .lim-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.lim-carousel [hidden],.lim-ticker [hidden]{display:none!important}
.lim-carousel button,.lim-ticker button{display:inline-flex;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:10px 16px;font:700 .9rem/1.3 Arial,sans-serif;background:#ffda00;color:#142b42;border:1px solid #cfb000;border-radius:4px;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:normal}
.lim-carousel button:hover,.lim-ticker button:hover{background:#ffe86a;color:#142b42}
.lim-carousel button:focus-visible,.lim-ticker button:focus-visible{outline:3px solid #a26700;outline-offset:3px}
.lim-counter{min-width:60px;text-align:center;font-variant-numeric:tabular-nums}
.lim-ticker{display:flex;align-items:center;gap:16px;width:100%;padding:10px max(16px,calc((100vw - 1240px)/2));background:#142b42;color:white;border-bottom:3px solid #ffda00}
.lim-ticker-label{background:#ffda00;color:#142b42;padding:6px 12px;border-radius:3px;flex:none;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em}
.lim-ticker-window{min-width:0;flex:1}
.lim-ticker .lim-ticker-text{margin:0!important;font-size:1rem!important;line-height:1.7!important;color:white!important;overflow-wrap:anywhere}
.lim-moving .lim-ticker-window{overflow:hidden}
.lim-moving .lim-ticker-text{white-space:nowrap;width:max-content;max-width:none;overflow-wrap:normal;will-change:transform}
.lim-ticker button{flex:none}
@media(max-width:600px){
 .lim-carousel .lim-slide{grid-template-columns:1fr;gap:20px;text-align:center}
 .lim-carousel .lim-logo-image{width:120px!important;height:120px!important;justify-self:center}
 .lim-ticker{flex-wrap:wrap;gap:8px 12px}
 .lim-ticker .lim-ticker-window{order:3;flex:0 0 100%}
 .lim-ticker button{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){.lim-ticker .lim-ticker-text{will-change:auto}}
/* 0.2.0: fluid sliding, larger proportional logos and configurable container. */
.lim-carousel{width:min(1240px,calc(100% - 32px));container-type:inline-size}
.lim-carousel .lim-slide{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(20px,4vw,48px)}
.lim-carousel .lim-logo-image{width:300px!important;height:300px!important;max-width:100%!important;object-fit:contain}
.lim-carousel.lim-ready .lim-slide-list{overflow:hidden}
.lim-carousel.lim-ready .lim-slide.lim-leaving{visibility:visible;pointer-events:none}
@container(max-width:640px){
 .lim-carousel .lim-slide{grid-template-columns:minmax(0,1fr);text-align:center;gap:20px}
 .lim-carousel .lim-logo-image{width:min(240px,100%)!important;height:auto!important;aspect-ratio:1;justify-self:center}
}
@media(max-width:640px){
 .lim-carousel .lim-slide{grid-template-columns:minmax(0,1fr);text-align:center;gap:20px}
 .lim-carousel .lim-logo-image{width:min(240px,100%)!important;height:auto!important;aspect-ratio:1;justify-self:center}
}

/* Per-slide typography, bounded by server validation. */
.lim-carousel .lim-slide :is(h2,h3){font-size:var(--lim-title-size,32px)!important;font-weight:var(--lim-title-weight,700)!important}
.lim-carousel .lim-slide p{font-size:var(--lim-text-size,16px)!important;font-weight:var(--lim-text-weight,400)!important}

/* 0.2.6: preferred minimum height; content always has room to expand. */
.lim-carousel{display:flex;flex-direction:column;min-height:var(--lim-height,600px);max-height:none}
.lim-carousel .lim-slide-list{min-height:auto;flex-shrink:0;overflow:hidden}
.lim-carousel.lim-ready .lim-slide-list{overflow:hidden}
.lim-carousel .lim-controls{flex-shrink:0}
.lim-carousel .lim-logo-image{height:min(300px,calc(var(--lim-height,600px) - 180px))!important}
@container(max-width:640px){
 .lim-carousel .lim-logo-image{height:min(240px,calc(var(--lim-height,600px) - 180px))!important}
}
@media(max-width:640px){
 .lim-carousel .lim-logo-image{height:min(240px,calc(var(--lim-height,600px) - 180px))!important}
}

.lim-segments{width:min(1240px,calc(100% - 40px));margin:32px auto;display:grid;gap:28px}.lim-segment{min-width:0}.lim-segments .lim-segment-heading{font:800 clamp(1.5rem,2.8vw,2rem)/1.2 Arial,Helvetica,sans-serif;color:#142b42;margin:0 0 16px;letter-spacing:-.025em}.lim-segments .lim-carousel{width:100%;margin:0}.lim-segments .lim-segment .lim-slide h3{font-size:var(--lim-title-size,32px)!important;font-weight:var(--lim-title-weight,700)!important}@media(max-width:600px){.lim-segments{gap:24px;margin-block:24px}.lim-segments .lim-segment .lim-slide h3{font-size:min(var(--lim-title-size,32px),26px)!important}}

/* 0.2.5: two balanced columns; a single populated segment fills the row. */
.lim-segments{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:24px;align-items:stretch}
.lim-segments .lim-segment{display:flex;flex-direction:column;min-width:0}
.lim-segments .lim-carousel{flex:1;padding:24px}
.lim-segments .lim-slide{grid-template-columns:minmax(0,1fr);gap:18px;text-align:center}
.lim-segments .lim-logo-image{justify-self:center;width:min(240px,100%)!important;height:min(240px,calc(var(--lim-height,600px) - 180px))!important;object-fit:contain}
.lim-segments .lim-controls{margin-top:auto;padding-top:18px}
@media(max-width:600px){.lim-segments{grid-template-columns:minmax(0,1fr)}.lim-segments .lim-carousel{padding:20px}}

/* Quiet navigation at the bottom; retain a comfortable touch target. */
.lim-carousel .lim-slide>div{min-width:0;max-width:100%}
.lim-carousel .lim-controls{margin-top:auto;padding-top:10px;gap:4px}
.lim-carousel .lim-controls button{width:44px;height:44px;min-width:44px;min-height:44px;padding:0!important;background:transparent!important;color:#546474!important;border:0!important;box-shadow:none!important;font:400 16px/1 Arial,sans-serif!important;border-radius:4px}
.lim-carousel .lim-controls button:hover{background:#e4eaf0!important;color:#142b42!important}
.lim-carousel .lim-controls button:focus-visible{outline:2px solid #142b42;outline-offset:2px}
.lim-carousel .lim-counter{font-size:12px;color:#546474;min-width:40px;text-align:center}
