/* TT3 integration and progressive enhancement; the original design lives in style.css. */
body{padding:0}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}
[hidden]{display:none!important}
.card-slider{min-width:0;max-width:100%;position:relative}
.card-slider .swiper,.card-slider .swiper.is-overflow{overflow:hidden;max-width:100%;min-width:0;padding:5px 0 55px}
.card-slider .card-slide{max-width:none;box-sizing:border-box}
.card-slider .swiper-wrapper{align-items:stretch}
.koci-slider-controls{display:flex;justify-content:flex-end;gap:12px;margin-top:4px}
.koci-slider-controls button{width:48px;height:48px;display:grid;place-items:center;border:1px solid #ddd;border-radius:50%;background:white;color:#111;font:26px/1 sans-serif;cursor:pointer;transition:background .2s,color .2s}
.koci-slider-controls button:hover:not(:disabled){background:#e30613;color:white;border-color:#e30613}
.koci-slider-controls button:disabled{opacity:.35;cursor:default}
.koci-slider-controls .swiper-button-lock{display:none}
@media(max-width:599px){.card-slider .card-slide__content{padding:24px}.koci-slider-controls{justify-content:center}}
:focus-visible{outline:3px solid #007cb0;outline-offset:4px}
.reveal{opacity:1;transform:none}.koci-motion .reveal:not(.reveal-visible){opacity:0;transform:translateY(30px)}
.koci-languages{display:flex;gap:12px}.koci-languages [aria-current]{font-weight:700}
.koci-step-nav{display:none}.koci-multistep .koci-step-nav{display:flex;align-items:center;flex-wrap:wrap;gap:15px}
.koci-step-status{flex-basis:100%}.koci-step{border:0;padding:0;margin:0;min-width:0}
.koci-form .wpcf7-list-item{margin-left:0}.koci-form .ff-el-help-message{font-size:.9em}
.koci-form .wpcf7-form-control-wrap{display:block}.koci-form input[type=checkbox],.koci-form input[type=radio]{width:auto}
.koci-form .ff-el-form-control.wpcf7-checkbox,.koci-form .ff-el-form-control.wpcf7-radio{border:0;background:transparent;padding:0}
.koci-form .wpcf7-radio .wpcf7-list-item{display:block}.koci-form .wpcf7-not-valid-tip{color:#9c2020}
.koci-lightbox{border:0;padding:45px 10px 10px;background:#111;color:white;max-width:95vw;max-height:95vh}.koci-lightbox::backdrop{background:#000d}
.koci-lightbox img{max-width:90vw;max-height:80vh;object-fit:contain}.koci-lightbox button{position:absolute;right:10px;top:5px;color:#fff;background:#222;border:0;font-size:25px}
#nav li:focus-within>.sub-menu-wrap{opacity:1;visibility:visible;pointer-events:auto;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.koci-motion .reveal:not(.reveal-visible){opacity:1;transform:none}}

/* Keep the language switch accessible in the header at mobile widths. */
.koci-languages a{display:inline-flex;align-items:center;min-height:36px;padding:0 3px}.koci-languages span{display:inline-flex;align-items:center;min-height:36px;border-bottom:2px solid currentColor}.koci-languages a:focus-visible{outline:2px solid #d90017;outline-offset:3px}
@media(max-width:840px){.nav-meta .lang-menu{display:flex}.nav-meta{gap:12px}.nav-meta .koci-languages{gap:8px;font-size:13px}}
/* Keep image dimensions independent of intrinsic image size and title height (Chrome flex layout). */
.megamenu__link>.megamenu__image{flex:0 0 auto;width:100%;height:auto;aspect-ratio:1.02/1;object-fit:cover}
.megamenu__link>.megamenu__title{flex:1 0 auto;height:auto}
