/* Homepage split layout: desktop columns use 35:65 of grid space after its gap. */
body.home .kw-banner .kw-banner-copy{display:flex;flex-direction:column;gap:22px;align-items:stretch;justify-content:center;min-width:0;align-self:center}
body.home .kw-banner .kw-banner-heading{min-width:0;padding:0}
body.home .kw-banner .kw-banner-eyebrow{margin:0 0 12px;line-height:1.5}
body.home .kw-banner :is(h1,h2){margin:0!important}
body.home .kw-banner .kw-banner-details{display:flex;flex-direction:column;align-items:stretch;gap:14px;min-width:0}
body.home .kw-banner .kw-banner-description{margin:0;max-width:none;padding:0;line-height:1.6}
body.home .kw-banner .kw-banner-booth{display:flex;flex-direction:row;align-items:baseline;gap:10px;margin:0;line-height:1.3}
body.home .kw-banner .kw-banner-booth strong{font-size:25px;line-height:1.3}
body.home .kw-banner .kw-banner-event-note{margin:0;line-height:1.5}
body.home .kw-banner .kw-banner-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start!important;align-self:stretch!important;width:100%;gap:10px 18px;margin:2px 0 0;padding:0;min-width:0}
body.home .kw-banner .kw-banner-actions a{max-width:100%;white-space:normal}
body.home .kw-banner .kw-banner-image{overflow:hidden;border-radius:25px!important;margin-bottom:0}
body.home .kw-banner-direction-controls{position:absolute;inset:0;height:100%;pointer-events:none;z-index:3}
body.home .kw-banner-direction{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #d7ded9;border-radius:25px;background:#fff;color:#173447;box-shadow:none;cursor:pointer;pointer-events:auto;z-index:3}
body.home .kw-banner-direction:hover{background:#faf6f1;border-color:#98643f}
body.home .kw-banner-direction svg{width:24px;height:24px;display:block;stroke-linecap:round;stroke-linejoin:round}
body.home .kw-banner-prev{left:0}body.home .kw-banner-next{right:0}
@media(min-width:1200px){body.home .kw-banner .kw-banner-slide{grid-template-columns:minmax(0,35fr) minmax(0,65fr);gap:32px;padding-top:36px;padding-bottom:88px;align-items:center}body.home .kw-banner .kw-banner-image{align-self:center}body.home .kw-banner .kw-banner-copy{grid-column:1}body.home .kw-banner .kw-banner-image{grid-column:2}}
@media(max-width:1199px){body.home .kw-banner .kw-banner-slide{grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}body.home .kw-banner .kw-banner-copy{align-self:start;justify-content:flex-start;gap:20px}body.home .kw-banner .kw-banner-image{align-self:start}body.home .kw-banner .kw-banner-details{gap:12px}body.home .kw-banner .kw-banner-description{max-width:760px}}

/* Round the actual contained bitmap box, including the wider business images. */
body.home .kw-banner .kw-banner-image :is(picture,.kw-progressive){display:flex!important;align-items:center;justify-content:center}
body.home .kw-banner .kw-banner-image img{position:static!important;inset:auto!important;width:100%;height:auto!important;max-height:100%;aspect-ratio:auto;object-fit:contain!important;border-radius:25px!important;overflow:hidden}

/* 400ms whole-panel crossfade. Native hidden + inert keeps outgoing content noninteractive. */
body.home .kw-banner .kw-banner-slide[data-crossfade=outgoing][hidden]:not([data-layout-retired=true]){display:grid!important;visibility:visible!important;pointer-events:none!important;z-index:1}
body.home .kw-banner .kw-banner-slide[data-crossfade=incoming]{z-index:2}
@media(prefers-reduced-motion:reduce){body.home .kw-banner .kw-banner-slide[data-crossfade=outgoing][hidden]{visibility:hidden!important}}
