/* CMS banner: approved shared layout, activated only after valid content loads. */
.home-modern.spotlight-ready .hero { padding:28px 0; }
.home-modern.spotlight-ready .hero .container.hero-grid { display:flex; flex-direction:column; gap:22px; align-items:stretch; }
.home-modern.spotlight-ready .hero-left { display:grid; grid-template-columns:1fr auto; align-items:center; gap:16px 28px; }
.home-modern.spotlight-ready .hero-title { margin:0; max-width:none; font-size:clamp(34px,3.8vw,50px); line-height:1.16; letter-spacing:-.035em; color:#171a18; }
.home-modern.spotlight-ready .hero-title br { display:none; }
.home-modern.spotlight-ready .hero-title strong { display:inline-block; margin-right:.18em; }
.home-modern.spotlight-ready .hero-title strong::after { display:none; }
.home-modern.spotlight-ready .hero-btns { margin:0; justify-content:flex-end; }
.home-modern.spotlight-ready .hero-stats { grid-column:1/-1; margin:0!important; padding:12px 0 0; max-width:none; border-top:1px solid #d8ddd2; }
.home-modern.spotlight-ready .hero-stats .stat { display:flex; align-items:baseline; gap:7px; padding-right:22px; margin-right:22px; }
.home-modern.spotlight-ready .hero-stats .stat-n { font-size:26px; font-weight:600; line-height:1.2; color:#171a18; }
.home-modern.spotlight-ready .hero-stats .stat-l { font-size:15px; font-weight:500; color:#30372c; margin:0; }
.home-modern.spotlight-ready .hero-right { width:100%; max-width:none; margin:0; }
.home-modern.spotlight-ready .hero-right > .banner-wrap { display:none; }

.spotlight { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-template-areas:"copy picture" "controls controls"; color:#171a18; background:white; border:1px solid #dddeda; border-radius:12px; overflow:hidden; }
.spotlight * { box-sizing:border-box; }
.spotlight-copy { grid-area:copy; min-width:0; padding:22px 26px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.spotlight-heading { display:flex; align-items:center; }
.spotlight-heading span { color:#586151; font-size:12px; letter-spacing:.10em; text-transform:uppercase; }
.spotlight h2 { font-size:34px; line-height:1.15; letter-spacing:-.025em; font-weight:600; margin:8px 0 8px; text-wrap:balance; }
.spotlight-copy > p { margin:0 0 20px; font-size:17px; line-height:1.5; color:#404c3b; }
.spotlight-action { display:flex; flex-direction:column; align-items:flex-start; gap:24px; padding:0; min-height:0; width:100%; }
.spotlight .spotlight-cta { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 17px; border-radius:6px; background:#19271e; color:white; font-size:15px; font-weight:500; text-decoration:none; }
.spotlight .spotlight-cta:hover { background:#2c4033; }
.spotlight-identity { display:flex; align-items:center; width:100%; height:40px; }
.spotlight-company { display:block; width:240px; height:40px; max-width:100%; object-fit:contain; object-position:left center; }
.spotlight-picture { grid-area:picture; position:relative; height:100%; min-height:380px; min-width:0; margin:0; border:0; border-radius:0; overflow:hidden; background:white; }
.spotlight-picture > img { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:none; cursor:zoom-in; }
.spotlight-picture img[hidden],.spotlight-brand[hidden] { display:none; }
.spotlight-products > img { width:50%; }
.spotlight-products > img:last-child { left:50%; }
.spotlight-picture > img:focus-visible { outline:3px solid #335b3d; outline-offset:-4px; }
.spotlight-viewer { margin:auto; padding:48px 12px 12px; border:0; border-radius:8px; background:#111; max-width:96vw; max-height:96vh; }
.spotlight-viewer::backdrop { background:rgba(0,0,0,.8); }
.spotlight-viewer img { display:block; max-width:90vw; max-height:80vh; width:auto; height:auto; object-fit:contain; }
.spotlight-viewer button { position:absolute; top:8px; right:8px; min-width:44px; min-height:36px; border:1px solid #777; border-radius:4px; background:#222; color:white; cursor:pointer; }
.spotlight-brand { position:absolute; left:24px; bottom:24px; padding:0; background:transparent; filter:drop-shadow(0 2px 4px rgba(0,0,0,.85)); pointer-events:none; }
.spotlight-brand img { display:block; width:150px; height:121px; object-fit:contain; }

.spotlight-controls { grid-area:controls; display:flex; align-items:center; gap:12px; padding:7px 16px; border-top:1px solid #e9eae4; }
.spotlight-tabs { display:flex; align-items:center; gap:14px; margin-right:auto; }
.spotlight button { appearance:none; font:inherit; cursor:pointer; border:0; background:transparent; color:#51594d; border-radius:5px; }
.spotlight-tabs button { display:flex; align-items:center; justify-content:center; min-height:72px; padding:8px 14px; border:1px solid transparent; }
.spotlight-tabs button img { display:block; width:190px; height:44px; object-fit:contain; filter:none; opacity:1; }
.spotlight-tabs button.spotlight-tab-bekk img { width:80px; height:56px; background:#243e30; border-radius:4px; padding:3px; }
.spotlight-tabs button[aria-current=true] { border-color:#6e8267; background:#edf2e9; }
.spotlight .spotlight-pause:not(:focus-visible) { position:absolute; width:1px; height:1px; min-height:0; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.spotlight .spotlight-pause:focus-visible { position:static; width:auto; height:auto; min-height:40px; padding:8px; font-size:11px; }
.spotlight button:hover { background:#f0f3ed; }
.spotlight button:focus-visible,.spotlight a:focus-visible { outline:2px solid #335b3d; outline-offset:2px; }
.spotlight-note { font-size:11px; color:#646e60; padding-top:7px; margin:0; text-align:center; }

@media(max-width:860px) {
  .home-modern.spotlight-ready .hero-left { grid-template-columns:1fr; gap:14px; text-align:center; }
  .home-modern.spotlight-ready .hero-btns,.home-modern.spotlight-ready .hero-stats { justify-content:center; }
  .home-modern.spotlight-ready .hero-title { font-size:35px; }
  .spotlight-copy { padding:24px 20px; }
  .spotlight h2 { font-size:30px; }
}
@media(max-width:620px) {
  .home-modern.spotlight-ready .hero { padding:22px 0; }
  .home-modern.spotlight-ready .hero-title { font-size:32px; }
  .home-modern.spotlight-ready .hero-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
  .home-modern.spotlight-ready .hero-stats .stat { flex-direction:column; align-items:center; gap:4px; margin:0; padding:0 6px; }
  .home-modern.spotlight-ready .hero-stats .stat:last-child { margin-right:0; padding-right:0; }
  .home-modern.spotlight-ready .hero-stats .stat-n { font-size:24px; }
  .home-modern.spotlight-ready .hero-stats .stat-l { font-size:13px; line-height:1.35; text-align:center; }
  .spotlight { grid-template-columns:1fr; grid-template-areas:"copy" "picture" "controls"; }
  .spotlight-copy { padding:20px; }
  .spotlight h2 { font-size:28px; }
  .spotlight-copy > p { font-size:16px; }
  .spotlight-company { width:215px; height:36px; }
  .spotlight-identity { height:36px; }
  .spotlight-picture { height:260px; min-height:260px; margin:0; }
  .spotlight-brand { left:18px; bottom:18px; }
  .spotlight-brand img { width:120px; height:97px; }
  .spotlight-controls { flex-wrap:wrap; gap:0; padding:6px 9px; }
  .spotlight-tabs { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; }
  .spotlight-tabs button { min-width:0; min-height:60px; padding:6px; }
  .spotlight-tabs button:last-child { grid-column:1/-1; }
  .spotlight-tabs button img { width:100%; max-width:220px; height:38px; }
  .spotlight-tabs button.spotlight-tab-bekk img { width:74px; height:52px; }
}

.spotlight-controls[hidden] { display:none; }
.hero-right > .banner-wrap[hidden] { display:none!important; }
