.kvt-home-banner { min-width: 0; width: 100%; overflow: hidden; border-radius: 18px; background: #fff; }
.kvt-home-banner-frame { position: relative; aspect-ratio: 9 / 20; overflow: hidden; border-radius: 18px; }
.kvt-home-banner-slide { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.kvt-home-banner-slide[hidden] { display: none !important; }
.kvt-home-banner-slide picture, .kvt-home-banner-slide img { display: block; width: 100%; height: 100%; margin: 0; object-fit: contain; border-radius: 0; }
.kvt-home-banner-slide:focus-visible { outline: 3px solid #bd882d; outline-offset: -4px; }
.kvt-home-banner-nav { display: none; }
.kvt-home-banner-nav .kvt-home-banner-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 38px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.kvt-home-banner-button span { display: block; width: 8px; height: 8px; border-radius: 50%; background: #c9c7c0; }
.kvt-home-banner-button[aria-current="true"] span { width: 22px; border-radius: 7px; background: #be8a2f; }
.kvt-home-banner-button:focus-visible { outline: 2px solid #80621f; outline-offset: -4px; border-radius: 8px; }
#ja-extra .main2.kvt-banner-section-layout { display: grid; grid-template-columns: minmax(0, .25fr) minmax(0, 1fr); gap: 30px; align-items: start; }
.kvt-home-banner-products { min-width: 0; }
#ja-extra .kvt-banner-section-layout > .extra-prod__preview { display: block; min-width: 0; }
@media (max-width: 1100px) {
  #ja-extra .main2.kvt-banner-section-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .kvt-home-banner-frame { aspect-ratio: 9 / 4; }
  .kvt-home-banner { border-radius: 14px; }
  .kvt-home-banner-frame { border-radius: 14px; }
}
@media (max-width: 767px) {
  #ja-extra .main2.kvt-banner-section-layout { gap: 12px; }
  .kvt-home-banner-frame { aspect-ratio: 3 / 2; }
  .kvt-home-banner-nav, .kvt-home-banner-nav .kvt-home-banner-button { height: 44px; }
}

#ja-slideshow .kvt-home-hero { position:relative; width:100%; aspect-ratio:2 / 1; overflow:hidden; border-radius:12px; }
#ja-slideshow .kvt-home-hero a.kvt-home-art { position:absolute; inset:0; display:block; width:100%; height:100%; margin:0; }
#ja-slideshow .kvt-home-hero a.kvt-home-art[hidden] { display:none!important; }
#ja-slideshow .kvt-home-hero picture, #ja-slideshow .kvt-home-hero img { display:block; width:100%; height:100%; object-fit:contain; }
@media (max-width:767.98px) {
  .bodyhome_bd #ja-slideshow { display:block!important; }
  #ja-slideshow .kvt-home-hero { aspect-ratio:941 / 1672; }
}

/* Category campaigns for the horizontal/tablet and portrait/phone surfaces. */
.kvt-catalog-campaign { display:none; }
@media (max-width:1100px) {
  [data-catalog-campaign-ready="true"] > .kvt-home-banner { display:none!important; }
  #ja-extra .kvt-catalog-campaign { box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.65fr); align-items:center; gap:24px; min-height:370px; padding:38px; overflow:hidden; border:1px solid #e3d9c7; border-radius:18px; background:linear-gradient(125deg,#faf7ef,#ece3d1); color:#282820; }
  #ja-extra .kvt-campaign-dark { background:linear-gradient(125deg,#1c1c1a,#36332b); border-color:#66563b; color:#faf3e4; }
  #ja-extra .kvt-campaign-eyebrow { margin:0 0 18px; font-size:12px; line-height:1.5; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:#84622b; }
  #ja-extra .kvt-campaign-dark .kvt-campaign-eyebrow { color:#e4c184; }
  #ja-extra .kvt-campaign-title { margin:0 0 18px; font:600 clamp(34px,4.5vw,52px)/1.12 'Segoe UI',Arial,sans-serif; letter-spacing:-1.3px; color:inherit; text-transform:none; }
  #ja-extra .kvt-campaign-note { max-width:280px; margin:0; font-size:14px; line-height:1.65; color:inherit; opacity:.8; }
  #ja-extra .kvt-campaign-products { min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; align-items:center; }
  #ja-extra .kvt-campaign-product { box-sizing:border-box; display:flex; min-width:0; flex-direction:column; align-items:center; padding:12px 8px 14px; border:1px solid #e7dfd3; border-radius:12px; background:#fff; color:#26241e; text-decoration:none; text-align:center; box-shadow:0 14px 24px #0000000d; }
  #ja-extra .kvt-campaign-product:nth-child(2) { transform:translateY(-12px); }
  #ja-extra .kvt-campaign-photo { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; margin:0 0 8px; border:0; }
  #ja-extra .kvt-campaign-model { display:block; min-height:2.7em; font-size:13px; line-height:1.35; font-weight:700; overflow-wrap:anywhere; }
  #ja-extra .kvt-campaign-view { display:block; margin-top:7px; font-size:11px; line-height:1.5; color:#80602d; }
  #ja-extra .kvt-campaign-product:focus-visible { outline:3px solid #b78536; outline-offset:3px; }
}
@media (max-width:767.98px) {
  #ja-extra .kvt-catalog-campaign { grid-template-columns:minmax(0,1fr); gap:24px; padding:28px 22px 24px; min-height:0; }
  #ja-extra .kvt-campaign-eyebrow { margin-bottom:14px; font-size:11px; }
  #ja-extra .kvt-campaign-title { max-width:300px; margin-bottom:14px; font-size:42px; line-height:1.08; }
  #ja-extra .kvt-campaign-note { max-width:300px; font-size:13px; }
  #ja-extra .kvt-campaign-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  #ja-extra .kvt-campaign-product:first-child { grid-column:1/-1; width:74%; justify-self:center; }
  #ja-extra .kvt-campaign-product:nth-child(2) { transform:none; }
  #ja-extra .kvt-campaign-photo { max-height:145px; }
  #ja-extra .kvt-campaign-product:first-child .kvt-campaign-photo { max-height:190px; }
  #ja-extra .kvt-campaign-model { min-height:0; font-size:12px; }
}
