/* Only applied to the Home Modern Test draft preview. */
section.elsg-enhanced { background:linear-gradient(180deg,#f4f9fe,#edf5fd)!important; padding:70px 20px!important; }
section.elsg-enhanced > h2 { color:#123b65!important; font-weight:800!important; letter-spacing:-.035em!important; font-size:clamp(28px,3.2vw,42px)!important; }
section.elsg-enhanced > p { color:#57708c!important; max-width:780px; margin:12px auto 36px!important; }
section.elsg-enhanced > div { max-width:1230px!important; gap:24px!important; }
section.elsg-enhanced .elsg-card { flex:1 1 300px!important; min-width:0; max-width:390px; padding:0 0 24px!important; border-radius:15px!important; overflow:hidden; text-align:left; border:1px solid #e5edf6; box-shadow:0 8px 26px rgba(16,53,86,.10)!important; transition:transform .2s ease, box-shadow .2s ease; display:flex; flex-direction:column; }
section.elsg-enhanced .elsg-card:hover { transform:translateY(-4px); box-shadow:0 16px 36px rgba(16,53,86,.15)!important; }
section.elsg-enhanced .elsg-card .elsg-photo { margin:0 0 22px; overflow:hidden; height:215px; background:#dfeafa; }
section.elsg-enhanced .elsg-card .elsg-photo img { width:100%!important; height:100%!important; object-fit:cover; object-position:center; display:block; }
section.elsg-enhanced .elsg-card .elsg-photo.elsg-missing { background:linear-gradient(135deg,#dbeaf8,#edf5fc); }
section.elsg-enhanced .elsg-card h3 { color:#133a61!important; font-size:clamp(19px,1.7vw,23px)!important; font-weight:750!important; padding:0 24px; margin:0 0 10px!important; line-height:1.25!important; }
section.elsg-enhanced .elsg-card p { color:#586b80!important; font-size:15px!important; line-height:1.6!important; padding:0 24px; margin:0 0 22px!important; flex:1; }
section.elsg-enhanced .elsg-card .elsg-link { margin:0 24px; align-self:flex-start; border-radius:999px; padding:10px 19px; font-size:14px; font-weight:700; background:#087bdc; color:white!important; text-decoration:none!important; transition:background .2s ease; }
section.elsg-enhanced .elsg-card .elsg-link:hover { background:#075ca7; }
section.elsg-enhanced .elsg-card .elsg-link:focus-visible { outline:3px solid #76c9f5; outline-offset:3px; }
@media(max-width:740px){ section.elsg-enhanced {padding:42px 12px!important;} section.elsg-enhanced > div {gap:16px!important;} section.elsg-enhanced .elsg-card {max-width:100%; flex-basis:100%!important;} section.elsg-enhanced .elsg-card .elsg-photo {height:220px;} }
@media(prefers-reduced-motion:reduce){section.elsg-enhanced .elsg-card {transition:none;} section.elsg-enhanced .elsg-card:hover {transform:none;} }

/* 1.1: keep the image-height/card rhythm consistent and separate CTA from text. */
section.elsg-enhanced .elsg-card .elsg-photo { flex-shrink:0; }
section.elsg-enhanced .elsg-card p { margin-bottom:18px!important; }
section.elsg-enhanced .elsg-card .elsg-link { margin-top:auto; white-space:nowrap; }
@media (min-width:1100px) { section.elsg-enhanced .elsg-card { max-width:none; flex:1 1 30%!important; } }


/* Version 1.2 – photo carousel inside the already-existing Home Modern Test Hero. */
#el-hero-modern .hero-visual.elsg-carousel-ready { isolation:isolate; }
#el-hero-modern .hero-visual.elsg-carousel-ready > #el-hero-photo,
#el-hero-modern .hero-visual.elsg-carousel-ready > #el-hero-placeholder {
  display:none!important;
}
#el-hero-modern .elsg-hero-slides { position:absolute;inset:0;overflow:hidden;z-index:1; }
#el-hero-modern .elsg-hero-slide {
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;visibility:hidden;transform:scale(1.02);
  transition:opacity .9s ease, transform 5.5s ease, visibility .9s ease;
}
#el-hero-modern .elsg-hero-slide.is-active {
  opacity:1;visibility:visible;transform:scale(1);
}
#el-hero-modern .hero-visual.elsg-carousel-ready .hero-tag {
  z-index:3; bottom:68px; left:18px; padding:9px 14px;
  max-width:calc(100% - 36px); border-radius:8px;
  background:rgba(4,32,59,.85);font-size:13px;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
#el-hero-modern .elsg-hero-controls {
  position:absolute; z-index:5; bottom:13px; left:50%; transform:translateX(-50%);
  display:flex;align-items:center;justify-content:center;gap:11px;
  padding:6px 10px; background:rgba(7,34,64,.72);border-radius:999px;
}
#el-hero-modern .elsg-hero-arrow {
  appearance:none;border:0!important;cursor:pointer!important;
  display:grid;place-items:center;background:transparent!important;
  color:#fff!important;font-family:Arial,sans-serif!important;
  font-size:28px!important;line-height:1!important;
  width:27px;height:27px;padding:0!important;box-shadow:none!important;
  transition:color .2s ease;
}
#el-hero-modern .elsg-hero-arrow:hover {color:#8cdbff!important;}
#el-hero-modern .elsg-hero-dots {display:flex;align-items:center;gap:7px;}
#el-hero-modern .elsg-hero-dot {
  appearance:none;cursor:pointer!important; width:9px;height:9px;
  background:rgba(255,255,255,.55)!important;border:0!important;
  border-radius:50%;padding:0!important;margin:0!important;
  box-shadow:none!important;transition:background .2s ease,transform .2s ease;
}
#el-hero-modern .elsg-hero-dot.is-active {background:#fff!important;transform:scale(1.35);}
#el-hero-modern .elsg-hero-dot:focus-visible,
#el-hero-modern .elsg-hero-arrow:focus-visible {outline:2px solid #fff;outline-offset:3px;}
@media (prefers-reduced-motion:reduce){
 #el-hero-modern .elsg-hero-slide {transition:none!important;transform:none!important;}
}

/* Version 1.2.1: FIX - legacy Custom HTML Hero hides all img elements using
   #el-hero-modern .hero-visual img { display:none; }.
   Ensure each generated carousel slide participates in rendering while
   opacity/visibility still select only the active slide. */
#el-hero-modern .hero-visual.elsg-carousel-ready .elsg-hero-slides > img.elsg-hero-slide {
  display:block !important;
}

/* Version 1.2.2: Dedicated pause/play button. Focus and hover do not disable autoplay. */
#el-hero-modern .elsg-hero-pause {
  appearance:none;cursor:pointer!important;display:grid;place-items:center;
  width:30px;height:30px;min-width:30px;padding:0!important;border:0!important;
  background:transparent!important;color:#fff!important;box-shadow:none!important;
  font-size:17px!important;line-height:1!important;font-family:Arial,sans-serif!important;
}
#el-hero-modern .elsg-hero-pause:hover { color:#8cdbff!important; }
#el-hero-modern .elsg-hero-pause:focus-visible {outline:2px solid white;outline-offset:3px;}
